Dynamic Survey. Руководство оператора
Содержание
Цель документа 1
Глоссарий 1
Описание типовых задач 1
1. Создание опроса. 1
2. Создание json-объекта для формы опроса. 2
3. Редактирование опроса. 4
4. Просмотр статистики ответов. 4
Приложение 1. Структура json-объекта для описания формы опроса. 5
Приложение 2. Описание полей формы создания опроса. 9
Цель документа
Документ описывает типовые действия для пользователя, создающего опрос. Все названия полей, ссылок, кнопок и т. п. указаны на русском языке. Если пользователь работает с английским языком, у него будут аналогичные названия на английском.
Глоссарий
Опрос | Сущность в рамках группы, предназначенная для сбора информации от пользователей сайта по некоторым вопросам. |
Ответ | Ответ пользователя на все поля формы опроса. |
Администратор опроса | Пользователь, у которого есть необходимые права для создания опроса. |
Администратор сайта | Пользователь сайта, имеющий неограниченные права на сайт. |
Описание типовых задач
Создание опроса.Перед тем как создать опрос нужно создать json-объект, описывающий форму опроса.
Для создания опроса нужно зайти в группу, к которой должен относиться опрос. В шапке сайта нажать на иконку
и в выпадающем списке нажать на пункт меню Создать новый опрос.

Если у вас не отображается требуемая иконка или нет необходимого пункта меню, у вас нет прав. Для получения прав нужно обратиться к администратору сайта.
После выполненных действий откроется страница с формой создания опроса (описание полей формы в приложении 2). Необходимо заполнить поля формы и нажать на кнопку Сохранить.
После сохранения у пользователей появится возможность отвечать на опрос.
Чтобы ответить на опрос, нужно зайти в группу, в рамках которой был создан опрос и нажать на иконку
и в выпадающем списке выбрать тот опрос, на который пользователь хочет ответить.

Создание json-объекта для формы опроса.
Json-объект создается как ContentBlock с типом json. Ссылка на создание ContentBlock доступан из профиля пользователя как вкладка.

Если у вас нет данной вкладки, необходимо обратиться к администратору сайта.
Для создания json-объекта необходимо нажать на кнопку Добавить новый блок и выбрать тип json.
Если у вас нет выбора типа ContentBlock или в списке типов отсутствует json, необходимо обратиться к администратору сайта.

После этого необходимо заполнить форму

Название блока в дальнейшем нужно будет указать при создании опроса.
Содержимое блока содержит json-объект (описание доступных полей см. в приложении 1).
После нажатия на кнопку Сохранить новый ContentBlock готов для использования.
Редактирование опроса.
Необходимо зайти на страницу со списком опросов. Путь: группа опроса + “/survey/”. Например, “/foundation/intvs/survey/”.
Найти необходимый опрос в списке опросов и в колонке Действия нажать иконку редактировать
. Откроется страница редактирования опроса. Данная форма идентична форме создания опроса.
Обратить внимание, что нельзя менять настройки “Настройки формы ответа” и “Анкета заполняется только один раз” в статусе, отличном от Черновик.
При смене статуса в Черновик все ответы, данные пользователями, будут аннулированы.
Просмотр статистики ответов.
Необходимо зайти на страницу со списком опросов. Путь: группа опроса + “/survey/”. Например, “/foundation/intvs/survey/”.
Найти необходимый опрос в списке опросов и нажать на название опроса. Откроется страница просмотра опроса.
На странице выводится список ответов на опрос. Можно посмотреть отдельный ответ или нажать на кнопку В Excel для выгрузки всех ответов в excel.
Приложение 1. Структура json-объекта для описания формы опроса.
Необходимо задать коллекцию элементов:
[
// Здесь находится список элементов формы.
]
Можно задавать следующие элементы форм: group, text, dropdown, radio, textarea, checkbox, attachment.
Ниже приведены примеры этих типов:
group:
{
"id": 'commonInfo',
"type": 'group',
"cssclass": 'red-border large-padding',
"label": {ru: '', en: ''},
"items": [
// Здесь находится список элементов формы. Также может располагаться группа.
]
}
Не обязательные поля: cssclass.
Для того чтобы группа отображалась свернутой и была возможность сворачивать/разворачивать группу нужно указать поле "attr": "groupWithHiding".
text:
{
"id": 'name',
"type": 'text',
"placeholder": {ru: 'введите ваше имя', en: 'type your name'},
"label": { ru: 'Имя:', en: 'Name:' },
"cssclass": 'input-small',
"validation_rules": {
"required": true,
"maxlength": 256
},
"validation_messages": {
"ru": {
"required": "заполните поле!",
"maxlength": "Максимальная длинна - 256 символов"
},
"en": {
"required": "type text!",
"maxlength": "Max. length 256",
}
}
}
Не обязательные поля: cssclass, placeholder, validation_rules, validation_messages.
Примечание: типы валидации на поля могут быть различными. Для валидации используется плагин jQuery. validate. Можно использовать любой тип из jQuery. validate. Список всех типов указан на официальном сайте плагина jQuery Validation http://jqueryvalidation. org/documentation/ , раздел “List of built-in Validation methods” (некоторые типы, указанные на сайте могут не работать, т. к. на нашем сайте может использоваться не последняя версия плагина).
Пример использования документации. В документации указано:
field: {
required: true,
url: true
}
У нас использовать:
"validation_rules": {"required": true, "url": true}
dropdown:
{
"id": "maritalStatus",
"type": "dropdown",
"cssclass": 'small',
"label": {
"en": "Marital status:",
"ru": "Семейное положение:"
},
"items": [
{
"value": "1",
"label": {
"en": "Not married",
"ru": "Не замужем / не женат"
},
"selected": true
},
{
"value": "2",
"label": {
"en": "Married",
"ru": "Замужем / женат"
}
}
]
},
Не обязательные поля: cssclass.
Для типа dropdown варианты описываются в коллекции items. Но есть предопределенные списки для отображения месяцев и годов. Для их задания нужно вместо коллекции items указать поле attr: 'months' или attr: 'years'.
radio:
{
"id": "engRead",
"type": "radio",
"label": {
"en": "English:",
"ru": "Английский язык:"
},
"items": [
{
"value": "eng1",
"label": {
"en": "I can read professional literature",
"ru": "Читаю профессиональную литературу"
}
},
{
"value": "eng2",
"label": {
"en": "I can pass an interview",
"ru": "Могу проходить интервью"
}
},
{
"value": "eng3",
"label": {
"en": "Full proficiency",
"ru": "Свободно владею"
}
}
]
}
textarea:
{
"id": "mainDuties1",
"type": "textarea",
"placeholder": {ru: 'введите ваше имя', en: 'type your name'},
"cssclass": 'input-small',
"label": {
"en": "Duties:",
"ru": "Основные обязанности:"
},
"validation_rules": {
"required": true
},
"validation_messages": {
"ru": {
"required": "Обязательное поле",
},
"en": {
"required": "required field",
}
}
}
Не обязательные поля: cssclass, placeholder, validation_rules, validation_messages.
checkbox:
{
"id": "lookOtherRegion",
"type": "checkbox",
"cssclass": 'input-small',
"label": {
"en": "consider candidates from other regions",
"ru": "рассматривать кандидатов из других регионов"
}
}
Не обязательные поля: cssclass.
attachment:
{
"id": "attachment_id",
"type": "attachment",
"label": {
"ru": "вложите докумет (только один)",
"en": "attach documents (only one)"
},
"onlyone":"1"
}
Поле onlyone не обязательное. Если оно не указано или указано значение отличное от "1", можно будет вкладывать несколько вложений в это поле.
Приложение 2. Описание полей формы создания опроса.

Название – двуязычное текстовое поле для названия опроса. Обязательное поле.
Описание – двуязычное поле для краткого описания опроса.
Настройки формы ответа – название json-объекта, описывающего форму опроса.
CSS стили для опроса – набор css-правил, которые будут отображаться на странице с формой опроса и на странице просмотра ответа.
Всегда показывать анкету только на русском языке – признак, определяющий многоязычность подписей к полям формы опроса.
Анкета заполняется только один раз – признак, определяющий количество ответов пользователя на один опрос.
Разрешено редактирование ответов – при установленном чекбоксе пользователь сможет отредактировать свой сохраненный ответ.
Статус – статус опроса. Один из трех – Черновик, Опубликован, Закрыт.
Черновик – пользователи не могут отвечать на опрос.
Опубликован – рабочее состояние опроса. Пользователи могут отвечать на опрос.
Закрыт – пользователи не могут отвечать на опрос. От черновика отличается тем, что из данного состояния всегда можно вернуть в состояние Опубликован и пользователи продолжат отвечать на него, сохранив предыдущие ответы.
Отображать специальное сообщение пользователям при закрытии опроса – признак, определяющий отображение специального сообщения для пользователей вместо формы опроса при закрытом опросе. Если выбран чекбокс, на форме отобразится новое поля для ввода сообщения. Поле многоязычное, текстовое.



