{# backend/templates/employees/department_detail.html #} {% extends 'base.html' %} {% load static django_bootstrap5 %} {% block title %}{{ dept.name }}{% endblock %} {% block content %} {% with dept_id=dept.id %}
{# ===== Заголовок ===== #}

{{ dept.name }}

{% if user.is_staff or user.is_superuser or can_manage or dept.head.id == user.id %}
{# Добавить участника #} {# Назначить роль #} {% if roles %} {% if user.is_superuser or user.is_staff or can_assign_roles or dept.head.id == user.id %} {% endif %} {% endif %} {# Удалить участника #}
{% endif %}
{% url 'feed:post_create' as post_create_url %} {% if user.is_authenticated and user.id in members_exclude_ids %} Создать публикацию {% endif %}
{# ===== Две колонки как в employee_detail: слева основное, справа сайдбар ===== #}
{# ===== ЛЕВАЯ КОЛОНКА (основная, как в профиле): команда + инфо ===== #}
{# --- Команда отдела (круг) --- #}
{% url 'employees:employees_list' as employees_list_url %} {% if employees_list_url %} Команда отдела → {% endif %}
{# КРУГ #}
{# Слой фокуса #}
{# ПОЛУКРУЖНЫЙ ИНДИКАТОР СКРОЛЛА (справа по дуге) #}
{# Источник данных для круга #}
{% for li in links %} {% with emp=li.employee %}
{% endwith %} {% empty %} {% endfor %}
{# Текст под кругом #}
{# --- Инфо-блок отдела (под командой) --- #} {% if dept.description or dept.head %}
{% if dept.description %}
{{ dept.description }}
{% endif %} {% if dept.head %}
Руководитель: {% url 'employees:employee_detail' dept.head.id as head_url %} {% if head_url %} {{ dept.head.last_name }}{% if dept.head.first_name %} {{ dept.head.first_name }}{% endif %} {% else %} {{ dept.head.last_name }}{% if dept.head.first_name %} {{ dept.head.first_name }}{% endif %} {% endif %}
{% endif %} {% if user.is_staff or dept.head.id == user.id or can_manage or can_assign_roles or can_change_head %} {% endif %}
{% endif %}
{# ===== ПРАВАЯ КОЛОНКА (сайдбар): публикации/активность ===== #}
{% if user.is_staff or user.is_superuser or can_manage or dept.head.id == user.id %}
Настройки отдела
{% include "employees/_department_controls.html" with dept=dept edit_form=edit_form head_choices=head_choices %}
{% endif %}
Публикации отдела
{% if posts %} {% include "feed/_feed_cards.html" with items=posts %} {% else %}
Публикаций пока нет.
{% endif %}
{# Простая пагинация (если нужно) #} {% if page|default:0 %}
{% if page|add:"-1" %} ← Назад {% endif %}
{% endif %}
{# ---------- МОДАЛ «Удалить участника» ---------- #} {% if user.is_staff or user.is_superuser or can_manage or dept.head.id == user.id %} {% endif %} {# ---------- МОДАЛ «Добавить участника» ---------- #} {% if user.is_staff or user.is_superuser or can_manage or dept.head.id == user.id %} {% with exclude_ids=members_exclude_ids %} {% endwith %} {% endif %} {# ---------- МОДАЛ «Назначить роль» ---------- #} {% if roles %} {% if user.is_superuser or user.is_staff or can_assign_roles or dept.head.id == user.id %} {% endif %} {% endif %} {% endwith %} {% endblock %} {% block extra_js %} {% url 'employees:employees_list' as employees_list_url %} {# ==== СТИЛИ (можно вынести в base.html, чтобы не дублировать) ==== #} {# ==== JS: круг с автоскроллом/ручным управлением и индикатором ==== #} {# ===== Переключатель панели настроек (скролл к блоку при открытии) ===== #} {# ===== Модал «Добавить участника»: AJAX-поиск ===== #} {# ===== Модал «Удалить участника»: локальный выбор ===== #} {# ===== Модал «Назначить роль»: подстановка empId в action ===== #} {% endblock %}