Тема мода Quick reply for phpBB3 - Быстрый ответ
В процессе эксплуатации накопилось несколько однотипных пожеланий от пользователей различных форумов. В этой теме я покажу парочку доработок, которые уже стали для меня стандартными.
I. вставка ника пользователя.
Немодифицированный viewtopic_body выводит ник пользователя в двух местах - над сообщением, рядом с датой сообщения и сбоку, в минипрофиле, рядом с аватарой. Оба ника ведут на страничку профиля пользователя.
При установке формы БО мы получаем, что один из ников по прежнему является ссылкой на профиль, а второй (тот что рядом с аватарой) становится возможностью вставить ник пользователя в поле быстрого ответа.
И это большая засада для многих пользователей. Причина проста - путают. Обидно, если ты набрал длинное сообщение, захотел вставить ник собеседника, а вместо этого улетел к нему в профайл, потеряв несохраненный ответ.
Мое решение в данном случае просто: переделываем оба ника на возможность вставки в форму БО, а для ссылки на профиль используем специальную кнопку.
Инструкция по установке БО содержит такие директивы:
Open:
styles/prosilver/template/viewtopic_body.html
Find
Код: Выделить всё
<!-- IF not postrow.U_POST_AUTHOR --><strong>{postrow.POST_AUTHOR_FULL}</strong><!-- ELSE -->{postrow.POST_AUTHOR_FULL}<!-- ENDIF -->
Код: Выделить всё
<!-- We use "\r\n" newline here because insert_text() JS function doesn't insert newline with "\n" (at least in Windows) -->
<!-- IF QUICK_REPLY --><a href="#postform" onclick="insert_text('[b]{postrow.POSTER_QUOTE}[/b]\r\n'); return false;"<!-- IF postrow.POST_AUTHOR_COLOUR --> style="color: {postrow.POST_AUTHOR_COLOUR}" <!-- ENDIF -->>{postrow.POST_AUTHOR}</a><!-- ELSE --><!-- IF not postrow.U_POST_AUTHOR --><strong>{postrow.POST_AUTHOR_FULL}</strong><!-- ELSE -->{postrow.POST_AUTHOR_FULL}<!-- ENDIF --><!-- ENDIF -->
Сделаем аналогично и со вторым ником:
Открыть:
styles/prosilver/template/viewtopic_body.html
Найти строку
Код: Выделить всё
<p class="author"><!-- IF S_IS_BOT -->{postrow.MINI_POST_IMG}<!-- ELSE --><a href="{postrow.U_MINI_POST}">{postrow.MINI_POST_IMG}</a><!-- ENDIF -->{L_POST_BY_AUTHOR} <strong>{postrow.POST_AUTHOR_FULL}</strong>
Код: Выделить всё
<strong>{postrow.POST_AUTHOR_FULL}</strong>
Код: Выделить всё
<!-- We use "\r\n" newline here because insert_text() JS function doesn't insert newline with "\n" (at least in Windows) -->
<!-- IF QUICK_REPLY --><a href="#postform" onclick="insert_text('[b]{postrow.POSTER_QUOTE}[/b]\r\n'); return false;"<!-- IF postrow.POST_AUTHOR_COLOUR --> style="color: {postrow.POST_AUTHOR_COLOUR}" <!-- ENDIF -->>{postrow.POST_AUTHOR}</a><!-- ELSE --><!-- IF not postrow.U_POST_AUTHOR --><strong>{postrow.POST_AUTHOR_FULL}</strong><!-- ELSE -->{postrow.POST_AUTHOR_FULL}<!-- ENDIF --><!-- ENDIF -->
Бывают пользователи, которые не догазываются, что при щелчке на нике можно вставить его в форму БО.
Логично будет сделать всплывающую подсказку.
Сначала добавим языковые переменные
Открыть: language/ru/mods/quick_reply.php
Найти
Код: Выделить всё
'QUOTE_TEXT' => 'Выделите текст в сообщении',
Код: Выделить всё
'QUOTE_USERNAME' => 'Вставить имя пользователя',
Затем идем в styles/prosilver/template/viewtopic_body.html
И в ДВУХ местах правим ссылку, добавляя к тегу А свойство title :
Найти
Код: Выделить всё
<!-- IF QUICK_REPLY --><a href="#postform" onclick
Код: Выделить всё
<!-- IF QUICK_REPLY --><a href="#postform" title="{L_QUOTE_USERNAME}" onclick
III. кнопка "Быстрая Цитата"
Многие считают неудобной маленькую текстовую ссылку для цитирования выделенного сообщения.
Чуть позже расскажу, как ее заменить на удобную кнопку в стиле Prosilver: А пока антракт