summaryrefslogtreecommitdiff
path: root/lib/alert.php
blob: 1fb584a26bd4308bbb7357941f77b002c802551e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
<?php
include_once $_SERVER['DOCUMENT_ROOT'] . '/lib/utils.php';

function create_alert(string $redirect, int $code, string|null $message, mixed $data)
{
    if (IS_JSON_REQUEST) {
        return json_response($code, $message, $data);
    } else {
        http_response_code($code);
        header("Location: $redirect");
        $_SESSION['alert'] = [
            'message' => $message,
            'code' => $code
        ];
        return "$code $message";
    }
}

function display_alert()
{
    if (!isset($_SESSION['alert'])) {
        session_write_close();
        return;
    }
    $alert = $_SESSION['alert'];
    unset($_SESSION['alert']);

    if (isset($alert['message'])) {
        $code = intval($alert['code']);

        echo '<div class="alert';
        if ($code > 299) {
            echo ' red';
        }
        echo '">';
        echo "<p>{$alert['message']}</p>";
        echo '</div>';
    }
}