Forums / National / Russian / Шло время, менялись стандарты

стандартизация переменных, имен файлов, обращения с файлами

medar
#9659 2009-03-10 17:12
Я сразу согласен только с одним - что lang надо вынести из system.
По поводу остального надо думать. Дело в том, что "порядок", на первый взгляд прикольный, в реальной жизни может быть неудобным.

Например - предложение Дайвера по поводу хранения lang от скинов/плагинов в одном месте. Я против такой фичи.

Плюсы: визуально легко найти все lang для редактирования, удобно делать новые локализации.

Минусы:
- для скинов нужно будет делать процедуру install (которая будет копировать lang скина в папку lang в корне)
- нужно будет делать процедуру install для всего движка, ибо:
- есть проблема с правами на запись в папке lang. в дистрибутиве lang надо будет делать пустой, в инструкции юзера придется просить ставить на эту папку права 777 и во время install движку нужно будет заполнить эту папку дефолтными лангами. Почему нельзя по умолчанию в корневом ланге держать эти дефолтные значения ? Дело в том, что апач как правило работает с файлами от юзера apache или nobody. Если мы что-то запишем в эту папку, то движок не сможет что-то удалить/добавить в наших папках. Единственный выход - просить там ставить 777 на всех папках и файлах рекурсивно, но для этого нужен или ssh или долгая нудная работа руками. Юзера жалко.

Кстати, такая же проблема появится, если юзер запишет туда пак локализации, например, затрагивающий какой-то плагин, а потом попытается этот плагин деинсталлировать - лэнгпак этого плагина не удалится, так как owner этого файла будет уже не apache, а юзер.

По-моему, минусы перевешивают.
А имеющийся плюс можно реализовать по-другому - например, сделать в админке Lang summary, где будут перечислены пути до всех известных lang-файлов в системе.

По поводу админки со стандартным дизайном - хорошая идея, можно реализовать.
К примеру сейчас создавая скин, я просто тупо копирую из дефолтного скина папку admin.
Но без правки css файла она отображается не верно.
Нам нужно просто иметь дефолтный css со стандартными значениями, которые используются в движке и дефолтных плагинах. Я, в принципе, уже делаю такой.
rangjungyeshe.ru