Баги, ошибки, проблемы 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По умолчанию
10Downloadint(11)Да0
11Deletedint(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, если в компоненте в "Пользовательских настройках" создать "текстовый блок" с возможностью редактирования в визуальном редакторе, то он открывается не корректно.

Замените три файла:

Блог

Что с Мастерхостом? Когда заработает?!

Этот вопрос всё чаще задают в Интернете начиная примерно с 12:00 дня 2 марта. А всё потому, что он накрылся!

далее

Автоматизированная Система Управления Бэкапами

Автоматизированная Система Управления Бэкапами позволяет добиться полного контроля над резервными копиями сайтов внутри инфраструктуры веб-студии. Если вы поддерживаете десятки сайтов на разных хостингах, без подобной системы вы не можете быть на 100% уверены в том, что каждый из них был корректно зарезервирован прошлой ночью.

далее

WebSocket: интеграция с NetCat

Хотите добавить на сайт под управлением CMS NetCat поддержку технологии WebSocket? Обращайтесь к нам! Посетители сайта смогут получать мгновенные уведомления о событиях сайта без обращений к серверу и перезагрузок страниц. Превратите свой сайт в интерактивную площадку, работающую в реальном времени!

далее

NetCat: техническая поддержка и доработка сайтов

Мы работаем с CMS NetCat уже больше 10 лет. У нас большой опыт и ответственный подход к делу.

далее

Весь блог тут