diff --git a/admin.php b/admin.php index 63c0d29..efe3cf0 100644 --- a/admin.php +++ b/admin.php @@ -24,6 +24,7 @@ $errors = []; if ($_SERVER['REQUEST_METHOD'] === 'POST') { $action = (string)($_POST['action'] ?? ''); + $isAjax = (string)($_POST['ajax'] ?? '') === '1'; try { if ($action === 'create_section') { @@ -65,6 +66,11 @@ if ($_SERVER['REQUEST_METHOD'] === 'POST') { } $message = 'Фото обновлено'; + if ($isAjax) { + header('Content-Type: application/json; charset=utf-8'); + echo json_encode(['ok' => true, 'message' => $message], JSON_UNESCAPED_UNICODE); + exit; + } } if ($action === 'photo_delete') { @@ -109,6 +115,12 @@ if ($_SERVER['REQUEST_METHOD'] === 'POST') { } } } catch (Throwable $e) { + if ($isAjax) { + header('Content-Type: application/json; charset=utf-8'); + http_response_code(400); + echo json_encode(['ok' => false, 'message' => $e->getMessage()], JSON_UNESCAPED_UNICODE); + exit; + } $errors[] = $e->getMessage(); } } @@ -260,18 +272,18 @@ function nextUniqueCodeName(string $base): string Разделы - - - - - Создать раздел - - = h((string)$s['name']) ?> (= (int)$s['photos_count'] ?>) + + + + + + Создать раздел + @@ -308,22 +320,23 @@ function nextUniqueCodeName(string $base): string Фото в разделе - ПревьюПоляДействия + ДоПослеПоляДействия - + + - - + + = h((string)($p['description'] ?? '')) ?> Фото после (опционально): - Сохранить + Сохраняется автоматически при выходе из карточки. - + Удалить @@ -341,7 +354,7 @@ function nextUniqueCodeName(string $base): string ПользовательДействие = h((string)$u['display_name']) ?> - + Удалить доступ @@ -356,7 +369,7 @@ function nextUniqueCodeName(string $base): string = h((string)($c['display_name'] ?? '—')) ?> = h((string)$c['comment_text']) ?> - + Удалить @@ -368,4 +381,69 @@ function nextUniqueCodeName(string $base): string -
= h((string)($p['description'] ?? '')) ?>
Фото после (опционально):