
События как найти?
События как найти?
Такая проблемма! Не могу разобраться с событиями.
Всё перерыл. Нашел вот что. Модуль selfRegistration Для него зарегистрировано событие в базе данных onNewUser в таблице events. Но где посмотреть код который выполняется при этом событии! Если можете Опишите подробно про события в CMS Made Simple. Прям голова болит. Столько времени трачу. Зараннее благодарен

Last edited by ccopa on Mon Jul 27, 2009 5:10 am, edited 1 time in total.
Re: События как найти?
Никакой код там сам по себе не выполняется. Но к этому событию можно прицепить свой php код, например, при помощи пользовательского тега.ccopa wrote: Но где посмотреть код который выполняется при этом событии!
Re: События как найти?
А какой конкретно прицеплен код к onNewUser как узнать? А то не могу совсем разобраться! И как его крепить! Например разобрался что в модуле можно создать файл events.КАКОЕ-ТО СОБЫТИЕ.php а какой код прицеплен к onNewUser не понятно.
Re: События как найти?
ccopa wrote: А какой конкретно прицеплен код к onNewUser как узнать? А то не могу совсем разобраться! И как его крепить! Например разобрался что в модуле можно создать файл events.КАКОЕ-ТО СОБЫТИЕ.php а какой код прицеплен к onNewUser не понятно.
Sonya wrote:Никакой код там сам по себе не выполняется. Но к этому событию можно прицепить свой php код, например, при помощи пользовательского тега.ccopa wrote: Но где посмотреть код который выполняется при этом событии!
Re: События как найти?
ОГРОМНОЕ СПАСИБО Sonya ЧТО ПОМОГАЕТЕ!
Ну а какой КОНКРЕТНО ПРИКРЕПЛЁН!!! ??? Всё равно не понятно! Если можно напишите как прикреплять! У меня всего только 2 пользовательских тега. И ни один не подходит под событие onNewUser. Пришлите пожалуйста примеры (Создание, прикрепление, вызов.) Хотя бы простого какого-нибудь события! ???
Я хоть программист по образованию. Но видимо без примеров не обойдусь!
Ну а какой КОНКРЕТНО ПРИКРЕПЛЁН!!! ??? Всё равно не понятно! Если можно напишите как прикреплять! У меня всего только 2 пользовательских тега. И ни один не подходит под событие onNewUser. Пришлите пожалуйста примеры (Создание, прикрепление, вызов.) Хотя бы простого какого-нибудь события! ???
Я хоть программист по образованию. Но видимо без примеров не обойдусь!
Last edited by ccopa on Mon Jul 27, 2009 10:44 am, edited 1 time in total.
Re: События как найти?
В любом модуле могут быть события (могут и не быть - зависит от разработчика модуля). На каждое событие можно "прицепить" свой код в форме пользовательского тега.
Пример пользовательского тега:
Этот код выcылает мэйл на адрес my@email.com, с содержанием 'This is the body text'.
Привязка тега к событию
1. Расширения -> События
2. Выбрать желаемое событие, например, ContentEditPost (выполняется каждый раз, когда меняется контент).
3. Выбрать тег, который должен выполняться из списка тегов.
В этом примере мэйл будет отсытлаться каждый раз, когда контент редактируется.
ДОПОЛНИТЕЛЬНО: События также передают параметры в теги Array() $params . Таким образом можно сделать условие, например, отсылать мэйл только при изменении определенных страниц.
Пример пользовательского тега:
Code: Select all
global $gCms;
$cmsmailer =& $gCms->modules['CMSMailer']['object'];
$cmsmailer->AddAddress('my@email.com','My Name');
$cmsmailer->SetPriority(1);
$cmsmailer->SetFrom('sender@email.com');
$cmsmailer->SetFromName('Sender Name');
$cmsmailer->SetBody('This is the body text');
$cmsmailer->IsHTML(true);
$cmsmailer->SetSubject('This is the subject');
$cmsmailer->Send();
Привязка тега к событию
1. Расширения -> События
2. Выбрать желаемое событие, например, ContentEditPost (выполняется каждый раз, когда меняется контент).
3. Выбрать тег, который должен выполняться из списка тегов.
В этом примере мэйл будет отсытлаться каждый раз, когда контент редактируется.
ДОПОЛНИТЕЛЬНО: События также передают параметры в теги Array() $params . Таким образом можно сделать условие, например, отсылать мэйл только при изменении определенных страниц.
Last edited by Sonya on Mon Jul 27, 2009 12:23 pm, edited 1 time in total.
Re: События как найти?

Иначе говоря все кому не лень назначают события вызывают их из своих скриптов, Если к этому событию не привязан пользовательский тег грубо говоря ничего не выполняется!. Думаю я правильно понял.
ОГРОМНОЕ спасибо Sonya
Re: События как найти?
Все верно. Надо бы это, наверное, в вики запихать.ccopa wrote: Значит по умолчанию в основном события пустые. Т.е. Они просто есть! Если в расширениях не указаны теги пользователя привязаные к этому событию!
Иначе говоря все кому не лень назначают события вызывают их из своих скриптов, Если к этому событию не привязан пользовательский тег грубо говоря ничего не выполняется!. Думаю я правильно понял.