{# backend/templates/communications/chat_list.html #} {% extends "base.html" %} {% load static django_bootstrap5 %} {% block title %}Мои чаты{% endblock %} {% block extra_css %} {% endblock %} {% block content %}
{# Заголовок + ПОИСК (iOS-стиль) #}

Мои чаты

{# Сегментированный фильтр + КНОПКА справа #}
Новый чат
{# ===== 1) ГЛОБАЛЬНЫЙ ===== #}
Глобальный
{% for chat in chats %} {% if chat.type == 'global' %} {% with last=chat.last_message.0 %}
Глобальный чат {{ chat.messages.count }} +{{ chat.unread_count|default:0 }}
{% if last %} {{ last.created_at|date:"d.m.Y H:i" }} · {{ last.author.get_full_name|default:last.author.username }}: {{ last.content|default:"(вложение)"|truncatechars:120 }} {% else %} Сообщений пока нет. {% endif %}
{% endwith %} {% endif %} {% endfor %}
{# ===== 2) ОТДЕЛЫ ===== #}
Отделы
{% for chat in chats %} {% if chat.type == 'department' %} {% with last=chat.last_message.0 %}
Чат отдела: {{ chat.department.name }} {{ chat.messages.count }} +{{ chat.unread_count|default:0 }}
{% if last %} {{ last.created_at|date:"d.m.Y H:i" }} · {{ last.author.get_full_name|default:last.author.username }}: {{ last.content|default:"(вложение)"|truncatechars:120 }} {% else %} Сообщений пока нет. {% endif %}
{% endwith %} {% endif %} {% endfor %}
{# ===== 3) ЛИЧНЫЕ ===== #}
Личные
{% for chat in chats %} {% if chat.type == 'private' %} {% with last=chat.last_message.0 %}
{% with p0=chat.participants.all.0 p1=chat.participants.all.1 %} {% if p0 and p0 != user and p0.avatar %} {{ p0.get_full_name|default:p0.username }} {% elif p1 and p1 != user and p1.avatar %} {{ p1.get_full_name|default:p1.username }} {% else %} {% endif %} {% endwith %}
{% if last %} {{ last.created_at|date:"d.m.Y H:i" }} · {{ last.author.get_full_name|default:last.author.username }}: {{ last.content|default:"(вложение)"|truncatechars:120 }} {% else %} Сообщений пока нет. {% endif %}
{% endwith %} {% endif %} {% endfor %}
{% if not chats %}
Чатов пока нет. Начните с поиска сотрудника.
{% endif %}
{% endblock %}