Модуль "Рассылки"

Быстрый переход:
Аватар

Laiv

Member
#1   27 октября 2015 14:31

При попытке создания рассылки (после нажития кнопки "Создать рассылку) получаем ошибку:

Fatal error: Call to undefined function cot_formGroupClass() in W:\domains\cotonti\www\modules\subscribe\tpl\subscribe.admin.edit.php on line 97 Call Stack #TimeMemoryFunctionLocation 10.0010331072{main}( )..\admin.php:0 20.11906296800include( 'W:\domains\cotonti\www\system\admin\admin.main.php' )..\admin.php:25 30.19406578944require( 'W:\domains\cotonti\www\modules\subscribe\subscribe.admin.php' )..\admin.main.php:67 40.20606927416subscribe_controller_AdminMain->editAction( )..\subscribe.admin.php:53 50.23608082984View->render( )..\AdminMain.php:508 60.24008170976require( 'W:\domains\cotonti\www\modules\subscribe\tpl\subscribe.admin.edit.php' )..\View.php:322

Поиск по текстам файлов модуля и библиотеки Cotonti Lib показывает, что функция cot_formGroupClass отсутствует.

Алексей

Алексей

Administrator
#2   27 октября 2015 20:04

Административная часть модуля сделана под панель управления Cpanel. Если Вы используете стандартную панель администратора Cotonti, Вам нужно переопределить соотвествующие шаблоны.

Функция cot_formGroupClass()  определена в ней.

Добавил этот момент в описание модуля.

Быстрота и надежность... Ну и красота тоже, конечно

Аватар

Laiv

Member
#3   27 октября 2015 20:09

Понятно, спасибо. Да, этого момента явно не хватало в инструкции :-)

Добавлено 35 минут спустя:

По Cpanel отдельную тему создавать не буду из-за одного комментария. В моем проекте отключен и физически удален модуль комментариев по причине ненадобности. Но cpanel не хочет работать корректно без этого модуля - видимо, он пытается получить от него статистику без проверки его наличия или берет какие-то функции (т.к. при отключенном модуле, но физическом наличии файлов cpanel работает нормально).

P.S. Ежели что, я - это Wilder на форуме Cotonti. Почему тут зарегился когда-то под этим ником, понять не могу :-)

Отредактировано: Laiv (27.10.2015 20:45, 1 год назад)
Алексей

Алексей

Administrator
#4   28 октября 2015 11:07

Ок. Спасибо за багрепорт. Добавил задачу на гитхаб: https://github.com/Alex300/cotonti-cpanel/issues/6

Поправлю как будет время.

Быстрота и надежность... Ну и красота тоже, конечно

Аватар

Laiv

Member
#5   28 октября 2015 13:49

Идем дальше :-)

1.

В cli.php, похоже, надо прописать в начале файла путь к интерпретатору PHP:

#!/usr/bin/php

А также дополнить инструкцию советом сделать этот файл исполняемым. Я, например, просто забыл это сделать сразу, но, правда, сразу понял, почему не работает.

 

2.

При запуске задания выдается ошибка:

PHP Fatal error:  Call to undefined function cot_extrafields_register_table() in /modules/subscribe/inc/subscribe.functions.php on line 12

При изучении проблемы обнаружилось, что нигде не подключается файл /system/extrafields.php, в котором и находится "ошибочная" функция. Добавил в файл subscribe.functions.php, после проверки 'Wrong URL', строку

require_once $cfg['system_dir'] . '/extrafields.php';

и все заработало.

Добавлено 1 день спустя:

Еще появился вопрос. Никак не получается обнаружить, где выводится название сайта в самом конце письма рассылки. Точно такая же строка выводится тэгом {SITE_DESCRIPTION} в плагине Contact, но там ее выводом можно управлять в админке. В случае рассылки она мне не нужна, но где происходит ее вывод, пока не нашел :-)

Отредактировано: Laiv (29.10.2015 21:03, 1 год назад)
Алексей

Алексей

Administrator
#6   30 октября 2015 11:23

1. Путь к интерпретатору php добавлять не нужно. Он не обязательно будет находиться по указанному пути.

Добавляейте задание cron примерно так:

10 */2 * * * /path/to/php /path/to/your/site/cli.php --a subscribe.main.run

Делать его исполняемым совсем не обязательно. Достаточно прав на чтение для пользователя, под которым запускается cron. Фактически же исполняется не сам php-файл, а интерпретатор php.

2. У меня этой проблемы не было. Сейчас нет возможности потестировать.

3. Подпись добавляет коробочная функция cot_mail().

Подпись редактируется в админке: http://ваш_домен/admin/config?n=edit&o=core&p=title

Отредактировано: Alex (28.11.2015 01:26, 1 год назад)

Быстрота и надежность... Ну и красота тоже, конечно

Аватар

Laiv

Member
#7   30 октября 2015 13:29
#10326 Alex:Подпись редактируется в админке: http://ваш_домен/admin/config?n=edit&o=core&p=title

Странно, я в первую очередь попробовал удалить подпись именно оттуда - не убралось. После этого и стал копаться в коде, но больше нигде не нашел. Ладно, попробую еще :-)

Аватар

xxtotoxx

Member
#8   25 сентября 2016 04:10

Чистая Cotonti Siena 1.0.19 PHP5.6 админпанель cpanel, установлен cotonti-lib 2.0 но модуль упорно утверждает что cotontilib не установлен и при переходе по ссылке(cotonti-lib) вываливает следующее:

 

#0 cot_diefatal(Could not connect to database !
Please check your settings in the file datas/config.php
MySQL error : SQLSTATE[HY000] [2002] No such file or directory) called at [/home/s/superltb/cotonti/public_html/system/common.php:125] #1 require_once(/home/s/superltb/cotonti/public_html/system/common.php) called at [/home/s/superltb/cotonti/public_html/index.php:87] Warning: Cannot modify header information - headers already sent by (output started at /home/s/superltb/cotonti/public_html/system/functions.php:2891) in /home/s/superltb/cotonti/public_html/system/functions.php on line 1079 Warning: Cannot modify header information - headers already sent by (output started at /home/s/superltb/cotonti/public_html/system/functions.php:2891) in /home/s/superltb/cotonti/public_html/system/functions.php on line 1081 Warning: Cannot modify header information - headers already sent by (output started at /home/s/superltb/cotonti/public_html/system/functions.php:2891) in /home/s/superltb/cotonti/public_html/system/functions.php on line 1082 Warning: Cannot modify header information - headers already sent by (output started at /home/s/superltb/cotonti/public_html/system/functions.php:2891) in /home/s/superltb/cotonti/public_html/system/functions.php on line 1083 Warning: Cannot modify header information - headers already sent by (output started at /home/s/superltb/cotonti/public_html/system/functions.php:2891) in /home/s/superltb/cotonti/public_html/system/functions.php on line 1084 Warning: Cannot modify header information - headers already sent by (output started at /home/s/superltb/cotonti/public_html/system/functions.php:2891) in /home/s/superltb/cotonti/public_html/system/functions.php on line 1085 Warning: Cannot modify header information - headers already sent by (output started at /home/s/superltb/cotonti/public_html/system/functions.php:2891) in /home/s/superltb/cotonti/public_html/system/functions.php on line 1086

2016-09-25 00:52

Could not connect to database !
Please check your settings in the file datas/config.php
MySQL error : SQLSTATE[HY000] [2002] No such file or directory


в чем моя ошибка и как можно исправить.

Алексей

Алексей

Administrator
#9   26 сентября 2016 23:20

Модуль написан под cotonti-lib первой версии. С версией 1.5 должен работать. Под последний cotonti-lib я его не переписывал, никак руки не дойдут, так что со второй версией он пока работать не будет.

Указанную Вами ошибку я воспроизвести не смог.

Отредактировано: Alex (14.10.2016 00:00, 8 месяцев назад)

Быстрота и надежность... Ну и красота тоже, конечно