avatar
+2.22
5.389
попробовал и файл перместить в
/mailing/classes/modules/user/entity

Перестановкой добился такого сообщения

PHP Fatal error: Class 'PluginMailing_Inherit_ModuleUser_EntityUser' not found in /var/www/example.com/common/plugins/mailing/classes/modules/user/entity/User.entity.class.php on line 2

потом переместил обратно в исходную папку
/mailing/classes/modules/mailing/entity/User.entity.class.php

и попробовал заменить

class PluginMailing_ModuleMailing_EntityUser extends PluginMailing_Inherit_ModuleMailing_EntityUser

получил снова

PHP Fatal error: Class 'PluginBr_Inherit_ModuleUser_EntityUser' not found in /var/www/example.com/common/plugins/br/classes/modules/user/entity/User.entity.class.php on line 12
Что-то не так. Перестановка не помогает, начинает ругаться на другой плагин.

Вот что я сделал

В /mailing/classes/modules/mailing/entity/User.entity.class.php

<?php
class PluginMailing_ModuleUser_EntityUser extends PluginMailing_Inherit_ModuleUser_EntityUser {


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

}

?>


В PluginMailing.class.php

public $aInherits = array(
        'mapper' => array(
            'ModuleTalk_MapperTalk' => '_ModuleTalk_MapperTalk',
            'ModuleUser_MapperUser' => '_ModuleUser_MapperUser'
            ),
        'module' => array(
            'ModuleUser' => '_ModuleUser',

        ),

        'entity' => array(
            'ModuleUser_EntityUser' => '_ModuleUser_EntityUser',
        )

    );
Эммм…

Class 'PluginSitemap_Inherit_ModuleUser_EntityUser' not found in /var/www/example.com/common/plugins/sitemap/classes/modules/user/entity/User.entity.class.php

o_O
я так и подумал но решил спросить))
Так я не говорю как должно быть я пытаюсь разобраться. Ок, понял что с вашим решением хэш не сохраняется, я этого не понял.

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

Ну а обращение в какой момент. Кого к кому обращение? При создании рассылки дергается метод, создается хэш и кладется в поле user_no_digest_hash БД?

Если это только для дайджеста, то зачем каждый раз генерить заново? Значит это должно только при создании дайджетста происходить, или я что-то не понимаю.
Так вопросов сразу куча))

1. Т.е. я правильно понимаю, что по задумке создателей плагина, эти хеши генерятся отдельно скриптом и куда-то кладутся в БД, в специальное поле таблицы users, или как? Не пойму смысл этого отдельного скрипта.

2. С вашим решением хэши будут генериться сразу при создании рассылки? Каждый раз перезаписываться при создании рассылки?

3. Этот механизм отписки затрагивает все рассылки или только Digest? просто в БД поле называется user_no_digest_hash.

4. И еще вопрос в итоге как получить url отписки — он сам сгенерится и добавится?
Спасибо, а зачем нужен
generate-unsub-hash.php?

Не могу понять никак…
Это нужно еще одним плагином переопределить, или прям там создать?
И как тогда будет выглядеть вывод url для отписывания в шаблон?
Вопрос к тем кто пользовался, настраивал плагин Ls Digest. Вижу в языковом файле есть возможность отписаться. Но вот как она работает? В письме ссылки вроде на отписку не вставляются.
Все, удалил связанные комментарии. Вопрос снимается.
Хммм… а как узнать?
Поставил. Активировал. Скопировал файлы шаблона из папки experience в папку brand, ничего не менял, в разделе личных сообщений появилась вкладка «рассылка», отображается вроде сносно, редактор подцепился, галочки есть. Пока сам функционал не проверял.

Однако после сброса кэша на главной странице вместо виджетов «прямой эфир», «блоги», «теги» выводится сообщение об ошибке

(Возьму более полное из лога, на странице более короткое)

[LOG:1427309365.583-551303358E743][2015-03-25 21:49:25][PID:12982][ERROR][[
E_ERROR [1] Call to a member function getBlog() on a non-object (/var/www/example.com/engine/libs/Smarty/libs/sysplugins/smarty_internal_templatebase.php(157): eval()'d code on line 44)
— call stack — Func::_callStackError() in /var/www/example.com/engine/include/Func.php on line 147
Func::_errorLog() in /var/www/example.com/engine/include/Func.php on line 274
Func::_errorHandler() in /var/www/example.com/engine/include/Func.php on line 69
Func::done()
— end — ]][END:1427309365.583-551303358E743]

[LOG:1427309373.721-5513033DAFF5E][2015-03-25 21:49:33][PID:2373][ERROR][[
E_ERROR [1] Call to a member function getBlog() on a non-object (/var/www/example.com/_tmp/templates/brand-light/compiled/light^6edba5d50b3356b0d4b878f9ce6a117ea7b77cb5.file.widget.stream_comment.tpl.php on line 44)
— call stack — Func::_callStackError() in /var/www/example.com/engine/include/Func.php on line 147
Func::_errorLog() in /var/www/example.com/engine/include/Func.php on line 274
Func::_errorHandler() in /var/www/example.com/engine/include/Func.php on line 69
Func::done()
— end — ]][END:1427309373.721-5513033DAFF5E]

А вот что находится по указанной строчке (/var/www/example.com/_tmp/templates/brand-light/compiled/light^6edba5d50b3356b0d4b878f9ce6a117ea7b77cb5.file.widget.stream_comment.tpl.php on line 44)

<?php $_smarty_tpl->tpl_vars['oBlog'] = new Smarty_variable($_smarty_tpl->tpl_vars['oTopic']->value->getBlog(), null, 0);?>
Понятно, Толстого не читал но осуждаю. Вы попробуйте, это не больно.))
Стало быть вы уже добавили max_width='' в /app и все уже решилось. Ну и славно))
Вообще конечно надо ровно наоборот, чтобы оно не раскрывалось никогда. И
убрать кнопку поделиться

ИМХО.
Вы походу не понимаете как это работает, да?
Еще раз внимательно прочитайте мой пост.
Хотя нет, повезло есть ссылка в личке))
altocms.ru/805.html
Я как-то предлагал какой-то простой вариант с display:block;, но поскольку поиска по комментариям нет — врядли вы это найдете))))
Насколько я понимаю так уже делалось например с плагином баннероид altocms.ru/addons/item/82/. Плагин бесплатный, лицензия GPL. Это означает что вы можете его исправить и распространять под той же лицензией (и конечно бесплатно). Вопрос скорее организационный чем какой-то принципиальный, зато его решение поможет многим.