summaryrefslogtreecommitdiff
path: root/pages/api/save-private.php
blob: de7d505570b6d7a7327e709e1f18f6fee4712c75 (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
<?php

require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/session.inc"; global $isLoggedIn;
if (!$isLoggedIn) header("Location: /-/login") and die();

$request_raw = file_get_contents('php://input');
$json_object = json_decode($request_raw, true);

$system = $_GET['system'] ?? null;
$member = $_GET['member'] ?? null;
$content = $json_object['content'] ?? null;

if (!isset($system) || trim($system) === "" || strlen($system) !== 5 || !preg_match("/[a-z]/i", $system))
    peh_error("System not found", 404);

if (!isset($member) || trim($member) === "" || strlen($member) !== 5 || !preg_match("/[a-z]/i", $member))
    if ($member !== null && $member !== "null") peh_error("System member not found", 404);

if (!isset($content))
    peh_error("No content", 400);

if ($member !== null && $member !== "null") {
    $file = $_SERVER['DOCUMENT_ROOT'] . "/includes/data/content/" . $member . "-private.html";
} else {
    $file = $_SERVER['DOCUMENT_ROOT'] . "/includes/data/content/" . $system . ".html";
}

if (trim($content) === "") {
    if (file_exists($file)) {
        unlink($file);
    }
    die();
}

file_put_contents($file, $content);