Исправляем мелкие ошибки
Несколько замечаний и предложений по устранению мелких ошибок на сайтах, работающих на скрипте аукциона php pro bid. Это не столько ошибки, а скорее доработка скрипта для оптимальной работы в условиях выбранного основного языка – русского. Ведь разработчики не удосуживаются осуществить гармоничную языковую поддержку. Приходится выявлять самим в ходе работы и тестовых испытаний.
1. Недоразумение
Столкнулся сейчас вот с таким действом на тестовом сайте с аукционом phpprobid. В админке переключаю сайт в техобслуживание, в базе значение maintenance_mode изменилось. Но сайт как работал в обычном режиме, так и продолжает работать. Удивление, к чему бы так. В пояснении настройки адинистративной панели по поводу переключения в техобслуживание написано – “Выберите “Да” если желаете включить режим технического обслуживания. Если режим техобслуживания включен, внешняя зона сайта отключается, доступна только зона администрирования.”
После некоторого изумления выясняется, что при залогиненом пользователе-администаторе работает и фронт сайта в обычном режиме, но только для администратора.
2. Корректируем страницу технического обслуживания
При установленных настройках в административной панели – техническое обслуживание” – “включено”, страница техобслуживания на сайте выводится часто в ошибочной кодировке.
Подобное происходит из-за некорректной записи в шаблоне сайта для страницы техобслуживания. Страница находится в /templates/maintenance_splash_page.tpl.php.
Для корректного отображения страницы в нужной кодировке требуется заменить запись
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
на следующую
<meta http-equiv="Content-Type" content="text/html;charset=<?=LANG_CODEPAGE;?>">
3. Ошибки в логфайле
Проверял логи ошибок сайтов на хостинге и выясняется, что в массовом порядке архивируются ошибки отсутствия файла editor.js в директории. Характерно, что и в оригинале (дистрибутиве) файл отсутствует в основной директории, а находится в папке скриптов. Где может сидеть ошибочная ссылка на вызов этого файла?
Сканирование файлов позволило выявить файлы, которые отвечают за вызов editor – это /admin/main.js и /themes/тема_сайта/main.js
В обоих присутствует такая запись
if (win_ie_ver >= 5.5){ document.write('<scr' + 'ipt src="' +_editor_url+ 'editor.js"');
Вот именно он и вызывает появление ошибки при заходе на сайт с браузера IE (ослик)
Для устранения ошибочных записей в лог файлы для браузера IE запись должна быть изменена на следующую
if (win_ie_ver >= 5.5){ document.write('<scr' + 'ipt src="' +_editor_url+ '/scripts/editor.js"');
И таких мелких недочетов проявляется все больше и больше со временем. Представляю, сколько же ошибок вываливается тогда в ломанных и нуленых версиях скрипта, если в дистрибутиве они проявляются в массе своей. Взломщики-то еще и кучу своих ошибок и пакостей понаделают и это все помимо ошибок разработчиков.
Мое мнение – проще заплатить за официальный релиз и некоторую доработку фрилансеру, чем заплатить намного больше за устранению ошибок и огрехов во взломанной версии при отсутствии гарантии стабильной и безглючной работы.