-
Notifications
You must be signed in to change notification settings - Fork 0
Библиотека уведомлений для codeigniter
antongorodezkiy/notify-library
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Codeigniter-notify-library (c) 2011-2013, Anton Gorodezkiy Это библиотека для codeigniter для вывода уведомлений пользователю Подключение: <html> <head> ... <?=$this->notify->initJsCss()?> </head> <body> <?=$this->notify->getMessages()?> ... </body> </html> Некоторые методы: // добавление ошибки в очередь $this->notify->error('Случилась какая-то ошибка'); // php notifyError('Случилась еще одна ошибка'); // js // добавление успешного сообщения в очередь $this->notify->success('Но основную часть мы выполнили'); // php notifySuccess('И это действие тоже успешно'); // js // присоединим данные к ответу // из javascript он будет доступен через объект data в ответе $this->notify->setData( json_encode(array('item' => 'value')) ); // в случае синхронного запроса, на этот адрес произойдет редирект из php, // в случае асинхронного будет сменен window.location $this->notify->setComeback( site_url() ); // этот метод завершит дальнейшее выполнение скрипта $this->notify->returnNotify(); // если в очереди только одно сообщение $this->notify->returnError('Случилась какая-то ошибка'); // дальнейшее выполнение скрипта не пойдет, ошибка будет передана в ответе или сохранена в сессии // можно задать время жизни сообщения (ttl), 0 - значит что сообщение будет постоянным, пока пользователь сам его не закроет $this->notify->returnError('Случилась какая-то ошибка',0); // время жизни сообщений может быть задано глобально методом setTtl(), в секундах $this->notify->setTtl(4); // если в каком-то модуле выполнение скрипта не должно быть прекращено, можно использовать метод mustDie() $this->notify->mustDie(false); $this->notify->returnError('Случилась какая-то ошибка'); // скрипт не будет прекращен, функция вернет true/false $this->notify->mustDie(true); $this->notify->returnError('Случилась еще одна какая-то ошибка'); // дальнейшее выполнение скрипта не пойдет, ошибка будет передана в ответе или сохранена в сессии // если какое сообщение не должно быть выведено, можно использовать метод setSilence() $this->notify->setSilence(true); $this->notify->returnError('Случилась какая-то ошибка'); // это сообщение не будет выведено $this->notify->setSilence(false); $this->notify->returnError('Случилась еще одна какая-то ошибка'); // это сообщение будет выведено // дальнейшее выполнение скрипта не пойдет, ошибка будет передана в ответе или сохранена в сессии // сообщения выводятся в месте вызова метода $this->notify->getMessages(); // если требуется разделить вывод сообщений, допустим некоторые из них выводить прямо в форме // можно вызвать метод getMessages() с именем региона, а сам регион указывать глобально или при сохранении сообщения в очередь // controller: $this->notify->error('Сообщение 1'); ... $this->notify->error('Сообщение 2','','форма логина'); // view: $this->notify->getMessages(); // будет выведено Сообщение 1, Сообщение 2 остается в очереди ... $this->notify->getMessages('форма логина'); // будет выведено Сообщение 2 Пример использования в php: function some_action() { if ($result) { $this->notify->error('Часть данных не сохранена'); $this->notify->setData( json_encode(array('sum_count' => 4)) ); $this->notify->returnSuccess('Функция отработала'); } else $this->notify->returnError('Случилась какая-то ошибка'); } Пример использования в js: $.post(url,form_data,function(data) { var json = $.parseJSON(data); if (notifyIsSuccess(json)) { $(".sum").text(json.data.sum_count); notifySuccess('Запись суммы прошла успешно'); } notify(json); // выведет очередь сообщений, если таковые есть });
About
Библиотека уведомлений для codeigniter
Resources
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published