All streams
Search
Write a publication
Pull to refresh
32
0
Андрей @NeX

User

Send message
я не об этом. Все пути, по которым загружается система, находятся в этом файле. В него я выносил пути для других файлов.
Спасибо. Вопросы сняты.

Прокомментируйте пожалуйста habrahabr.ru/blogs/code_wtf/65121/#comment_1821044 (2,3)
Сейчас точно не вспомню, скорее всего обходной путь найти можно было. (Я был не вкурсе, что параметры в vars.inc.php добавлять нельзя, логично было бы об этом указать в документации). Если в этом файле находятся все подключаемые пути и пароли, то совершенно логично если там будут находиться аналогичные конфиги других компонентов.

Вопрос снят
В нем содержится основные параметры системы. Логично было бы добавлять туда константы, которые отвечают за аналогичные параметры компонентов сторонних разработчиков.

К примеру, у меня в зависимости от параметров, установленных в vars.inc.php подключался (через include) модуль в файле functions.inc.php (модуль интерфейс разработчика). Выносить конфигурацию туда — не логично.
По вашему новому коду смотрю — он действительно намного читабельнее и лучше предыдущего (папка system). Вопрос снят.

А вот где пришлось править исходники:
1) Перенаправление запросов. Т.е. если входная строка соответствует некоторым параметрам (необходимость в запросах к базе есть, т.е. через mod_rewrite не получается) — выводим ту же самую страницу, что открывается по ссылке /news/news1.html (короткие ссылки на новости). Если нет — то 404 страница.
2) Хочу повесить некоторые действия на событие, когда пользователь заходит на сайт. Замечу, что код модуля достаточно часто обновляется. Но без правки исходников сделать этого я не могу.
Допустим я хочу добавить системную переменнную? Или указать параметр в vars.inc.php. После вызова $nc_core->input->prepare_extract(); мне надо заново определять параметры.

Это не удобно, потому что в куче переменных очень работать сложно.
Скажите, а полный отказ от extract($_NETCAT_INPUT); когда ждать можно?
По поводу наследования:
1) Модуль интернет-магазин. Как на одной копии системы создать магазины с разной логикой? Авторизация пользователей. Как для разных сайтов сделать разную форму для авторизации? Как туда, к примеру, добавить еще одно поле и проверять его при входе? — Лезть в исходники системы и править там. А с очередным обновлением все переписывать.

2) Компоненты. Есть формы добавления, условия, действия после добавления — все хорошо. Если, к примеру, мне нужно автоматически добавлять данные? Приходится выводить все действия в сторонние функции или использовать curl. Почему нельзя сделать Message->add(array) и чтобы в нем обрабатывались все действия. Почему для работы с компонентами до сих пор приходится использовать запорсы к базе данных а не перевести их на ORM.

3) Было бы очень удобно, если код компонентов вынесли из бд в локальные файлы. Работы тут немного, а плюсов — куча.
Регистер_глобалс — можете привести те причины, из-за которых нельзя от него отказаться? Не вижу никакой гибкости, когда он включен
отпишусь завтра, сейчас нет доступа к хелпдеску
ребята! С последнего топика на хабре год прошел! никаких глобальных изменение в коде я за это время не заметил. Кое-что подправили, да. Много ужасных моментов повыкидывали. Но все равно продолжаете писать в том же стиле:
— куча переменных
— куча функций
— везде, где можно изобретаете свой велосипед
как результат каша в коде и множество ошибок

Я не против помогать вам в развитии проекта! но если развитие пойдет на устранение этих недостатков и превращение системы в хорошую удобную и масштабируемую cms.

Что лично от нетката хочу увидеть после этого топика я (что и послужило причиной его написания):
1) Быстрого исправления ошибок и выхода патчей
2) ГРАМОТНЫЙ КОД в котором легко разбираться. Сейчас это практически невозможно сделать
3) Нормальную архитектуру, наследование, выключение register_globals, ORM (компоненты, разделы)
4) UTF-8

Сейчас же для любого проекта, кроме сайтов-визиток, вашу систему использовать очень тяжело. Из-за того, что в ней достаточно много мест, которые меняют логику своей работы от версии к версии (это правильно, но желательно описывать это в Readme, что с данной версии вывод раздела с несколькими компонентами работает чуть-чуть по-другому) и невозможности модификации тех частей системы, которых нет в админке для сложных сайтов обноления недоступны.

По поводу модулей — из-за того, что у вас нет никакого подобия наследования ни один сайт, где они используется обновить нереально — перезаписывается весь код модулей, а правки каждый раз вносить достаточно неудобно
в вашу систему поддержки

Изменения в ядро вносятся позитивные, но! Почему! Почему до сих пор повальная практика использования register_globals! Кучи переменных! Полное отсутсвие наследования и появление новых багов от версии к версии. Причем в самых разных местах. Если нужно больше подробностей — в ЛС
Да. Но никаких исправлений нет. А каждй раз пробегаться по исходникоам после установки обновления надоедает.
В суд подавать не грозились.По лицензионному соглашению мы не имеем смотреть исходники и изменять их.
Значит исправили. Извиняюсь.
В багтркер отсылаем. Думаю, никому не будет лучше, если их выкладывать сюда?
Этот баг до сих пор работает. Цифры на капче генерируются в зависимости от id, по которому загружается капча. Так что не надо писать про самую лучшую безопасную cms
Вы уверены? Если он не нужен, то зачем продают?
Вышеприведенный баг это только верхушка айсберга. Некоторые баги позволяют и сайт взломать.

Лично мне не нравится совковая идеология компании — хороший маркетинг, красивая обертка — а внутри куча багов. За что мы должны любить эту компанию?
Вы знаете, багрепорты скидывали им больше года назад! Но неткат такая компания, что без этой темы делать они ничего не будут
Подключение к TinyMCE

1). Делаем как указано на этой странице

2) Если mod_proxy отключен на хостинге, то директива
ProxyPass /speller/tinyspell http://speller.yandex.net/services/tinyspell
работать не будет. Вариант решения — поставить proxy сервер. Я его положил в папку speller/tinyspell/index.php. Соответственно, spellchecker_rpc_url при настройке плагина заменил на "/speller/tinyspell/index.php"

3) В плагине spellchecker TinyMCE в качетве разделителя слов указаны буквы «Чч», русские слова с ними проверялись неправильно. Файл /plugins/spellchecker/editor_plugin_src.js надо переименовать в /plugins/spellchecker/editor_plugin.js и строку 134 исправить на:

var re = '', i, str = this.editor.getParam('spellchecker_word_separator_chars', '\\s!"#$%&()*+,-./:;<=>?@[\]^_{|}§©«®±¶·ё»јЅѕї¤\u201d\u201c');


Архив с исходниками

Information

Rating
Does not participate
Location
Челябинская обл., Россия
Date of birth
Registered
Activity