Модуль "Группы" форк модуля "Блог"

Представляю Вашему вниманию модуль "Группы". Модуль полностью основан на модуле "Блог" и следовательно содержит следующий функционал:

  • группы. Просмотр списка групп, просмотр группы, вступить/выйти из группы.
  • записи группы. Просмотр/добавление записей по группам. Возможность добавления тегов к записям и просмотр записей по тегам.

Но есть и ряд упрощений, изменений, улучшений, доработок:

  • ссылка на "вступить в группы/выйти из группы". Теперь при ajax запросе не передается параметр: groupId. Идентификация группы происходит на основе slug. Новый ссылки имею вид: /group/<slug>/join и /group/<slug>/leave;
  • просмотр записей возможен только по группам. Нет функционала просмотра общего списка записей;
  • js файл который используется в виджете JoinLeaveWidget вынесен из папки темы в папку модуля;
  • стили, которые модуль "Блог" хранит в yupe.css вынесены в отдельный css файл. Этот файл так же и располагается в папке модуля;
  • изменены типы групп. Если в блогах это: публичный и личный, то в группах это: открытая и закрытая. Просмотр закрытых групп разрешен только участникам этих групп;
  • возможность создания группы на фронте. Созданным группам присваивается статус "Модерация". В административной части при редактировании можно утвердить созданную группу. При этом пользователь, создавший группы, добавляется в список участников группы;
  • при вступлении к группу так же указывается роль пользователя. При вступлении с фронтэнда группа по умолчанию "User", при утверждении группы через бэкенд - "Administrator"
  • возможность добавления записи на фронте;
  • используется только часть виджетов из модуля "Блог": JoinGroupWidget, LastPostsOfGroupWidget, MembersOfGroupWidget, ShareWidget.


Модуль можно скачать с github.com. В скором времени модуль так же появиться и в Yupe Market.

P.S. Надеюсь кому-нибудь пригодятся мои наработки.

P.P.S. Буду рад ПР.