-
Notifications
You must be signed in to change notification settings - Fork 0
/
task.txt
125 lines (116 loc) · 13.4 KB
/
task.txt
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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
1) Назначение
Система delivery предназначена для автоматической новостной и информационной
рассылки пользователям и гостям сайта www.snob.ru. Система должна быть реализована на языке PHP версии
5.3.х, с использованием Zend Framework 1.Х и базы данных MySQL 5.x.
Необходимо создать и внедрить продукт для использования.
2) Основные функции
В системе рассылки администратором осуществляются следующие операции:
- формирование списка пользователей
1
для рассылки из одной или нескольких групп
2
пользователей, используя
фильтры3
по различным признакам (описаны ниже);
- формирование писем (текстов и иллюстраций к ним в формате html) на основе имеющихся в системе
шаблонов,
- адресная рассылка сформированных писем выбранным пользователям.
Система должна быть также интегрирована в личный кабинет сайта, где пользователи сайта смогут управлять
рассылками (подписаться/отказаться от рассылки).
Также на сайте должна появиться форма для подключения к рассылке не участников проекта (с
двухступенчатой защитой - при заполнении формы приходит письмо для подтверждения). Форма подробно
описана в п. 4.3, ее дизайн будет предоставлен.
Сценарий использования системы администратором таков:
-выбор шаблона из имеющихся в наличии,
-формирование письма - доработка шаблона, добавление текстов, ссылок, иллюстраций,
-выбор группы пользователей, которым будет отправлено сформированное письмо, или выбор готового
сохраненного списка для рассылки,
-формирование списка рассылки: применение ограничений к группам при помощи фильтров, добавление или
удаление участников из списка вручную(опционально),
-выбор отправителя письма из возможных адресов,
-отправка письма с возможностью выбора даты и времени отправки.
3) Требования к управлению (со стороны администратора)
3.10) Совместимость системы с наиболее распространенными браузерами: Internet Explorer (версии не ниже 6.0), Firefox, Opera, Safari и Chrome.
3.8) Простое редактирование шаблонов для создания готового письма. Возможность добавления шаблонов для
рассылки путем программирования.
Все шаблоны, которые используются в данный момент, необходимо импортировать в систему.
3.1) Список пользователей для рассылки формируется из групп рассылки с учетом отбора по различным
признакам с помощью фильтров. Возможность формировать списки пользователей из групп, используя один
или несколько фильтров. Необходима возможность добавления фильтров путем программирования.
3.2) Основные группы пользователей:
-зарегистрированные на сайте (все пользователи, аккаунты которых действительны на момент рассылки):
-сотрудники,
-партнеры,
-участники проекта,
-подписчики журнала (“стартовые”),
-ЧК,
-бывшие участники (те, у кого срок действия аккаунта на момент рассылки истек),
-гости.
3.3) Основные фильтры для управления списками для рассылки (для зарегистрированных):
- платный/бесплатный аккаунт,
- страна (выбор из списка)
- город (три города Лондон, НЙ, Москва)
- дата окончания подписки до (календарь) (все пользователи, срок действия аккаунтов которых заканчивается
раньше указанной даты)
- дата начала подписки от (календарь) (все пользователи, действие аккаунтов которых началось позднее
указанной даты)
3.4) Автоматическое обновление основных групп:
- новые (подписавшиеся) пользователи сайта добавляются автоматически,
- старые пользователи (срок действия аккаунта истек) удаляются автоматически,
- гости, которые подписались на рассылку, добавляются автоматически,
1
Список для рассылки - список всех пользователей, которым будет отправлено конкретное письмо при помощи
системы рассылки.
2
Группа пользователей - все пользователи одного типа подписки (в соответствии в CMS сайта: ЧК, подписчики,
сотрудники, партнеры) или все гости сайта.
3
Фильтры - признак, по соответствию которому из группы отбираются пользователи для включения в список
рассылки- пользователи, отказавшиеся от рассылки через личный кабинет или по ссылке в письме, удаляются
автоматически.
3.5) Возможность добавлять пользователей в группы (например, в группу “гости”) вручную, возможность
удалять пользователей из групп. Изменение группы вручную имеет приоритет над автоматическим
изменением: если администратор удаляет пользователя, то при следующем автоматическом обновлении группы
пользователь не попадает в группу.
3.6) Возможность вручную редактировать следующие поля данных пользователей (только для зарегистрированных):
-город,
- страна,
- платный/бесплатный.
При этом данные CMS сайта не изменяются, т.к. данные хранятся в отдельных структурах.
3.7) Возможность вручную редактировать список зарегистрированных пользователей для рассылки (например,
все ЧК и Василий Иванов). При этом при добавлении в список пользователя вручную должно быть доступно
автозаполнение, где в выпадающем списке администратор видим поля Имя, Фамилия, контактный e-mail
(например, для подписчиков, которых зовут одинаково).
3.7) Возможность использовать совокупность фильтров, примененную в прошлый раз (например, все участники
проекта из Лондона со сроком подписки до 15 мая). Хранение до 5 таких совокупностей фильтров (название
списку присваивается автоматически по названию групп, фильтров и дате создания). Обновление таких списков
с учетом изменений в группе пользователей (минус те, у кого подписка кончилась, плюс те, кто подписался).
3.9) Возможность указать в поле “отправитель” один из нескольких общих адресов проекта (snob@snob,
member@snob и других), возможность добавить адреса отправителя.
3.10) Возможность “отложенного” отправления - администратор может указать дату и время рассылки, начиная
с настоящего момента, и письма будут отправлены в это время.
4) Требования к управлению (со стороны пользователя)
4.1) Возможность отказаться от рассылки (ссылка в каждом письме). После прохождения по ссылке
пользователь исключается из группы рассылки, в которой он был. При следующем обновлении группы
пользователь не добавляется в нее.
4.2) Возможность для подписчиков настроить рассылку из личного кабинета: во вкладке “Настройки” личного
кабинета пользователь может отметить или снять чекбоксы: “Получать рассылку”. Если чекбокс отмечен,
пользователь попадает в группу для рассылки в соответствии с описанным выше механизмом, если не отмечен -
не попадает в группу.
4.3) На всех страницах сайта в футере должна быть расположена кнопка, вызыващая модальное окно. для
подписки гостей сайта на рассылку. Система подписки двуступенчатая для не-участников проекта (после
заполнения формы нужно подтвердить, перейдя по ссылке из письма). Сценарий таков:
-пользователь заполняет на сайте специальную форму (расположенную на всех страницах сайта в футере) с
полями: Имя Фамилия e-mail,
-при неправильном заполнении формы выдается сообщение об ошибке,
-при правильном заполнении формы пользователю выдается сообщение о том, что на указанный адрес
отправлено письмо для подтверждения, и пользователю приходит письмо, содержащее ссылку для
подтверждения рассылки;
- если форма заполнена верно, но адрес электронной почты уже есть в любой из групп пользователей (гости или
любые действительные), то выдается сообщение о том, что такой адрес уже есть в базе и введенный адрес не
добавляется в группу рассылки,
-после перехода пользователя по ссылке в письме, пользователь попадает в группу “гости”, и находится в ней до
тех пор, пока не откажется от рассылки путем перехода по ссылке из письма, описанном в п. 4.1.
5) Аналитика
Необходимо улучшить аналитику: считать переход по ссылкам из рассылки, в том числе - по различным
группам пользователей (подписчики журнала, УПы, гости и т.д.).