Release 1.2: bulk upload, S3/SFTP/FTP, SMTP, password reset, user groups, git deploy
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -0,0 +1,75 @@
|
||||
{% extends "base.html" %}
|
||||
{% from "macros.html" import format_size %}
|
||||
|
||||
{% block title %}Группы — Админка{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<section class="page-header page-header--admin">
|
||||
<div class="container">
|
||||
<h1 class="page-header__title">Группы пользователей</h1>
|
||||
<p class="page-header__subtitle">Квоты дискового пространства и назначение пользователей</p>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<section class="admin-section">
|
||||
<div class="container">
|
||||
{% include "admin/_nav.html" %}
|
||||
{% include "partials/alerts.html" %}
|
||||
|
||||
<div class="admin-panel folder-create">
|
||||
<h2 class="admin-panel__title">Создать группу</h2>
|
||||
<form method="post" class="auth-form folder-create__form">
|
||||
<div class="form-group">
|
||||
<label for="name">Название</label>
|
||||
<input type="text" id="name" name="name" required minlength="2" placeholder="VIP">
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label for="disk_quota_mb">Квота (МБ, 0 = без лимита)</label>
|
||||
<input type="number" id="disk_quota_mb" name="disk_quota_mb" min="0" value="500">
|
||||
</div>
|
||||
<button type="submit" class="btn btn--primary">Создать группу</button>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
<div class="admin-table-wrap">
|
||||
<table class="admin-table">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Группа</th>
|
||||
<th>Квота</th>
|
||||
<th>Пользователей</th>
|
||||
<th>Занято</th>
|
||||
<th>Действия</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{% for item in group_stats %}
|
||||
{% set group = item.group %}
|
||||
<tr>
|
||||
<td>
|
||||
{{ group.name }}
|
||||
{% if group.is_default %}<span class="badge badge--success">по умолчанию</span>{% endif %}
|
||||
</td>
|
||||
<td>{{ group.quota_label }}</td>
|
||||
<td>{{ group.user_count }}</td>
|
||||
<td>{{ format_size(item.storage_used) }}</td>
|
||||
<td>
|
||||
<form method="post" action="{{ url_for('admin.edit_group', group_id=group.id) }}" class="group-edit-form">
|
||||
<input type="text" name="name" value="{{ group.name }}" required minlength="2" class="form-inline-input">
|
||||
<input type="number" name="disk_quota_mb" value="{{ group.disk_quota_mb }}" min="0" class="form-inline-input form-inline-input--sm">
|
||||
<button type="submit" class="btn btn--ghost btn--sm">Сохранить</button>
|
||||
</form>
|
||||
{% if not group.is_default %}
|
||||
<form method="post" action="{{ url_for('admin.delete_group', group_id=group.id) }}" style="margin-top:6px" onsubmit="return confirm('Удалить группу? Пользователи будут перенесены в группу по умолчанию.');">
|
||||
<button type="submit" class="btn btn--danger btn--sm">Удалить</button>
|
||||
</form>
|
||||
{% endif %}
|
||||
</td>
|
||||
</tr>
|
||||
{% endfor %}
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
{% endblock %}
|
||||
Reference in New Issue
Block a user