список всех Event-ов системы

1871
решил отдохнуть минут пять от подготовки к госам - полез сюда на сайт, прочитал такую строку в комментах в одном из последних блогов
Максим шорин:
только эвентов таких не знаю ... куды бы их собрать в одно место...
пришла идея разыскать все Event-ы, которые есть в системе, сделал трудоёмкую работу и вуаля. правда пришлось потратить вместо пяти минут примерно пол часа перелопачивания файлов системы и копипаста
вобщем нашёл все строки во всех файлах такого типа
Код PHP:
cmsCore::callEvent('LOGINZA_BUTTON', array())
и выписал их все в отдельный фаил. теперь осталось дело за малым, нужна помощь от Вас, уважаемое сообщество.
собрать то в кучу я их собрал, только вот описание большей части не знаю.
есть предложение (собственно просьба)
помогите кто чем сможет, я ниже сейчас напишу список всех эвентов найденых мной в системе, но без описания. впереди будет написано к какому компоненту относится данный эвент. в комментах если вы знаете что он обозначает, опишите его, после чего я в шапке тут подпишу, что он обозначает. как все будут описаны, попробуем перенести эту статейку в вики
сюда буду переносить описанные Event-ы
Код PHP:
===============банеры==================

===============блоги===================

==============доска объявлений=========

=============каталог===================

============клубы=====================

============комментарии===============

============контент====================

============форум====================

===============фото==================

============регистрация================

=========плагин логинзы================

============пользователи==============

============класс page==============

============класс user==============


а вот собственно полный список без описания

Код PHP:
===============банеры==================
GET_BANNER
CLICK_BANNER

===============блоги===================
ADD_POST_DONE	
ADD_BLOG
UPDATE_BLOG_AUTHORS
UPDATE_BLOG
GET_BLOGS
GET_BLOG
GET_POSTS
GET_POST
GET_LATEST_POSTS
GET_BEST_POSTS
GET_BLOG_CAT
GET_MODER_POSTS
GET_BLOG_AUTHORS
ADD_POST
ADD_BLOG_CAT
UPDATE_POST
UPDATE_BLOG_CAT
DELETE_POST
DELETE_BLOG
DELETE_BLOG_CAT

==============доска объявлений=========
GET_BOARD_CAT
GET_BOARD_SUBCATS
GET_BOARD_RECORDS
GET_BOARD_RECORD
ADD_BOARD_RECORD
UPDATE_BOARD_RECORD
DELETE_BOARD_RECORD

=============каталог===================
UPDATE_CATALOG_ITEM
RENEW_CATALOG_ITEM
GET_CATALOG_ITEM_IMAGE
ADD_CATALOG_ITEM
COPY_CATALOG_ITEM
DELETE_CATALOG_DISCOUNT
UPDATE_CATALOG_DISCOUNT
ADD_CATALOG_DISCOUNT
DELETE_CATALOG_CAT
UPDATE_CATALOG_CAT
ADD_CATALOG_CAT
COPY_CATALOG_CAT
GET_CATALOG_SUBCATS

============клубы=====================
GET_CLUBS
ADD_CLUB
UPDATE_CLUB
DELETE_CLUB

============комментарии===============
ADD_COMMENT
DELETE_COMMENT
GET_COMMENTS

============контент====================
GET_CONTENT_CAT
GET_CONTENT_CATS_TREE
GET_CONTENT_SUBCATS
GET_CONTENT_PUBCATS
GET_ARTICLES
GET_ARTICLE
ADD_ARTICLE_DONE
UPDATE_ARTICLE

============форум====================
GET_FORUM_THREAD
GET_FORUM_POSTS

===============фото==================
GET_PHOTO
DELETE_PHOTO
DELETE_PHOTOS
UPDATE_PHOTO
ADD_PHOTO
DELETE_ALBUM
UPDATE_ALBUM
ADD_ALBUM
GET_SUBALBUMS
============регистрация================
USER_BEFORE_REGISTER
USER_REGISTER
USER_LOGIN
USER_LOGOUT
USER_ACTIVATED

=========плагин логинзы================
LOGINZA_AUTH
LOGINZA_BUTTON

============пользователи==============
GET_USER
GET_NEW_FRIENDS
DELETE_USER
DELETE_USER_GROUP
ADD_USER_PHOTO_ALBUM
GET_USER_ALBUMS
GET_USER_UPLOADED_PHOTOS

============класс page==============
PRINT_PAGE_HEAD
PRINT_PAGE_BODY
GET_BBCODE_BUTTON

============класс user==============
GET_WALL_POSTS
CHECK_AWARDS

[Хак] Выйти/войти и остаться на той же странице | Модуль для бесплатной версии компонента "Попутчики" автора Олег
Теги: система, event
Комментарии (16)
Марат 16 июня 2012 в 12:50 +4
+ Молодец! Не поленились.
Плагины это серьезное оружие, несмотря на малый объем работы. Можно многое реализовать с помощью них. Имеют большое значение для системы.
Список эвентов полезно иметь под рукой. Хотя бы, чтобы знать, какие есть и применять. А вот насчет описаний, нужно ли? Кому нужно, тот и сам разберется. Тем более, что интуитивно по названию можно определить, что за эвент. А там уже, который нужен, нужно открывать и ковыряться. Потому что в плагины передаются различные переменные. Где то это просто строка, где то массив... И в любом случае нужно разбираться со значением переменных.
Кроме того, хочу обратить внимание. У многих вызывает затруднение. Вызов самого метода. Первый вариант может иметь такой вид:
Код PHP:
cmsCore::callEvent('ADD_ARTICLE_DONE', $article);
В данном случае, в самом плагине мы можем исполнять произвольный код и даже не заморачиваться с тем, что вернуть. Плагин будет работать.
Второй вариант:
Код PHP:
$cat = cmsCore::callEvent('GET_CONTENT_CAT', $cat);
Вот тут уже нужно поаккуратнее. Хотя в самом плагине и можем исполнять произвольный код и даже можем и не затрагивать полученные плагином данные, но вернуть обратно переменную $cat мы обязаны. Иначе не будет работать. Это важно.
В общем, эвенты и плагины это значимо. Спасибо за список. Пригодится.
Sergey Platonov 16 июня 2012 в 12:58 0
ну это уже по разработке плагинов, по ним бы не мешало отдельную статейку. тут же я просто просканил папку с движком и получил список файлов, где встречается
Код PHP:
cmsCore::callEvent
после чего открыл каждый и выписал все

ps - описание каждого думаю всё-таки не повредит, хотя больше половины можно интуитивно догадаться
pss - это из стандартного релиза 1.9 (без дополнительных компонентов, плагинов и прочего)
Mr.Andreius 16 июня 2012 в 20:24 0
добавил в закладки
пригодиться попозже...
Марат 16 июня 2012 в 12:55 +1
Кстати, госсы, да и любой экзамен хорошо учится в последнюю ночь перед испытанием. А до этой последней ночи нужно хорошо отдыхать и гулять )))
Оффтоп и шутка, конечно ))))
Sergey Platonov 16 июня 2012 в 13:04 0
[оффтоп]спасибо конечно - у меня и так пятая точка уже в мозолях, хоть действительно иди и напейся, забудься и так далее, чтоб к госам тебя с собаками искали - "а где же наш серожа пропал". а если учесть, что я не пью и не шастаю по клубам каждую пятницу, то если я исчезну и найдут меня в пьяном угаре, для группы это будет шок ))) [/оффтоп]
lezginka.ru 16 июня 2012 в 13:37 0
Sergey , к драке(читай к экзамену) надо готовится заранее, а в процессе ничего не поменять, все идет СВОИМ ходом, практически без изменений :)
поэтому смысла напрягаться уже нет, расслабся, все пойдет СВОИМ ходом(что иногда нас может и не устроит)
letsgo 16 июня 2012 в 14:05 0
Плагины вещь очень хорошая. Реализуются многие интересные задачи.
К экзаменам да, готовиться в последнюю ночь лучше и выходить отвечать самым первым. Тогда будет 5. Это из моей практики.
Димитриус 16 июня 2012 в 14:51 +1
Я думаюпора это оформлять в вики так как снова забудется всё это. http://instantcms.ru/forum/thread6309.html Писал уже на эту тему.
Димитриус 16 июня 2012 в 14:57 +1
ДА еще, можно вписывать свои события. Пример можете посмотреть тута: Плагин авто включения сайта. Для работы скрипта я добавляю новое событие в файл индекс пхп. SITY_OFF по которому смотрю включен режим выключенного сайта или нет.
Sergey Platonov 16 июня 2012 в 15:08 0
ух ты ж... не видел этого поста полуторогодичной давности. поиск тоже не выдавал. надо точно в вики вынести, но предварительно описать. да и вообще не мешало бы в вики порядок навести, а то там небольшой бардак, точнее там практически ничего не обновлялось с версии 1.5 - много картинок и описаний для той версии. а скоро уже 1.9.1 выйдет не говоря уже и о второй ветке
Димитриус 16 июня 2012 в 15:14 +1
Тут нужен такой подход:
1. Раздел для пользователей для програмистов
2. В раздел для пользователей делать небольшие видяшки о том как что настраивать, как с чем работать.
3. В раздел для програмистов описать методы, события. Пару видяшек примеров по разработке компонентов, модулей плагинов.
Sergey Platonov 16 июня 2012 в 15:22 0
согласен вполне, но я сейчас неадекват чем либо заниматься - потом стукнусь админам в аську по поводу Team/Join и заодно оговорю по поводу вики и прочего пополнения сайта статьями и уроками. если меня никто не опередит - то в вики вынесу. но это потом - щас пока админов не трогаю
Димитриус 16 июня 2012 в 15:35 0
Ну тут не должно быть такова кто опередит, нужна группа каждый занимается своим. Каждому понемножку вот и дело большое сделаем!
Sergey Platonov 16 июня 2012 в 15:38 0
я не к тому что кто вперёд, тому и слава и тд. я к тому, что мне щас надо учёбу закончить, а потом за что либо браться - это ж не работа и не учёба, а хобби
Максим Шорин 17 июня 2012 в 11:06 +3
Sergey Platonov, от меня тебе сразу пожизненные плюсы =)))

Я правда всю ночь не знал как реагировать на пост из за моего коммента, да и сейчас не знаю, но думаю что реально полезную вещицу сделал ты, Марату огромный респект, по большей части все тут самоучки, по возвращаемым значениям очень маленькую но полезную лекцию провел, было бы классно если бы еще мастер-классы в своем блоге выкладывал как будет время joke , так что по крайней мере от тебя очень буду ждать..

Дальше по Dimitrius - раньше всех выложил когда то все эвенты, димитриус еще хреначил компоненнты когда я еще php не знал что такое, пару блогов назад показал отличную фишку как свои эвенты цеплять, молодчина !!! я рад что я у него в друзьях !! и надеюсь что он меня еще и не такому научит !!

Вобщем, я рад что волей судьбы оказался тут, рад что вокруг много таких же как и я, рад что я с вами .. правда
Максим Шорин 17 июня 2012 в 11:17 +1
Чуть не забыл про главного человечка - Игорь. Честный и справедливый, который прет без чекпоинтов.. только наверное из за него меня еще не забанили =)))