admin/view/template/extension/task_manager/task_list.twig
Вот содержимое файла admin/view/template/extension/task_manager/task_list.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_list }}</li>
</ul>
</div>
</div>
<div class="container-fluid">
<div class="alert alert-info">
{{ text_task_list_info }}
</div>
<div class="panel panel-default">
<div class="panel-heading">
<h3 class="panel-title"><i class="fa fa-list"></i> {{ text_task_list }}</h3>
</div>
<div class="panel-body">
<div class="table-responsive">
<table class="table table-bordered table-hover">
<thead>
<tr>
<td>{{ column_task_id }}</td>
<td>{{ column_title }}</td>
<td>{{ column_user }}</td>
<td>{{ column_category }}</td>
<td>{{ column_priority }}</td>
<td>{{ column_status }}</td>
<td>{{ column_due_date }}</td>
<td>{{ column_action }}</td>
</tr>
</thead>
<tbody>
{% if tasks %}
{% for task in tasks %}
<tr>
<td>{{ task.task_id }}</td>
<td>{{ task.title }}</td>
<td>{{ task.user_name }}</td>
<td>{{ task.category_name }}</td>
<td>{{ task.priority }}</td>
<td>{{ task.status }}</td>
<td>{{ task.due_date }}</td>
<td>
<a href="{{ edit_task_url }}" class="btn btn-primary">{{ button_edit }}</a>
<a href="{{ delete_task_url }}" class="btn btn-danger" onclick="return confirm('{{ text_confirm_delete }}');">{{ button_delete }}</a>
</td>
</tr>
{% endfor %}
{% else %}
<tr>
<td colspan="8">{{ text_no_results }}</td>
</tr>
{% endif %}
</tbody>
</table>
</div>
</div>
</div>
<div class="row">
<div class="col-sm-6 text-left">
<a href="{{ add_task_url }}" class="btn btn-success"><i class="fa fa-plus"></i> {{ button_add_task }}</a>
</div>
<div class="col-sm-6 text-right">
{{ pagination }}
</div>
</div>
</div>
</div>
{% endblock %}
Объяснение:
-
Шаблон использует общую структуру
common/column_left.twig
, включая левую панель навигации. -
Внутри блока
content
формируется:-
Заголовок страницы с хлебными крошками.
-
Оповещение с информацией о текущей странице.
-
Панель с таблицей задач, где:
-
Каждая задача отображается с данными: ID задачи, заголовок, имя пользователя, категория, приоритет, статус и дата выполнения.
-
Кнопки для редактирования и удаления каждой задачи.
-
Пагинация для перехода между страницами задач.
-
-
Кнопка для добавления новой задачи.
-
Переменные:
-
tasks
: Список задач, передаваемый в шаблон. -
edit_task_url
,delete_task_url
: Ссылки для редактирования и удаления задачи. -
pagination
: HTML для пагинации. -
Переменные типа
text_task_list
,column_task_id
,column_title
, и другие — строки для локализации.
Этот шаблон позволяет администратору видеть все задачи, редактировать их, удалять и добавлять новые задачи, а также использовать пагинацию для удобства.