Новости 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 Гость просматривают эту тему.
  • 75 Ответов
  • 21225 Просмотров
*

lalalag

  • Захожу иногда
  • 162
  • 0 / 3
https://webors.in.ua/forma-obratnoy-svyazi-ajax-webfactor-form/
Сайт что то не работает.
А можно прямую ссылку на файл. Может на облако?
Спасибо за модуль. Пользуюсь с удовольствием)
*

ELiz

  • Новичок
  • 1
  • 0 / 0
Как сделать так, чтобы сообщения приходили на почту?
*

stalkerdp500

  • Новичок
  • 2
  • 0 / 0
Всем, привет! Отличный модуль, давно пользуюсь. Недавно заметил в консоле ошибку на страницах где включена форма
Uncaught TypeError: $(...).inputmask is not a function
    at HTMLDocument.<anonymous> (100-otdelochnik-gipsokartona:186)
    at c (jquery.min.js:3)
    at Object.fireWith [as resolveWith] (jquery.min.js:3)
    at Function.ready (jquery.min.js:3)
    at HTMLDocument.H (jquery.min.js:3)


jquery.min.js:3 подгружает библиотеку яндекса https://yandex.st/jquery/1.9.1/jquery.min.js она используется в форме, и можно ли ее както поменять?

Заранее извиняюсь, если вопрос глупый, в программировании не силен
*

tigra-uki

  • Давно я тут
  • 565
  • 11 / 0
  • Joom'лiстка
Здравствуйте, спасибо за отличный модуль!
Подскажите, пожалуйста, какие условия необходимы для того, чтобы на странице работало несколько модулей?
(если все кнопки модулей (PopUp) загружены в loadposition внутри других модулей)
В данный момент отображается только одна кнопка.

p.s.: извините, разобралась - было не включено "Обрабатывать плагинами" :(
« Последнее редактирование: 16.02.2018, 03:42:58 от tigra-uki »
Слишком сконцентрированное внимание необходимо разбавлять действием.
*

yugoru

  • Новичок
  • 1
  • 0 / 0
Скажите пожалуйста, а как можно сделать, чтобы все поля были обязательными для заполнения? В частности - очень нужно сделать чекбокс с согласием на обработку личных данных, и чтоб без него человек не мог отправить вопрос, и не могу найти как.
*

orsy

  • Захожу иногда
  • 400
  • 23 / 1
  • Web-Factor Ukraine
Ребята, простите если не отвечал долго. Видимо у меня слетела подписка на обновление данной темы. Сорри если кому-то не смог помочь вовремя.

Сейчас заканчивают новую версию модуля. Название тоже поменяется, теперь будет AWF Form, так вроде круче звучит )

Из новинок:
- переработана вкладка управления полями формы
- добавлено поле "Календарь"

В данный момент создаю инструкцию, которая будет постоянно висеть во вкладке с полями и в которой будет вся информация о том как обращаться с полями в колонке "Параметры поля"

Короче, держу к курсе )
*

Pizzadox

  • Осваиваюсь на форуме
  • 34
  • 0 / 0
orsy, а как можно прикрепить файл к сообщению? В форме таких настроек нет.
*

Eholov

  • Захожу иногда
  • 170
  • 14 / 0
orsy, спасибо за модуль. Очень понравился. Хорошо, что можно и PopUP окном и форму в станицу встроить. На этом сайте https://mwlogistics.ru/ Все формы контактов сделаны на этом модуле. Донат скидывал. Вот бы еще к нему капчу прикрутить.
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
спасибо за форму.
все работает, только вот горизонтальное центрирование модального окошка лучше делать через
Код
transform: translate(-50%, -50%);
тогда не придется ставить ему фиксированную ширину и подгонять потом фиксированный же отступ  ;)
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
здра.
почему-то модуль не работает на главной странице сайта - данные отсылаются, но при этом форма зависает в статусе отправления, а консоли видно 500 ошибку.
проверено на протостаре - те же грабли. на внутренних страница все ок.

UPD
сорян, нашел конфликтующий плагин, буду разбираться, что не нравится ему
*

yurykom

  • Захожу иногда
  • 73
  • 1 / 0
Доброго дня!
Подскажите, кто сталкивался. Как правильно настроить цель для Яндекс. До Google еще не дошел, но тоже нужно будет. Вставлял и в поле "JS код перед отправкой" и в "JS код после отправки". Может код какой-то неправильный, но разные варианты пробовал. Или перестает работать форма или работает, но не проходит в метрику. Есть рабочий вариант может у кого?
*

yurykom

  • Захожу иногда
  • 73
  • 1 / 0
Похоже, ошибка была в имени цели (имя использовалось в  url некоторых страниц сайта)
« Последнее редактирование: 04.02.2020, 12:15:05 от yurykom »
*

yurykom

  • Захожу иногда
  • 73
  • 1 / 0
Теперь вопрос, как одновременно передавать цели Яндекс метрики и Google аналитике. Пробовал писать через ;
не выходит
*

sergkh

  • Осваиваюсь на форуме
  • 48
  • 1 / 0
Загрузил модуль по ссылке https://webors.in.ua/ext_update/full_version/mod_ajax_webfactor_form_v2.0.8.zip
Установил. Вопрос: где календарь?
Цитировать
Из новинок:
- переработана вкладка управления полями формы
- добавлено поле "Календарь"
или я не то загрузил?
« Последнее редактирование: 06.03.2020, 21:25:19 от sergkh »
*

wayn

  • Захожу иногда
  • 72
  • 0 / 0
Почему лезут ошибки. Модуль переустанавливал, бестолку(((

Код
Warning: count(): Parameter must be an array or an object that implements Countable in 
public_html/modules/mod_ajax_webfactor_form/includes/buildfield.php on line 8

Warning: array_multisort(): Argument #1 is expected to be an array or a sort flag in
public_html/modules/mod_ajax_webfactor_form/includes/buildfield.php on line 189

Warning: count(): Parameter must be an array or an object that implements Countable in
public_html/modules/mod_ajax_webfactor_form/includes/buildfield.php on line 196

Warning: count(): Parameter must be an array or an object that implements Countable in
public_html/modules/mod_ajax_webfactor_form/includes/buildfield.php on line 254
*

Biss

  • Давно я тут
  • 995
  • 101 / 0
Это предупреждения. Скорее всего из за версии php
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Radical Form - бесплатная ajax форма обратной связи, которая не ломает дизайн

Автор Progreccor

Ответов: 304
Просмотров: 53609
Последний ответ 30.03.2025, 19:07:40
от folkemon
QuickForm - форма с функциями калькулятора и зависимыми полями

Автор varX

Ответов: 1332
Просмотров: 209978
Последний ответ 29.09.2021, 16:40:57
от varX
Форма обратной связи для Joomla 2.5

Автор ForQue

Ответов: 0
Просмотров: 3512
Последний ответ 10.01.2021, 10:57:08
от ForQue
Модуль конструктор формы обратной связи simpleForm2 для Joomla 1.0 / joostina 1.2

Автор vs12345

Ответов: 21
Просмотров: 23459
Последний ответ 25.09.2020, 16:21:22
от svarg
Perfect ajax Popup Contact Form не отправляет вложения

Автор fireman

Ответов: 0
Просмотров: 3309
Последний ответ 11.04.2019, 18:50:20
от fireman