Проблемы при создании плагинов
Привет,
столкнулся с несколькими непонятными вещами в LS
1) плагин должен добавлять js к некоторым страницам
2) Два разных плагина наследуют сущность User, но при этом переопределяют разные методы
Если активировать оба, то возникает ошибка:
3) Переопределил ActionSettings, положил шаблон profile.tpl в соответствующую папку плагина, рядом с profile.tpl создал еще один доп. шаблон custom.tpl. При попытке его заинклудить методом тыка обнаружил, что ls пытается это сделать из директории с дефолтовым скином, причем из корня. Можно ли как-то изменить такое поведение?
p.s. по пункту 3, я переопределял ActionSettings только для того, «делегировать» шаблон, можно ли обойтись без этого?
столкнулся с несколькими непонятными вещами в LS
1) плагин должен добавлять js к некоторым страницам
Config::set('head.rules.myplugin', array(
'path' => Config::get('path.root.web') . '/settings/profile',
'js' => array(
'include' => array(
Config::get('path.plugins') . '/myplugin/custom.js'
)
)
));
Таким образом добавил для одной, а как сделать для нескольких?2) Два разных плагина наследуют сущность User, но при этом переопределяют разные методы
Если активировать оба, то возникает ошибка:
Fatal error: Class 'PluginMyPlugin_ModuleUser_EntityUser' not found in D:/web/sites/livestreet/engine/include/function.php(412) : eval()'d code on line 1
3) Переопределил ActionSettings, положил шаблон profile.tpl в соответствующую папку плагина, рядом с profile.tpl создал еще один доп. шаблон custom.tpl. При попытке его заинклудить методом тыка обнаружил, что ls пытается это сделать из директории с дефолтовым скином, причем из корня. Можно ли как-то изменить такое поведение?
p.s. по пункту 3, я переопределял ActionSettings только для того, «делегировать» шаблон, можно ли обойтись без этого?
8 комментариев
2) какой полный путь до класса PluginMyPlugin_ModuleUser_EntityUser?
3) в шаблоне инклудить нужно с указанием полного пути до шаблона, для его получения можно использовать метод
можно отдельно делегировать шаблоны:
3)можно пример использования Plugin::GetTemplatePath() в шаблоне, у меня не получилось
3) в экшене сделать далее в шаблоне
3) такой вариант я видел в примерах, но он не удобен тем, что мне придется наследовать экшн только для того, чтобы за инклудить шаблон
PS не нужно создавать дубли топиков
Заметил забавный момент… Есть 2 плагина, gravatar — переопределяет дефолтовый метод getProfileAvatarPath() и crop — добавляет все к той же сущности User дополнительный метод. Так вот ошибка появляется если их активировать в порядке crop, gravatar. При активации в обратном порядке проблема не наблюдается.
версия движка 0.4.1?
версия движка 0.4.1
Попробую переписать плагины с нуля, по результатам отпишут