Страница 3 из 14

Re: Пожелания дополнений Event List

Добавлено: 04.08.2015 15:36
Sumanai
2PiK писал(а): в файле overall_header.html после
для добавления своих каналов новостей,
На самом деле не важно, где конкретно будут располагаться ссылки на каналы новостей, так что можно использовать смело overall_header_head_append.

Re: Пожелания дополнений Event List

Добавлено: 04.08.2015 21:24
2PiK
я знаю, но хотелось бы и вариант "всё в одном месте".

Re: Пожелания дополнений Event List

Добавлено: 04.08.2015 23:15
rxu
2PiK писал(а): нужны события в шаблонах:
1. в файле search_body.html
https://tracker.phpbb.com/browse/PHPBB3-14066
https://github.com/phpbb/phpbb/pull/3805
2PiK писал(а): для добавления своих каналов новостей
https://tracker.phpbb.com/browse/PHPBB3-14067
https://github.com/phpbb/phpbb/pull/3806
2PiK писал(а): в файле mcp_forum.html, в файлах отображения списков тем viewforum_body.html, search_results.html есть события в одних и тех же местах с одинаковыми названиями, такие же нужны и в том файле
Оно?
https://tracker.phpbb.com/browse/PHPBB3-13863
https://github.com/phpbb/phpbb/pull/3628
2PiK писал(а): вообще события нужны и в php файлах, т.к. там нет возможности делать свои каналы новостей, но это другой вопрос
Пишите, посмотрим.

Re: Пожелания дополнений Event List

Добавлено: 05.08.2015 9:01
2PiK
rxu писал(а): Оно?
ага ..

Re: Пожелания дополнений Event List

Добавлено: 05.08.2015 10:52
ostridm
Прошу добавить

search.php
два события, цель - модификация sql запроса а именно order by clause
1

Код: Выделить всё

            $vars = array('sql');
            extract($phpbb_dispatcher->trigger_event('core.search_topics_sql', compact($vars)));
перед

Код: Выделить всё

            // Only return up to $total_matches_limit+1 ids (the last one will be removed later)
            $result = $db->sql_query_limit($sql, $total_matches_limit + 1);
2

Код: Выделить всё

                $vars = array('sql');
            extract($phpbb_dispatcher->trigger_event('core.search_get_topic_data_sql', compact($vars)));
сразу после

Код: Выделить всё

            $sql = "SELECT $sql_select
                FROM $sql_from
                WHERE $sql_where";
            $sql .= ' ORDER BY ' . $sort_by_sql[$sort_key] . ' ' . (($sort_dir == 'd') ? 'DESC' : 'ASC');
либо передать в core.search_get_topic_data переменные $sort_by_sql , $sort_key

viewforum_body.html
обрамление эвентами li.row > dl сразу после открытия элемента li.row и перед его закрытием
либо как search_results_topic_before

Код: Выделить всё

<!-- EVENT topiclist_topic_before -->
<!-- EVENT topiclist_topic_after -->
Отправлено спустя 1 минуту :
сейчас приходится делать наследование стиля и менять search.php - ниудобнинька

Re: Пожелания дополнений Event List

Добавлено: 05.08.2015 11:01
rxu
Используйте теги code, а то каша получается, трудно разобрать.

Re: Пожелания дополнений Event List

Добавлено: 05.08.2015 12:35
2PiK
Нужны события в php файлах (примеры под спойлером):

1. в файле /includes/message_parser.php в функции format_display есть событие после обработки бб-кодов в тексте (modify_format_display_text_after), нужно событие до обработки бб-кодов
Скрытый текст
добавить

Код: Выделить всё

		$text = $this->message;
		$uid = $this->bbcode_uid;

		$vars = array('text', 'uid', 'allow_bbcode', 'allow_magic_url', 'allow_smilies', 'update_this_message');
		extract($phpbb_dispatcher->trigger_event('core.modify_format_display_text_before', compact($vars)));

		$this->message = $text;
		$this->bbcode_uid = $uid;
перед

Код: Выделить всё

		if ($this->message_status == 'plain')
		{
2. в файле /includes/functions_admin.php в функцию move_posts добавить событие после перемещения сообщений (там нет ни одного события)
Скрытый текст
добавить

Код: Выделить всё

	$vars = array(
			'topic_id',
			'post_ids',
			'forum_row',
	);
	extract($phpbb_dispatcher->trigger_event('core.move_posts_after_query', compact($vars)));
перед

Код: Выделить всё

	if ($auto_sync)
	{
		$forum_ids[] = (int) $forum_row['forum_id'];
в функцию delete_posts добавить событие перед удалением сообщений, в этой функции есть целых 3 события, 1 до получения id сообщений которые нужно удалить (delete_posts_before) и 2 уже после удаления (delete_posts_in_transaction, delete_posts_after), конкретно в моём случае возникает проблема, мне нужно получить список вложений которые были в удаляемых сообщениях, в первом событии ещё нет id сообщений, а в других они есть, но события идут после удаления вложений из сообщений. Можно скопировать код из форума и аналогичным образом определить id сообщений через первое событие, но наверное это не самый нормальный вариант(?), поэтому нужно или добавить ещё одно событие, или поднять одного из событий выше функции удаления вложений (delete_attachments)
Скрытый текст
добавить

Код: Выделить всё

	$vars = array(
			'table_ary',
			'post_ids',
	);
	extract($phpbb_dispatcher->trigger_event('core.delete_posts_before_query', compact($vars)));
после

Код: Выделить всё

	$table_ary = array(POSTS_TABLE, REPORTS_TABLE);
в функцию delete_attachments добавить событие перед получением id топиков, сообщений и удалением вложений (там нет ни одного события)
Скрытый текст
добавить

Код: Выделить всё

	$vars = array(
			'mode',
			'ids',
	);
	extract($phpbb_dispatcher->trigger_event('core.delete_attachments_before_query', compact($vars)));
перед

Код: Выделить всё

	// Collect post and topic ids for later use if we need to touch remaining entries (if resync is enabled)

Re: Пожелания дополнений Event List

Добавлено: 05.08.2015 23:31
rxu
ostridm писал(а): обрамление эвентами li.row > dl сразу после открытия элемента li.row и перед его закрытием
Я могу догадаться, где это, но всегда лучше пальцем показать, что конкретно нужно.

Re: Пожелания дополнений Event List

Добавлено: 05.08.2015 23:35
владимир1983
rxu, а если шаблон в первом посте сделаем в тегах code не понятней будет?

Re: Пожелания дополнений Event List

Добавлено: 05.08.2015 23:40
rxu
ostridm писал(а): либо передать в core.search_get_topic_data переменные $sort_by_sql , $sort_key
Это заменит оба запрашиваемых события?

Отправлено спустя 19 секунд:
владимир1983 писал(а): а если шаблон в первом посте сделаем в тегах code не понятней будет?
Вряд ли.

Re: Пожелания дополнений Event List

Добавлено: 06.08.2015 1:09
rxu
2PiK писал(а): Нужны события в php файлах (примеры под спойлером)
https://tracker.phpbb.com/browse/PHPBB3-14072
https://github.com/phpbb/phpbb/pull/3813

и

https://tracker.phpbb.com/browse/PHPBB3-14073
https://github.com/phpbb/phpbb/pull/3814

Re: Пожелания дополнений Event List

Добавлено: 06.08.2015 6:30
ostridm
rxu писал(а):
ostridm писал(а): либо передать в core.search_get_topic_data переменные $sort_by_sql , $sort_key
Это заменит оба запрашиваемых события?
только второе

по шаблону вот так, две стрелочки изображены всвязи с четким отсутствием консистентности подхода по разным файлам, такое впечатление что эвенты ставятся не по плану а там где просят. реально нужна только одно событие и для валидности html лучше если она будет между li и dl

от тут viewforum_body.html
Изображение

как тут forumlist_body.html
Изображение

или тут search_result.html
Изображение

Re: Пожелания дополнений Event List

Добавлено: 06.08.2015 7:18
владимир1983
ostridm писал(а): от тут viewforum_body.html
Есть тег [code][/code] для размещения читаемого кода.
p.s. У тебя больше нет шансов ошибиться по нашим правилам.

Re: Пожелания дополнений Event List

Добавлено: 06.08.2015 7:23
ostridm
Поясните мысль про "нет шансов"?

Re: Пожелания дополнений Event List

Добавлено: 06.08.2015 7:42
Пчелкин
владимир1983 писал(а): Есть тег для размещения читаемого кода
Размещение рисунков с кодом - издевательство на все 100.. не?