refactoring
This commit is contained in:
@@ -3,8 +3,8 @@
|
||||
Inhalt: Formular für die Erstellung eines neuen Beitrags
|
||||
-->
|
||||
<?php
|
||||
include_once 'php/model/DatabaseDAO.php';
|
||||
include_once 'php/model/FileDatabase.php';
|
||||
include_once 'php/model/ArticleManagerDAO.php';
|
||||
include_once 'php/model/ArticleManager.php';
|
||||
|
||||
if(isset($_POST['post-title']) && isset($_POST['post-content']) && isset($_POST['post-category'])) {
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
try {
|
||||
//$db = Database::getInstance();
|
||||
$db = new FileDatabase();
|
||||
$db = new ArticleManager();
|
||||
$author = "max.mustermann@web.de"; // wird später aus session bezogen.
|
||||
$db->newArticle($_POST['post-title'], $_POST['post-content'], $author);
|
||||
} catch (PDOException $e) {
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<?php
|
||||
require_once 'php/model/FileDatabase.php';
|
||||
require_once 'php/model/ArticleManager.php';
|
||||
require_once 'php/model/Article.php';
|
||||
|
||||
|
||||
|
||||
@@ -1,19 +1,19 @@
|
||||
<?php
|
||||
require_once 'DatabaseDAO.php';
|
||||
require_once 'ArticleManagerDAO.php';
|
||||
/*
|
||||
* Klasse: Eine lokale Lösung der DatenbankDAO.
|
||||
* schreibt zunächst Daten lokal in das Verzeichnis und kann diese wieder auslesen.
|
||||
*
|
||||
* @author Niklas Ortmann
|
||||
*/
|
||||
class FileDatabase implements DatabaseDAO {
|
||||
class ArticleManager implements ArticleManagerDAO {
|
||||
/*
|
||||
* Gibt die Datenbank-Instanz zurück.
|
||||
*/
|
||||
public static function getInstance()
|
||||
{
|
||||
if (self::$instance == null) {
|
||||
self::$instance = new FileDatabase();
|
||||
self::$instance = new ArticleManager();
|
||||
}
|
||||
|
||||
return self::$instance;
|
||||
@@ -29,12 +29,13 @@ class FileDatabase implements DatabaseDAO {
|
||||
|
||||
}
|
||||
|
||||
public function newArticle($title, $content, $author) {
|
||||
public function newArticle($title, $content, $author, $category) {
|
||||
$newData = array(
|
||||
"title" => $title,
|
||||
"content" => $content,
|
||||
"author" => $author,
|
||||
"email" => $_POST["Email"],
|
||||
"category" => $category,
|
||||
//"tags" => isset($_POST["tags"]) ? $_POST["tags"] : '', TODO: Später hinzufügen
|
||||
"date" => date("d.m.Y, H:i")
|
||||
);
|
||||
$newData = base64_encode(serialize($newData));
|
||||
@@ -5,18 +5,20 @@
|
||||
* @author Niklas Ortmann
|
||||
*/
|
||||
|
||||
interface DatabaseDAO
|
||||
interface ArticleManagerDAO
|
||||
{
|
||||
/*
|
||||
* Ein angemeldeter Nutzer erstellt einen neuen Beitrag.
|
||||
* $title Titel des Beitrags
|
||||
* $content Der Inhalt des Beitrags
|
||||
* $author dem Author des des Beitrags (NID oder email)
|
||||
* $title Titel des Beitrags
|
||||
* $content Der Inhalt des Beitrags
|
||||
* $author dem Author des des Beitrags (NID oder email)
|
||||
* $category Kategorie des Beitrags
|
||||
* $tags optionale Schlagworte für eine bessere Suche
|
||||
*
|
||||
* Mögliche Exceptions:
|
||||
* TODO Fehlerbeschreibung hinzufügen
|
||||
*/
|
||||
public function newArticle($title, $content, $author);
|
||||
public function newArticle($title, $content, $author, $category);
|
||||
|
||||
/*
|
||||
* Ein angemeldeter Nutzer bearbeitet einen Beitrag.
|
||||
@@ -1,16 +0,0 @@
|
||||
<?php
|
||||
/*
|
||||
* Die Klasse dient als Brücke zwischen der Implementierung des DatenbankDAO und der Geschäftslogik.
|
||||
* Hier kann später die FileDatabase durch die SQL_Database ausgetauscht werden.
|
||||
* @author Niklas Ortmann
|
||||
*/
|
||||
class Database
|
||||
{
|
||||
/*
|
||||
* Gibt die Database-Instanz zurück.
|
||||
*/
|
||||
public static function getInstance()
|
||||
{
|
||||
return FileDatabase::getInstance(); // TODO: wird später durch echte DB ausgetauscht.
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user