admin/view/template/extension/task_manager/task_form.twig
Вот содержимое файла admin/view/template/extension/task_manager/task_form.twig
:
{% extends 'common/column_left.twig' %}
{% block content %}
<div id="content">
<div class="page-header">
<div class="container-fluid">
<h1>{{ heading_title }}</h1>
<ul class="breadcrumb">
<li><a href="{{ home }}">{{ text_home }}</a></li>
<li><a href="{{ extension }}">{{ text_extension }}</a></li>
<li><a href="{{ task_manager }}">{{ heading_title }}</a></li>
<li class="active">{{ text_task_form }}</li>
</ul>
</div>
</div>
<div class="container-fluid">
<div class="alert alert-info">
{{ text_task_form_info }}
</div>
<div class="panel panel-default">
<div class="panel-heading">
<h3 class="panel-title"><i class="fa fa-edit"></i> {{ text_task_form }}</h3>
</div>
<div class="panel-body">
<form action="{{ action }}" method="post" enctype="multipart/form-data" id="form-task">
<div class="form-group">
<label for="input-title" class="control-label">{{ entry_title }}</label>
<input type="text" name="title" value="{{ title }}" placeholder="{{ entry_title }}" id="input-title" class="form-control" />
</div>
<div class="form-group">
<label for="input-user" class="control-label">{{ entry_user }}</label>
<select name="user_id" id="input-user" class="form-control">
{% for user in users %}
<option value="{{ user.user_id }}" {% if user.user_id == selected_user_id %}selected="selected"{% endif %}>{{ user.username }}</option>
{% endfor %}
</select>
</div>
<div class="form-group">
<label for="input-category" class="control-label">{{ entry_category }}</label>
<select name="category_id" id="input-category" class="form-control">
{% for category in categories %}
<option value="{{ category.category_id }}" {% if category.category_id == selected_category_id %}selected="selected"{% endif %}>{{ category.name }}</option>
{% endfor %}
</select>
</div>
<div class="form-group">
<label for="input-priority" class="control-label">{{ entry_priority }}</label>
<select name="priority" id="input-priority" class="form-control">
<option value="low" {% if priority == 'low' %}selected="selected"{% endif %}>{{ text_priority_low }}</option>
<option value="medium" {% if priority == 'medium' %}selected="selected"{% endif %}>{{ text_priority_medium }}</option>
<option value="high" {% if priority == 'high' %}selected="selected"{% endif %}>{{ text_priority_high }}</option>
</select>
</div>
<div class="form-group">
<label for="input-status" class="control-label">{{ entry_status }}</label>
<select name="status" id="input-status" class="form-control">
<option value="pending" {% if status == 'pending' %}selected="selected"{% endif %}>{{ text_status_pending }}</option>
<option value="completed" {% if status == 'completed' %}selected="selected"{% endif %}>{{ text_status_completed }}</option>
<option value="overdue" {% if status == 'overdue' %}selected="selected"{% endif %}>{{ text_status_overdue }}</option>
</select>
</div>
<div class="form-group">
<label for="input-due-date" class="control-label">{{ entry_due_date }}</label>
<input type="text" name="due_date" value="{{ due_date }}" placeholder="{{ entry_due_date }}" id="input-due-date" class="form-control" />
</div>
<div class="form-group">
<label for="input-description" class="control-label">{{ entry_description }}</label>
<textarea name="description" id="input-description" class="form-control" rows="5">{{ description }}</textarea>
</div>
<div class="form-group">
<button type="submit" class="btn btn-primary">{{ button_save }}</button>
<a href="{{ cancel_url }}" class="btn btn-default">{{ button_cancel }}</a>
</div>
</form>
</div>
</div>
</div>
</div>
{% endblock %}
Объяснение:
-
Шаблон расширяет общий шаблон
common/column_left.twig
, чтобы использовать левую панель навигации. -
Внутри блока
content
отображается:-
Заголовок страницы и хлебные крошки.
-
Оповещение с информацией о текущем экране.
-
Форма для создания или редактирования задачи:
-
Поля для ввода: Заголовок, Пользователь, Категория, Приоритет, Статус, Дата выполнения и Описание.
-
Формы для выбора из списка пользователей и категорий задач.
-
Валидация для каждого поля.
-
Кнопки сохранения и отмены.
-
-
-
Переменные:
-
title
,description
,due_date
,priority
,status
: Данные задачи. -
users
: Список пользователей для выбора. -
categories
: Список категорий для выбора. -
selected_user_id
,selected_category_id
,priority
,status
: Текущие выбранные значения. -
action
: URL для отправки формы. -
cancel_url
: URL для отмены и возврата.
-
Этот шаблон позволяет администратору OpenCart создавать или редактировать задачи, назначать их пользователям, выбирать категории и устанавливать приоритеты и статусы.