Ввод в шаблон внешних переменных
Если киллборда вашего типа установлена не только у вас, то имеет смысл немного переделать шаблон и ввести в него переменные, настраиваемые из KMS, чтобы избавить менее подготовленных пользователей от написания собственного шаблона под этот-же тип КБ.
Делается это при помощи ввода переменных, настраиваемых из диалога настроек KMS.
Рассмотрим содержимое секций MAIN и CONSTANTS, построенных нами в предыдущих главах справки:
[main]
description=Тестовый шаблон
host=%const1%
header=Referer=%const1%|%const2% %mail_len%|
template=killmail=%killmail%&password=testpassword&submit=Process+%21
[constants]
const1=www.eve-tbs.ru/kb/?a=post
const2=Content-Type: application/x-www-form-urlencoded|Content-Length:
Здесь имеет смысл заменить путь к корню киллборды и пароль на внешние переменные, которые будут уникальны для каждой киллборды данного типа, установленных на разных серверах.
Например можно сделать вот так:
[main]
description=Тестовый шаблон
host=%url%^/?a=post
header=Referer=%host%|%const2% %mail_len%|
template=killmail=%killmail%&password=%pwd%&submit=Process+%21
[constants]
const2=Content-Type: application/x-www-form-urlencoded|Content-Length:
Здесь мы ввели две переменных, которые должен заполнить пользователь из диалога настроек KMS.
Переменная %url% - в которую пользователь должен ввести путь к киллборде, а так-же переменную %pwd% - в которой пользователь должен указать пароль доступа к КБ. Так-же мы использовали зарезервированную переменную %host% в качестве Referer-а.
Содержимое константы const1, используемой ранее в качестве значения поля host и одного из параметров поля header в предыдущем шаблоне, в данном случае изменять на "%url%?a=post" нельзя, т.к. в константах можно использовать только неизменяемые данные, в которые не входят переменные, поэтому данная константа удалена.
Обратите внимание на использование символа проверки ^/ идущее вслед за переменной %url%.
Данная проверка гарантирует нам то, что что-бы не ввел пользователь в качестве %url%, это значение всегда будет завершатся обратным слэшем.
О принципе работы проверочного символа "^" можно узнать в описании "зарезервированных переменных и констант"
Создание справки к шаблону
Желательно сделать подсказку о используемых шаблоном переменных, которые должен заполнить пользователь в KMS. Для этого предназначена секция EMPTY_ENVIRONMENTS_HINT.
Полей в данной секции может быть неограниченное количество, наименование каждого поля должно указывать код языковой раскладки, в которой представлена подсказка
Пример заполнения данной секции для двух языков, английского и русского:
[empty_environments_hint]
1033=For correct configuration of template you should indicate two variables - url=path to killbord and pwd=password for sending
1049=Для правильной конфигурации шаблона вам необходимо указать две переменные - url=путь к киллборде и pwd=пароль для отправки