Skip to content

Latest commit

 

History

History
133 lines (121 loc) · 14.3 KB

CHANGELOG.md

File metadata and controls

133 lines (121 loc) · 14.3 KB

Список изменений

2.0.0 (07.12.2020)

  • Модуль теперь распространяется как плагин DLE
  • Убрана совместимость со старыми версиями DLE, не поддерживающими плагины
  • Переработан синтаксис передачи параметров формы

v1.4.2 (08.06.2018)

  • Исправлена ошибка совместимости с DLE13 (fixed #73)

v1.4.1 (27.05.2018)

  • Добавлена совместимость с DLE 13
  • Обновлён dle_starter_kit до актуаьной версии

v1.4.0 (16.03.2017)

  • Обновлён установщик доя версии 1.0.2 (fix #47)
  • Добавлен новый параметр parseSendMail, добавляющий возможность производить манипуляции над данными перед отправкой email. В параметр передаётся путь к php файлу, без расширения, отностительно папки engine/modules. Например можно добавить в шаблон email-сообщения новые теги [footer]{footer}[/footer]. Для этого в конфиге прописываем parseSendMail = addFooter, создаём файл engine/modules/addFooter.php со следующим содержимым:
<?php
if ($arSendMail['select1'] === 'val1') {
	$mailTpl->set('[footer]', '');
	$mailTpl->set('[/footer]', '');
	$mailTpl->set('{footer}', $arSendMail['select1']);
} else {
	$mailTpl->set_block("'\\[footer\\](.*?)\\[\\/footer\\]'si", '');
}
  • Идея с "колбэками", реализована, дальше будем добавлять по потребностям (fix #40) (fix #50).

v1.3 (12.10.2016)

  • Новый, удобный установщик модуля.
  • Улучшения и оптимизация кода.
  • Добавлены почти все поля из профиля пользователя в шаблон email (fixed #20).
  • Добавлен вывод допполей из профиля пользователя в шаблон email (fixed #22).
  • Ко всем тегам шаблонам email-сообщения добавлены противоположные теги [not_xxx] выводящие текст между ними, когда соответствующий тег {xxx} пуст.
  • Исправлена ошибка, когда пользователю разрешено менять шаблон сайта, а форма подтягивается из шаблона, установленного по умолчанию в системе (fixed #32).
  • Добавлен новый параметр конфигурации sendToSender. Если этот параметр задан, то письмо будет отправлено на email-адрес, указанный в поле email. Так же проверяется валидность этого адреса. (fixed #28)
  • В шаблон email-сообщения добавлены новые теги, обрабатываемые в сообщении и в поле заголовке письма, когда активирован параметр sendToSender.
    • [to_sender] текст для отправителя [/to_sender]
    • [not_to_sender] текст для других получателей [/not_to_sender]

v1.2 (09.01.2016)

  • Теперь если в форме есть заполненное поле с name="header", такое поле будет автоматически подставлено в тему письма. #12
  • Теперь можно отправлять письма как простые текстовые #11
  • Исправлена ошибка на DLE 10.5+ #14
  • Исправлена ошибка #10
  • Если пользователь авторизован, тег {uf_field_email} при открытии формы автоматически заменится на его email.
  • Убран тег {send_date='формат_даты'} т.к. он оказался нерабочим.
  • Исправлено некорректное поведение тега {send_date}.
  • Добавлен новый параметр конфигурации sendAsPlain — Отправлять сообщение как простой текст.
  • Добавлен новый параметр конфигурации sendToAuthor — Отправить письмо автору новости, если есть поле с name="newsId" и если автор разрешил получение писем с сайта.
  • Реализована возможность отправлять в письме данные из новости. Для этого необходимо передать в форму поле newsId. Пример шаблона в папке newsauthor. В шаблоне email-сообщения можно использовать следующие теги:
    • [news_id]{news_id}[/news_id] — ID новости.
    • [news_autor]{news_autor}[/news_autor] — Логин автора.
    • [news_title]{news_title}[/news_title] — Заголовок новости.
    • [news_email]{news_email}[/news_email] — Email автора.
  • Реализована возможность отправки сообщения на email автора новости. Для этого необходимо передать в форму поле newsId и в конфиге прописать sendToAuthor = y. Пример шаблона в папке newsauthor.
  • Добавлены новые теги для использования в шаблоне email сообщения.
    • {site_home_title} — Выводит название сайта из настроек DLE.
    • {site_http_home_url} — Выводит адрес сайта из настроек DLE.
    • {site_short_title} — Выводит краткое название сайта из настроек DLE.
    • [user_name]{user_name}[/user_name] — Выводит логин пользователя, отправившего сообщение.
    • [user_fullname]{user_fullname}[/user_fullname] — Выводит полное имя пользователя, отправившего сообщение.
    • [user_email]{user_email}[/user_email] — Выводит email пользователя, отправившего сообщение.
    • [user_foto]{user_foto}[/user_foto] — Выводит ссылку на аватар пользователя, отправившего сообщение.
    • [user_land]{user_land}[/user_land] — Выводит то, что пользователь, отправивший сообщение, написал в поле "Место жительства".

v1.1 (02.07.2015)

  • Добавлены теги для вывода даты отправки сообщения в email. Теги работают в шаблоне email.tpl. Использование: {send_date} или {send_date=D.m.Y}.
  • Добавлена возможность вывода формы инлайново. Форма подгружается по-прежнему на ajax, но выводится сразу после загрузки страницы. Подробности в шаблоне inline
  • Добавлен тег {current_page} для вывода URL страницы, с которой была вызвана форма. Используется только в шаблоне email.tpl.

v1.0 (10.05.2015)

  • Первый публичный релиз.

v0.3 (05.05.2015)

  • Изменён принцип хранения шаблонов модуля. Теперь все шаблоны каждой из форм хранятся в папке, заданной через конфиг (formConfig), в переменной templateFolder.
    Например шаблон формы обратной связи (feedback) выглядит так:
{THEME}/uniform/
└── feedback/ 
    ├── config.tpl - файл конфига
    ├── email.tpl - файл email-сообщения
    └── form.tpl - файл вывода формы
  • Добавлены теги для вывода контента формы по условию, в зависимости от значения, переданного в форме. Подробное описание в файле Default/uniform/test/form.tpl
  • Добавлены теги для вывода данных в email-сообщение по условию, в зависимости от значения, переданного в форме. Подробное описание в файле Default/uniform/callback/email.tpl

v0.2 (04.05.2015)

  • Изменена обработка контента шаблона email-сообщения, теперь символ переноса строки (\n) не заменяется на <br> в тексте шаблона, а только в тексте пришедших полей.
  • В шаблон email-сообщения добавлены теги квадратных скобках для вывода информации, заключенной в них только в том случаи, если поле заполнено. Например для вывода поля с имененм name можно прописать так:
[name]Имя: {name}[/name]
  • В шаблоне email-сообщения теперь можно использовать тег {all_mail_fields} для вывода всех полей, которые приходят из формы. Очень удобно для последующего детального составления шаблона. Можно просто скопировать нужные теги и вставить в шаблон.
    Пример для формы заказа звонка:
[phone]{phone}[/phone] : 456-789
[name]{name}[/name] : Иван
[calltime]{calltime}[/calltime] : anytime
  • Добавлена обработка селектов, теперь при неудачной отправке формы значение селекта сохранится. Для этого добавлены новые теги, выводящие текст в них, если option был выбран. Составление тега происходит по следующей схеме: [uf_select_name селекта_value элемента]
    Пример:
<select name="calltime" class="uf-input">
    <option value="anytime" [uf_select_calltime_anytime]selected[/uf_select_calltime_anytime]>в любое время</option>
    <option value="9-12" [uf_select_calltime_9-12]selected[/uf_select_calltime_9-12]>c 9:00 до 12:00</option>
    <option value="12-15" [uf_select_calltime_12-15]selected[/uf_select_calltime_12-15]>c 12:00 до 15:00</option>
    <option value="15-18" [uf_select_calltime_15-18]selected[/uf_select_calltime_15-18]>c 15:00 до 18:00</option>
</select>
  • Добавлена обработка чекбоксов, теперь при неудачной отправке формы отмеченные чекбоксы сохранятся. Для этого добавлены новые теги, выводящие текст в них, если чекбокс был отмечен. Составление тега происходит по следующей схеме: [uf_checkbox_name чекбокса_value чекбокса]
    Пример:
<input type="checkbox" name="checkboxName[]" value="one" [uf_checkbox_checkboxName_one]checked[/uf_checkbox_checkboxName_one]> Чекбокс 1
<input type="checkbox" name="checkboxName[]" value="two" [uf_checkbox_checkboxName_two]checked[/uf_checkbox_checkboxName_two]> Чекбокс 2
<input type="checkbox" name="checkboxName[]" value="tree" [uf_checkbox_checkboxName_tree]checked[/uf_checkbox_checkboxName_tree]> Чекбокс 3
  • Добавлена обработка радиокнопок, теперь при неудачной отправке формы отмеченные радиокнопки сохранятся. Для этого добавлены новые теги, выводящие текст в них, если радиокнопка была отмечена. Составление тега происходит по следующей схеме: [uf_radio_name радиокнопки_value радиокнопки]
    Пример:
<input type="radio" name="sendTo[]" value="one" [uf_radio_sendTo_one]checked[/uf_radio_sendTo_one]> Радиокнопка 1
<input type="radio" name="sendTo[]" value="two" [uf_radio_sendTo_two]checked[/uf_radio_sendTo_two]> Радиокнопка 2
<input type="radio" name="sendTo[]" value="tree" [uf_radio_sendTo_tree]checked[/uf_radio_sendTo_tree]> Радиокнопка 3
  • Добавлены новые теги [uf_default_value]текст[/uf_default_value], выводящие текст между ними, если форма только что открыта. Такие теги полезны, если требуется изначально сделать выбранным какой либо пункт селекта, или чекбокс, или добавить в поле свой текст, который не должен переписывать собой данные при неудачной отправке формы.
  • Исправлена ошибка, из-за которой пи первом ткрытии формы не обрабатывались теги ошибки заполнения email: [uf_email_error][/uf_email_error].
  • Добавлен новый тег {* любой текст *} для возможности оставлять комментарии в шаблонах, которые не должны попадать на сайт. (аналог комментариев в php).

v0.1 (25.04.2015)

  • Первый релиз модуля.