ponepaste/public/admin/common.php

51 lines
1 KiB
PHP
Raw Normal View History

<?php
2021-08-09 04:21:39 -04:00
if (!defined('IN_PONEPASTE')) {
die('This file may not be accessed directly.');
}
2021-11-02 08:46:40 -04:00
2023-05-12 02:06:31 -04:00
require_once('../../includes/common.php');
2021-11-02 08:46:40 -04:00
use PonePaste\Models\AdminLog;
use PonePaste\Models\User;
function updateAdminHistory(User $admin, int $action) : void {
2021-11-02 08:46:40 -04:00
$log = new AdminLog([
'user_id' => $admin->id,
2021-11-02 08:46:40 -04:00
'action' => $action,
'ip' => $_SERVER['REMOTE_ADDR']
]);
2021-11-02 08:46:40 -04:00
$log->save();
}
2023-05-13 21:19:35 -04:00
if ($current_user === null || $current_user->role < User::ROLE_MODERATOR) {
2021-11-02 08:46:40 -04:00
header('Location: ..');
die();
}
2021-11-02 08:46:40 -04:00
if (!isset($_SESSION['admin_login'])) {
header('Location: .');
exit();
}
if (isset($_GET['logout'])) {
if (isset($_SESSION['login']))
unset($_SESSION['login']);
session_destroy();
header("Location: .");
exit();
}
2023-05-13 21:19:35 -04:00
function checkAdminAccess(int $role) {
global $current_user;
if ($current_user === null || $current_user->role < $role) {
flashError('You do not have access to this page.');
header('Location: /admin/');
die();
}
}
$flashes = getFlashes();