С 9:00 до 21:00 Без выходных

admin/view/template/extension/task_manager/index.twig

Вот содержимое файла admin/view/template/extension/task_manager/index.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 class="active">{{ heading_title }}</li>
        </ul>
      </div>
    </div>

    <div class="container-fluid">
      <div class="alert alert-info">
        {{ text_task_manager_info }}
      </div>

      <div class="panel panel-default">
        <div class="panel-heading">
          <h3 class="panel-title"><i class="fa fa-tasks"></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 формируется основное содержимое страницы:

    • Заголовок страницы и хлебные крошки.

    • Вывод информации о модуле в виде alert-блока.

    • Панель с таблицей задач, где:

      • Отображаются задачи с их данными: ID задачи, заголовок, имя пользователя, категория, приоритет, статус и дата выполнения.

      • Для каждой задачи есть кнопки для редактирования и удаления.

      • В нижней части — пагинация для навигации между страницами задач.

    • Кнопка для добавления новой задачи.

Переменные:

  • tasks: Список задач, который должен быть передан в шаблон.

  • edit_task_url и delete_task_url: Ссылки для редактирования и удаления задач соответственно.

  • pagination: Содержит HTML для пагинации.

  • Переменные типа text_task_manager_info, text_task_list, column_task_id, и другие — это строки, которые должны быть определены в языковом файле для локализации.

Этот шаблон отображает список задач с возможностью их редактирования и удаления, а также включает кнопки для добавления новой задачи и пагинацию.