X-Git-Url: http://wagner.pp.ru/gitweb/?a=blobdiff_plain;f=doc%2Ftemplates.txt;h=a9952445328a2f14fbdd5036778fd9ac12d5d4a7;hb=refs%2Fheads%2Fmaster;hp=d9ba674334e1fa6fd0b268ce5ac55d9f03411cc7;hpb=820fda6f1068f1ef10cfc297d9b9e1f59c072ba2;p=oss%2Fstilllife.git diff --git a/doc/templates.txt b/doc/templates.txt index d9ba674..a995244 100644 --- a/doc/templates.txt +++ b/doc/templates.txt @@ -43,10 +43,17 @@ author - ник автора сообщения. innerHtml заменяется Следует учитывать что в случае openId авторизации в этот элемент будет помещен элемент a со ссылкой на домашнюю страницу mdate - дата публикации сообщения innerHtml заменяется на дату -avatar - элемент img атрибут src которого заменияется на аватар автора -astatus - статус автора на форуме innerHtml заменяется на статус -acomment - комментарий к нику, введенный автором при регистрации. +avatar - элемент img атрибут src которого заменияется на аватар автора, + или на templates/1x1.gif если у автора нет аватара. +ap-status - статус автора на форуме innerHtml заменяется на статус +ap-comment - комментарий к нику, введенный автором при регистрации. innerHtml заменяется на комментарий +И прочие классы с префиксом ap-, innerHtml которых заменяеняется +на соответствущие поля из профайла автора. Если поле имеет в имени +подчерк, допустимо вместо подчерка использовать дефис "-" в названии +класа. + + msubject - тема сообщения. Заменяется innerHtml mtext - текст сообщения. innerHtml заменяется на отформатированный текст mreply - ссылка на скрипт ответа. Атрибут href будет заменен на @@ -145,12 +152,21 @@ mreply - ссылка на скрипт ответа. Атрибут href буд Страница списка тем (головная страница форума) -Может иметь элемент с классом message, описывающий форум в целом (его -создатель, вводный текст и т.д. +Может иметь элемент с классом annotation, описывающий форум в целом (его +создатель, вводный текст и т.д. устроенный внутри аналогично элементу +списка форумов (см ниже). Если в шаблоне присутствует элемент meta +name="description", то туда помещается текстовое представление аннотации +форума. + +Если в шаблоне присутствуют элементы с классом top-page, то они будут +сохранены только на головной странице форума, а при создании подфорумов +будут из их оглавлений удаляться. Шаблоном описания конкретной темы является элемент с классом topic, -устроенный аналогично message (показывается текст и автор первой реплики -темы) с той разницей, что элемент с классом subject должен быть ссылкой. +Содержащий элемент с классом title (название темы, должно быть +ссылкой), abstract (аннотация темы) +author (ссылка), date (дата создания темы), tlink (якорь для ссылок на +элемент списка тем ), last-updated и msgcount. Внутри элемента с классом topic должна присутствовать форма с кнопками edit delete move setrights и скрытым полем id. @@ -158,22 +174,37 @@ mreply - ссылка на скрипт ответа. Атрибут href буд администратора. -Кроме этого, cтраница должна иметь ссылку с классом newtopic или форму с именем -newtopic и кнопкой submit с именем newtopic +элемент с классом topic должен быть заключен в элемент с классом +topiclist. + +При отсутствии тем на странице элементу с классом topiclist сервер +приписывает атрибут style="display: none;". + +При добавлении новой темы элемент с классом topic копируется и +вставляется непосредственно за предыдущим -Страница списка форумов (головная страница сайта, страница форума с -подразделами) -Устроена аналогично странице списка тем. +Кроме этого, cтраница должна иметь ссылку на форумный скрипт с +параметром newtopic=1 или форму с именем +topicinfo и кнопкой submit с именем newtopic + +Список подфорумов устроен аналогично списку тем. Элемент списка форумов должен иметь класс forum, а форма/ссылка для -создания нового форума соотвесттвенно имя/класс newforum. +создания нового форума соотвесттвенно имя/класс newforum, а объемлющий +элемент, который скрывается при отсутствии подфорумов - класс forumlist + +В шаблоне элемента списка форумов может присутствовать элемент img +с классом logo. Если такой элемент обнаружен, то при наличии в +директории форума файла logo с расширением png, jpg или gif, в src +пропиcывается ссылка на этот файл. Иначе прописывается ссылка на +templates/1x1.gif Допускается также ситуация когда на одной странице присутствует и список форумов, и список тем. (В этом случае если физически отсутствуют либо те, либо другие, соответствующему элементу-шаблону выставляется -style="visibility: hidden"); +style="display: none"); Кроме этого на всех страницах рекомендуется иметь элемент-ссылку, который отображает текущее имя пользователя. Этот элемент должен @@ -244,12 +275,19 @@ signature_format). Поле format может принимать одно из Наличие URL в тексте проверяется независимо от формата. - Скрипт регистрации (операция login) + Скрипт входа в систему (операция login) Форма с именем login содержит поля name и password - Может также содержать checkbox с именем ipbind (привязка + Может также содержать checkbox с именем bindip (привязка авторизационной куки к IP) - (OpenID пока не описываем) + При авторизации по OpenID используется поле openidsite. + Его значение интерпретируется как шаблон для операции sprintf, который + должен содержать один спецификатор формата %s, куда подставляется имя + пользователя. + + Если поле openidsite имеет пустое значение, пользователь + рассматривается как локальный. Если непустое, то как + openid-пользователь. Кнопка submit называется login @@ -257,27 +295,77 @@ signature_format). Поле format может принимать одно из именем register) Содержит поля user pass1 pass2 comment - avatar (поле ввода URL) или avatarfile(file upload field) - email Может также содержать любые дополнительные поля информации о - пользователе (кроме поля status). Они будут сохранены в списке пользователей + пользователе. Они будут сохранены в списке пользователей и могут потом выводиться в шаблонах рядом с информацией об авторе. Скрытое поле required содержит список полей, которые обязательно требуются при регистрации. Поля user, pass1 и pass2 туда включать не следует. Скрытое поле ignore содержит список полей, которые НЕ НУЖНО - сохранять в качестве информации о пользователе. + сохранять в качестве информации о пользователе. Поля user, pass1, pass2 + и bindip туда включать не нужно. Так же если в форме присутствуют поля + avatar и avatarfile, поле avatarfile будет автоматически включено в + этот список, а поле avatar при наличии зааплоаженного файла будет + заменено на URL к этому файлу. + + Параметр restricted_userinfo в конфигурационном файле форума позволяет + задать список полей, которые пользователь не имеет права редактировать + сам, все равно в процессе регистрации или при редактировании профиля. + + Поля, которые, при их наличии, обрабатываются скриптом форума + специальным образом + + 1. avatar/avatarfile - картинка пользователя. Поле avatarfile + (зааплоаженная картинка) имеет приоритет над avatar (внешняя URL) + В случае если задано avatarfile, в информации о пользователе + сохраняется поле avatar с URL к этой картинке + + 2. signature - обычно поле с форматированным текстом. Дописывается в + конец каждого созданного данным пользователем сообщения + + 3. email - если не пусто, то проверяется на корректность посредством + модуля EMail::Valid + + 4. status - если имеет значение disabled, то данному пользователю + запрещен вход на форум до тех пор, пока администратор форума не изменит + статус. В случае, если требуется подтверждение регистрации модератором + рекомендуется прописывать это поле в restricted_user_info и указывать в + конфигурациии форума default_status = disabled, Скрипт отправки комментария - поля subject text (тэг textarea) +Операция reply + поля subject + text (тэг textarea) + text_format Можно также включать (динамически добавлять) поля file upload image1 image2 etc. - кнопка submit называется reply + кнопка submit называется reply. + Данная форма может также включать поля формы login. Т.е. + поддерживается аутентификация пользователя одновременно с отправкой + комментария. + + В силу технических ограничений, одновременно с регистрацией по OpenID + невозможен upload файлов и отправка комментариев длинной более 2-4Кб. + Точный предел размера комментария зависит от длины URL форума и + пределов размера URL, установленных при компиляции веб-сервера форума + и веб-сервера openid-сервера. + Скрипт создания новой темы или нового форума - поля subject text imageN и urlname. В последнее поле следует запретить + поля + subject + text + text_format + urlname. + При создании форума еще может присутствовать file upload field + logo. Зааплоаженный туда файл помещается в директрию форума + с именем logo и расширением соответствующим расширению исходного + файла. + + + В последнее поле следует запретить ввод символов нелатинского алфавита '/' и '?' Cкрипт просмотра списка пользователей (опция userlist) @@ -298,7 +386,7 @@ Cкрипт просмотра списка пользователей (опци В результате заполнения формы поле с именем moderators должно содержать список модераторов для данной темы (соответствующей - url страницы id) поле с именем administrators список всех + url страницы в pathinfo) поле с именем administrators список всех администраторов данного сайта. Скрипт редактирования свойств пользователя.