Сниппеты easyComm
ecForm
Сниппет выводит форму добавления нового сообщения.
Сниппет можно вызывать кешированным, так как его назначение - только вывести html код формы и новую цепочку. При первом вызове сниппет создает в базе новую цепочку сообщений (объект ecThread), привязанную к текущему ресурсу. При любом вызове сниппета (а не только при первом) в поле properties объекта ecThread записываются в формате json все параметры сниппета, чтобы в дальнейшем можно было их использовать.
Параметры сниппета ecForm
Параметр | По-умолчанию | Описание |
---|---|---|
thread | resource-[[*id]] | Имя цепочки сообщений. Должно быть уникальным. |
formId | как thread | Используется на фронтенд для идентификации формы при наличии нескольких форм на одной странице. |
allowedFields | user_name, user_email, user_contacts, subject, rating, text | Список разрешенных для заполнения полей в форме. |
requiredFields | user_name, text | Список обязательных полей. |
antispamField | address | Имя поля, используемого как антиспам. Это поле должно быть скрыто от пользователя через css, и он его не заполнит, в то время, как спам-роботы будут его заполнять. |
autoPublish | 0 | Автопубликация сообщений. Возможны варианты "пустое значение" - автопубликация отключена, "OnlyLogged" - автопубликация, если пользователь авторизован в текущем контексте, "All" - автопубликация сообщений от всех пользователей. |
agreementCheckbox | 1 | Показывать галочку "Я даю свое согласие на обработку персональных данных". |
tplForm | tpl.ecForm | Чанк с формой |
tplFormReCaptcha | tpl.ecForm.ReCaptcha | Чанк с ReCaptcha |
tplSuccess | tpl.ecForm.Success | Чанк с сообщением об успешной отправке сообщения. В чанке доступны все поля только что созданного объекта ecMessage. |
starsTheme | default | Укажите тему оформления для звездочек, доступны default , stars2 , stars3 , hearts . Можно создать свою в файле ec.css и указать её здесь. |
mailManager | E-mail администратора для уведомлений о новых сообщениях, перекрывает настройку ec_mail_manager. Используя этот параметр вы можете указать разные адреса для разных вызовов сниппета ecForm | |
newEmailSubjUser | Тема email письма пользователю о том, что он оставил сообщение, перекрывает настройку ec_mail_new_subject_user | |
tplNewEmailUser | tpl.ecForm.New.Email.User | Чанк с шаблоном email письма пользователя о том, что он оставил сообщение. Если параметр пуст - письмо отправлено не будет. |
newEmailSubjManager | Тема email письма менеджеру о новом сообщении на сайте, перекрывает настройку ec_mail_new_subject_manager | |
tplNewEmailManager | tpl.ecForm.New.Email.Manager | Чанк с шаблоном email письма менеджеру о новом сообщении на сайте. Если параметр пуст - письмо отправлено не будет. |
updateEmailSubjUser | Тема email письма пользователю о публикации сообщения или ответе на него, перекрывает настройку ec_mail_update_subject_user | |
tplUpdateEmailUser | tpl.ecForm.Update.Email.User | Чанк с шаблоном email письма пользователю о публикации сообщения или ответе на него. Если параметр пуст - письмо отправлено не будет. |
Прикрепление файлов
Начиная с версии 1.11.0-pl можно разрешить пользователям прикреплять файлы к их Сообщениям.
Не стоит рассматривать этот механизм как какое-то полноценное файлохранилище, это именно дополнительная возможность компонента. Например, вы можете реализовать прикрепление фотографий к отзывам на товары.
Следующие параметры сниппета ecForm
отвечают за работу с файлами:
Параметр | По-умолчанию | Описание |
---|---|---|
files | 0 | Включить возможность загрузки файлов. |
fileTypes | jpg,jpeg,png,gif,webp | Типы разрешенных файлов. |
fileSize | 0 | Ограничение на размер каждого файла, байт. По-умолчанию не ограничивается (не рекомендуется!). |
filesCount | 0 | Ограничение на количество файлов. По-умолчанию не ограничивается (не рекомендуется!). |
Зависимости
Внимание
До версии компонента 1.11.4-pl для работы формы отправки сообщения было необходимо наличие подключенного на странице jquery и плагина jquery.form. Если последний не подключен - вы увидите сообщение "Can`t find jQuery ajaxForm plugin!".
ecMessages
Сниппет выводит сообщения из определенной цепочки. Обязательно вызывать некэшированным, т.к. при публикации сообщений из админки кеш сайта не очищается.
Параметры сниппета ecMessages
Параметр | По-умолчанию | Описание |
---|---|---|
thread | resource-[[*id]] | Имя цепочки сообщений. |
threads | Список цепочек, из которых необходимо выводить сообщения, через запятую (например "resource-1,resource-2"). Укажите *, что бы вывести сообщения из всех цепочек. Параметр имеет приоритет над параметром thread. | |
votingEnable | 0 | Включить голосование за сообщения. По-умолчанию отключено. |
votingAllowGuest | 0 | Разрешить голосовать гостям. По-умолчанию голосовать могут только авторизованные пользователи. |
votingConsiderIP | 0 | Проверять IP для гостей. Стандартно проверка (голосовал или нет пользователь за сообщение) для гостей идет через php сессию. Если выявляются факторы накрутки голосов, вы можете включить проверку по IP адресу. Один голос за одно сообщение с одного IP. |
messages | Id конкретных Сообщений для вывода. | |
subject | Отфильтровать сообщения по Теме (поле subject) | |
tpl | tpl.ecMessages.Row | Чанк для вывода одного сообщения. В чанке доступны поля сообщения, цепочки (с префиксом thread_). Используя параметр resourceFields, можно включить в выборку и поля ресурса. |
tplWrapper | Чанк обертка. Используйте в нем плейсхолдер [[+output]] . Кроме того, если используется вывод сообщений только из одной цепочки, то будут доступны все поля thread как плейсхолдеры, а также рейтинг цепочки в отформатированном виде [[+rating_wilson_percent]] и [[+rating_simple_percent]] | |
tplEmpty | Чанк для отображения, если нечего выводить. | |
starsTheme | default | Укажите тему оформления для звездочек, доступны default , stars2 , stars3 , hearts . Можно создать свою в файле ec.css и указать её здесь. |
sortby | date | Поле для сортировки |
sortdir | DESC | Направление сортировки |
limit | 10 | Ограничение выборки |
showUnpublished | 0 | Показывать неопубликованные сообщения |
showDeleted | 0 | Показывать удаленные сообщения |
resourceFields | Добавить в выборку поля ресурса (с префиксом resource_), например: id,pagetitle,longtitle,introtext . Поля id и pagetitle добавляются всегда, но лучше их явно указать, т.к. это поведение может быть изменено в будущем. | |
outputSeparator | \n | Разделитель вывода строк |
toPlaceholder | Если указан этот параметр, то результат будет сохранен в плейсхолдер, вместо прямого вывода на странице. | |
toSeparatePlaceholders | Задать плейсхолдер для каждого сообщения | |
showLog | 0 | Показывать лог |
ecMessagesCount
Сниппет выводит количество сообщений из определенной цепочки (или цепочек). Обязательно вызывать некэшированным, т.к. при публикации сообщений из админки кеш сайта не очищается.
Параметры сниппета ecMessagesCount
Параметр | По-умолчанию | Описание |
---|---|---|
thread | resource-[[*id]] | Имя цепочки сообщений. |
threads | Список цепочек, из которых необходимо выводить сообщения, через запятую (например "resource-1,resource-2"). Укажите *, что бы вывести сообщения из всех цепочек. Параметр имеет приоритет над параметром thread. | |
subject | Отфильтровать сообщения по Теме (поле subject) | |
showUnpublished | 0 | Показывать неопубликованные сообщения |
showDeleted | 0 | Показывать удаленные сообщения |
ecThreadRating
Сниппет выводит рейтинг указанной цепочки. Обязательно вызывать некэшированным, т.к. при публикации сообщений из админки кеш сайта не очищается. С версии 1.5.1-pl в стандартном чанке добавлена микроразметка http://schema.org/AggregateRating
Параметры сниппета
Параметр | По-умолчанию | Описание |
---|---|---|
thread | resource-[[*id]] | Имя цепочки сообщений. |
tpl | tpl.ecThreadRating | Чанк для вывода рейтинга. Доступны плейсхолдеры rating_simple, rating_simple_percent, rating_wilson, rating_wilson_percent, а также все поля объекта ecThread. |
algorithm | wilson | Укажите алгоритм, который будет выбран для рейтинга (wilson или simple). |
starsTheme | default | Укажите тему оформления для звездочек, доступны default , stars2 , stars3 , hearts . Можно создать свою в файле ec.css и указать её здесь. |
starWidthAndGup | 16,4 | Для точного отображения рейтинга в виде закрашенных звездочек компонент должен знать их ширину и расстояние между ними. Для темы default это 16,4 , для остальных 20,4 . |
toPlaceholder | Если заполнить параметр, то результат будет установлен в плейсхолдер с таким именем. |
Расширенный рейтинг
Начиная с версии easyComm 1.7.0 сниппет ecThreadRating поддерживает вывод расширенной информации о голосах пользователей.
Для этого нужно указать в параметре tpl новый чанк tpl.ecThreadDetailedRating.