avatar
+7.22
11.045

Николай

Klaus
Klaus
Я не знаю, специально у себя на тестовом сайте активировал, вообще никаких ошибок. А подобной ошибки не встречал.
Klaus
Klaus
*facepalm*
/mailing/classes/modules/mailing/entity/User.entity.class.php
Ну почему в каталоге mailing? Каталог user нужен вам.

Чтобы решалось перестановкой встречал раза два-три. Каждый раз думал что это из-за разного способа указания в Inherits
Klaus
Klaus
На мой взгляд все правильно, единственное можно попробовать написать
'entity' => array(
            'ModuleUser_EntityUser'
        )
Klaus
Klaus
О как, круто. Кстати тоже бывает подобное. При активации плагинов и решается перестановкой плагинов местами в plugin.dat. А вот почему так происходит нам лучше всего наверно сможет объяснить Вадим.
Klaus
Klaus
Ну вы же уже опытный человек должны быть =)
В Inherits нужно добавить
public $aInherits = array(
        ......
		'entity' => array(
            'ModuleUser_EntityUser' => '_ModuleUser_EntityUser',
        )
    );
Klaus
Klaus
При обращении к методу. Никто не будет ничего писать в таблицу, я не понимаю зачем вообще писать в таблицу пользователю хэш для отписки от рассылок дайджеста. Если можно этот хэш получать просто оперируя данными пользователя.

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

2. мои скриптом хэш будет генерироватсья при обращении (код выше, хэш генерируется на основе почты пользователя и соли)

3. механизм относится только к Digest

4. url отписки генерируется в 170 строке что я писал выше
Klaus
Klaus
В теории, его нужно ставить в cron и он будет генерить хэши пользователям. Хотя при этом всеравно нигде не описан метод getUserNoDigestHash и черт его занет как он получит хэши.

Тут же все дело в безопасности, вы же не хотите чтобы кто-то отписал вас без вашего ведома.
Klaus
Klaus
можно создать прям там, только не забудьте подключить entity в PluginMailing.class.php
и нужно еще раскомментировать 170 строку (без неё чуда не получится) github.com/orthograf/mailing/blob/master/classes/modules/mailing/Mailing.class.php
Klaus
Klaus
Помнится там была проблема в том что отсутствовал метод getUserNoDigestHash
Я решил его созданием файла User.entity.class.php в плагине mailing со следующим кодом
<?php
class PluginMailing_ModuleUser_EntityUser extends PluginMailing_Inherit_ModuleUser_EntityUser {

 
	public function getUserNoDigestHash() { 
		return md5(Config::Get('module.security.hash').$this->getMail());
	}
	
}

?>
Klaus
Klaus
Это врядли плагин, скорее это последствия ошибки при удалении пользователя что вы отписал на github. Может удаленный пользователь был автором топика, или он был последним прокоментировавшим что-то и должен был быть в прямом эфире.
Klaus
Klaus
Эм, а он разве не работает? Вроде же все хорошо
Klaus
Klaus
Вот вариант altocms.ru/994.html#comment18493
Klaus
Klaus
Так по комментариям же ищет. В ссылке поиска поменяйте topics на comments. Другое дело что меню нет, по крайней мере тут.

Поиск для статичных страниц насколько я знаю не реализован. Нужно писать отдельный плагин для этого.

Комментарии к статичным страницам опять же не предусмотрены и для этого нужно писать плагин. (Для ЛС когда то такой существовал, но его очень давно уже нет в каталоге)
Klaus
Klaus
Делаете плагин.
В нем создаете новый ивент для экшена Profile.
Создаете новый метод в модуле Topic аналогичный GetTopicsFavouriteByUserId но позволяющий в запросе указать тип контента.
Делаете хук для отображения типов контента в меню избранного.

Примерно так.
Klaus
Klaus
А не, не присоединился, я немного не так понял автора, извиняюсь.
Klaus
Klaus
Готов присоединиться к акции. Что-то уже приходилось адаптировать, спрашивайте.
Klaus
Klaus
А еще нужно добавить class в common\templates\skin\admin-default\tpls\actions\admin\action.admin.content\pages_add.tpl там где класс js-editor-markitup добавить еще и js-editor-wysiwyg
Klaus
Klaus
Там все просто, в common\templates\skin\admin-default\settings\config\config.php

нужно вместо
'___path.frontend.dir___/libs/vendor/tinymce_4/tinymce.min.js' => array('name' => 'tinymce', 'asset' => 'mini'),
вставить
/* tinyMCE */
    '___path.frontend.dir___/libs/vendor/tinymce_4/tinymce.min.js'       => array(
        'dir_from' => '___path.frontend.dir___/libs/vendor/tinymce_4/',
        'name'     => 'tinymce_4',
        'compress' => false,
        'merge'    => false
    ),
    '___path.frontend.dir___/libs/vendor/tinymce_4/plugins/*'       => array(
        'dir_from'  => '___path.frontend.dir___/libs/vendor/tinymce_4/',
        'prepare'   => true,
        'compress'  => false,
        'merge'     => false
    ),
    '___path.frontend.dir___/libs/vendor/tinymce_4/langs/*'       => array(
        'dir_from' => '___path.frontend.dir___/libs/vendor/tinymce_4/',
        'prepare'  => true,
        'compress' => false,
        'merge'    => false
    ),
    '___path.frontend.dir___/libs/vendor/tinymce_4/skins/*'       => array(
        'dir_from' => '___path.frontend.dir___/libs/vendor/tinymce_4/',
        'prepare'  => true,
        'compress' => false,
        'merge'    => false
    ),
    '___path.frontend.dir___/libs/vendor/tinymce_4/themes/*'       => array(
        'dir_from' => '___path.frontend.dir___/libs/vendor/tinymce_4/',
        'prepare'  => true,
        'compress' => false,
        'merge'    => false
    ),
Klaus
Klaus
Отписал на github о недоделке