commit 72f25d231e3981624b513338f72cef3c66ce1dbd Author: don Date: Fri Sep 13 17:42:15 2024 +0800 Add JSA_System-main diff --git a/.vscode/launch.json b/.vscode/launch.json new file mode 100644 index 0000000..2ba986f --- /dev/null +++ b/.vscode/launch.json @@ -0,0 +1,15 @@ +{ + // Use IntelliSense to learn about possible attributes. + // Hover to view descriptions of existing attributes. + // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 + "version": "0.2.0", + "configurations": [ + { + "type": "chrome", + "request": "launch", + "name": "Launch Chrome against localhost", + "url": "http://localhost:8080", + "webRoot": "${workspaceFolder}" + } + ] +} \ No newline at end of file diff --git a/adminProfile.php b/adminProfile.php new file mode 100644 index 0000000..a1f1e85 --- /dev/null +++ b/adminProfile.php @@ -0,0 +1,210 @@ + + + + + + + + + Profile's | UITM BAZAAR + + + + + + + +
+ + + + + +
+ 0; + if ($check_event) { + while ($row = mysqli_fetch_assoc($data)) { + ?> +

PROFILE DETAILS

+
+
+
+ + + + + + + + + + + + + + + + + +
+ +
+
+ + No profile details found.

"; + } + ?> + + + + diff --git a/adminProfile2.php b/adminProfile2.php new file mode 100644 index 0000000..cbd30eb --- /dev/null +++ b/adminProfile2.php @@ -0,0 +1,30 @@ +alert('Updated is successfull')"; + $_SESSION['AccID'] = $ID; + echo ""; + exit(); + } else { + echo ""; + echo ""; + } + +} +?> diff --git a/adminmenu.php b/adminmenu.php new file mode 100644 index 0000000..56b6281 --- /dev/null +++ b/adminmenu.php @@ -0,0 +1,133 @@ + + + + + + + + Admin | UITM BAZAAR + + + + + + +
+ + + +
+
+
+ + +
+
+

Homepage Management

+

Hi, Admin please kindly proceed or approve order that in your queue. You can upload some events for promote it to other users

+

+ +
+
+ Admin +
+
+
+
+
+
+ Report +

Report

+
+
+ List +

List

+
+
+ Feedback +

Feedback

+
+
+ Order +

Order

+
+
+ Event +

Event

+
+
+ Profile +

+ Acc

+
+
+
+
+
+
+ + + + diff --git a/approval.php b/approval.php new file mode 100644 index 0000000..acf9eda --- /dev/null +++ b/approval.php @@ -0,0 +1,216 @@ +prepare($sql); + $stmt->bind_param("s", $orderID); + $stmt->execute(); + $successMessage = "Order(s) had been Approved!"; + } elseif (isset($_POST['reject'])) { + $sql = "UPDATE orders SET Approve_Status = 0, Checks_Status = 1 WHERE OrderID = ?"; + $stmt = $conn->prepare($sql); + $stmt->bind_param("s", $orderID); + $stmt->execute(); + $successMessage = "Order(s) had been rejected!"; + } + } + // Redirect after processing all selected checkboxes + echo ""; + echo ""; + exit(); // Exit after redirection + } else { + echo ""; + echo ""; + exit(); + } + } +} + +// Fetch data +$sql = "SELECT * FROM orders WHERE Checks_Status = 0"; +$result = $conn->query($sql); +?> + + + + + + Approval | UITM BAZAAR + + + + + + + + +
+ + + + + +
+
+
+

+ + + + + + +
+

Approval Site

+
+
+ + + + + + + + + + + + + num_rows > 0) { + $no = 1; + while ($row = $result->fetch_assoc()) { + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + $no++; + } + } else { + echo ""; + } + ?> + +
NORENTER IDPLACE NUMBERLicenseDATEAPPROVAL
{$no}{$row['Renter_ID']}{$row['Place_Num']}{$row['License']}{$row['Dates']}
No Order Yet
+
+ + +
+
+
+
+ + + + + + diff --git a/connection.php b/connection.php new file mode 100644 index 0000000..db16d30 --- /dev/null +++ b/connection.php @@ -0,0 +1,18 @@ +connect_error); +} +?> diff --git a/event.css b/event.css new file mode 100644 index 0000000..23f542f --- /dev/null +++ b/event.css @@ -0,0 +1,228 @@ +/* Styling the body */ +body { + margin: 0; + padding: 0; + font-family: Arial, sans-serif; + background-color: #f4f4f4; +} + +/* Styling section, giving background image and dimensions */ +section { + width: 100%; + min-height: 100vh; + background: #161616; + background-size: cover; + display: flex; + flex-wrap: wrap; +} + +/* Styling the left floating section */ +section .leftBox { + width: 100%; + max-width: 600px; + padding: 20px; + box-sizing: border-box; + position: sticky; + flex: 1; +} + +/* Styling the background of left floating section */ +section .leftBox .content { + color: #fff; + background: rgba(0, 0, 0, 0.5); + padding: 20px; + border-radius: 8px; + transition: 0.5s; +} + +/* Styling the hover effect of left floating section */ +section .leftBox .content:hover { + background: #e91e63; + transition: ease-in-out 2.0s; +} + +/* Styling the header of left floating section */ +section .leftBox .content h1 { + margin: 0; + padding: 0; + font-size: 50px; + text-transform: uppercase; +} + +/* Styling the paragraph of left floating section */ +section .leftBox .content p { + margin: 10px 0 0; + padding: 0; + text-transform: uppercase; + font-size: 20px; +} + +/* Styling the events section */ +section .events { + width: 100%; + padding: 20px; + box-sizing: border-box; + flex: 2; +} + +/* Styling the event list */ +section .events ul { + padding: 0; + list-style: none; +} + +/* Styling the individual event */ +section .events ul li { + background: #fff; + margin-bottom: 20px; + border-radius: 8px; + overflow: hidden; + display: flex; + flex-wrap: wrap; +} + +/* Styling the time class of events section */ +section .events ul li .time { + background: #262626; + color: #fff; + padding: 20px; + box-sizing: border-box; + text-align: center; + flex: 1 1 150px; + transition: 0.5s; +} + +/* Styling the hover effect of events section */ +section .events ul li:hover .time { + background: #e91e63; +} + +/* Styling the header of time class of events section */ +section .events ul li .time h2 { + margin: 0; + padding: 0; + font-size: 24px; +} + +/* Styling the details class of events section */ +section .events ul li .details { + padding: 20px; + background: #161616; + color: #fff; + box-sizing: border-box; + flex: 3 1 300px; +} + +/* Styling the header of the details class of events section */ +section .events ul li .details h3 { + margin: 0; + padding: 0; + font-size: 22px; + + +} + +/* Styling the paragraph of details class of events section */ +section .events ul li .details p { + margin: 10px 0 0; + padding: 0; + font-size: 16px; +} + +/* Styling the links of details class of events section */ +section .events ul li .details a { + display: inline-block; + text-decoration: none; + padding: 10px 15px; + border: 1.5px solid #262626; + margin-top: 8px; + font-size: 18px; + transition: 0.5s; +} + +/* Styling the details class's hover effect */ +section .events ul li .details a:hover { + background: #e91e63; + color: #fff; + border-color: #e91e63; +} + + +button[type="submit"] { + background-color: #6a0dad; + color: white; + padding: 10px 20px; + border: none; + border-radius: 5px; + font-size: 16px; + cursor: pointer; + transition: background-color 0.3s, box-shadow 0.3s; +} + +button[type="submit"]:hover { + background-color: #551a8b; + box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2); +} + + +textarea { + width: 100%; + height: 100px; + padding: 10px; + border: 1px solid #d1d1d1; + border-radius: 5px; + font-size: 16px; + resize: vertical; + box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1); + transition: border-color 0.3s; +} + +textarea:focus { + border-color: #6a0dad; + outline: none; + box-shadow: 0 0 5px rgba(106, 13, 173, 0.5); +} + +input { + width: 50%; + height: 30px; + padding: 10px; + border: 1px solid #d1d1d1; + border-radius: 5px; + font-size: 16px; + resize: vertical; + box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1); + transition: border-color 0.3s; +} + +input:focus { + border-color: #6a0dad; + outline: none; + box-shadow: 0 0 5px rgba(106, 13, 173, 0.5); + background-color: #6a0dad; + color: white; + padding: 10px 20px; + border: none; + border-radius: 5px; + font-size: 16px; + cursor: pointer; + transition: background-color 0.3s, box-shadow 0.3s; +} + +a.delete-button { + display: inline-block; + background-color: #6a0dad; + color: white; + padding: 10px 20px; + border: none; + border-radius: 5px; + font-size: 16px; + cursor: pointer; + text-decoration: none; + transition: background-color 0.3s, box-shadow 0.3s; +} + +a.delete-button:hover { + background-color: #551a8b; + box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2); +} \ No newline at end of file diff --git a/forgot.html b/forgot.html new file mode 100644 index 0000000..0934679 --- /dev/null +++ b/forgot.html @@ -0,0 +1,30 @@ + + + + + + + + + Forgot | UITM BAZAAR + + + + +
+
+
+

Forgot Password

+
+ + + Return to Login Page? + +
+
+
+ + + + + \ No newline at end of file diff --git a/forgot.php b/forgot.php new file mode 100644 index 0000000..931992d --- /dev/null +++ b/forgot.php @@ -0,0 +1,41 @@ +prepare($sql); + $stmt->bind_param("s", $AccID); + $stmt->execute(); + + // Get the result set + $result = $stmt->get_result(); + + // Check if there's a matching user + if ($result->num_rows > 0) { + // Update password if user exists + $update_sql = "UPDATE renter SET Renter_Pass = ? WHERE Renter_ID = ?"; + $update_stmt = $conn->prepare($update_sql); + $update_stmt->bind_param("ss", $AccNPass, $AccID); + + if ($update_stmt->execute()) { + // Password updated successfully + echo ""; + echo ""; + exit(); + } + } + else { + echo ""; + echo ""; + exit(); + } +} +?> diff --git a/login.html b/login.html new file mode 100644 index 0000000..d17d7f9 --- /dev/null +++ b/login.html @@ -0,0 +1,40 @@ +xam + + + + + + + + Login | UITM BAZAAR + + + + +
+ +
+
+
+

Hello, Friend!

+

Register with your personal details to use all site features

+ +
+
+
+
+ + + + + + diff --git a/login.php b/login.php new file mode 100644 index 0000000..f52c458 --- /dev/null +++ b/login.php @@ -0,0 +1,34 @@ +alert('ID Or Password is incorrect')"; + echo ""; + exit(); + } else { + $_SESSION['AccAdminID'] = $AccAdminID; + echo ""; + exit(); + } + } else { + $_SESSION['AccID'] = $AccID; + echo ""; + exit(); + } +} +?> diff --git a/logout.php b/logout.php new file mode 100644 index 0000000..6b1aba8 --- /dev/null +++ b/logout.php @@ -0,0 +1,8 @@ + \ No newline at end of file diff --git a/logoutAdmin.php b/logoutAdmin.php new file mode 100644 index 0000000..2e71ac7 --- /dev/null +++ b/logoutAdmin.php @@ -0,0 +1,8 @@ + \ No newline at end of file diff --git a/lsf.css b/lsf.css new file mode 100644 index 0000000..d4b4a1b --- /dev/null +++ b/lsf.css @@ -0,0 +1,225 @@ +@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;500;600;700&display=swap'); + +*{ + margin: 0; + padding: 0; + box-sizing: border-box; + font-family: 'Montserrat', sans-serif; +} + +body{ + background-image: url('pic/markets.png'); + background-size: cover; + display: flex; + align-items: center; + justify-content: center; + flex-direction: column; + height: 100vh; +} + +.container{ + background: transparent; + background-color: #fff; + border-radius: 30px; + box-shadow: 0 5px 15px rgba(0, 0, 0, 0.35); + position: relative; + overflow: hidden; + width: 768px; + max-width: 100%; + min-height: 480px; + opacity: .9; + backdrop-filter: blur(70px); +} + +.container p{ + font-size: 14px; + line-height: 20px; + letter-spacing: 0.3px; + margin: 20px 0; +} + +.container a{ + opacity: .9; + color: #333; + font-size: 13px; + text-decoration: none; + margin: 15px 0 10px; +} + +.container button{ + background-color: #512da8; + color: #fff; + font-size: 12px; + padding: 10px 45px; + border: 1px solid transparent; + border-radius: 8px; + font-weight: 600; + letter-spacing: 0.5px; + text-transform: uppercase; + margin-top: 10px; + cursor: pointer; +} + +.container button.hidden{ + background-color: transparent; + border-color: #fff; +} + +.container form{ + background-color: #fff; + display: flex; + margin-left: 80px; + justify-content: center; + flex-direction: column; + height: 100%; +} + +.container input{ + background-color: #eee; + border: none; + margin: 8px 0; + padding: 10px 15px; + font-size: 13px; + border-radius: 8px; + width: 100%; + outline: none; +} + +.containers{ + background: transparent; + background-color: #fff; + border-radius: 30px; + box-shadow: 0 5px 15px rgba(0, 0, 0, 0.35); + position: relative; + overflow: hidden; + width: 400px; + max-width: 100%; + min-height: 330px; + opacity: .9; + backdrop-filter: blur(70px); +} + +.containers p{ + font-size: 14px; + line-height: 20px; + letter-spacing: 0.3px; + margin: 20px 0; +} + +.containers span{ + font-size: 12px; +} + +.containers a{ + opacity: .9; + color: #333; + font-size: 13px; + text-decoration: none; + margin: 15px 0 10px; +} + +.containers button{ + background-color: #512da8; + color: #fff; + font-size: 12px; + padding: 10px 45px; + border: 1px solid transparent; + border-radius: 8px; + font-weight: 600; + letter-spacing: 0.5px; + text-transform: uppercase; + margin-top: 10px; + cursor: pointer; +} + +.containers button .hidden{ + background-color: transparent; + border-color: #fff; +} + +.containers form{ + background-color: #fff; + display: flex; + align-items: center; + justify-content: center; + flex-direction: column; + padding: 0 40px; + height: 100%; +} + +.containers input{ + background-color: #eee; + border: none; + margin: 8px 0; + padding: 10px 15px; + font-size: 13px; + border-radius: 8px; + width: 250px; + outline: none; +} + +.form-container{ + position: absolute; + top: 0; + height: 100%; +} + +.sign-in{ + left: 0; + width: 50%; + z-index: 2; +} + +.forgot{ + position: center; + width: 100%; +} + + +.sign-up{ + left: 0; + width: 50%; + opacity: 0; + z-index: 1; +} + +.toggle-container{ + position: absolute; + top: 0; + left: 60%; + width: 40%; + height: 100%; + overflow: hidden; + border-radius: 150px 0 0 100px; + z-index: 1000; +} + +.toggle{ + background-color: #512da8; + height: 100%; + background: linear-gradient(to right, #5c6bc0, #512da8); + color: #fff; + position: relative; + left: -100%; + height: 100%; + width: 200%; + transform: translateX(0); +} + +.toggle-panel{ + position: absolute; + width: 50%; + height: 100%; + display: flex; + align-items: center; + justify-content: center; + flex-direction: column; + padding: 0 30px; + text-align: center; + top: 0; + transform: translateX(0); +} +.toggle-right{ + right: 0; + transform: translateX(0); +} diff --git a/newAdmin.php b/newAdmin.php new file mode 100644 index 0000000..31a224d --- /dev/null +++ b/newAdmin.php @@ -0,0 +1,192 @@ + + + + + + + + + New Acc Admin | UITM BAZAAR + + + + + + + +
+ + + + + +
+

CREATE NEW ADMIN ACCOUNT

+
+
+
+ + + + + + + + + + + + + + + + + +
+ +
+
+ + + diff --git a/newAdmin2.php b/newAdmin2.php new file mode 100644 index 0000000..e8143ad --- /dev/null +++ b/newAdmin2.php @@ -0,0 +1,27 @@ +alert('Sign In Successfull')"; + } else { + echo ""; + } + echo ""; + exit(); + + mysqli_close($conn); // Close connection +} +?> diff --git a/payment.php b/payment.php new file mode 100644 index 0000000..6e26146 --- /dev/null +++ b/payment.php @@ -0,0 +1,270 @@ +prepare($sql); + $stmt->bind_param("s", $orderID); + $stmt->execute(); + } + echo ""; + echo ""; + exit(); + } +} +?> + + + + Payment | UITM BAZAAR + + + + + + + +
+ + + + + +
+
+
+

+ + + + + + +

PAYMENT SITE

+ + + + + + + + + + + + + + + num_rows > 0) { + $no = 1; + while ($row = $result_places->fetch_assoc()) { + $isApproved = $row['Approve_Status'] == 1; + $isChecks = $row['Checks_Status'] == 0; + $isPay = $row['Pay_Status'] == 1; + if ($isApproved OR $isChecks) { + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + $no++; + } else { + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + $no++; + } + } + } else { + echo ""; + } + ?> + + +
NORENTER IDPLACE NUMBERPEDDLING LICENSEDATEAPPROVALACTIONPAY
{$no}{$row['Renter_ID']}{$row['Place_Num']}{$row['License']}{$row['Dates']}" . ($row['Approve_Status'] ? '' : 'Pending') . ""; + echo "
"; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo "
"; + echo "
"; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo "
"; + echo "
" . ($row['Pay_Status'] ? '' : '❌') . "
{$no}{$row['Renter_ID']}{$row['Place_Num']}{$row['License']}{$row['Dates']}" . ($row['Approve_Status'] ? '' : '❌') . ""; + echo "
"; + echo ""; + echo ""; + echo "
"; + echo "
" . ($row['Pay_Status'] ? '' : 'Reject') . "
No Order Being Made
+
+
+

YOU HAVE TO WAIT FOR ADMIN TO APPROVE YOUR ORDER, IF ✔ IN APPROVAL THAT MEANS YOUR ORDER HAD BEEN APPROVED, IF ❌ IN APPROVAL THAT MEANS YOUR ORDER HAD BEEN REJECTED

+ + + + + diff --git a/payment2.php b/payment2.php new file mode 100644 index 0000000..af1bede --- /dev/null +++ b/payment2.php @@ -0,0 +1,175 @@ + + + + + + User Website + + + + + + + +
+ + + + + +
+
+
+

+ + + + + + +

Payment Site

+
+ + + + + + + + + + + + + + + + +
+ + + +
+
+
+
+
+
+
+ BACK +
+
+
+ + + + diff --git a/pic/Invoice.pdf b/pic/Invoice.pdf new file mode 100644 index 0000000..61f1e40 Binary files /dev/null and b/pic/Invoice.pdf differ diff --git a/pic/admin.jpg b/pic/admin.jpg new file mode 100644 index 0000000..6edf429 Binary files /dev/null and b/pic/admin.jpg differ diff --git a/pic/admin.png b/pic/admin.png new file mode 100644 index 0000000..5036077 Binary files /dev/null and b/pic/admin.png differ diff --git a/pic/approv.jpeg b/pic/approv.jpeg new file mode 100644 index 0000000..34e34a1 Binary files /dev/null and b/pic/approv.jpeg differ diff --git a/pic/approval.png b/pic/approval.png new file mode 100644 index 0000000..d8f5547 Binary files /dev/null and b/pic/approval.png differ diff --git a/pic/approve.jpg b/pic/approve.jpg new file mode 100644 index 0000000..4d57b7e Binary files /dev/null and b/pic/approve.jpg differ diff --git a/pic/back.jpg b/pic/back.jpg new file mode 100644 index 0000000..e2f714c Binary files /dev/null and b/pic/back.jpg differ diff --git a/pic/debit.png b/pic/debit.png new file mode 100644 index 0000000..22950cb Binary files /dev/null and b/pic/debit.png differ diff --git a/pic/event.png b/pic/event.png new file mode 100644 index 0000000..50f8a60 Binary files /dev/null and b/pic/event.png differ diff --git a/pic/events.png b/pic/events.png new file mode 100644 index 0000000..39f814a Binary files /dev/null and b/pic/events.png differ diff --git a/pic/feedback.jpg b/pic/feedback.jpg new file mode 100644 index 0000000..951d05a Binary files /dev/null and b/pic/feedback.jpg differ diff --git a/pic/feedback.png b/pic/feedback.png new file mode 100644 index 0000000..3fa876e Binary files /dev/null and b/pic/feedback.png differ diff --git a/pic/home.png b/pic/home.png new file mode 100644 index 0000000..1fc9d43 Binary files /dev/null and b/pic/home.png differ diff --git a/pic/list.jpg b/pic/list.jpg new file mode 100644 index 0000000..85d7005 Binary files /dev/null and b/pic/list.jpg differ diff --git a/pic/markets.png b/pic/markets.png new file mode 100644 index 0000000..a36b3d1 Binary files /dev/null and b/pic/markets.png differ diff --git a/pic/onlinebank.png b/pic/onlinebank.png new file mode 100644 index 0000000..f2f5760 Binary files /dev/null and b/pic/onlinebank.png differ diff --git a/pic/payment.jpg b/pic/payment.jpg new file mode 100644 index 0000000..a3ee9ce Binary files /dev/null and b/pic/payment.jpg differ diff --git a/pic/plan.jpeg b/pic/plan.jpeg new file mode 100644 index 0000000..c6eaeaa Binary files /dev/null and b/pic/plan.jpeg differ diff --git a/pic/postevent.jpg b/pic/postevent.jpg new file mode 100644 index 0000000..6f31ed5 Binary files /dev/null and b/pic/postevent.jpg differ diff --git a/pic/profile.avif b/pic/profile.avif new file mode 100644 index 0000000..47669fc Binary files /dev/null and b/pic/profile.avif differ diff --git a/pic/profile.jpg b/pic/profile.jpg new file mode 100644 index 0000000..14a4675 Binary files /dev/null and b/pic/profile.jpg differ diff --git a/pic/profile2.png b/pic/profile2.png new file mode 100644 index 0000000..859d3f9 Binary files /dev/null and b/pic/profile2.png differ diff --git a/pic/profiles.png b/pic/profiles.png new file mode 100644 index 0000000..7656b51 Binary files /dev/null and b/pic/profiles.png differ diff --git a/pic/receipt.png b/pic/receipt.png new file mode 100644 index 0000000..33c641f Binary files /dev/null and b/pic/receipt.png differ diff --git a/pic/rent.png b/pic/rent.png new file mode 100644 index 0000000..5408de3 Binary files /dev/null and b/pic/rent.png differ diff --git a/pic/report.jpg b/pic/report.jpg new file mode 100644 index 0000000..e32cb13 Binary files /dev/null and b/pic/report.jpg differ diff --git a/pic/uitm.png b/pic/uitm.png new file mode 100644 index 0000000..0214945 Binary files /dev/null and b/pic/uitm.png differ diff --git a/postEvents.php b/postEvents.php new file mode 100644 index 0000000..d62babb --- /dev/null +++ b/postEvents.php @@ -0,0 +1,192 @@ + 0); // Repeat until a unique ID is found + + return $EventID; +} + +// Handle form submission for posting events +if (isset($_POST['submit'])) { + // Capture values from HTML form + $Location = $_POST['Location']; + $Description = $_POST['description']; + $Date = $_POST['date']; + + $AdminID = $AccID; + // Generate a unique Event ID + $EventID = generateUniqueId($conn); + + // Prepare SQL query + $sql = "INSERT INTO event (Event_ID, Admin_ID, Location, Description, Dates) VALUES ('$EventID', '$AdminID', '$Location', '$Description', '$Date')"; + + // Execute the query + $column = mysqli_query($conn, $sql) or die ("Error: " . mysqli_error($conn)); + + if ($column != 0) { + header('Location: postEvents.php'); + exit(); + } +} + +// Handle event deletion +if (isset($_GET['delete'])) { + $eventIdToDelete = $_GET['delete']; + $deleteSql = "DELETE FROM event WHERE Event_ID = '$eventIdToDelete'"; + mysqli_query($conn, $deleteSql) or die("Error: " . mysqli_error($conn)); + header('Location: postEvents.php'); + exit(); +} + +// Fetch event data +$sql = "SELECT * FROM event"; +$data = mysqli_query($conn, $sql); +$events = []; + +if (mysqli_num_rows($data) > 0) { + while ($row = mysqli_fetch_assoc($data)) { + $events[] = $row; + } + + // Custom sort function to sort events by date + usort($events, function($a, $b) { + $dateA = strtotime($a['Dates']); + $dateB = strtotime($b['Dates']); + return $dateA - $dateB; + }); +} +$uniqueEventID = generateUniqueId($conn); +mysqli_close($conn); // Data security purposes + +?> + + + + + + + + + + + Event | UITM BAZAAR + + + +
+ + + +
+ +
+
+
+

Post a New Event

+
+

+ + +

+

+ + +

+

+ + +

+

+ + +

+

+ +

+
+
+
+ +
+
    + +
  • +
    +

    +
    +
    +

    +

    + Delete +
    +
  • + +
+
+
+ + + \ No newline at end of file diff --git a/postEvents2.php b/postEvents2.php new file mode 100644 index 0000000..d5a3750 --- /dev/null +++ b/postEvents2.php @@ -0,0 +1,30 @@ + diff --git a/proof.php b/proof.php new file mode 100644 index 0000000..98dc80a --- /dev/null +++ b/proof.php @@ -0,0 +1,281 @@ + + + + + + Proof | UITM BAZAAR + + + + + + + +
+ + + + + +
+ +
+
+

+ Fill In Your Details

+
+
+ +
+ + + + + + + + + + + + + + + + + + + + +
Category Type : + +
Dates :
Peddling License :
+
+
+
+ BACK + +
+ +

+ +
+ + + + + + +
+ + + + + + + diff --git a/proof2.php b/proof2.php new file mode 100644 index 0000000..53d4166 --- /dev/null +++ b/proof2.php @@ -0,0 +1,75 @@ +prepare("SELECT COUNT(*) FROM orders WHERE OrderID = ?"); + $stmt->bind_param("s", $newOrderID); + $stmt->execute(); + $stmt->bind_result($count); + $stmt->fetch(); + $stmt->close(); + return $count > 0; + } + + do { + $newOrderID = generateOrderID(); + } while (isOrderIDExists($conn, $newOrderID)); + + // Check if the combination of Place_Num and Dates already exists + $checkSql = "SELECT * FROM orders WHERE Place_Num = '$Place' AND Dates = '$date'"; + $checkResult = mysqli_query($conn, $checkSql); + + if(mysqli_num_rows($checkResult) > 0) { + // Combination already exists, show error message + echo ""; + echo ""; + exit(); + } + else{ + // Insert into user table + $sql = "INSERT INTO orders (OrderID, Place_Num, Renter_ID, Admin_ID, License, Dates, Category_Type, Approve_Status, Checks_Status, Pay_Status) VALUES ('".$newOrderID."','".$Place."', '".$renterId."', '".$adminId."', '".$license."', '".$date."', '".$category."','".$approve."','".$check."','".$pay."')"; + + $column = mysqli_query($conn, $sql); + + if($column != 0) { + echo ""; + echo ""; + exit(); + } + else { + echo ""; + echo ""; + exit(); + } + } + + + mysqli_close($conn); //data security purposes + } +?> + + diff --git a/receipt.php b/receipt.php new file mode 100644 index 0000000..fe982a1 --- /dev/null +++ b/receipt.php @@ -0,0 +1,299 @@ +query($sql) === TRUE) { + $paymentId = $Transaction_No; + $sql = "UPDATE orders SET Pay_Status = 1 WHERE OrderID = '$OrderID'"; + + $result = mysqli_query($conn, $sql); +} else { + echo "Error: " . $sql . "
" . $conn->error; + exit(); +} + +// Fetching the user's name for display +$sql = "SELECT Renter_Name FROM renter WHERE Renter_ID = '$Renter_ID'"; +$result = mysqli_query($conn, $sql); +$user = mysqli_fetch_assoc($result); +$userName = $user['Renter_Name']; + +$conn->close(); +?> + + + + + + + + + Receipt | UITM BAZAAR + + + + + +
+ + + + + +
+
+
+ + + + + +

Invoice

+
+
+
+ + +
+
+ + +
+
+ + +
+
+ + +
+
+ + RM +
+
+ + +
+
+ + + + + + + + + + + + + + + + + + + +
ItemDescriptionQuantityPriceTotal
Place RentalRental of place number 1RMRM
+
+ + +
+ +
+
+ + + + + + +
+ + + diff --git a/rentPlace.php b/rentPlace.php new file mode 100644 index 0000000..048c242 --- /dev/null +++ b/rentPlace.php @@ -0,0 +1,270 @@ + + + + + + Rent | UITM BAZAAR + + + + + + + + + +
+ + + +
+ +
+
+

+ Please select your place / tapak +
+
+
+
1
+
2
+
3
+
4
+
5
+
+
+
6
+
7
+
8
+
9
+
10
+
+
+
11
+
12
+
13
+
14
+
15
+
+
+
+
+ + +
+
+ +
+ + + + + + +
+ + + + diff --git a/renterList.php b/renterList.php new file mode 100644 index 0000000..e8d4390 --- /dev/null +++ b/renterList.php @@ -0,0 +1,161 @@ + + + + + RentList | UITM BAZAAR + + + + + + + +
+ + + + + +
+
+
+

+ + + + + + +

RENTER DATABASE

+ + + + + + + + + + + + connect_error) { + die("Connection failed: " . $conn->connect_error); + } + + $sql = "SELECT renter.Renter_ID, renter.Renter_Name, renter.Renter_PhoneNum, renter.Renter_Age, renter.Renter_Email, orders.Place_Num, orders.Dates FROM renter INNER JOIN orders ON renter.Renter_ID = orders.Renter_ID ORDER BY orders.dates"; + $result = $conn->query($sql); + + if ($result->num_rows > 0) { + while ($row = $result->fetch_assoc()) { + echo ""; + + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + + echo ""; + } + } else { + echo ""; + } + + $conn->close(); + ?> + +
RENTER IDRENTER NAMEPHONE NUMBERAGEEMAILPLACE NUMBERDATES
" . $row["Renter_ID"] . "" . $row["Renter_Name"] . "" . $row["Renter_PhoneNum"] . "" . $row["Renter_Age"] . "" . $row["Renter_Email"] . "" . $row["Place_Num"] . "" . $row["Dates"] . "
No results found
+
+
+
+ +
+ + + \ No newline at end of file diff --git a/renterProfile.php b/renterProfile.php new file mode 100644 index 0000000..a9775a4 --- /dev/null +++ b/renterProfile.php @@ -0,0 +1,253 @@ + + + + + + + + + Profile | UITM BAZAAR + + + + + + + + Profile's | UITM BAZAAR +
+ + + + + +
+ + 0; + if ($check_event) { + while ($row = mysqli_fetch_assoc($data)) { + ?> +

PROFILE DETAILS

+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+
+ + No profile details found.

"; + } + ?> +
+
+ + + + + + +
+ + + diff --git a/renterProfile2.php b/renterProfile2.php new file mode 100644 index 0000000..170d997 --- /dev/null +++ b/renterProfile2.php @@ -0,0 +1,32 @@ +alert('Data Had Been Saved')"; + echo ""; + exit(); + } else { + echo ""; + echo ""; + exit(); + } + + mysqli_close($conn); // Close connection +} +?> diff --git a/rentermenu.php b/rentermenu.php new file mode 100644 index 0000000..02cf08e --- /dev/null +++ b/rentermenu.php @@ -0,0 +1,169 @@ + + + + + + + Renter | UITM BAZAAR + + + + + + +
+ + + +
+
+
+ + +
+
+



+

Renter's Site Page

+

Hi, Welcome to our UiTM Rent Night Market Website. We offer a comprehensive market rent system designed to streamline your rental needs. Whether you're looking to rent a place, manage your profile, or send feedback, we have got you covered.

+ +

+ MORE + + +
+

+
+ UITM +
+
+
+
+
+
+ +

Rent Place

+
+
+ +

Event

+
+
+ +

Payment

+
+
+ +

Feedback

+
+
+ +

Profile

+
+
+
+
+
+
+
+ + + + + + +
+ + + + diff --git a/report.php b/report.php new file mode 100644 index 0000000..d2cdaab --- /dev/null +++ b/report.php @@ -0,0 +1,255 @@ +connect_error) { + die("Connection failed: " . $conn->connect_error); +} + +// Fetch data for Bar Chart (order table) +$sql1 = "SELECT Category_Type, COUNT(Category_Type) as Quantity FROM orders GROUP BY Category_Type"; + +$result1 = $conn->query($sql1); + +$labels1 = []; +$data1 = []; + +if ($result1->num_rows > 0) { + while($row = $result1->fetch_assoc()) { + $labels1[] = $row["Category_Type"]; + $data1[] = $row["Quantity"]; + } +} + +// Fetch data for Pie Chart (report table) +$sql2 = "SELECT Department, COUNT(Department) as Quantity FROM report GROUP BY Department"; +$result2 = $conn->query($sql2); + +$labels2 = []; +$data2 = []; + +if ($result2->num_rows > 0) { + while($row = $result2->fetch_assoc()) { + $labels2[] = $row["Department"]; + $data2[] = $row["Quantity"]; + } +} + +// Close MySQL connection +$conn->close(); +?> + + + + + Report | UITM BAZAAR + + + + + + + + + +
+ + + + + +
+ +
+
+ +
+
+ +
+
+ +
+ +
+ + + + + diff --git a/sawEvents.php b/sawEvents.php new file mode 100644 index 0000000..f38272b --- /dev/null +++ b/sawEvents.php @@ -0,0 +1,163 @@ + + + + + + Events | UITM BAZAAR + + + Available Events + + + + + + + +
+ + + + + +
+
+
+
+

Upcoming Events

+

Check out the upcoming events:

+
+
+ +
+
    + 0; + + // Fetch events and sort by date + $events = []; + if ($check_event) { + while ($row = mysqli_fetch_assoc($data)) { + $events[] = $row; + } + + // Custom sort function to sort events by date + usort($events, function($a, $b) { + $dateA = strtotime($a['Dates']); + $dateB = strtotime($b['Dates']); + return $dateA - $dateB; + }); + + foreach ($events as $event) { + ?> +
  • +
    +

    +
    +
    +

    +

    +
    +
  • + No upcoming events."; + } + ?> +
+
+
+
+ + + + + + +
+ + + \ No newline at end of file diff --git a/script.js b/script.js new file mode 100644 index 0000000..900eae6 --- /dev/null +++ b/script.js @@ -0,0 +1,29 @@ + function showPopup() { + document.getElementById('popup').style.display = 'block'; + } + + // JavaScript function to close popup + function closePopup() { + document.getElementById('popup').style.display = 'none'; + } + + // Call the showPopup function when the page loads + window.onload = function() { + closePopup(); + }; + + function showPopup2() { + document.getElementById('popup2').style.display = 'block'; + } + + // JavaScript function to close popup + function closePopup2() { + document.getElementById('popup2').style.display = 'none'; + } + + // Call the showPopup function when the page loads + window.onload = function() { + closePopup2(); + }; + + \ No newline at end of file diff --git a/selectReceipt.php b/selectReceipt.php new file mode 100644 index 0000000..a69befa --- /dev/null +++ b/selectReceipt.php @@ -0,0 +1,230 @@ + + + + + Select Receipt | UITM BAZAAR + + + + + + + +
+ + + + + +
+
+
+

+ + + + + + +

RECEIPT

+ + + + + + + + + + + + + + num_rows > 0) { + $no = 1; + while ($row = $result_places->fetch_assoc()) { + $isPay = $row['Pay_Status'] == 1; + if ($isPay) { + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + $no++; + } + } + } else { + echo ""; + } + ?> + +
NOORDER IDPLACE NUMBERPAYMENT TYPEPAY DATEPAY STATUSReceipt
{$no}{$row['OrderID']}{$row['Place_Num']}{$row['Pay_Type']}{$row['Pay_Date']}" . ($isPay ? '' : '❌') . ""; + echo "
"; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo "
"; + echo "
No Payment Being Made
+
+
+
+ + + + + + +
+ + + + diff --git a/sentFeedback.php b/sentFeedback.php new file mode 100644 index 0000000..43bece0 --- /dev/null +++ b/sentFeedback.php @@ -0,0 +1,261 @@ + + + + + + + + Feedback | UITM BAZAAR + + + + + + + + +
+ Feedback | UITM BAZAAR + + + + + +
+ +
+

+
+

FEEDBACK


+ +
+ +
+
+ We glad that you give us feedback, so we can improve ! + + + + + + + + + + + + + + + + + + +
Renter ID :
Department : + +
Feedback:
+ + +
+
+
+ + +

+
+
+ + + + + + +
+ + + \ No newline at end of file diff --git a/sentFeedback2.php b/sentFeedback2.php new file mode 100644 index 0000000..79b8b26 --- /dev/null +++ b/sentFeedback2.php @@ -0,0 +1,42 @@ + 0); // Repeat until a unique ID is found + + return $reportId; +} + +if (isset($_POST['submit'])) { + // Capture values from HTML form + $rentid = $_POST['renterid']; + $dept = $_POST['department']; + $fback = $_POST['feedback']; + + // Generate a unique Report ID + $repid = generateUniqueId($conn); + + // Insert into report table + $sql = "INSERT INTO report (Report_ID, Renter_ID, Department, Feedback) + VALUES ('$repid', '$rentid', '$dept', '$fback')"; + + if (mysqli_query($conn, $sql)) { + echo ""; + echo ""; + exit(); + } else { + echo "Error: " . mysqli_error($conn); + echo ""; + exit(); + } + mysqli_close($conn); // Close the database connection +} +?> diff --git a/signin.html b/signin.html new file mode 100644 index 0000000..092d64c --- /dev/null +++ b/signin.html @@ -0,0 +1,41 @@ + + + + + + + + + Sign In | UITM BAZAAR + + + + +
+ +
+
+
+

Welcome Back!

+

Enter your personal details to use all site features

+ +
+
+
+
+ + + + + \ No newline at end of file diff --git a/signin.php b/signin.php new file mode 100644 index 0000000..a08967e --- /dev/null +++ b/signin.php @@ -0,0 +1,29 @@ +alert('Sign In Successfull')"; + echo ""; + } else { + echo ""; + echo ""; + } + + mysqli_close($conn); // Close connection +} +?> diff --git a/style.css b/style.css new file mode 100644 index 0000000..2e0fdf3 --- /dev/null +++ b/style.css @@ -0,0 +1,401 @@ +* { + margin: 0; + padding: 0; + box-sizing: border-box; + text-decoration: none; + border: none; + outline: none; + scroll-behavior: smooth; + font-family: "Poppins", sans-serif; +} +:root { + --bg-color: rgb(15, 15, 15); + --second-bg-color: #161616; + --text-color: white; + --main-color: purple; +} +html { + font-size: 62.5%; + overflow-x: hidden; +} +body { + background: var(--bg-color); + color: var(--text-color); +} +.header { + position: fixed; + top: 0; + left: 0; + width: 100%; + padding: 3rem 9%; + background: rgba(0, 0, 0, 0.7); + backdrop-filter: blur(10px); + display: flex; + justify-content: space-between; + align-items: center; + z-index: 100; +} +.logo { + font-size: 3rem; + color: var(--text-color); + font-weight: 800; + cursor: pointer; + transition: 0.3s ease-in-out; +} +.logo:hover { + transform: scale(1.1); +} +.navbar a { + font-size: 1.8rem; + color: white; + margin-left: 4rem; + font-weight: 500; + transition: 0.3s ease-in-out; + border-bottom: 3px solid transparent; +} +.navbar a:hover, +.navbar a.active { + color: var(--main-color); + border-bottom: 3px solid var(--main-color); +} +#menu-icon { + font-size: 3rem; + color: var(--main-color); + display: none; +} +section { + min-height: 100vh; + padding: 10rem 9%; +} +.home { + display: flex; + justify-content: center; + align-items: center; + gap: 8rem; +} +span { + color: var(--main-color); +} +.logo span { + color: var(--main-color); +} +.home-content h1 { + font-size: 6rem; + font-weight: 700; + line-height: 1.3; +} +.home-img { + margin-top: 30px; + border-radius: 50%; +} +.home-img img { + position: relative; + border-radius: 50%; + width: 32vw; + box-shadow: 0 0 25px var(--main-color); + cursor: pointer; + transition: 0.4s ease-in-out; +} +.home-img img:hover { + box-shadow: 0 0 50px var(--main-color), 0 0 100px var(--main-color); +} +.home-content p { + font-size: 1.8rem; + font-weight: 500; +} +.social-icons a { + display: inline-flex; + justify-content: center; + align-items: center; + width: 4rem; + height: 4rem; + background: transparent; + border: 0.2rem solid var(--main-color); + font-size: 2rem; + border-radius: 50%; + color: var(--main-color); + margin: 3rem 1.5rem 3rem 0; + transition: 0.3s ease-in-out; +} +.social-icons a:hover { + color: white; + transform: scale(1.3) translateY(-5px); + background-color: var(--main-color); + box-shadow: 0 0 25px var(--main-color); +} +.btn { + display: inline-block; + padding: 1rem 2.8rem; + background: var(--bg-color); + border-radius: 4rem; + font-size: 1.6rem; + color: var(--main-color); + border: 2px solid var(--main-color); + letter-spacing: 0.1rem; + font-weight: 600; + transition: 0.3s ease-in-out; + cursor: pointer; +} +.btn:hover { + transform: scale(1.05); + background: var(--main-color); + color: var(--text-color); + border: 2px solid var(--main-color); + box-shadow: 0 0 25px var(--main-color); +} +.heading { + text-align: center; + font-size: 8rem; +} +.services { + background-color: var(--second-bg-color); +} +.services h2 { + font-size: 40px; + margin-bottom: 3rem; +} +.service-container { + display: flex; + align-items: center; + justify-content: center; + flex-wrap: wrap; + gap: 2rem; +} +.services-box h3 { + font-size: 2.6rem; +} +.services-box p { + font-size: 1.6rem; + margin: 1rem 0 3rem; + font-weight: 500; +} +.services-box .btn { + background-color: transparent; +} +.services-box .btn:hover { + color: var(--main-color); + background-color: black; +} +.boxes { + width: 100%; + max-width: 900px; + height: 500px; + display: flex; + justify-content: center; + align-items: stretch; + gap: 1.25rem; + transition: all 400ms; +} +.card { + margin-top: 100px; + background-color: transparent; + flex: 1; + height: 70%; + transition: all 400ms; + cursor: pointer; +} +.card img { + height: 100%; + width: 100%; +} +.card h2 { + text-align: center; +} +.card:nth-child(odd) { + translate: 0 -20px; +} +.card:nth-child(even) { + translate: 0; +} +.card:hover { + flex: 3; + filter: grayscale(100%); +} +::-webkit-scrollbar { + width: 15px; +} +::-webkit-scrollbar-thumb { + background-color: var(--main-color); +} +::webkit-scrollbar-track { + background-color: var(--bg-color); + width: 50px; +} +.footer { + position: relative; + bottom: 0; + width: 100%; + padding: 40px 0; + background-color: black; +} +.footer .social { + text-align: center; + padding-bottom: 25px; + color: white; +} +.footer .social a { + font-size: 25px; + color: var(--main-color); + width: 42px; + height: 42px; + border: 2px solid var(--main-color); + line-height: 42px; + display: inline-block; + text-align: center; + border-radius: 50%; + margin: 0 10px; + transition: 0.3s ease-in-out; +} +.footer .social a:hover { + transform: scale(1.2) translateY(-10px); + background-color: var(--main-color); + color: var(--text-color); + box-shadow: 0 0 25px var(--main-color); +} +.footer ul { + margin-top: 0; + padding: 0; + font-size: 18px; + line-height: 1.6; + margin-bottom: 0; + text-align: center; +} +.footer ul li a { + color: white; + border-bottom: 3px solid transparent; + transition: 0.3s ease-in-out; +} +.footer ul li a:hover { + border-bottom: 3px solid var(--main-color); +} +.footer ul li { + display: inline-block; + padding: 0 15px; +} +.footer .copyright { + margin-top: 50px; + text-align: center; + font-size: 15px; + color: white; +} +.popup { + display: none; + position: fixed; + top: 50%; + left: 50%; + background-color: var(--second-bg-color); + padding: 3rem 1.8rem; + transform: translate(-50%, -50%); + border-radius: 4rem; + font-size: 1.6rem; + color: var(--main-color); + border: 2px solid var(--main-color); + letter-spacing: 0.1rem; + font-weight: 600; + z-index: 9999; +} +.popup h2 { + text-align: center; +} +.popup p { + text-align: center; +} +.popup img { + width: 4rem; + height: 4rem; + margin-top: -50px; + border-radius: 50%; + box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2); +} +.btns { + display: inline-block; + padding: 1rem 2.8rem; + background: var(--bg-color); + border-radius: 4rem; + font-size: 1.6rem; + color: var(--main-color); + border: 2px solid var(--main-color); + letter-spacing: 0.1rem; + font-weight: 600; + transition: 0.3s ease-in-out; + cursor: pointer; +} +.btns:hover { + transform: scale(1.05); + background: var(--main-color); + color: var(--text-color); + border: 2px solid var(--main-color); + box-shadow: 0 0 25px var(--main-color); +} +.container { + width: 100%; + padding: 2rem; +} +.slider-wrapper { + width: 100%; + background: var(--bg-color); + overflow: hidden; +} +.slider { + display: flex; + aspect-ratio: 16 / 8; + overflow-x: auto; + scroll-snap-type: x mandatory; + scroll-behavior: smooth; + box-shadow: 0 1.5rem 3rem -0.75rem hsla(0, 0%, 0%, 0.25); + border-radius: 0rem; + -ms-overflow-style: none; /* Hide scrollbar IE and Edge */ + scrollbar-width: none; /* Hide scrollbar Firefox */ +} +.slider::-webkit-scrollbar { + display: none; /* Hide scrollbar Chrome, Safari and Opera */ +} +.slider section { + scroll-snap-align: start; + flex: 1 0 100%; + display: flex; + justify-content: center; + align-items: center; +} +.slider-nav { + display: flex; + column-gap: 1rem; + position: absolute; + bottom: 1.25rem; + left: 50%; + transform: translateX(-50%); + z-index: 1; +} +.slider-nav a { + width: 2rem; + height: 2rem; + border-radius: 50%; + background-color: #fff; + opacity: 0.75; + transition: opacity ease 250ms; +} +.slider-nav a:hover { + opacity: 1; +} +.nav-arrow { + position: absolute; + top: 50%; + width: 4rem; + height: 4rem; + background-color: rgba(0, 0, 0, 0.5); + color: white; + font-size: 2rem; + display: flex; + justify-content: center; + align-items: center; + cursor: pointer; + z-index: 10; + border-radius: 50%; + transform: translateY(-50%); +} +.nav-arrow.left { + left: 1rem; +} +.nav-arrow.right { + right: 1rem; +} \ No newline at end of file diff --git a/style2.css b/style2.css new file mode 100644 index 0000000..940e517 --- /dev/null +++ b/style2.css @@ -0,0 +1,125 @@ +/* Importing Google font - Poppins */ +@import url("https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700&display=swap"); + +* { + margin: 0; + padding: 0; + box-sizing: border-box; + font-family: "Poppins", sans-serif; +} + +body { + height: 100vh; + width: 100%; + background-image: url("images/hero-bg.jpg"); + background-position: center; + background-size: cover; +} + +.sidebar { + position: fixed; + top: 0; + left: 0; + width: 100px; + height: 100%; + display: flex; + align-items: center; + flex-direction: column; + background: black; /* Change background color to semi-transparent black */ + z-index: 101; /* Ensure the sidebar appears in front of other elements */ + transition: width 0.3s ease; +} + +.sidebar:hover { + width: 260px; +} + +.sidebar .logo { + color: #fff; /* Change logo color to white */ + display: flex; + align-items: center; + padding: 25px 10px 15px; +} + +.logo img { + width: 43px; + border-radius: 50%; +} + +.logo h2 { + font-size: 2rem; + font-weight: 600; + margin-left: 15px; + display: none; +} + +.sidebar:hover .logo h2 { + display: block; +} + +.sidebar .links { + list-style: none; + margin-top: 20px; + overflow-y: auto; + scrollbar-width: none; + height: calc(100% - 140px); +} + +.sidebar .links::-webkit-scrollbar { + display: none; +} + +.links li { + display: flex; + border-radius: 4px; + align-items: center; +} + +.links li:hover { + cursor: pointer; + background: purple; +} + +.links h4 { + color: #fff; /* Change heading color to white */ + font-size: 20px; + display: none; + margin-bottom: 10px; +} + +.sidebar:hover .links h4 { + display: block; +} + +.links hr { + margin: 10px 8px; + border: 1px solid #fff; /* Change HR color to white */ +} + +.sidebar:hover .links hr { + border-color: transparent; +} + +.links li span i{ + font-size: 30px; + padding: 12px 10px; + color: #fff; /* Change icon color to white */ +} +.links li span img{ + position: center; + border-radius: 50%; + width: 40px; +} + +.links li a { + padding: 10px; + color: #fff; /* Change link color to white */ + display: none; + font-size: 15px; + white-space: nowrap; + text-decoration: none; +} + +.sidebar:hover .links li a { + display: block; +} diff --git a/viewFeedback.php b/viewFeedback.php new file mode 100644 index 0000000..8ffcb08 --- /dev/null +++ b/viewFeedback.php @@ -0,0 +1,233 @@ +query($deleteSql) === TRUE) { + echo ""; + echo ""; + exit(); + } else { + echo ""; + echo ""; + exit(); + } +} +?> + + + + + Feedback | UITM BAZAAR + + + + + + + + +
+ + + + + +
+
+
+

+ + + + + + +

FEEDBACK LIST

+
+
+ + +

+
+
+ + + + + + + + + + connect_error) { + die("Connection failed: " . $conn->connect_error); + } + + $search = isset($_GET['search']) ? $conn->real_escape_string($_GET['search']) : ''; + $sql = "SELECT Report_ID, Renter_ID, Department, Feedback FROM report"; + if ($search) { + $sql .= " WHERE Department LIKE '%$search%'"; + } + + $result = $conn->query($sql); + + if ($result->num_rows > 0) { + while ($row = $result->fetch_assoc()) { + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + } + } else { + echo ""; + } + + $conn->close(); + ?> + +
Report IDRenter IDDepartmentFeedbackAction
" . $row["Report_ID"] . "" . $row["Renter_ID"] . "" . $row["Department"] . "" . $row["Feedback"] . " +
+ + +
+
No results found
+
+
+
+ +
+ + diff --git a/viewFeedback2.php b/viewFeedback2.php new file mode 100644 index 0000000..c92f069 --- /dev/null +++ b/viewFeedback2.php @@ -0,0 +1,26 @@ +Data has been saved"; + + mysqli_close($conn); //data security purposes + } +?> \ No newline at end of file diff --git a/viewReceipt.php b/viewReceipt.php new file mode 100644 index 0000000..9fb6b47 --- /dev/null +++ b/viewReceipt.php @@ -0,0 +1,286 @@ +close(); +?> + + + + + + + + + Receipt | UITM BAZAAR + + + + + +
+ + + + + +
+
+
+ + + + + +

Invoice

+
+
+
+ + +
+
+ + +
+
+ + +
+
+ + +
+
+ + +
+
+ + +
+
+ + +
+
+ + + + + + + + + + + + + + + + + + + +
ItemDescriptionQuantityPriceTotal
Place RentalRental of place number 1RMRM
+
+ + +
+ +
+
+ + + + + + +
+ + +