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");
|
||||
|
||||
|
||||
public function __construct($view)
|
||||
{
|
||||
public function __construct($view) {
|
||||
$this->db = new ContactModel();
|
||||
$this->view = $view;
|
||||
}
|
||||
|
||||
public function showContactForm()
|
||||
{
|
||||
public function showContactForm() {
|
||||
$this->view->setVars([
|
||||
'labels' => $this->labels,
|
||||
'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) {
|
||||
if (!isset($_POST[$index]) || empty($_POST[$index])) {
|
||||
$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