Новости Joomla

Как триггерить события для плагинов на манер Joomla 5+?В Joomla 6 должны удалить метод...

Как триггерить события для плагинов на манер Joomla 5+?В Joomla 6 должны удалить метод...

👩‍💻 Как триггерить события для плагинов на манер Joomla 5+?В Joomla 6 должны удалить метод triggerEvent(), с помощью которого раньше вызывались события для плагинов. Теперь чтобы в своём коде вызвать событие для плагина и получить от него результаты нужно:- создать объект класса события- передать в него параметры

use Joomla\CMS\Event\AbstractEvent;use Joomla\CMS\Factory;use Joomla\CMS\Plugin\PluginHelper;// Грузим плагины нужных группPluginHelper::importPlugin('system');// Создаём объект события$event = AbstractEvent::create('onAfterInitUniverse', [    'subject' => $this,    'data'    => $data, // какие-то данные    'article' => $article, // ещё материал вдовесок    'product' => $product, // и товаров подвезли]);// Триггерим событиеFactory::getApplication()->getDispatcher()->dispatch(    $event->getName(), // Тут можно строку передать 'onAfterInitUniverse'    $event);// Получаем результаты// В случае с AbstractEvent это может быть не 'result',// а что-то ещё - куда сами отдадите данные.// 2-й аргумент - значение по умолчанию, // если не получены результаты$results = $event->getArgument('result', []);
Плюсы такого подхода - вам не нужно запоминать порядок аргументов и проверять их наличие. Если вы написали свой класс события, то в плагине можно получать аргументы с помощью методов $event->getArticle(), $event->getData(), $event->getProduct() и подобными - реализуете сами под свои нужды. Если такой класс события написали, то создаёте экземпляр своего класса события и укажите его явно в аргументе eventClass
use Joomla\Component\MyComponent\Administrator\Event\MyCoolEvent;$event = MyCoolEvent::create('onAfterInitUniverse', [    'subject'    => $this,    'eventClass' => MyCoolEvent::class, // ваш класс события    'data'       => $data, // какие-то данные    'article'    => $article, // ещё материал вдовесок    'product'    => $product, // и товаров подвезли]);
Ожидаемо, что класс вашего события будет расширять AbsractEvent или другие классы событий Joomla.🙁 Есть неприятный нюанс - нельзя просто так вызывать событие и ничего не передать в аргументы. Аргумент subject обязательный. Но если вы всё-таки не хотите туда ничего передавать - передайте туда пустой stdClass или объект Joomla\registry\Registry.
@joomlafeed#joomla #php #webdev

0 Пользователей и 1 Гость просматривают эту тему.
  • 122 Ответов
  • 62806 Просмотров
*

Slay

  • Осваиваюсь на форуме
  • 20
  • 1 / 0
Re: uddeIM 1.5
« Ответ #60 : 14.02.2010, 21:10:17 »
Все нашел причину. Проблема была в sh404SEF. Просто отключил его для Uddeim. Хотя со стандартным джумловским SEF'ом работает нормально.
*

alexanderussgold

  • Захожу иногда
  • 230
  • 1 / 0
Re: uddeIM 1.5
« Ответ #61 : 18.03.2010, 20:48:18 »
Кто решил вопрос с базой данной. Что чистить после обновления версии? Замучила эта ошибка.
*

wfedin

  • Завсегдатай
  • 1273
  • 102 / 0
Re: uddeIM 1.5
« Ответ #62 : 24.04.2010, 20:10:12 »
Следующая проблема: активировал оповещение юзеров по email при наличии сообщений в итоге стали приходить оповещения хоть на самом деле новых сообщений нет.
*

wfedin

  • Завсегдатай
  • 1273
  • 102 / 0
Re: uddeIM 1.5
« Ответ #63 : 28.04.2010, 00:09:36 »
В админке есть такая строка: Показывать всплывающее окно, когда приходит новое сообщение (необходимо установить исправленный модуль mod_cblogin)

Кто в курсе где брать этот модуль.
*

alnorton

  • Захожу иногда
  • 208
  • 8 / 0
Re: uddeIM 1.5
« Ответ #64 : 01.05.2010, 17:57:04 »
В админке есть такая строка: Показывать всплывающее окно, когда приходит новое сообщение (необходимо установить исправленный модуль mod_cblogin)

Кто в курсе где брать этот модуль.
поискать на джомлаполисе?
*

oc01

  • Захожу иногда
  • 315
  • 29 / 1
Re: uddeIM 1.5
« Ответ #66 : 05.05.2010, 14:26:44 »
В админке есть такая строка: Показывать всплывающее окно, когда приходит новое сообщение (необходимо установить исправленный модуль mod_cblogin)

Кто в курсе где брать этот модуль.
Нигде не надо его брать, достаточно в установленном выставить настройки:
Private Messaging System - uddeim
Private Messages Notification - одно из show
и будет праздник.
А "исправленный" модуль - это некачественный перевод на русский, подразумевается настроенный :) 
*

wfedin

  • Завсегдатай
  • 1273
  • 102 / 0
Re: uddeIM 1.5
« Ответ #67 : 06.05.2010, 15:27:38 »
Private Messages Notification - одно из show выбрано, но как я понимаю эта опция отвечает за отображение оповещения в самом модуле, всплывающего окна при этом нет.
*

oc01

  • Захожу иногда
  • 315
  • 29 / 1
Re: uddeIM 1.5
« Ответ #68 : 07.05.2010, 09:17:32 »
По поводу этого оповещения. У меня здесь проблемка, при нажатии на конверт ( ссылка http://сайт/index.php?option=com_uddeim&task=inbox&Itemid=100150) у админов нормально открывается инбокс, а у авторизованных пользователей дает ошибку 403 - Вы не авторизованы для просмотра этой страницы. При попытке изменить значение Itemid=100150 в настройках системы на другое результатов не дает, в ссылке Itemid не изменяется.
*

alnorton

  • Захожу иногда
  • 208
  • 8 / 0
Re: uddeIM 1.5
« Ответ #69 : 25.05.2010, 19:18:02 »
а что это джомлаполис?  ::)

это сайт родителей СВ (mod_cblogin в том числе)
http://www.joomlapolis.com/
*

scientificman

  • Захожу иногда
  • 161
  • 6 / 0
Re: uddeIM 1.5
« Ответ #70 : 10.06.2010, 14:21:38 »
А у меня с этим компонентом вот такая проблема.

Компонент интегрирован с CommunityBuilder-ом и форумом Kunena. Сообщения отправляются и получаются нормально. А вот уведомления о сообщениях имеют нормальную кодировку только. если отправляются непосредственно из интерфейса самого компонента. Если отправлять через CB или Kunena, то заголовок и тело письма - знаки вопроса вместо русских букв.

Не подскажите, где надо изменить кодировку? В плагинах искать или где еще? Пока ничего не смог раскопать.
*

wfedin

  • Завсегдатай
  • 1273
  • 102 / 0
Re: uddeIM 1.5
« Ответ #71 : 10.06.2010, 16:41:22 »
а в настройках uddeIM какая кодировка, а в .htaccess пробовал кодировку прописать?
*

scientificman

  • Захожу иногда
  • 161
  • 6 / 0
Re: uddeIM 1.5
« Ответ #72 : 10.06.2010, 17:04:55 »
В настройках UddeIM везде стоит UTF-8.
Цитировать
.htaccess пробовал кодировку прописать?
Нет, не пробовал. Это что-то типа:
Код
AddDefaultCharset UTF-8
А этот параметр разве на почту влияет?
*

wfedin

  • Завсегдатай
  • 1273
  • 102 / 0
Re: uddeIM 1.5
« Ответ #73 : 10.06.2010, 19:03:00 »
Незнаю, просто даю идеи, всё что в голову приходит.
Иногда ещё при парковке домена предлагается выбрать кодировку будущего сайта, к примеру в  ISPmanager
*

scientificman

  • Захожу иногда
  • 161
  • 6 / 0
Re: uddeIM 1.5
« Ответ #74 : 10.06.2010, 19:43:30 »
Хотел бы подчеркнуть, что сам компонент работает отлично. Проблемы с кодировкой информационных почтовых сообщений возникают лишь при отправке сообщений через CB и Kunena.
*

wfedin

  • Завсегдатай
  • 1273
  • 102 / 0
Re: uddeIM 1.5
« Ответ #75 : 10.06.2010, 22:20:08 »
Ну если никак, то стоит переставить компонент и прежде вычистить все таблицы из бд перед тем как установить по новой, если конечно вы не на рабочем сайте
*

scientificman

  • Захожу иногда
  • 161
  • 6 / 0
Re: uddeIM 1.5
« Ответ #76 : 10.06.2010, 22:51:59 »
Вообще-то сайт рабочий :)
А зачем же так радикально? Может просто кодировку полей каких-то поменять нужно? Или может какие-то языковые файлы не в той кодировке?
*

wfedin

  • Завсегдатай
  • 1273
  • 102 / 0
Re: uddeIM 1.5
« Ответ #77 : 11.06.2010, 15:57:00 »
Ну языковые файлы похоже неприичём, иначе все бы маялись, скорее проблема в бд, действительно может в каком поле не та кодировка.
*

scientificman

  • Захожу иногда
  • 161
  • 6 / 0
Re: uddeIM 1.5
« Ответ #78 : 11.06.2010, 16:12:38 »
Все текстовые поля всех таблиц базы с префиксом jos_uddeim_ имеют формат utf8_general_ci. То же и с таблицами jos_fb_ (Kunena) и jos_comprofiler_ (CB). Я так думаю, что почтовое сообщение формируется в разных случаях разными скриптами. Может скриптовые файлы имеют не UTF-8 кодировку? В общем ковыряюсь...
*

scientificman

  • Захожу иногда
  • 161
  • 6 / 0
Re: uddeIM 1.5
« Ответ #79 : 01.07.2010, 14:06:15 »
Решил таки эту проблему!
 ^-^
Лечится путем перекодирования файла administrator/components/com_uddeim/language/russian.php в UTF-8 без BOM!
Все же дело в языковом файле оказалось. Насколько я понял UddeIM сам по себе берет языковый файл из administrator/components/com_uddeim/language.utf8/, а при работе с плагинами из каталога, указанного выше.
*

andreysmolin

  • Захожу иногда
  • 274
  • 2 / 2
  • -=полёт нормальный=-
Re: uddeIM 1.5
« Ответ #80 : 18.07.2010, 11:19:15 »
есть ли аналоги? а то под кунену как то не очень смотрится?
*

andreysmolin

  • Захожу иногда
  • 274
  • 2 / 2
  • -=полёт нормальный=-
Re: uddeIM 1.5
« Ответ #82 : 18.07.2010, 15:01:33 »
встречный вопрос . Где взять шаблон?


все нашел. в шапке. а где шаблоны для сообества коммунити булдер хапнуть?
« Последнее редактирование: 18.07.2010, 15:47:34 от andreysmolin »
*

andreysmolin

  • Захожу иногда
  • 274
  • 2 / 2
  • -=полёт нормальный=-
Re: uddeIM 1.5
« Ответ #83 : 18.07.2010, 16:05:41 »
как вписать это в кунену чтобы с главной страницы зайти можно было
*

wfedin

  • Завсегдатай
  • 1273
  • 102 / 0
Re: uddeIM 1.5
« Ответ #84 : 15.08.2010, 00:32:10 »
Растолкуйте кому не сложно
Цитировать
When you upgrade 2.0 to 2.1:
    ============================
        ALTER TABLE `jos_uddeim` ADD `systemflag` INT( 1 ) NOT NULL DEFAULT '0' ;
        ALTER TABLE `jos_uddeim` ADD INDEX ( `systemflag` ) ;
        UPDATE `jos_uddeim` SET `systemflag` = 1 WHERE `systemmessage` != '' OR `systemmessage` IS NOT NULL ;
        UPDATE `jos_uddeim` SET `systemflag` = 2 WHERE `fromid` = `toid` ;
*

jeka444

  • Захожу иногда
  • 53
  • 1 / 0
Re: uddeIM 1.5
« Ответ #85 : 20.08.2010, 18:24:15 »
а как сделать уведомление о новых сообщениях всплывающем окне?
*

AHTOH

  • Захожу иногда
  • 104
  • 8 / 1
Re: uddeIM 1.5
« Ответ #86 : 10.09.2010, 19:37:30 »
Чет не понял. Где русский то достать для версии 2.1 ?
*

AHTOH

  • Захожу иногда
  • 104
  • 8 / 1
Re: uddeIM 1.5
« Ответ #88 : 10.09.2010, 20:09:58 »
Ступил. Прошу прощения. Кроме русского там и других дофигища :)))
*

PrazdNik

  • Новичок
  • 5
  • 0 / 0
Re: uddeIM 1.5
« Ответ #89 : 15.11.2010, 19:30:54 »
Ребята, подскажите можно ли сменить оформление поля сообщений? а то не солидно как-то...вот эти лини убрать бы или заменить чемнить
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Использование uddeIM на Joomla 3.9

Автор Mick_20

Ответов: 9
Просмотров: 4631
Последний ответ 12.10.2023, 10:06:59
от GuN
uddeIM - имена пользователей

Автор smls

Ответов: 0
Просмотров: 1403
Последний ответ 06.03.2018, 17:11:33
от smls
не могу установить PMS Uddeim

Автор oc47

Ответов: 3
Просмотров: 2406
Последний ответ 05.07.2016, 13:43:09
от deVetal
есть ли у кого-нибудь премиальные плагины uddeIM 3.6?

Автор tehfoxen

Ответов: 0
Просмотров: 1880
Последний ответ 07.12.2015, 12:42:07
от tehfoxen
Вставка переменной в uddeim

Автор Валерон163

Ответов: 0
Просмотров: 1804
Последний ответ 26.11.2015, 13:09:37
от Валерон163