Как в плагине задать путь к файлу шаблона плагина?
Прикручиваю комменты к записям в плагине, уперся в отправку уведомлений. Вот кусок кода, который отсылает уведомление автору записи о новом комменте.
Файл notify.comment_new.tpl забирается из шаблона сайта. Подскажите, пожалуйста, как правильно прописать, чтобы подтягивался файл из шаблона плагина.
$this->Subscribe_Send('question_new_answer',$oQuestion->getId(),'notify.comment_new.tpl',$this->Lang_Get('notify_subject_comment_new'),array( 'oQuestion' => $oQuestion, 'oComment' => $oCommentNew, 'oUserComment' => $this->oUserCurrent, ),$aExcludeMail);
Файл notify.comment_new.tpl забирается из шаблона сайта. Подскажите, пожалуйста, как правильно прописать, чтобы подтягивался файл из шаблона плагина.
28 комментариев
Что сделал:
В PluginQuestions.class.php добавил новый тип:
В файле аналогичном файлу topic.tpl поставил sTargetType='question'. Вот все содержимое файла:
Методом исключения выяснил, что функция CheckTarget в Subscribe.class.php возвращает false. Подскажите, в чем может быть проблема? Может что-то упускаю или еще что-то добавить нужно?
Subscribe
через наследование добавить метод проверки таргета, по аналогии сCheckTargetTopicNewComment
, т.е. называться он долженCheckTargetQuestionNewComment
В профиле пользователя вывожу его комменты. Первый коммент обрывается на
не срабатывает $oQuestion->getUrl().
Обнаружил, что $oComment->getTarget() возвращает null. На сколько понял из-за того, что он не устанавливается здесь. Подскажите, в чем может быть проблема?
но ловлю ошибку:
Как ее обойти?
Вот такой метод должен работать:
Сделано следующее: в PluginQuestions.class.php вызвал так
$this->PluginQuestions_ModuleFavourite_addEnumType (Config::Get('db.table.favourite_tag'), 'target_type', 'question');
В свой Favourite.class.php добавил:
43-я строка:
$this->Database_GetConnect($aConfig)->select($sQuery);
$aRow['Default']='topic';
и все завелось. Спасибо!Я менял класс инпута на свой, чтобы вызвать ActionAjax.class.php и в нем поискать в тегах вопросов. На сколько сегодня разобрался в вопросе, то в таком случае необходимо в хук добавить свой модальник, прописать его вызов в js и уже в нем (в модальнике) поправить класс инпута на свой.
Оффтоп: а как Вы код инлайн выводите? ))
подключить файл шаблона плагина?
$aBlock.params.plugin='myplugin'
и так:
Что не так пишу?
Прикрутил блок прямого эфира, но новый коммент появляется/поднимается вверх только после обновления страницы. Переключение вкладок работает, обновление блока тоже. Если страницу не обновлять, а жмякнуть обновление блока, тоже все нормально работает, а вот автоматом после добавления коммента эфир не обновляется.
(curItemBlock.data('type')=='comment')
?