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