EventController, TicketController + Model + essenzielle Funktionen
This commit is contained in:
parent
5bde268b89
commit
6e3e3708b2
@ -13,14 +13,12 @@ class ContactController
|
|||||||
private $labels = array("name" => "Name", "email" => "E-Mail-Adresse", "content" => "Nachricht");
|
private $labels = array("name" => "Name", "email" => "E-Mail-Adresse", "content" => "Nachricht");
|
||||||
|
|
||||||
|
|
||||||
public function __construct($view)
|
public function __construct($view) {
|
||||||
{
|
|
||||||
$this->db = new ContactModel();
|
$this->db = new ContactModel();
|
||||||
$this->view = $view;
|
$this->view = $view;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function showContactForm()
|
public function showContactForm() {
|
||||||
{
|
|
||||||
$this->view->setVars([
|
$this->view->setVars([
|
||||||
'labels' => $this->labels,
|
'labels' => $this->labels,
|
||||||
'validData' => $this->validData,
|
'validData' => $this->validData,
|
||||||
@ -28,12 +26,11 @@ class ContactController
|
|||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function showConfirmation()
|
public function showConfirmation() {
|
||||||
{
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public function validateForm(){
|
public function validateForm() {
|
||||||
foreach ($this->labels as $index => $value) {
|
foreach ($this->labels as $index => $value) {
|
||||||
if (!isset($_POST[$index]) || empty($_POST[$index])) {
|
if (!isset($_POST[$index]) || empty($_POST[$index])) {
|
||||||
$this->errors[$index] = "Bitte " . $value . " angeben";
|
$this->errors[$index] = "Bitte " . $value . " angeben";
|
||||||
|
52
Controller/EventController.php
Normal file
52
Controller/EventController.php
Normal file
@ -0,0 +1,52 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace Blog\Controller;
|
||||||
|
|
||||||
|
use Blog\Model\EventModel;
|
||||||
|
|
||||||
|
class EventController {
|
||||||
|
|
||||||
|
protected $view;
|
||||||
|
protected $eventModel;
|
||||||
|
|
||||||
|
public function __construct($view) {
|
||||||
|
$this->eventModel = new EventModel();
|
||||||
|
$this->view = $view;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function updateEvent() {
|
||||||
|
$event = array(
|
||||||
|
"ausstellungid" => $_POST['ausstellungid'],
|
||||||
|
"standortid" => $_POST['standortid'],
|
||||||
|
"datum_von" => $_POST['datumVon'],
|
||||||
|
"datum_bis" => $_POST['datumBis'],
|
||||||
|
"name" => $_POST['name'],
|
||||||
|
"beschreibung" => $_POST['beschreibung'],
|
||||||
|
"max_tickets" => $_POST['max_tickets'],
|
||||||
|
"preis" => $_POST['preis'],
|
||||||
|
);
|
||||||
|
|
||||||
|
$this->eventModel->updateEvent($event);
|
||||||
|
$this->view->setVars([
|
||||||
|
"ausstellungid" => $_POST['ausstellungid'],
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function createEvent() {
|
||||||
|
$event = array(
|
||||||
|
"standortid" => $_POST['standortid'],
|
||||||
|
"datum_von" => $_POST['datumVon'],
|
||||||
|
"datum_bis" => $_POST['datumBis'],
|
||||||
|
"name" => $_POST['name'],
|
||||||
|
"beschreibung" => $_POST['beschreibung'],
|
||||||
|
"max_tickets" => $_POST['max_tickets'],
|
||||||
|
"preis" => $_POST['preis'],
|
||||||
|
);
|
||||||
|
|
||||||
|
$this->eventModel->createEvent($event);
|
||||||
|
$this->view->setVars([
|
||||||
|
"name" => $_POST['name'],
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
42
Controller/TicketController.php
Normal file
42
Controller/TicketController.php
Normal file
@ -0,0 +1,42 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace Blog\Controller;
|
||||||
|
|
||||||
|
use Blog\Model\EventModel;
|
||||||
|
use Blog\Model\TicketModel;
|
||||||
|
|
||||||
|
class TicketController {
|
||||||
|
|
||||||
|
protected $view;
|
||||||
|
protected $ticketModel;
|
||||||
|
protected $eventModel;
|
||||||
|
|
||||||
|
public function __construct($view)
|
||||||
|
{
|
||||||
|
$this->ticketModel = new TicketModel();
|
||||||
|
$this->eventModel = new EventModel();
|
||||||
|
$this->view = $view;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function buyTicket() {
|
||||||
|
$userId = $_POST['userId'];
|
||||||
|
$eventId = $_POST['eventId'];
|
||||||
|
$gueltigkeitsdatum = $_POST['gueltigkeitsdatum'];
|
||||||
|
|
||||||
|
$values = array("userId" => $userId,
|
||||||
|
"eventId" => $eventId,
|
||||||
|
"gueltigkeitsdatum" => $gueltigkeitsdatum);
|
||||||
|
|
||||||
|
$this->ticketModel->buyTicket($values);
|
||||||
|
$event = $this->eventModel->getEvent($eventId);
|
||||||
|
$this->view->setVars([
|
||||||
|
"event" => $event[0]
|
||||||
|
]
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
private function hasTicket($userId, $eventId, $gueltigkeitsdatum) {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
86
Model/EventModel.php
Normal file
86
Model/EventModel.php
Normal file
@ -0,0 +1,86 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace Blog\Model;
|
||||||
|
|
||||||
|
use PDOException;
|
||||||
|
|
||||||
|
class EventModel extends Database {
|
||||||
|
|
||||||
|
public function showEvents() {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public function updateEvent($event) {
|
||||||
|
$pdo = $this->linkDB();
|
||||||
|
$sql = "UPDATE ausstellung SET
|
||||||
|
standortid = :standortid,
|
||||||
|
datum_von = :datum_von,
|
||||||
|
datum_bis = :datum_bis,
|
||||||
|
name = :name,
|
||||||
|
beschreibung = :beschreibung,
|
||||||
|
max_tickets = :max_tickets,
|
||||||
|
preis = :preis
|
||||||
|
WHERE ausstellungid = :ausstellungid;";
|
||||||
|
|
||||||
|
$params = array(
|
||||||
|
":standortid" => $event['standortid'],
|
||||||
|
":datum_von" => $event['datum_von'],
|
||||||
|
":datum_bis" => $event['datum_bis'],
|
||||||
|
":name" => $event['name'],
|
||||||
|
":beschreibung" => $event['beschreibung'],
|
||||||
|
":max_tickets" => $event['max_tickets'],
|
||||||
|
":preis" => $event['preis'],
|
||||||
|
":ausstellungid" => $event['ausstellungid']
|
||||||
|
);
|
||||||
|
|
||||||
|
try {
|
||||||
|
$sth = $pdo->prepare($sql);
|
||||||
|
$sth->execute($params);
|
||||||
|
} catch (PDOException $e) {
|
||||||
|
new \Blog\Library\ErrorMsg("Fehler beim Aktualisieren der Daten.", $e);
|
||||||
|
die;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public function createEvent($event) {
|
||||||
|
$pdo = $this->linkDB();
|
||||||
|
|
||||||
|
$sql = "INSERT INTO ausstellung (`standortid`, `datum_von`, `datum_bis`, `name`, `beschreibung`, `max_tickets`, `preis`) VALUES (
|
||||||
|
:standortid, :datum_von, :datum_bis, :name, :beschreibung, :max_tickets, :preis);";
|
||||||
|
|
||||||
|
$params = array(
|
||||||
|
":standortid" => $event['standortid'],
|
||||||
|
":datum_von" => $event['datum_von'],
|
||||||
|
":datum_bis" => $event['datum_bis'],
|
||||||
|
":name" => $event['name'],
|
||||||
|
":beschreibung" => $event['beschreibung'],
|
||||||
|
":max_tickets" => $event['max_tickets'],
|
||||||
|
":preis" => $event['preis']
|
||||||
|
);
|
||||||
|
|
||||||
|
try {
|
||||||
|
$sth = $pdo->prepare($sql);
|
||||||
|
$sth->execute($params);
|
||||||
|
return $sth;
|
||||||
|
} catch (PDOException $e) {
|
||||||
|
new \Blog\Library\ErrorMsg("Fehler beim Schreiben der Daten.", $e);
|
||||||
|
die;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public function getEvent($id) {
|
||||||
|
$pdo = $this->linkDB();
|
||||||
|
$sql = "SELECT * FROM `ausstellung` WHERE `ausstellungid` = :eventId;";
|
||||||
|
$params = array("eventId" => $id);
|
||||||
|
|
||||||
|
try {
|
||||||
|
$sth = $pdo->prepare($sql);
|
||||||
|
$sth->execute($params);
|
||||||
|
$erg = $sth->fetchAll(\PDO::FETCH_ASSOC);
|
||||||
|
return $erg[0];
|
||||||
|
} catch (PDOException $e) {
|
||||||
|
new \Blog\Library\ErrorMsg("Fehler beim Schreiben der Daten.", $e);
|
||||||
|
die;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
31
Model/TicketModel.php
Normal file
31
Model/TicketModel.php
Normal file
@ -0,0 +1,31 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace Blog\Model;
|
||||||
|
|
||||||
|
use PDOException;
|
||||||
|
|
||||||
|
class TicketModel extends Database {
|
||||||
|
|
||||||
|
public function buyTicket($values) {
|
||||||
|
$sql = "INSERT INTO ticket (`userId`, `eventId`, `kaufdatum`, `gueltigkeitsdatum`) VALUES (
|
||||||
|
:userId, :eventId, :kaufdatum, :gueltigkeitsdatum);";
|
||||||
|
|
||||||
|
$pdo = $this->linkDB();
|
||||||
|
$params = array(
|
||||||
|
":userId" => $values['userId'],
|
||||||
|
":eventId" => $values['eventId'],
|
||||||
|
":kaufdatum" => $values['kaufdatum'],
|
||||||
|
":gueltigkeitsdatum" => $values['gueltigkeitsdatum']
|
||||||
|
);
|
||||||
|
|
||||||
|
try {
|
||||||
|
$sth = $pdo->prepare($sql);
|
||||||
|
$sth->execute($params);
|
||||||
|
} catch (PDOException $e) {
|
||||||
|
new \Blog\Library\ErrorMsg("Fehler beim Schreiben der Daten.", $e);
|
||||||
|
die;
|
||||||
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
12
Views/Event/createEvent.phtml
Normal file
12
Views/Event/createEvent.phtml
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
<?php
|
||||||
|
include dirname(__DIR__).'/header.phtml';
|
||||||
|
?>
|
||||||
|
|
||||||
|
<div class="msg">
|
||||||
|
<p>Das Event "<?php echo $name?>" wurde erfolgreich erstellt!</p>
|
||||||
|
<a href="?controller=Welcome&do=showWelcome">Weiter</a>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<?php include dirname(__DIR__).'/footer.phtml'; ?>
|
12
Views/Event/updateEvent.phtml
Normal file
12
Views/Event/updateEvent.phtml
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
<?php
|
||||||
|
include dirname(__DIR__).'/header.phtml';
|
||||||
|
?>
|
||||||
|
|
||||||
|
<div class="msg">
|
||||||
|
<p>Das Event mit der ID "<?php echo $ausstellungid?>" wurde erfolgreich bearbeitet!</p>
|
||||||
|
<a href="?controller=Welcome&do=showWelcome">Weiter</a>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<?php include dirname(__DIR__).'/footer.phtml'; ?>
|
12
Views/Ticket/buyTicket.phtml
Normal file
12
Views/Ticket/buyTicket.phtml
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
<?php
|
||||||
|
include dirname(__DIR__).'/header.phtml';
|
||||||
|
?>
|
||||||
|
|
||||||
|
<div class="msg">
|
||||||
|
<p>Ihr Ticket für das Event "<?php echo $event['name']?>" wurde erfolgreich gekauft!</p>
|
||||||
|
<a href="?controller=Welcome&do=showWelcome">Weiter</a>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<?php include dirname(__DIR__).'/footer.phtml'; ?>
|
Loading…
x
Reference in New Issue
Block a user