Баги, ошибки, проблемы Eсть сайт на NetCat? нет сайта на NetCat? а об ошибках знать нужно!
Хронология публикаций по теме:
NetCat 5.x.x
- в NetCat 5.4 нельзя оставлять вот такие комментарии в коде "Макеты дизайна v4" :
<!--#template.edit(107)-->
Приводит к ошибке "[an error occurred while processing the directive]" - в NetCat 5.7 существует проблема с внутренним CRON'ом: если в настройках сервера запрещено выполнение php функции passthru, то задачи выполняться не будут, хотя время их запуска и будет обновляться. Решается раскомментированием 2-х строк: passthru('wget -O - -q "http://'.$HTTP_HOST.$rs['Cron_Script_URL'].'"'); и passthru('wget -O - -q "'.$rs['Cron_Script_URL'].'"');
NetCat 4.x.x
4.7.2, редакция Extra
В файле netcat/modules/netshop/payment/assist.php в строчке 27 идет такой код:
<input type=hidden name='URL_RETURN' value='".htmlspecialchars("http://shop.sitemanager.ru/")."'>
Ожидается, что тут будет отражаться "URL страницы сайта при удачном платеже" из настроек интернет-магазина. сюда же вопрос: как используются "Секретное слово для Assist" и "URL страницы сайта при неуспешном платеже"? Я не вижу этого в коде файла вообще. Или не туда смотрю?
Решение не известно :(
Компонент "51. Магазин: Заказ" , альтернативная форма добавления товара, идет такой код: $ret .= "<input type='hidden' name='f_PaymentMethod' value='1011' />";
В чем ее задача? Ожидается, что дальше будет обработка методов платежа, но больше в коде ничего, относящегося к методам оплаты нет (дальше идет обработка способов доставки). В итоге в чистой установке фактически не работают способы оплаты.
Решение не известно :(
4.5.3, редакция Business
По непонятной мне причине при заказе в Минимагазине в форму подтверждения заказа подставляются данные выключенного юзера admin.
Решение:
Замените в компоненте "Минимагазин: Заказ" в альтернативной форме добавления строки:
$name = $nc_core->input->fetch_get_post('f_Name') ? $nc_core->input->fetch_get_post('f_Name') : ($info['Name'] ? $info['Name'] : ( ($a=$nc_core->user->get_by_id(1, $nc_core->AUTHORIZE_BY)) ? $a : '')); $phone = $nc_core->input->fetch_get_post('f_Phone') ? $nc_core->input->fetch_get_post('f_Phone') : ($info['Phone'] ? $info['Phone'] : ( ($a=$nc_core->user->get_by_id(1, 'Phone')) ? $a : '')); $email = $nc_core->input->fetch_get_post('f_Email') ? $nc_core->input->fetch_get_post('f_Email') : ($info['Email'] ? $info['Email'] : ( ($a=$nc_core->user->get_by_id(1, 'Email')) ? $a : '')); $address = $nc_core->input->fetch_get_post('f_Address') ? $nc_core->input->fetch_get_post('f_Address') : ($info['Address'] ? $info['Address'] : ( ($a=$nc_core->user->get_by_id(1, 'Address')) ? $a : ''));
на
$name = $nc_core->input->fetch_get_post('f_Name') ? $nc_core->input->fetch_get_post('f_Name') : ($info['Name'] ? $info['Name'] : ( ($a=$nc_core->user->get_by_id($AUTH_USER_ID, $nc_core->AUTHORIZE_BY)) ? $a : '')); $phone = $nc_core->input->fetch_get_post('f_Phone') ? $nc_core->input->fetch_get_post('f_Phone') : ($info['Phone'] ? $info['Phone'] : ( ($a=$nc_core->user->get_by_id($AUTH_USER_ID, 'Phone')) ? $a : '')); $email = $nc_core->input->fetch_get_post('f_Email') ? $nc_core->input->fetch_get_post('f_Email') : ($info['Email'] ? $info['Email'] : ( ($a=$nc_core->user->get_by_id($AUTH_USER_ID, 'Email')) ? $a : '')); $address = $nc_core->input->fetch_get_post('f_Address') ? $nc_core->input->fetch_get_post('f_Address') : ($info['Address'] ? $info['Address'] : ( ($a=$nc_core->user->get_by_id($AUTH_USER_ID, 'Address')) ? $a : ''));
и замените файл по пути /netcat/system/essences на Attach:nc_component.class.php.zip
Известные проблемы при переходе на старшую редакцию (upgrade)
4.7.2, со Standard на более старшую (проверено на Business)
Модуль "Личный кабинет" начинает выдавать следующие ошибки при подтверждения регистрации:
Fatal error: Cannot redeclare nc_array_json() (previously declared in /home/***/***/***/netcat/admin/admin.inc.php:15) in /home/***/***/***/netcat/admin/admin.inc.php on line 46
Такая же ошибка возникает и при изменении пароля и при восстановлении.
Решение:
Замените файлы в /netcat/modules/auth/ вот на эти: Attach:netcat_user_error.zip
Известные проблемы обновлений
с NetCat 4.5 до версии, имеющей возможность считать количество скачиваний файлов
Возможна такая ситуация, что после обновления Netcat в базе не появляются столбцы Download и Deleted в таблице Filetable, которые необходимы для нового функционала (счетчик числа закачек). Почему это происходит, неизвестно, но и не так важно, а важно (и весьма любопытно) то, как эта ситуация весьма причудливо обрабатывается ядром Netcat: в полном выводе объекта значение переменной $f_ИмяПоля вместо ожидаемого пути к файлу равно сырому нераспарсенному значению поля. При этом в "объекте в списке" все нормально.
Почему это происходит? Потому что в netcat/message.php и в netcat/full.php разный код для обработки полей типа файл. В файле full.php на 285 строке запрос к базе выглядит так:
$res = $db->get_results("SELECT fd.`Field_ID` AS field_id, fd.`Field_Name` AS field, ft.`File_Path` AS path, ft.`Virt_Name` AS name, ft.`Download` AS download FROM `Field` AS fd LEFT JOIN `Filetable` AS ft ON (fd.`Field_ID` = ft.`Field_ID` AND ft.`Message_ID` = '".(int) $message."') WHERE ".($user_table_mode ? "fd.`Class_ID` = 0 AND `System_Table_ID` = 3" : "fd.`Class_ID` = '".(int) $classID."'")." AND fd.`TypeOfData_ID` = 6", ARRAY_A);
А в message.php все то же самое, только без ft.`Download` AS download
.
Для решения проблемы в данном случае достаточно в Базе Данных в таблицу filetable добавить потерянные при обновлении столбцы Download и Deleted, со следующими параметрами:
# | Поле | Тип | Null | По умолчанию |
---|---|---|---|---|
10 | Download | int(11) | Да | 0 |
11 | Deleted | int(1) | Нет | 0 |
Однако в целом поведение Netcat в создавшейся ситуации неадекватно:
- во-первых, код в "списке объектов message.php" и в "полном выводе full.php" должен быть идентичным для одинакового функционала;
- во-вторых, код должен содержать проверку на результат sql-запроса.
Нууу, мы так думаем... :)
до NetCat 4.6.2 (все версии)
при обновлении до 4.6.2 возникла проблема: в "Разработке сайта" при редактировании компонентов или макетов при переключенном редакторе слетела кодировка.
По пути netcat\admin\js\edit_area нужно заменить файл Attach:edit_area_full.js.zip
при обновлении до 4.6.2 возникла проблема: в "Разработке сайта" при редактировании компонентов или макетов при переключенном редакторе не дает сохранить при нажатии "ктрл+шифт+s" под Firefox 8.x-x.x
Поставьте дополнение https://addons.mozilla.org/ru/firefox/addon/customizable-shortcuts/
при копировании раздела в результате вместо "Название раздела" пишется %NAME%
Замените файл /netcat/admin/subdivision/copy.php на этот Attach:copy.php.zip
Сломался визуальный редактор после обновления. Не работает функция "просмотреть на сервере" при добавлении картинки. После замены commands.php, если в компоненте в "Пользовательских настройках" создать "текстовый блок" с возможностью редактирования в визуальном редакторе, то он открывается не корректно.
Замените три файла:
- в /netcat/editors/FCKeditor/editor/filemanager/connectors/php/ файл Attach:commands.php.zip
- в /netcat/admin/subdivision/ файл Attach:subclass.inc.php.zip
- в /netcat/system/a2f/ файл Attach:nc_a2f_field_textarea.class.php.zip