Этот тип шаблона является главным для раздела, он содержит данные о первых двух уровнях категорий (если они используются), а так же список вопросов.
Массив записей с данными о категориях первых двух уровней. Каждая запись представляет собой массив с ключами:
Название категории.
Ссылка на страницу категории.
Описание категории.
Числовой идентификатор прикрепленного изображения.
Количество вопросов в категории.
Уровень в дереве категорий, 0 - находится в корне.
Строковой идентификатор URL категории.
Массив записей с данными о подкатегориях. Записи аналогичны записям в $categories.
Массив записей с данными о вопросах каталога. В зависимости от настроек содержит либо все вопросы, либо только вопросы вне категорий. Каждая запись представляет собой массив с ключами:
Заголовок вопроса.
Имя автора вопроса.
Email автора вопроса.
Текст вопроса.
Текст ответа.
Ссылка на детальную страницу.
Полное название категории, которой принадлежит материал.
Дата создания в формате UTC.
Строковой идентификатор URL.
Значение дополнительного поля.
Массив записей с данными о дополнительных полях. Каждая запись представляет собой массив с ключами:
Объект постраничной навигации.
<h1>{$section_name}</h1> {if $categories} <ul> {section name=i loop=$categories} <li><a href="{$categories[i].link}">{$categories[i].name} - ({$categories[i].citems})</a></li> {/section} </ul> {/if} {section name=i loop=$items} <h3><a href="{$items[i].link}">{$items[i].name}</a></h3> {$items[i].question|truncate:300} {/section} {object obj=$items_pager} <p><a href="{$questionlink}">Задать вопрос</a></p>
Если используются категории, то этот тип шаблона содержит данные о выбранной категории, о следующих двух уровнях категорий, а так же список записей вопросов, которые принадлежат выбранной категории.
Массив с данными о текущей категории, состоит из ключей:
Название категории.
Описание категории.
Числовой идентификатор прикрепленного изображения.
Количество материалов в категории.
Уровень в дереве категорий, 0 - находится в корне.
Строковой идентификатор URL категории.
Массив записей с данными о категориях двух уровней начиная с текущего. Формат данных аналогичен описанному выше.
Массив записей с данными о вопросах в текущей категории. Формат данных аналогичен описанному выше.
Объект постраничной навигации.
<h1>{$category.name}</h1> {if $categories} <ul> {section name=i loop=$categories} <li><a href="{$categories[i].link}">{$categories[i].name} - ({$categories[i].citems})</a></li> {/section} </ul> {/if} {section name=i loop=$items} <h3><a href="{$items[i].link}">{$items[i].name}</a></h3> {$items[i].question|truncate:300} {/section} {object obj=$items_pager} <p><a href="{$questionlink}">Задать вопрос</a></p>
Этот тип шаблона содержит все данные выбранного вопроса.
Массив с данными о текущей категории. Формат данных аналогичен описанному выше.
Массив с данными о текущей записи каталога. Формат данных аналогичен формату записей в массиве описанном выше.
<h1>{$item.name}</h1> <h2>Вопрос:</h2> {$item.question|nl2br} <h2>Ответ:</h2> {$item.answer|nl2br} <p><a href="{$questionlink}">Задать вопрос</a></p>
Этот типа шаблона содержит данные для формы добавления нового вопроса.
Массив данных для начальных значений формы. По сути является копией данных $_POST с дополнительными данными, поэтому при выводе важно защищать значения с помощью escape. Если на сайте используется раздел на базе модуля "Пользователи", то значения массива с ключами user и email будут замещаться на имя пользователя и его email соответственно, в случае если он авторизирован на сайте.
Заголовок вопроса.
Имя пользователя.
Email пользователя.
Ассоциированный массив содержащий список категорий с их чиловыми идентификаторами в качестве ключа. Может использоваться в качестве параметра options для функции html_options.
Числовой идентификатор выбранной категории (сохраняется при ошибке ввода цифр каптчи).
Текст вопроса.
Содержит значение, которое может быть использовано в скрытом поле captcha, если форму отправки необходимо сделать без ввода контрольных цифр на рисунке.
Принимает значение истина, если пользователь ошибся при вводе контрольных цифр на рисунке.
<h1>{$section_name}</h1> {if $errors.captcha} <p><font color="red">Неверно введено контрольное слово, попробуйте еще раз.</font></p> {/if} {* Скрипт валидации формы. *} {literal} <script type="text/javascript"> function valid_form(form) { if(form.name.value.replace(/\s+/,'').length==0) { alert('Пожалуйста, заполните тему вопроса.'); return false; } if(form.user.value.replace(/\s+/,'').length<3) { alert('Пожалуйста, укажите свое имя.'); return false; } if(form.question.value.replace(/\s+/,'').length<5) { alert('Заполните текст вопроса.'); return false; } if(form.captcha.value.replace(/\s+/,'').value.length==0) { alert('Пожалуйста, укажите код на картинке.'); return false; } return true; } </script> {/literal} <h3>Задать вопрос</h3> <form method="post" onsubmit="return valid_form(this)"> Заголовок:<br> {editbox name="name" width="60%" text=$form.name}<br> Ваше имя:<br> {editbox name="user" max=50 width="20%" text=$form.user}<br> Ваш e-mail:<br> {editbox name="email" max=50 width="20%" text=$form.email}<br> {if $options.usecats && $form.categories} Категория:<br> <select name="idcat"> <option value="0">Не выбрано</option> {html_options options=$form.categories selected=$form.idcat} </select><br> {/if} Вопрос:<br> {textarea name="question" rows=5 text=$form.question}<br> <br> {captcha style="float:right"} Введите слово, изображенное на рисунке: {editbox name="captcha" max=4 width="50"}<br> <br> {submit caption="Отправить"} {hidden name="action" value="addquestion"} </form>
Этот тип шаблона предусмотрен для вывода специального сообщения после успешной отправки формы с вопросом. Он не содержит специальных данных, текст сообщения об успешной отправке вставляется непосредственно в шаблон.
<h1>{$section_name}</h1> <p>Ваш вопрос отправлен.</p>
Ссылка на страницу с формой для добавления своего вопроса.