bp/app/Views/organizations/dashboard.twig

181 lines
8.8 KiB
Twig
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{% extends 'layouts/base.twig' %}
{% block title %}Управление организацией - {{ organization.name }} - {{ parent() }}{% endblock %}
{% block content %}
<div class="container-fluid py-4">
{# Заголовок #}
<div class="d-flex justify-content-between align-items-center mb-4">
<div>
<h1 class="h3 mb-0">Управление организацией</h1>
<h3 class="text-muted mb-0">{{ organization.name }}</h3>
</div>
<div class="text-end">
{{ role_badge(current_role) }}
</div>
</div>
{# Статистика #}
<div class="row g-3 mb-4">
<div class="col-md-4">
<div class="card h-100 border-0 shadow-sm">
<div class="card-body text-center">
<div class="display-6 fw-bold text-primary">{{ stats.users_total }}</div>
<div class="text-muted">Всего участников</div>
</div>
</div>
</div>
<div class="col-md-4">
<div class="card h-100 border-0 shadow-sm">
<div class="card-body text-center">
<div class="display-6 fw-bold text-success">{{ stats.users_active }}</div>
<div class="text-muted">Активных</div>
</div>
</div>
</div>
<div class="col-md-4">
<div class="card h-100 border-0 shadow-sm">
<div class="card-body text-center">
<div class="display-6 fw-bold text-warning">{{ stats.users_blocked }}</div>
<div class="text-muted">Заблокировано</div>
</div>
</div>
</div>
</div>
{# Карточки управления #}
<div class="row g-4">
{# Управление командой #}
{% if can_manage_users %}
<div class="col-md-6 col-lg-4">
<a href="{{ base_url('/organizations/'~ organization.id ~ '/users' ) }}" class="card h-100 text-decoration-none border-0 shadow-sm card-hover">
<div class="card-body p-4">
<div class="d-flex align-items-start">
<div class="bg-primary bg-opacity-10 rounded-3 p-3 me-3">
<i class="fa-solid fa-users-gear fs-3 text-primary"></i>
</div>
<div>
<h5 class="card-title mb-1 text-dark">Управление командой</h5>
<p class="card-text text-muted small mb-0">Приглашайте, блокируйте и управляйте ролями участников организации</p>
</div>
</div>
</div>
<div class="card-footer bg-transparent border-0 pt-0">
<span class="text-primary fw-medium">Перейти <i class="fa-solid fa-arrow-right ms-1"></i></span>
</div>
</a>
</div>
{% endif %}
{# Редактирование организации #}
<div class="col-md-6 col-lg-4">
<a href="{{ base_url('/organizations/edit/' ~ organization.id) }}" class="card h-100 text-decoration-none border-0 shadow-sm card-hover">
<div class="card-body p-4">
<div class="d-flex align-items-start">
<div class="bg-info bg-opacity-10 rounded-3 p-3 me-3">
<i class="fa-solid fa-building fs-3 text-info"></i>
</div>
<div>
<h5 class="card-title mb-1 text-dark">Реквизиты организации</h5>
<p class="card-text text-muted small mb-0">Измените название, адрес, банковские реквизиты и другую информацию</p>
</div>
</div>
</div>
<div class="card-footer bg-transparent border-0 pt-0">
<span class="text-info fw-medium">Редактировать <i class="fa-solid fa-arrow-right ms-1"></i></span>
</div>
</a>
</div>
{# Модули организации - заглушка #}
<div class="col-md-6 col-lg-4">
<div class="card h-100 text-decoration-none border-0 shadow-sm bg-light">
<div class="card-body p-4">
<div class="d-flex align-items-start">
<div class="bg-secondary bg-opacity-10 rounded-3 p-3 me-3">
<i class="fa-solid fa-puzzle fs-3 text-secondary"></i>
</div>
<div>
<h5 class="card-title mb-1 text-dark">Модули</h5>
<p class="card-text text-muted small mb-0">Управление подключёнными модулями и функционалом организации</p>
</div>
</div>
</div>
<div class="card-footer bg-transparent border-0 pt-0">
<span class="text-muted fw-medium">Скоро <i class="fa-solid fa-clock ms-1"></i></span>
</div>
</div>
</div>
{# Биллинг - заглушка #}
<div class="col-md-6 col-lg-4">
<div class="card h-100 text-decoration-none border-0 shadow-sm bg-light">
<div class="card-body p-4">
<div class="d-flex align-items-start">
<div class="bg-success bg-opacity-10 rounded-3 p-3 me-3">
<i class="fa-solid fa-credit-card fs-3 text-success"></i>
</div>
<div>
<h5 class="card-title mb-1 text-dark">Биллинг и оплата</h5>
<p class="card-text text-muted small mb-0">Просмотр счетов, история платежей и управление подпиской</p>
</div>
</div>
</div>
<div class="card-footer bg-transparent border-0 pt-0">
<span class="text-muted fw-medium">Скоро <i class="fa-solid fa-clock ms-1"></i></span>
</div>
</div>
</div>
{# Приглашения - заглушка #}
<div class="col-md-6 col-lg-4">
<div class="card h-100 text-decoration-none border-0 shadow-sm bg-light">
<div class="card-body p-4">
<div class="d-flex align-items-start">
<div class="bg-warning bg-opacity-10 rounded-3 p-3 me-3">
<i class="fa-solid fa-envelope-open-text fs-3 text-warning"></i>
</div>
<div>
<h5 class="card-title mb-1 text-dark">История приглашений</h5>
<p class="card-text text-muted small mb-0">Просмотр отправленных и отклонённых приглашений</p>
</div>
</div>
</div>
<div class="card-footer bg-transparent border-0 pt-0">
<span class="text-muted fw-medium">Скоро <i class="fa-solid fa-clock ms-1"></i></span>
</div>
</div>
</div>
{# Настройки безопасности - заглушка #}
<div class="col-md-6 col-lg-4">
<div class="card h-100 text-decoration-none border-0 shadow-sm bg-light">
<div class="card-body p-4">
<div class="d-flex align-items-start">
<div class="bg-danger bg-opacity-10 rounded-3 p-3 me-3">
<i class="fa-solid fa-shield-halved fs-3 text-danger"></i>
</div>
<div>
<h5 class="card-title mb-1 text-dark">Безопасность</h5>
<p class="card-text text-muted small mb-0">Настройки безопасности, двухфакторная аутентификация, логи</p>
</div>
</div>
</div>
<div class="card-footer bg-transparent border-0 pt-0">
<span class="text-muted fw-medium">Скоро <i class="fa-solid fa-clock ms-1"></i></span>
</div>
</div>
</div>
</div>
</div>
<style>
.card-hover {
transition: all 0.2s ease;
}
.card-hover:hover {
transform: translateY(-2px);
box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}
</style>
{% endblock %}