Разработка / Черновик Дайджеста
Что такое «Черновик дайджеста»
После конфигурирования параметров выборки дайджеста (см. Action конфигурирования дайджеста) автор попадает в «черновик дайджеста», где ему предоставляется интерфейс, содержащий информацию из сообщений, попавших в выборку (каков формат этой информации и вообще интерфейс — зависит от типа «черновика дайджеста»). По редактированию и сохранению результатов получается обычный, ничем не отличающийся от прочих документ (единственно что он помечен как «дайджест»).
Задачи кода «черновика дайджеста»
Программный код, реализующий «черновик дайджеста» должен уметь следующее:
- Получить сообщения, попавшие в выборку в соответствии с полученной в $_REQUEST конфигурации
- Сформировать блок полей формы для редактирования дайджеста
- Обработать эти поля и превратить результат в тело документа, отправив его на сохранение
Где и как он подключается
Черновик дайджеста реализуется через архитектуру «хелперов». Ниже примерная иерархия «хелперов», соответствующая черновикам
- Helper
- HelperRecord
- HelperDocument
- HelperDigest — черновик, собирающий заголовки, авторов и даты полученных сообщений и складывающий их в текстовый формат для вывода в вака-редактор
- HelperDigestForm — черновик на форм-процессоре
Знаете что, почитайте-ка Разработка.
Архитектуру Хелперов, вот что.
Где в БД хранится для записи, каким черновиком мы пользовались
Теоретически хранится это в records.is_digest=1,2 (simple,form), но практического применения не несёт.
Созданный дайджест — обычный документ, ничем от других не отличающийся, кроме, разве что, записей в records_rare, которые позволяют найти все дайджесты какой-то рубрики/сообщества.
Настройки пользователя по выбору ЧД
В профиле пользователя можно выбрать шаблон заголовка дайджеста.
В списке «настроек» можно будет выбрать тип дайджеста по-умолчанию
Хранится он будет в обширном поле для допзначений.
Пока что такой настройки нет.
Ух.