diff --git a/src/controllers/SoapPremiumController.php b/src/controllers/SoapPremiumController.php index 351d1e99a5ec4e3b5958b36d3a947a87377551b0..5795cea62f37a2d9da0c373009d4eb94f754e5d3 100644 --- a/src/controllers/SoapPremiumController.php +++ b/src/controllers/SoapPremiumController.php @@ -23,11 +23,18 @@ class SoapPremiumController extends BaseController { $uri = Request::getURL(); if($uri == '/premium-status'){ - $params = ["userId" => $_SESSION['user_id']]; - $result = $this->checkStatus($params); - $data['userStatus'] = $result->userStatus; + if (isset($_SESSION['role']) and $_SESSION['role'] == 'admin'){ + $data["premium_users"] = $this->model->getAllPremium()->listUserPremium; + $data["pending_users"] = $this->model->getAllPending()->listUserPending; + parent::render($data, 'premium-status', "layouts/base"); + } + else{ + $params = ["userId" => $_SESSION['user_id']]; + $result = $this->checkStatus($params); + $data['userStatus'] = $result->userStatus; - parent::render($data, 'premium-status', "layouts/base"); + parent::render($data, 'premium-status', "layouts/base"); + } } else{ throw new Exception("Invalid URL"); diff --git a/src/models/SoapPremiumModel.php b/src/models/SoapPremiumModel.php index c47abc4b8bf01224031ee60b5c2e0c82e1ce893d..764f20331865808fa4a6c47374a878e17627b82a 100644 --- a/src/models/SoapPremiumModel.php +++ b/src/models/SoapPremiumModel.php @@ -44,10 +44,10 @@ public function approvePremium($params){ return $this->soapclient->approvePremium($params); } - public function getAllPremium($params){ - return $this->soapclient->getAllPremium($params); + public function getAllPremium(){ + return $this->soapclient->getAllPremium(); } - public function getAllPending($params){ - return $this->soapclient->getAllPending($params); + public function getAllPending(){ + return $this->soapclient->getAllPending(); } } \ No newline at end of file diff --git a/views/premium-status.php b/views/premium-status.php index 61b395960e471781bccb1a5af5a639c15dfe6cfb..60fa9ec7a88b59e8fb0d1b8f3b09b3bcbea042b5 100644 --- a/views/premium-status.php +++ b/views/premium-status.php @@ -1,29 +1,65 @@ -<div class='premium-status'> - <h2 id="goBack"><a class='back-button' href="/films"><?php echo "< Films" ?></a></h2> - <h1>Premium Status<h1> - <br> - <p>Current: <?php $result = $data["userStatus"]; echo $result;?></p> - <br> - <p>Click <a href="/premium-status">here</a> to refresh the page.</p> - <?php if(isset($data["premiumCancelMessage"])) { ?> - <p><?php echo $data["premiumCancelMessage"]; unset($data["premiumCancelMessage"]);?></p> - <?php } ?> - <?php - if($result == "REJECTED" || $result == "UNREGISTERED") { ?> - <form method="post" action="/register-premium"> - <label for="email">Email:</label> - <input type="email" id="email" name="email" required> - <button type="submit">Register for Premium</button> - </form> - <?php } elseif($result == "PENDING") { ?> - <div class="pending"> - <p>Your request is pending. Please wait for the admin to approve your request.</p> - <p>Click <a href="/premium-status">here</a> to refresh the page.</p> - </div> - <?php } elseif($result == "ACCEPTED") { ?> - <form method="post" action="/cancel-premium"> - <button type="submit">Cancel Premium</button> - </form> - <?php } ?> - -</div> \ No newline at end of file +<?php if (isset($_SESSION['role']) and $_SESSION['role'] == 'admin') { ?> + <div class='premium-status-admin'> + <h2 id="goBack"><a class='back-button' href="/admin-dashboard"><?php echo "< Admin Dashboard" ?></a></h2> + <table> + <thead> + <tr> + <th>Username</th> + <th>Action</th> + </tr> + </thead> + <tbody> + <?php var_dump($data["premium_users"][0]); ?> + <?php foreach($data["premium_users"] as $user) { ?> + <tr> + <td><?php echo $user->userEmail; ?></td> + <td> + <?php if($user->premiumStatus == "ACCEPTED") { ?> + <form method="post" action="/cancel-premium"> + <input type="hidden" name="user_id" value="<?php echo $user->id; ?>"> + <button type="submit">Cancel Premium</button> + </form> + <?php } elseif($user->premiumStatus == "PENDING") { ?> + <p>Pending</p> + <?php } else { ?> + <form method="post" action="/register-premium"> + <input type="hidden" name="user_id" value="<?php echo $user->id; ?>"> + <button type="submit">Accept Premium</button> + </form> + <?php } ?> + </td> + </tr> + <?php } ?> + </tbody> + </table> + </div> +<?php } else { ?> + <div class='premium-status'> + <h2 id="goBack"><a class='back-button' href="/films"><?php echo "< Films" ?></a></h2> + <h1>Premium Status<h1> + <br> + <p>Current: <?php $result = $data["userStatus"]; echo $result;?></p> + <br> + <p>Click <a href="/premium-status">here</a> to refresh the page.</p> + <?php if(isset($data["premiumCancelMessage"])) { ?> + <p><?php echo $data["premiumCancelMessage"]; unset($data["premiumCancelMessage"]);?></p> + <?php } ?> + <?php + if($result == "REJECTED" || $result == "UNREGISTERED") { ?> + <form method="post" action="/register-premium"> + <label for="email">Email:</label> + <input type="email" id="email" name="email" required> + <button type="submit">Register for Premium</button> + </form> + <?php } elseif($result == "PENDING") { ?> + <div class="pending"> + <p>Your request is pending. Please wait for the admin to approve your request.</p> + <p>Click <a href="/premium-status">here</a> to refresh the page.</p> + </div> + <?php } elseif($result == "ACCEPTED") { ?> + <form method="post" action="/cancel-premium"> + <button type="submit">Cancel Premium</button> + </form> + <?php } ?> + </div> +<?php } ?> \ No newline at end of file