<?php
session_start();
require_once "../db.php";

if (!isset($_SESSION['user_id']) || $_SESSION['username'] !== "admin") {
    die("Access denied.");
}

$post_id = intval($_POST['post_id']);
$title = trim($_POST['title']);
$description = trim($_POST['description']);
$nsfw = isset($_POST['nsfw']) ? 1 : 0;
$tags = trim($_POST['tags']);

// Update post
$pdo->prepare("
    UPDATE posts 
    SET title = ?, description = ?, nsfw = ?
    WHERE id = ?
")->execute([$title, $description, $nsfw, $post_id]);

// Update tags
$pdo->prepare("DELETE FROM post_tags WHERE post_id = ?")->execute([$post_id]);

if ($tags !== "") {
    $tagArray = array_map('trim', explode(",", $tags));

    foreach ($tagArray as $t) {
        if ($t === "") continue;

        $pdo->prepare("INSERT IGNORE INTO tags (name) VALUES (?)")->execute([$t]);

        $tagId = $pdo->prepare("SELECT id FROM tags WHERE name = ?");
        $tagId->execute([$t]);
        $tag_id = $tagId->fetchColumn();

        $pdo->prepare("INSERT IGNORE INTO post_tags (post_id, tag_id) VALUES (?, ?)")
            ->execute([$post_id, $tag_id]);
    }
}

header("Location: ../admin/moderate.php");
exit;