| Виктор |
|
|---|---|
#45067 jCube Group: не нашел сейчас пробую отловить, на каком то этапе эти сообщения хранятся в $_SESSION, но после полного обновления страницы массив пустой
[cot_messages] => Array
(
)
попробую их как то перехватить
Додано 2 години потому: не работает, может разработчики что подскажут, единственное что пришло - добавить к сесии если ошибка $_SESSION['cot_alert_messages'] = "error"; и уже в файле обработать
if (!empty($_SESSION['cot_alert_messages']))
{
$rv_msg = cot_custom_alert('error', $_SESSION['cot_alert_messages']);
unset($_SESSION['cot_alert_messages']);
}
можно доработать все это доработать к функции, и добавить например вывод с помощью toastr
function cot_custom_alert($type, $message) {
switch ($type)
{
case "info":
return "<script> toastr.info('" . $message . "'); </script>";
break;
.....
Додано 12 годин потому: UPD насколько я понял, почему сообщения не выводятся, если по хуку модуля подключены еще плагины, и перед загрузкой плагина test загружается другой и в нeм присутствует cot_display_messages($t); то функция cot_clear_messages(); удаляет массив с сообщениями в $_SESSION['cot_messages'][$sys['site_id']] и далее соответственно в плагине test нечего выводить или вернее вывод делается на первом подключаемом плагине как у меня на отдельной вкаладке что не есть гуд в моем случае (так как пдключены к модулю две формы и плюс комментарии) нужно вывод сообщений прописать в модуле сразу после обьявления шаблона cot_display_messages($t); перед хуком подключаемых плагинов и прописать в нужном месте шаблона модуля вывод {FILE "{PHP.cfg.themes_dir}/{PHP.cfg.defaulttheme}/warnings.tpl"}, следовательно в плагинах cot_display_messages($t) можно удалить, теперь все сообщения будут выводится в нужном месте Думаю вопрос решен! Dit bericht is bewerkt door Виктор (2020-09-03 07:25, 5 jaren ago) |