46 lines
1.6 KiB
PHP
46 lines
1.6 KiB
PHP
<?php
|
|
session_start();
|
|
require_once '../model/LocalArticleManager.php';
|
|
require_once '../model/ArticleManager.php';
|
|
require_once '../model/Article.php';
|
|
|
|
if ($_SERVER["REQUEST_METHOD"] === "POST") {
|
|
try {
|
|
$id = $_GET["id"];
|
|
} catch (Exception $e){
|
|
$_SESSION["message"] = "missing_id";
|
|
}
|
|
if (!isset($_POST["title"]) ||!isset($_POST["content"]) || !isset($_POST["category"])){
|
|
$_SESSION["message"] = "missing_parameters";
|
|
header("location: ../../index.php?pfad=updateArticle");
|
|
} elseif(!isset($id)) {
|
|
$_SESSION["message"] = "missing_id";
|
|
//header("location: ../../index.php?pfad=updateArticle");
|
|
}else{
|
|
|
|
$newTitle = $_POST["title"];
|
|
$newContent = $_POST["content"];
|
|
$newCategory = $_POST["category"];
|
|
$author = "max.mustermann"; // TODO: später aus Session den angemeldeten Nutzer beziehen.
|
|
$newTags = $_POST["tags"];
|
|
|
|
try {
|
|
$articleManager = ArticleManager::getInstance(); // TODO: Später aus Session den Nutzer auslesen und Autorenrechte prüfen!
|
|
$article = $articleManager->getArticle($id);
|
|
$article->setTitle($newTitle);
|
|
$article->setContent($newContent);
|
|
$article->setCategory($newCategory);
|
|
$article->setTags($newTags);
|
|
$articleManager->updateArticle($id ,$article, $author);
|
|
} catch (Exception $e){
|
|
$_SESSION["message"] = "internal_error";
|
|
}
|
|
$_SESSION["message"] = "article_updated";
|
|
// Weiterleitung zur Homepage
|
|
header("location: ../../index.php?pfad=showArticle&id=$id");
|
|
|
|
}
|
|
exit();
|
|
}
|
|
|
|
?>
|