/
TorX
/
rasp
Обзор
Документация
Войти
/
TorX
/
rasp
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
admin/artists.php
60 строк
2 KB
tormovies
Rewrite the app as plain PHP so it runs on shared hosting without Node.
06 авг 2026, 00:17
06 авг 2026, 00:17
b4b9ea6
Код
Авторство
О чём код?
<?php declare(strict_types=1); require_once __DIR__ . '/../includes/auth.php'; require_once __DIR__ . '/../includes/queries.php'; require_once __DIR__ . '/../includes/layout.php'; require_admin(); if (request_method() === 'POST') { $action = post_string('action'); try { if ($action === 'create') { create_artist(post_string('name')); flash_set('ok', 'Артист добавлен'); } elseif ($action === 'delete') { delete_artist((int) ($_POST['id'] ?? 0)); flash_set('ok', 'Артист удалён'); } } catch (Throwable $e) { flash_set('error', $e->getMessage() ?: 'Не удалось удалить (возможно, есть релизы)'); } redirect('/admin/artists.php'); } $artists = list_artists(); render_header('Артисты', true); ?> <div class="row"> <div> <h1>Артисты</h1> <p class="muted">Имена подставляются при создании релизов</p> </div> </div> <form method="post" class="actions" style="margin-bottom:1.25rem"> <input type="hidden" name="action" value="create"> <input class="field" style="max-width:20rem" name="name" required placeholder="Имя артиста"> <button class="btn btn-primary" type="submit">Добавить</button> </form> <ul class="list"> <?php if (!$artists): ?> <li class="list-item"><div class="list-main muted">Пока нет артистов</div></li> <?php endif; ?> <?php foreach ($artists as $artist): ?> <li class="list-item"> <div class="list-main" style="justify-content:space-between;align-items:center"> <strong><?= e($artist['name']) ?></strong> <form method="post" onsubmit="return confirm('Удалить артиста?')"> <input type="hidden" name="action" value="delete"> <input type="hidden" name="id" value="<?= (int) $artist['id'] ?>"> <button class="btn btn-danger" type="submit">Удалить</button> </form> </div> </li> <?php endforeach; ?> </ul> <?php render_footer();