Как не потерять текст при написании топика



Порой при добавлении/редактировании топика случаются казусы, при которых можно потерять уже написанный/отредактированный текст. Например, случайно закрыли вкладку, перешли назад, кликнули по какой-либо ссылке и т.п.

Чтобы избежать этого, мы можем выводить предупреждение по событию beforeunload, т.е. перед тем как пользователь покидает страницу. Только перед этим проверим были ли изменения в полях ввода.

Как реализовать?
Необходимо на страницах добавления и редактирования топика добавить скрипт. На мой взгляд проще всего это сделать через php-хук движка:
Читать дальше →

Несколько вопросов.

Здравствуйте все! Хоть и запоздало, но поздравляю всех читающих с новым годом и желаю веселых праздников.
У меня возникло пара вопросов, но чтобы не создавать кучу топиков, я задам их тут.
1. Как можно сравнить две даты не используя unix timestamp?
Мне нужно убедиться, что указанная дата не в будущем, а в прошлом, а timestamp не подходит потому что проверяемая дата может быть гораздо раньше, чем 1 января 1970г. Или это ничего?

2. Что будет, если абсолютно полностью удалить функционал хуков? Опирается ли какой-нибудь функционал чистого ЛС на них, или же чистый ЛС их не использует?

3. Хочу полностью сменить «people» на «users», не только в настройках роутера, но и само название, потому что «people» хочу использовать под другие цели. Как я понимаю, нужно полностью сменить названия экшенов и энтити во всех файлах. Помню, что какой-то редактор умел это делать автоматически, но не помню какой. Можете подсказать?

Условие для вывода шаблонного хука (решено)

Имеется шаблонный хук {hook run='superhook'}.
В шаблоне выводится так:
<div class="superblock">
    {hook run='superhook'}
</div>

Если по этому хуку ничего не выводится, то мы имеем пустой блок (без содержимого).
Можно ли выводить этот блок по условию что по хуку что-либо выводится? Примерно так:
{if "что-то выводиться по хуку superhook"}
    <div class="superblock">
        {hook run='superhook'}
    </div>
{/if}

Хук на выводе результата поиска

Коллеги, а есть ли хук (наподобие «topics_list_show») на выводе списка топиков в поиске, т.е. по пути /search/topics/…? Искал по исходникам, пока не смог найти, буду благодарен за подсказку.

И то же самое интересует для вывода комментариев в поиске (/search/comments/…).

Вопрос по поводу хука (Решено)

Доброго времени суток, камрады,

Пишу плагин, который должен добавить дополнительные проверки при создании топика и в случае необходимости прервать размещение топика.
Нашел хук topic_add_before, который выполняется перед непосредственным размещением топика в блоге. Вешаю на него обработчик, в котором осуществляются нужные мне проверки.
Каким образом можно прервать дальнейшее выполнение экшена из хука?

Нашел этот топик, но там ответ не был четко сформулирован.

Контроль порядка выполнения хуков в шаблоне

Есть планин А, есть плагин Б. Оба плагина с помощью хука Hook_1 делают инъекцию кода в шаблон.
Как упорядочить очередность инъекции через один хук?

Нашел lifehack, вручную прописать очередность подключения плагинов в plugins.dat, но это поможет не всегда.
Если кто знает, подскажите, пожалуйста.

хуки

Прочитал все на данный момент работающую тех. документацию, но все равно не понимаю где лежат стандартные хуки например шаблона.

У меня вообще сложилось впечатление, что изначально они не объявлены. Просто в шаблоне лежат некие ссылки на пустные хуки, и ничего не делают. Т.е предполагается что я сам захочу на них написать действия в hooks/

Например идем сюда www\templates\skin\synio\ header_top.tpl

В самом верху видим такую строку {hook run='header_banner_begin'}

Я правильно понял что она НИЧЕГО НЕ ДЕЛАЕТ?, Ну т.е ничего не делает, до тех пор пока я явно не создам для неё свой обработчик в папке? Или есть стандартные хуки зарытые в недра движка?

Проблема с хуками

Подкскажите, пожалуйста, не совсем понимаю. Прочитал вот этот топик Механизм хуков в движке но не понял.

Делаю плагин, в котором есть новый тип топика (отель, описание отеля).

Добавление работает отлично, а как из плагина управлять выводом 1 топика?

Написал я хук

<?
class PluginHotels_HookTopic extends Hook
{

public function RegisterHook()
    {
    	$this->Hook_AddExecModule('topic_show', 'PluginHotels_Topic_TopicShow',__CLASS__, 10);
    } 
}


Соответственно в


class PluginHotels_ModuleTopic extends Module
{
public function TopicShow($oTopic)
    {
    	print $oTopic->getId();
    }
}


но во-первых не видит метод getId(); хотя для топика он есть а во вторых, непонятно что дальше.

Мне нужно чтобы выводился топик этот согласно шаблону, который лежит в шаблонах плагина (templates/skin/default/hotel.tpl) а не в общих шаблонах с префиксом topic_hotel.tpl

ну и все остальное ))

Плагин AutoCut

AutoCut
Плагин вставляет тег CUT в топик после заданного (в конфиге) количества символов.
При этом не разрываются ссылки, слова и тд.
В конфиге кроме количества символов можно задать перечень тегов, между которыми кат не ставится.
Скачать плагин можно тут.


Читать дальше →

Не могу убрать текс в самом низу.

Есть сайт www.hochublog.ru/Natalya3/2011/01/14/1minuta-ya-vse-uspela.html в самом низу страницы есть текст «Блоги, Блог им. Natalya3, 1минута я все успела» как его убрать?? Насколько я понял он идет из {hook run='body_end'} если убираю его то текст пропадает но не выводится тогда Statistics performance.