Настройка переменных в шаблонах и повторное использование элементов из сообщения, на которое выполняется ответ
Andre Klapper
ak-47@gmx.net
Novell, Inc
Олеся Герасименко
translation-team@basealt.ru 2021

# Использование переменных в шаблонах

# Настройка переменных для шаблонов сообщений

Выберите пункт меню Правка Модули.

Нажмите Шаблоны.

Если этот модуль не доступен в разделе Правка Модули, обратитесь на форум поддержки дистрибутива. Возможно, в вашем дистрибутиве разработчики решили отключить некоторые модули или поставлять их как отдельный пакет.

Перейдите на вкладку Настройка.

Можно добавлять, изменять или удалять пары «ключ — значение». Можно указать любое количество пар «ключ — значение».

В любом шаблоне вхождение $key заменяется соответствующим значением из конфигурации. Например, если для ключа «Manager» задано значение «Иван», все вхождения $Manager будут заменены на «Иван» в сообщении.

Допустим, что имеется 1000 шаблонов сообщений, содержащих имя менеджера. Когда на смену этому менеджеру придёт другой, будет непросто вручную заменить имя менеджера во всей этой 1000 сообщений. Если же сообщения содержат значение ключа $Manager, это значение можно переопределить на вкладке настройки этого модуля.

По умолчанию все переменные среды используются как пара «ключ — значение». Вхождение $env_variable заменяется значением, которое имеет эта переменная. Например, вхождение переменной $PATH в шаблоне заменяется её значением при использовании шаблона.

Замена выполняется с соблюдением следующей очерёдности:

$key заменяется значением, заданным на вкладке настройки модуля «Шаблоны».

Если ключ не найден, вхождение заменяется значением соответствующей переменной среды.

Если ключ не является ни параметром конфигурации, ни переменной среды, изменения не выполняются.

# Использование элементов из сообщения в шаблоне при ответе

Шаблоны могут содержать не только предустановленный набор пар «ключ — значение». Можно использовать любые значения из заголовка письма, к которому будет применён шаблон, а также всё тело сообщения.

Для этого воспользуйтесь форматом `$ORIG[header_name]`, заменив переменную `header_name` названием заголовка. Например, если требуется вставить тему сообщения, на которое выполняется ответ, используйте `$ORIG[subject]`. Чтобы вставить всё тело письма, используйте `$ORIG[body]`.

Если для переменной не будет найдена замена, она не удаляется (за исключением `$ORIG[body]`), а остаётся на месте, позволяя пользователю понять, что что-то пошло не так. Такое может произойти при попытке использования заголовков, которые недоступны в исходном сообщении (например, `$ORIG[reply-to]`).