Pages, Articles & News
Tools & Plugins
Example / Placeholder Title


Description as an example placeholder. Sample text content for further customization of the "Index36" template.

You are free to edit and customize the template however you like. If you don’t have time or enough knowledge — you can always order template adaptation by contacting me via GitHub or private messages on the digital goods marketplace.

Модуль "Users", - users.passrecover.tpl в Cotonti CMF

Шаблон users.passrecover.tpl используется для отображения интерфейса страницы восстановления пароля пользователя в Cotonti CMF

Модуль "Users", - users.passrecover.tpl в Cotonti CMF

Назначение шаблона users.passrecover.tpl

Шаблон users.passrecover.tpl используется для отображения интерфейса страницы восстановления пароля пользователя в Cotonti CMF. Он предназначен для подачи запроса на восстановление доступа через указание электронной почты пользователя. Шаблон формирует HTML-разметку, которая включает инструкцию по восстановлению, форму для ввода email и уведомления о статусе запроса.

Этот шаблон визуализирует процесс взаимодействия пользователя с системой восстановления пароля, в то время как основная логика обработки реализована в PHP-коде модуля users.


Основное содержание и задачи шаблона

  1. Навигационная цепочка (breadcrumbs)
    Шаблон проверяет, включён ли параметр homebreadcrumb в конфигурации сайта. Если он активен, отображается навигационная цепочка ({PASSRECOVER_BREADCRUMBS}), указывающая текущий путь к странице восстановления пароля.

  2. Заголовок страницы
    Отображается заголовок страницы, задаваемый переменной {PASSRECOVER_TITLE}. Обычно это локализованный текст, например, "Восстановление пароля".

  3. Сообщения о статусе
    Шаблон выводит уведомления в зависимости от значения переменной {PHP.msg}:

    • Если msg == 'request', отображается сообщение {PHP.L.pasrec_mailsent} (например, "На вашу электронную почту было отправлено письмо с инструкциями").
    • Если msg == 'auth', отображается сообщение {PHP.L.pasrec_mailsent2} (например, "Пароль успешно обновлён. Проверьте свою почту").
    • Если переменная {PHP.msg} отсутствует или пуста, отображается список инструкций и форма для ввода email.
  4. Инструкции для пользователя
    Отображается упорядоченный список (<ol>), содержащий текстовые шаги, объясняющие процесс восстановления пароля. Эти шаги локализованы через языковые строки ({PHP.L.pasrec_explain1}, {PHP.L.pasrec_explain2}, {PHP.L.pasrec_explain3}).

  5. Форма ввода email
    Основной элемент шаблона — форма с методом POST, содержащая поле для ввода адреса электронной почты (<input type="text" name="email">). После ввода email пользователь может отправить запрос на восстановление пароля, нажав кнопку "Отправить" (<button type="submit">).

  6. Заключительная инструкция
    После формы отображается дополнительная пояснительная строка ({PHP.L.pasrec_explain4}), завершающая описание процесса.


Список переменных и их назначение

  1. {PHP.cfg.homebreadcrumb}
    Проверяет, включена ли в конфигурации сайта настройка отображения хлебных крошек.

  2. {PASSRECOVER_BREADCRUMBS}
    Отображает навигационную цепочку (хлебные крошки).

  3. {PASSRECOVER_TITLE}
    Заголовок страницы восстановления пароля.

  4. {PHP.msg}
    Переменная, содержащая статус действия, например, 'request' (запрос на восстановление отправлен) или 'auth' (восстановление выполнено).

  5. {PHP.L.pasrec_mailsent}
    Локализованная строка, сообщающая, что письмо отправлено.

  6. {PHP.L.pasrec_mailsent2}
    Локализованная строка, сообщающая, что пароль был успешно изменён.

  7. {PHP.L.pasrec_explain1}, {PHP.L.pasrec_explain2}, {PHP.L.pasrec_explain3}
    Локализованные строки, объясняющие процесс восстановления пароля.

  8. {PASSRECOVER_URL_FORM}
    URL-адрес, на который отправляется форма восстановления пароля.

  9. {PHP.L.pasrec_youremail}
    Локализованная строка "Ваш email".

  10. {PHP.L.pasrec_request}
    Локализованная строка "Отправить" (текст кнопки).

  11. {PHP.L.pasrec_explain4}
    Заключительное пояснение, отображаемое под формой.


Комментарии к конструкциям <!-- ... -->

  1. <!-- BEGIN: MAIN --> и <!-- END: MAIN -->
    Основной логический блок шаблона, в котором находятся все элементы страницы восстановления пароля. Этот блок передаётся на обработку методом parse('MAIN') объекта XTemplate.

  2. <!-- IF {PHP.cfg.homebreadcrumb} --> и <!-- ENDIF -->
    Условие, проверяющее, включена ли функция отображения хлебных крошек. Если условие истинно, отображается блок с навигационной цепочкой.

  3. <!-- IF {PHP.msg} == 'request' --> и <!-- ENDIF -->
    Условие для проверки статуса запроса на восстановление. Если запрос был отправлен, отображается сообщение об успешной отправке письма.

  4. <!-- IF {PHP.msg} == 'auth' --> и <!-- ENDIF -->
    Условие, проверяющее успешность восстановления пароля. Если переменная msg содержит 'auth', выводится сообщение об успешной смене пароля.

  5. <!-- IF !{PHP.msg} --> и <!-- ENDIF -->
    Условие, выполняющееся, если переменная msg пуста или отсутствует. В этом случае отображаются инструкции по восстановлению и форма ввода email.


Характеристика стиля HTML/CSS

  1. HTML
    Используется семантически правильная структура: <div> для обёртки, <ol> для упорядоченного списка инструкций, <form> для формы ввода email, <input> для текстового поля и <button> для кнопки отправки.

  2. CSS
    Вёрстка предполагает использование классов (block, text) для стилизации элементов. Эти классы должны быть определены в стилях темы сайта.

  3. Адаптивность
    Код предполагает минимальные требования для отображения на разных устройствах. Однако полноценная адаптивность зависит от CSS-правил темы.

  4. Доступность (Accessibility)
    Поля ввода и кнопки не имеют явных атрибутов aria-* или label, что может быть улучшено для пользователей с ограниченными возможностями.


Преимущества шаблона

  • Простота: минималистичный дизайн, лёгкий для понимания и редактирования.
  • Гибкость: использование локализованных строк позволяет легко адаптировать шаблон для разных языков.
  • Расширяемость: можно добавить дополнительные поля или изменить оформление, не затрагивая логику обработки.

 

<!-- BEGIN: MAIN --> <!-- Начало основного логического блока Cotonti, который будет обработан методом $t->parse('MAIN'); -->

<div class="block">
	<!-- IF {PHP.cfg.homebreadcrumb} --> <!-- Проверка, включены ли "хлебные крошки" в конфигурации PHP.cfg.homebreadcrumb -->
	<div class="breadcrumbs">{PASSRECOVER_BREADCRUMBS}</div> <!-- Вывод навигационных хлебных крошек, если они включены -->
	<!-- ENDIF --> <!-- Закрытие условия -->

	<h2 class="users">{PASSRECOVER_TITLE}</h2> <!-- Заголовок страницы восстановления пароля -->

	<!-- IF {PHP.msg} == 'request' --> <!-- Проверка, содержит ли PHP.msg значение 'request' (отправлен запрос на восстановление) -->
	<p>{PHP.L.pasrec_mailsent}</p> <!-- Вывод сообщения о том, что письмо с инструкцией отправлено -->
	<!-- ENDIF --> <!-- Закрытие условия -->

	<!-- IF {PHP.msg} == 'auth' --> <!-- Проверка, содержит ли PHP.msg значение 'auth' (пароль успешно изменен) -->
	<p>{PHP.L.pasrec_mailsent2}</p> <!-- Вывод сообщения об успешном изменении пароля -->
	<!-- ENDIF --> <!-- Закрытие условия -->

	<!-- IF !{PHP.msg} --> <!-- Проверка, если PHP.msg не установлен (значение пустое) -->
	<ol>
		<li>{PHP.L.pasrec_explain1}</li> <!-- Первый пункт инструкции по восстановлению пароля -->
		<li>{PHP.L.pasrec_explain2}</li> <!-- Второй пункт инструкции -->
		<li>{PHP.L.pasrec_explain3}</li> <!-- Третий пункт инструкции -->
	</ol>

	<form id="password-recover" name="reqauth" action="{PASSRECOVER_URL_FORM}" method="post">
		{PHP.L.pasrec_youremail} <input type="text" class="text" name="email" value="" size="20" maxlength="64" />
		<button type="submit">{PHP.L.pasrec_request}</button> <!-- Кнопка отправки запроса на восстановление пароля -->
	</form>

	<p>{PHP.L.pasrec_explain4}</p> <!-- Дополнительное пояснение после формы восстановления -->
	<!-- ENDIF --> <!-- Закрытие условия -->

</div>

<!-- END: MAIN --> <!-- Закрытие основного логического блока Cotonti -->

 

No comments yet
Only registered users can post new comments
Account