Автор Тема: Критика: конструктивная и не очень.  (Прочитано 2845 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн AlexanderIpp

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 3
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.wkdc.net
Вот ковыряю я этот Санитариум.
Вообще мне был нужен приличный движок для интеграции с конфой на Ikonboard 2.1.9.
С Perl\'ом знаком неплохо, с DBM тоже.
По-идее скрипт типа данного движка - штука не очень сложная, и применения ООП не требующая. Сам бы написал, да времени нет.
По-идее мне многие фичи были не нужны, например, комментарии я тут же сделал средствами конфы.
Мои претензии таковы:
1. Применение модулей и излишний уклон в ООП. МОдифицировать из-за этого движок почти невозможно, по крайней мере, использовать стандартные встроенные функции очень сложно, приходится всё делать самому руками.
Имхо, этим и объясняется малое кол-во хаков к этому движку, хотя он уже довольно известен...
2. Отсутствие использования CGI.pm. Зачем читать формы руками, выводить заголовки и пр. ими же? Если есть такая приличная вещь?
3. Отсутствие встроенной защиты. Мне в общем-то пофиг, я всё на основе иконбордовского логина сделал, но...
4. Излишняя страсть автора скрипта ко всеобщему усложнени всего подряд. Тот же auth_mod. Куда такие навороты?..
Сюда же и модули и прочее.
Вообще я многие фичи так и не сумел реализовать.
Увы, как только появится лишняя от-но свободная неделька, придётся написать свой движок... Жаль...
Хотя многое сделано неплохо. Если использовать Санитариум как готовый продукт, то ему почти нет равных.

Оффлайн Green Kakadu

  • Координатор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 2757
  • +1/-0
  • 0
    • Просмотр профиля
    • http://gnezdo.webscript.ru
Критика: конструктивная и не очень.
« Ответ #1 : 04 Мая 2002, 02:59:59 »
Цитировать
Отсутствие использования CGI.pm. Зачем читать формы руками, выводить заголовки и пр. ими же? Если есть такая приличная вещь?

согласен абсолютно. Понимание этого ко мне пришло несколько позже чем нужно было.
Цитировать
МОдифицировать из-за этого движок почти невозможно, по крайней мере, использовать стандартные встроенные функции очень сложно, приходится всё делать самому руками.

;) лучше не так сказать - модифицировать несложно, но почти все это должно производится через Sanitarium_WL.pm, а там  сложно разобраться - все из-за того, признаю, что ;) я это недостаточно структурировал и по большому счету, сделал несколько безграмотно, но этому есть достойное объяснение - в первый раз :) как-никак.
С другой стороны, могу со всей честностью заявить, что мои следующие "творения" (если таковые будут), будут менее громоздки в плане структуры.
Цитировать
Излишняя страсть автора скрипта ко всеобщему усложнени всего подряд. Тот же auth_mod. Куда такие навороты?..


я не программист, а связист - возможно сказывается разный менталитет.. Хотя мне не кажется что auth_mod так уж и усложнен, просто хранить не зашифрованный пароль было бы ИМХО неразумно, хотя опять же есть и в этом доля истины..

+ ко всему явно надо доправить некоторые баги
Цитировать
Хотя многое сделано неплохо. Если использовать Санитариум как готовый продукт, то ему почти нет равных.

я старался.
 в исканиях.

Оффлайн AlexanderIpp

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 3
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.wkdc.net
Критика: конструктивная и не очень.
« Ответ #2 : 04 Мая 2002, 20:25:58 »
Green Kakadu
Цитировать
но почти все это должно производится через Sanitarium_WL.pm, а там сложно разобраться - все из-за того, признаю, что  я это недостаточно структурировал

Угу. И того, имеем то, что приходится всё делать самому руками. Благо dbm в сущности штука несложная. :)
Цитировать
в первый раз  как-никак.

Для первого раза - очень мощно! :up:
Цитировать
просто хранить не зашифрованный пароль было бы ИМХО неразумно, хотя опять же есть и в этом доля истины..

А смысл шифровать? Если кто-то получит доступ к компу, на котором всё это лежит в куках, то тут уже и шифрование не спасёт. А так - лишние сложности.
Цитировать
я старался.

Вижу. :)
Теперь вопрос ближе к делу.
Я хочу сделать генерацию смайлов средствами Ikonboard. При этом динамическую, т.е. не при постинге статьи, а при её выводе.
Где искать вывод ТЕКСТА статьи при печати или простом просмотре?

Оффлайн Green Kakadu

  • Координатор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 2757
  • +1/-0
  • 0
    • Просмотр профиля
    • http://gnezdo.webscript.ru
Критика: конструктивная и не очень.
« Ответ #3 : 05 Мая 2002, 02:20:04 »
Цитировать
всё это лежит в куках, то тут уже и шифрование не спасёт. А так - лишние сложности.

в куках только идентификатор и время сессии.
Цитировать
Где искать вывод ТЕКСТА статьи при печати или простом просмотре?

Sanitarium_WL.pm
(строка 438) sub build_article
Вот эта часть:

#if use dinamic generated pages
if ($page_view){
$self->{\'page\'}=$page_view;
$self->unpack_rec($article_db{$pages[($page_view - 1)]});
#$self->get_author_info();
if ($print){
#make <%article_url%> for mail & print pages
if ($self->{\'static_pages\'}){$self->{\'article_url\'}="$self->{\'public_url\'}/$self->{\'cat_id\'}/$id"."_1.$self->{\'ext\'}";}
else {$self->{\'article_url\'}=$self->{\'view_cgi_url\'}."?goto=$id";}
$self->load_templates($print);#$print = \'print\' or \'mail\'

}
$self->{\'static_pages\'}=0;
return $self->parse_article_template;
}

Возможно удобнее будет перехватывать все это и вводить дополнительную обработку отсюда: (строка 530 ) sub parse_article_template.
Т.е. уже последний этап перед вставкой содержимого в шаблоны.
Текст статьи : $self->{\'content\'}
Превью: $self->{\'preview\'}
Т.е. можно с ними что-нибудь поделать, а потом опять закинуть в те же значения хеша и пустить на окончательную обработку.
 в исканиях.

Оффлайн AlexanderIpp

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 3
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.wkdc.net
Критика: конструктивная и не очень.
« Ответ #4 : 05 Мая 2002, 20:06:12 »
Green Kakadu
Цитировать
в куках только идентификатор и время сессии

Я особо не вникал, так глянул, поверхностно. :)
Цитировать
Sanitarium_WL.pm
(строка 438) sub build_article
Вот эта часть:

Ok, гляну.
Вообще второй вариант наверное лучше.
Ладно, ещё поковыряюсь завтра, потом ещё вопросы будут. :)

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28