From d0626e34913cb80c24d0fc6e44c0bd94c3f1d449 Mon Sep 17 00:00:00 2001 From: Bitha17 <16521076@mahasiswa.itb.ac.id> Date: Wed, 4 Oct 2023 17:58:04 +0700 Subject: [PATCH] ticket purchase logic --- app/Controllers/PembelianController.php | 33 +++++++++++++++++++++++-- app/Controllers/TicketController.php | 6 +++++ 2 files changed, 37 insertions(+), 2 deletions(-) diff --git a/app/Controllers/PembelianController.php b/app/Controllers/PembelianController.php index b83fa7b..f548d1f 100644 --- a/app/Controllers/PembelianController.php +++ b/app/Controllers/PembelianController.php @@ -6,7 +6,8 @@ require_once(__DIR__ . '/../Models/Pembelian.php'); class PembelianController { private $pembelianModel; - + + public function __construct() { $this->pembelianModel = new PembelianModel(); } @@ -31,7 +32,7 @@ class PembelianController { return $this->pembelianModel->getAllPembelian(); } - public function paginateHistory($page=1,$pagesize=10,$pembelian) { + public function paginateHistory($pembelian,$page=1,$pagesize=10) { $maxpage = ceil(count($pembelian)/$pagesize); if ($page > $maxpage) { $page = $maxpage; @@ -41,5 +42,33 @@ class PembelianController { return $selectedHistory; } + + // Returns true if purchase succeeds + public function purchaseTicket($ticketId,$userId) { + // $purchases = $this->getAllPembelian(); + // foreach ($purchases as $purchase) : + // echo $purchase['pembelian_id'] . ': ' . $purchase['user_id'] . ', ' . $purchase['ticket_id'] . ', ' . $purchase['pembelian_created_time']."\n"; + // endforeach; + + $createdTime = date("Y-m-d H:i:s"); + $this->createPembelian($ticketId,$userId,$createdTime); + // $purchases = $this->getAllPembelian(); + // foreach ($purchases as $purchase) : + // echo $purchase['pembelian_id'] . ': ' . $purchase['user_id'] . ', ' . $purchase['ticket_id'] . ', ' . $purchase['pembelian_created_time']."\n"; + // endforeach; + } + + public function handleRequest() { + if (isset($_GET['action'])) { + if ($_GET['action'] === 'purchaseTicket') { + $ticketId = $_POST['ticketId']; + $userId = $_POST['userId']; + $this->purchaseTicket($ticketId,$userId); + } else { + // Handle other actions here, if needed + } + } + } + } ?> diff --git a/app/Controllers/TicketController.php b/app/Controllers/TicketController.php index b8e4e79..8e65e81 100644 --- a/app/Controllers/TicketController.php +++ b/app/Controllers/TicketController.php @@ -26,5 +26,11 @@ class TicketController { public function deleteTicket($ticketId) { return $this->ticketModel->deleteTicket($ticketId); } + + public function previewTicket($ticketId) { + $ticket = $this->getTicket($ticketId); + + include(__DIR__ . '/../Views/pembelian/pembelian.php'); + } } ?> -- GitLab