Разделы

  
 

Дополнение - социальная сеть на MODx Evo

Добрый день всем.
В процессе разработки одного из проектов появилось большое желание выбросить весь огород из webloginpe+FDM+самописные скрипты, на которых ворочался функционал user-generated content и реализовать с нуля компонент, реализующий некоторый функционал, присущий социальным сетям.
Сейчас пользовательский контент — это ресурсы в дереве modx, находящиеся в определенных папках и со строго определенными шаблонами.

Структура расширения предполагается такой:
— Класс, с экземпляром $modx->social который создается по OnLoadWebPage и доступен всегда и везде, на манер $modx->db.
— Модуль, в котором производится конфигурация этого расширения и в котором можно наблюдать и вмешиваться в пользовательскую активность
— Набор сниппетов, реализующих различные аспекты соц.сети через объект $modx->social (сниппет регистрации, личного кабинета, редактора контента, вывода топа пользователей, и т.д.)

На данный момент (25.11.2011) запланировано и отчасти реализовано:
— Скелет класса
— Настройка политик для различных веб-групп пользователей по созданию/редактированию пользовательского контента
— Методы для отрисовки формы редактирования контента и сохранения с проверкой на соответствие правам текущего веб-пользователя
— Обязательно будут способы управления пользовательскими файлами (некая замена админскому MCPuk для фронтенда)
— Политики для групп пользователей сейчас имеют такой вид:
web-группа => шаблоны, с которыми разрешено создавать документы + описание родительских документов, где пользовательский контент разрешено создавать

Также будет сделан нормальный человеческий личный кабинет + вывод списков пользвательских документов с кнопками для редактирования. Все это будет ворочаться с использованием шаблонов на чанках и с единой конфигурацией, которая пока неизвестно где будет храниться, и настраиваться из своего модуля.

И еще планируется переключатель — хранить весь пользовательский контент в таблицах modx или в собственных таблицах (именно он позволит создать сайт из сотен тысяч ресурсов, который не будет тормозить :)).

Что очень лень делать:
— списки друзей + настройки приватностей (иными словами функционал Вконтакте)))
— личные сообщения
— управление аватарками
— всевозможные рейтинги пользователей, блогов и кармы
— комментирование и оценка всего и вся (но в минимальном наборе будет сделано)

В этом топике хотелось бы услышать пожелания по функционалу и может быть собрать какие-то наработки, которые позволят ускорить разработку дополнения.
А может соц.сеть на modx вообще никому не нужна, и стоит ограничиться только минимально необходимым фунционалом для user-generated-content?