Наши скрипты > Sanitarium WebLoG

SANITARIUM 2 ToDo List

<< < (32/39) > >>

Green Kakadu:

--- Цитировать ---ListZone.Ru:
О комментариях. По-моему было бы удобнее, если вместе с уведомлением на email о новых комментариях, в тексте письма будут прямые ссылки на удаление или добавление данного комментария.
--- Конец цитаты ---

ок. комментарии песня отдельная я, если честно, ими еще не занимался, так что все предложения принимаю на заметку. Вообще, это вещь спорная: с одной,  обратная связь с посетителями и иногда комментарии читать интереснее статьи, с другой, часто они без модерирования превращаются в помойку. Поэтому:
1. система комментариев будет делаться как "независимая" часть системы
2. скорее всего при статическом режиме комментарии на отдельных страницах (думаю их тоже можно в статике распечатывать)
3. если есть идеи борьбы со спамом в комментариях на уровне скрипта - поделитесь  мыслями.

Например, как я понял вебскрипт.ру от комментариев к статьям отказался из-за кучи помоев (спама различного рода) которые туда регулярно выливались.


--- Цитировать ---R.V.:
Green Kakadu Такой вопрос: под какой лицензией будет распространяться скрипт?
--- Конец цитаты ---

какая-нибудь открытая лицензия (GPL или что-то типа того) -это 100%

скрипт делался с учетом того, чтоб у него была открытая понятная архитектура с широкими возможностями по расширению сторонними разработчиками (вот бы мне еще разродиться нормальной документацией).Проблема санитара 1 в том, что его работа завязана на один модуль с довольно запутанным/невнятным интерфейсом.

В новой версии я попытался реализовать модную ныне модель MVC - model-view-controller

В качестве контроллера выступают модули построенные на основе CGI::Application
View - система, работающая с шаблонами расширенного синтаксиса HTML::Template (причем синтаксис проверяется HTML::Template)

Модель хранения данных - система модулей на создание которой меня вдохновила работа с пакетом SPOPS + апгрейженный мною модуль SQL::Abstract. Пока работает только с MySQL но для перехода на Pg надо будет внести лишь небольшие изменения в один модуль который отвечает за то что называется object mapping (не знаю как по-русски).

Из каких-либо особенных модулей ничего не использовалось, т.е. подойдет обычный хостинг с CGI (все необходимые модули будут в составе дистрибутива они чисто перловые). Единственное что не помешает - наличие ImageMagic чтоб делать к картинкам превьюшки.

упреждаю ваши вопрос "Когда"?
Скоро. Хочется выпустить в свет его если уж не полностью готовым, то максимально законченным с неким базовым набором функций.
Поэтому довожу до ума.
На каком этапе разработка? Что уже есть?
Есть система которая:
1. имеет уже полностью функциональный, в меру симпатичный и удобный  админский интерфейс, система авторизации (пока сессионная, планирую добавить воз-ть использования базовой апачевской авторизации)

2. Визуальный HTML редактор для статей и превьюшек (пока подключил наименее громоздкий RTE) планирую добавить поддержку других более навороченных, типа TinyMCE

3. работает с неограниченным кол-вом категорий, выстраивает деревья категорий, строит по ним меню. Соотв. удаление, изменение, создание, просмотр категорий.
Планирую: систему работу с меню. Пока сортирует по алфавиту.Воз-ть использования различных шаблонов для меню. Хотелось бы дать воз-ть устанавливать порядок следования + добавлять в меню ссылки не относящиеся к системе.  (это уже после выхода альфы)


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

5.  авторы (создание, изменение, удаление)

6.  пользователи, система доступа с разными правами (+доступ привязан к категориям) : создание пользователя, изменение прав (не все авторы - пользователи). Какие группы пользователей:
 ------ "вируальный автор". Болванчик/заполнитель от имени которого пишут статью, доступа не имеет никакого и ни к чему и вообще не входит в число зарегистрированных пользователей.
------- "автор" - написание статей в разрешенные категории (рубрики). Редактирование своих статей.
-------- "редактор". Написание, редактирование, удаление статей из разрешенных рубрик. Управление "виртуальными авторами" (создает виртуалов, удаляет, пишет от их имени статьи).Публикация статей. Генерация страниц: отдельной категории, отдельной статьи, за последние nn дней.  
---------"админ". может все.
 (такая сисетма мне показалась наиболее разумной. Авторы, редакторы могут иметь/не иметь доступ в определенные категории)

7. система генерирует статичные страницы. (индексные страницы категорий могут быть двух типов: последниее NN статей на MM страницах или дайджест: последние т статей категории и ее подкатегорий на одной странице)

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

Что делаю сейчас: редактирование конфига через веб-интерфейс (довольно скучное и занудное занятие).

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

+ написать установщик
+ сделать более менее "перевариваемые пользовательские шаблоны" (пока там все скромно на уровне HTML 0.9b)
+разродиться минимальо-необходимым объемом документации.

и получается альфа для тестирования
-----------------------------

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

- привинтить почтовые функции (sendmail,SMTP) проблем в этом не вижу, поэтому пока и не делал

- комментарии :)
- рейтингование (тоже отдельной системой)
- динамический режим и кеширование (довольно интересная задача).
- сделать поудобнее  работу с менеджером файлов (написал системку на CGI::Uploader, довольно неплохая получилась, только надо будет расширить функциональность)
- родить парочку нестандартных плагинов-типов документов для того, чтоб продемонстрировать широкие воз-ти (например  плагин для публикации FAQов или докуметов-фотоальбомов).

+ поправить те баги, которые кто-то из энтузиастов найдет и внести те предложения которые окажутся разумными.
-----------------------------------------
получается  beta :)

ну а дальше видно будет. Надо будет нормальную документацию по программной части написать, написать конвертер со старого санитара в новую систему (+ ряд штук, которые мне кажется не помешают ,но о них рано пока говорить).

вот примерно план таков. Тружусь в меру своих воз-тей, забил на работу (уволился, а новую пока еще не искал и до выхода альфы не буду) так что стараюсь.

Если интересно, список используемых системой сторонних модулей на данный момент (будут поставляться в дистрибутиве, к сожалению, некоторые пришлось изменить).

CGI/CGI::Simple - на выбор
CGI::Application (переопределена часть методов), ф-ции контроллера
CGI::Application::Dispatch - ф-ции контроллера
CGI::Uploader (изменен мною) - основа менеджера файлов
Data::FormValidator (урезан мною) - проверка данных при постинге статей и т.д.
DBI  :) dbd::mysql
Digest::MD5 - шифрование,, генерация id сессий
File::MMagic - используется файловым менеджером
File::Temp - используется файловым менеджером
File::Path - работа с каталогами категорий
HTML::Template - используется лишь при компиляции шаблонов и проверки их синтексиса.
Image::Size - используется файловым менеджером для определения размеров загружаемой картинки (Высота - Ширина)
ImageMagic - для генерации превьюшек к картинкам (опционально)
MIME::Type - используется файловым менеджером
MIME::Types - используется файловым менеджером
Params::Validate - используется файловым менеджером (думал убрать, но решил оставить)
SQL::Abstract (изменен) - генерация SQL запросов

----------------
+ кол-во файлов-шаблонов для админ интерфейса - 28

Но особо не пугайтесь (+ к этому еще 15 моих модулей ), все грузится только по мере необходимости и в основном при  работе админа (проверки данных, загрузка файлов и т.д.)

[off]P.S.читаю, прям как Остап Бендер  про Васюки-Москву..[/off]

Сергей К.:
А как насчет конвертации из первой версии во вторую? Очень бы хотелось:-)

NAS:
Сергей К.
Читаем внимательно:

--- Цитировать ---Green Kakadu:
Надо будет нормальную документацию по программной части написать, написать конвертер со старого санитара в новую систему (+ ряд штук, которые мне кажется не помешают ,но о них рано пока говорить).
--- Конец цитаты ---

majix:
Еще надо добавить возможность, перемещение нескольких материалов из одной категории (под-категории ...) в другую, в независимости от ее вложенности.

Green Kakadu:

--- Цитировать ---majix:
добавить возможность, перемещение нескольких материалов из одной категории (под-категории ...) в другую, в независимости от ее вложенности.
--- Конец цитаты ---

все перемещается без проблем, как сами документа, так и категории (и целые ветки категорий)

--- Цитировать ---Сергей К.:
А как насчет конвертации из первой версии во вторую? Очень бы хотелось:-)
--- Конец цитаты ---

конечно, только надо вначале получить более менее стабильную, законченную 2-ю версию :)

Об урлах.
сейчас для статики урлы такие:
http://site.ru/Название Категории/Подкатегория/2005/06/22/id_page-номер страницы.расширение
:) есть большое желание вообще уйти к урлам без названй категорий
http://site.ru/2005/06/22/id_page-номер.расширение
на а индексы категорий в папках типа
http://site.ru/MyCategory/

есть ряд плюсов:
1 основной, что при смене категорий урлы статей остаются прежнимим
2 в построении урла (названии файла) не нужно использовать информацию объекта "Категория"

Навигация

[0] Главная страница сообщений

[#] Следующая страница

[*] Предыдущая страница

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 
Перейти к полной версии