From bea75b0fe1b9ac962eb1f8108f6dd1ebf95f275c Mon Sep 17 00:00:00 2001 From: Mac Air Date: Mon, 25 Nov 2024 00:30:02 +0000 Subject: [PATCH] Add project files --- admin/.DS_Store | Bin 0 -> 6148 bytes admin/admin_dashboard.php | 171 +++++++++++++++++++++ admin/admin_login.php | 93 +++++++++++ admin/admin_logout.php | 6 + admin/admin_register.php | 89 +++++++++++ admin/includes/db_functions.php | 54 +++++++ admin/includes/jkl_admin_crud.php | 57 +++++++ admin/includes/jkl_admin_functions.php | 24 +++ admin/includes/jkl_notifications.php | 16 ++ admin/jkl_get_notifications.php | 46 ++++++ admin/manage_appointments.php | 156 +++++++++++++++++++ admin/manage_caregivers.php | 107 +++++++++++++ admin/track_caregiver_availability.php | 71 +++++++++ assets/css/jkl_styles.css | 24 +++ assets/images/jkl_caregiver.png | 0 assets/images/jkl_logo.png | 0 assets/images/jkl_patient.png | 0 config/jkl_config.php | 14 ++ includes/jkl_db.php | 3 + includes/jkl_functions.php | 8 + index.php | 4 + jkl_style.css | 1 + js/jkl_notifications.js | 11 ++ patient/includes/jkl_notifications.php | 18 +++ patient/includes/jkl_patient_crud.php | 57 +++++++ patient/includes/jkl_patient_functions.php | 25 +++ patient/jkl_appointments.php | 72 +++++++++ patient/jkl_dashboard.php | 110 +++++++++++++ patient/jkl_get_notifications.php | 11 ++ patient/jkl_login.php | 82 ++++++++++ patient/jkl_logout.php | 7 + patient/jkl_otp.php | 44 ++++++ patient/jkl_profile.php | 92 +++++++++++ patient/jkl_register.php | 92 +++++++++++ patient/update_appointment.php | 110 +++++++++++++ patient/update_profile.php | 48 ++++++ 36 files changed, 1723 insertions(+) create mode 100644 admin/.DS_Store create mode 100644 admin/admin_dashboard.php create mode 100644 admin/admin_login.php create mode 100644 admin/admin_logout.php create mode 100644 admin/admin_register.php create mode 100644 admin/includes/db_functions.php create mode 100644 admin/includes/jkl_admin_crud.php create mode 100644 admin/includes/jkl_admin_functions.php create mode 100644 admin/includes/jkl_notifications.php create mode 100644 admin/jkl_get_notifications.php create mode 100644 admin/manage_appointments.php create mode 100644 admin/manage_caregivers.php create mode 100644 admin/track_caregiver_availability.php create mode 100644 assets/css/jkl_styles.css create mode 100644 assets/images/jkl_caregiver.png create mode 100644 assets/images/jkl_logo.png create mode 100644 assets/images/jkl_patient.png create mode 100644 config/jkl_config.php create mode 100644 includes/jkl_db.php create mode 100644 includes/jkl_functions.php create mode 100644 index.php create mode 100644 jkl_style.css create mode 100644 js/jkl_notifications.js create mode 100644 patient/includes/jkl_notifications.php create mode 100644 patient/includes/jkl_patient_crud.php create mode 100644 patient/includes/jkl_patient_functions.php create mode 100644 patient/jkl_appointments.php create mode 100644 patient/jkl_dashboard.php create mode 100644 patient/jkl_get_notifications.php create mode 100644 patient/jkl_login.php create mode 100644 patient/jkl_logout.php create mode 100644 patient/jkl_otp.php create mode 100644 patient/jkl_profile.php create mode 100644 patient/jkl_register.php create mode 100644 patient/update_appointment.php create mode 100644 patient/update_profile.php diff --git a/admin/.DS_Store b/admin/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..291f656924b1bc77b7a1a9ca68474ff7ce04080b GIT binary patch literal 6148 zcmeHK%Z}496us^gCS`<(fDyw2DH7XiD0EnRv{YKyw)e(yye`+62irgslEzHxTC_A0+qOsMyaB;)C`OYvuaYd1lfE2hQNi4Su5emT%Xjyt)9(F) zw%0v8oVC5_!+V{!chG$>o3)(X+jky4_fONaOn$-`U;_I!+hv0bP@3GN4|EC@d}tU$ zK_Bx%0uy=prepare("SELECT COUNT(*) FROM patients"); + $stmt->execute(); + return $stmt->fetchColumn(); +} + +// Function to get the total number of caregivers +function getTotalCaregivers() { + global $pdo; + $stmt = $pdo->prepare("SELECT COUNT(*) FROM caregivers"); + $stmt->execute(); + return $stmt->fetchColumn(); +} + +// Function to get the total number of appointments +function getTotalAppointments() { + global $pdo; + $stmt = $pdo->prepare("SELECT COUNT(*) FROM appointments"); + $stmt->execute(); + return $stmt->fetchColumn(); +} + +// Function to get the number of upcoming appointments (within the next 7 days) +function getUpcomingAppointments() { + global $pdo; + $stmt = $pdo->prepare("SELECT COUNT(*) FROM appointments WHERE appointment_date >= CURDATE() AND appointment_date <= DATE_ADD(CURDATE(), INTERVAL 7 DAY)"); + $stmt->execute(); + return $stmt->fetchColumn(); +} + +// Function to fetch available caregivers +function getAvailableCaregivers() { + global $pdo; + $stmt = $pdo->prepare(" + SELECT c.name + FROM caregivers c + WHERE c.id NOT IN (SELECT caregiver_id FROM caregiver_assignments) + "); + $stmt->execute(); + return $stmt->fetchAll(PDO::FETCH_ASSOC); +} + +// Get statistics +$totalPatients = getTotalPatients(); +$totalCaregivers = getTotalCaregivers(); +$totalAppointments = getTotalAppointments(); +$upcomingAppointments = getUpcomingAppointments(); +$availableCaregivers = getAvailableCaregivers(); // Fetch available caregivers +?> + + + + + + + + + Admin Dashboard + + + + + +
+

Welcome, Admin!

+

This is the dashboard. Here you can monitor and manage various aspects of the healthcare system.

+ + +
+ +
+
+
Total Patients
+
+
+

The total number of registered patients in the system.

+
+
+
+ + +
+
+
Total Caregivers
+
+
+

The total number of caregivers available to patients.

+
+
+
+ + +
+
+
Total Appointments
+
+
+

The total number of appointments scheduled in the system.

+
+
+
+ + +
+
+
Upcoming Appointments
+
+
+

Appointments scheduled within the next 7 days.

+
+
+
+
+ + +
+

Carer Availability

+
+
Available Carers
+
+
    + + +
  • + + +
  • No carers are currently available.
  • + +
+
+
+
+
+ + + + + + + diff --git a/admin/admin_login.php b/admin/admin_login.php new file mode 100644 index 0000000..669d2c7 --- /dev/null +++ b/admin/admin_login.php @@ -0,0 +1,93 @@ +prepare("SELECT * FROM admins WHERE email = ?"); + $stmt->execute([$email]); + $admin = $stmt->fetch(); + + // Verify the password + if ($admin && password_verify($password, $admin['password'])) { + // Store the admin ID in session + $_SESSION['admin_id'] = $admin['id']; + header("Location: admin_dashboard.php"); // Redirect to dashboard + exit(); + } else { + $errors[] = 'Invalid credentials. Please try again.'; + } + } +} +?> + + + + + + + + Admin Login + + +
+
+
+
+
+

Admin Login

+
+
+ +
+ +

+ +
+ + +
+
+ + +
+
+ + +
+ +
+
+ +
+
+
+
+ + + + + + diff --git a/admin/admin_logout.php b/admin/admin_logout.php new file mode 100644 index 0000000..115c8be --- /dev/null +++ b/admin/admin_logout.php @@ -0,0 +1,6 @@ + diff --git a/admin/admin_register.php b/admin/admin_register.php new file mode 100644 index 0000000..d40a89a --- /dev/null +++ b/admin/admin_register.php @@ -0,0 +1,89 @@ +prepare("INSERT INTO admins (email, password) VALUES (?, ?)"); + if ($stmt->execute([$email, $hashed_password])) { + // Redirect to login page + header("Location: admin_login.php"); + exit(); + } else { + $errors[] = 'Registration failed. Please try again.'; + } + } +} +?> + + + + + + + + Register Admin + + +
+
+
+
+
+

Admin Registration

+
+
+ +
+ +

+ +
+ + +
+
+ + +
+
+ + +
+ +
+
+
+
+
+
+ + + + + + diff --git a/admin/includes/db_functions.php b/admin/includes/db_functions.php new file mode 100644 index 0000000..4f5c01c --- /dev/null +++ b/admin/includes/db_functions.php @@ -0,0 +1,54 @@ +prepare("SELECT * FROM caregivers"); + $stmt->execute(); + return $stmt->fetchAll(); +} + +// Retrieve all patients +function getAllPatients() { + global $pdo; + $stmt = $pdo->prepare("SELECT * FROM patients"); + $stmt->execute(); + return $stmt->fetchAll(); +} + +// Assign caregiver to a patient +function assignCaregiver($caregiver_id, $patient_id) { + global $pdo; + $stmt = $pdo->prepare("INSERT INTO caregiver_assignments (caregiver_id, patient_id, assigned_at) VALUES (?, ?, NOW())"); + return $stmt->execute([$caregiver_id, $patient_id]); +} + +// Remove caregiver from a patient +function removeCaregiver($caregiver_id, $patient_id) { + global $pdo; + $stmt = $pdo->prepare("DELETE FROM caregiver_assignments WHERE caregiver_id = ? AND patient_id = ?"); + return $stmt->execute([$caregiver_id, $patient_id]); +} + +// Get caregiver availability +function getCaregiverAvailability($caregiver_id) { + global $pdo; + $stmt = $pdo->prepare("SELECT availability FROM caregivers WHERE id = ?"); + $stmt->execute([$caregiver_id]); + return $stmt->fetchColumn(); +} + +// Get caregiver's ongoing assignments +function getOngoingAssignments($caregiver_id) { + global $pdo; + $stmt = $pdo->prepare(" + SELECT p.name AS patient_name, a.assigned_at + FROM caregiver_assignments a + JOIN patients p ON a.patient_id = p.id + WHERE a.caregiver_id = ? + "); + $stmt->execute([$caregiver_id]); + return $stmt->fetchAll(); +} +?> diff --git a/admin/includes/jkl_admin_crud.php b/admin/includes/jkl_admin_crud.php new file mode 100644 index 0000000..b68bae8 --- /dev/null +++ b/admin/includes/jkl_admin_crud.php @@ -0,0 +1,57 @@ +prepare("INSERT INTO caregivers (name, email) VALUES (?, ?)"); + return $stmt->execute([$name, $email]); +} + +// Get all caregivers +function getCaregivers() { + global $pdo; + return $pdo->query("SELECT * FROM caregivers")->fetchAll(); +} + +// Update a caregiver +function updateCaregiver($id, $name, $email) { + global $pdo; + $stmt = $pdo->prepare("UPDATE caregivers SET name = ?, email = ? WHERE id = ?"); + return $stmt->execute([$name, $email, $id]); +} + +// Delete a caregiver +function deleteCaregiver($id) { + global $pdo; + $stmt = $pdo->prepare("DELETE FROM caregivers WHERE id = ?"); + return $stmt->execute([$id]); +} + +// Add an appointment +function addAppointment($patient_id, $caregiver_id, $date, $time) { + global $pdo; + $stmt = $pdo->prepare("INSERT INTO appointments (patient_id, caregiver_id, date, time) VALUES (?, ?, ?, ?)"); + return $stmt->execute([$patient_id, $caregiver_id, $date, $time]); +} + +// Get all appointments +function getAppointments() { + global $pdo; + return $pdo->query("SELECT * FROM appointments")->fetchAll(); +} + +// Update an appointment +function updateAppointment($id, $patient_id, $caregiver_id, $date, $time) { + global $pdo; + $stmt = $pdo->prepare("UPDATE appointments SET patient_id = ?, caregiver_id = ?, date = ?, time = ? WHERE id = ?"); + return $stmt->execute([$patient_id, $caregiver_id, $date, $time, $id]); +} + +// Delete an appointment +function deleteAppointment($id) { + global $pdo; + $stmt = $pdo->prepare("DELETE FROM appointments WHERE id = ?"); + return $stmt->execute([$id]); +} +?> diff --git a/admin/includes/jkl_admin_functions.php b/admin/includes/jkl_admin_functions.php new file mode 100644 index 0000000..0c2de69 --- /dev/null +++ b/admin/includes/jkl_admin_functions.php @@ -0,0 +1,24 @@ +query("SELECT COUNT(*) as total FROM caregivers"); + return $stmt->fetchColumn(); +} + +// Function to count total appointments +function countAppointments() { + global $pdo; + $stmt = $pdo->query("SELECT COUNT(*) as total FROM appointments"); + return $stmt->fetchColumn(); +} + +// Function to send notification (this can be extended to include actual notification logic) +function sendNotification($message) { + global $pdo; + $stmt = $pdo->prepare("INSERT INTO notifications (message) VALUES (?)"); + return $stmt->execute([$message]); +} +?> diff --git a/admin/includes/jkl_notifications.php b/admin/includes/jkl_notifications.php new file mode 100644 index 0000000..4dc7b77 --- /dev/null +++ b/admin/includes/jkl_notifications.php @@ -0,0 +1,16 @@ +query("SELECT * FROM notifications ORDER BY created_at DESC")->fetchAll(); +} + +// Function to clear notifications (optional) +function clearNotifications() { + global $pdo; + $stmt = $pdo->prepare("DELETE FROM notifications"); + return $stmt->execute(); +} +?> diff --git a/admin/jkl_get_notifications.php b/admin/jkl_get_notifications.php new file mode 100644 index 0000000..3b1a849 --- /dev/null +++ b/admin/jkl_get_notifications.php @@ -0,0 +1,46 @@ +query("SELECT * FROM notifications ORDER BY created_at DESC")->fetchAll(); +?> + + + + + + + Notifications + + + + +
+ + +

Notifications

+ +
    + +
  • -
  • + +
+
+ + diff --git a/admin/manage_appointments.php b/admin/manage_appointments.php new file mode 100644 index 0000000..13c3327 --- /dev/null +++ b/admin/manage_appointments.php @@ -0,0 +1,156 @@ +query("SELECT id, name FROM patients")->fetchAll(PDO::FETCH_ASSOC); +$caregivers = $pdo->query("SELECT id, name FROM caregivers")->fetchAll(PDO::FETCH_ASSOC); + +// Handle appointment scheduling and updating +$message = ''; +if ($_SERVER['REQUEST_METHOD'] === 'POST') { + if (isset($_POST['schedule'])) { + // Schedule a new appointment + $patient_id = $_POST['patient_id']; + $caregiver_id = $_POST['caregiver_id']; + $appointment_date = $_POST['appointment_date']; + + $stmt = $pdo->prepare("INSERT INTO appointments (patient_id, caregiver_id, appointment_date, status) VALUES (?, ?, ?, 'scheduled')"); + if ($stmt->execute([$patient_id, $caregiver_id, $appointment_date])) { + $message = 'Appointment scheduled successfully.'; + } else { + $message = 'Failed to schedule appointment.'; + } + } elseif (isset($_POST['update'])) { + // Update an existing appointment + $appointment_id = $_POST['appointment_id']; + $appointment_date = $_POST['appointment_date']; + + $stmt = $pdo->prepare("UPDATE appointments SET appointment_date = ?, status = 'scheduled' WHERE id = ?"); + if ($stmt->execute([$appointment_date, $appointment_id])) { + $message = 'Appointment updated successfully.'; + } else { + $message = 'Failed to update appointment.'; + } + } +} + +// Fetch appointments for display +$appointments = $pdo->query(" + SELECT a.id, a.appointment_date, a.status, c.name AS caregiver_name, p.name AS patient_name + FROM appointments a + JOIN caregivers c ON a.caregiver_id = c.id + JOIN patients p ON a.patient_id = p.id +")->fetchAll(PDO::FETCH_ASSOC); +?> + + + + + + + Manage Appointments + + + +
+ + + +

Manage Appointments

+ + + +
+ +
+ + + +
+

Schedule Appointment

+
+ + +
+
+ + +
+
+ + +
+ +
+ + +
+

Update Appointment

+
+ + +
+
+ + +
+ +
+ + +

Existing Appointments

+
    + +
  • + Patient: | + Caregiver: | + Appointment Date & Time: | + Status: +
  • + +
+
+ + diff --git a/admin/manage_caregivers.php b/admin/manage_caregivers.php new file mode 100644 index 0000000..f19c34c --- /dev/null +++ b/admin/manage_caregivers.php @@ -0,0 +1,107 @@ + + + + + + + Manage Caregivers + + + +
+ + + +

Manage Caregivers

+ + +
+ +
+ + + +
+
Assign or Remove Caregiver
+
+
+
+ + +
+
+ + +
+ + +
+
+
+
+ + diff --git a/admin/track_caregiver_availability.php b/admin/track_caregiver_availability.php new file mode 100644 index 0000000..d639f6a --- /dev/null +++ b/admin/track_caregiver_availability.php @@ -0,0 +1,71 @@ +query(" + SELECT c.id AS caregiver_id, c.name AS caregiver_name, + COUNT(a.id) AS ongoing_assignments, + GROUP_CONCAT(CONCAT(a.appointment_date, ' (Status: ', a.status, ')') SEPARATOR '
') AS assignments_details + FROM caregivers c + LEFT JOIN appointments a ON c.id = a.caregiver_id AND a.status = 'scheduled' + GROUP BY c.id, c.name +")->fetchAll(PDO::FETCH_ASSOC); +?> + + + + + + + Track Caregiver Availability + + + +
+ + + +

Track Caregiver Availability

+ + +
+ + + + + + + + + + + + + + + + + +
Caregiver NameOngoing AssignmentsDetails of Assignments
+
+
+ + diff --git a/assets/css/jkl_styles.css b/assets/css/jkl_styles.css new file mode 100644 index 0000000..0bdbc9b --- /dev/null +++ b/assets/css/jkl_styles.css @@ -0,0 +1,24 @@ +body { + background-color: #f8f9fa; +} + +h1, h3 { + color: #007bff; +} + +.navbar { + margin-bottom: 20px; +} + +.list-group-item { + background-color: #fff; + border: 1px solid #dee2e6; +} + +.list-group-item:hover { + background-color: #e9ecef; +} + +.container { + margin-top: 20px; +} diff --git a/assets/images/jkl_caregiver.png b/assets/images/jkl_caregiver.png new file mode 100644 index 0000000..e69de29 diff --git a/assets/images/jkl_logo.png b/assets/images/jkl_logo.png new file mode 100644 index 0000000..e69de29 diff --git a/assets/images/jkl_patient.png b/assets/images/jkl_patient.png new file mode 100644 index 0000000..e69de29 diff --git a/config/jkl_config.php b/config/jkl_config.php new file mode 100644 index 0000000..94ff0d5 --- /dev/null +++ b/config/jkl_config.php @@ -0,0 +1,14 @@ +setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); +} catch (PDOException $e) { + die("Could not connect to the database: " . $e->getMessage()); +} +?> diff --git a/includes/jkl_db.php b/includes/jkl_db.php new file mode 100644 index 0000000..d1cff69 --- /dev/null +++ b/includes/jkl_db.php @@ -0,0 +1,3 @@ + diff --git a/includes/jkl_functions.php b/includes/jkl_functions.php new file mode 100644 index 0000000..33c7ba9 --- /dev/null +++ b/includes/jkl_functions.php @@ -0,0 +1,8 @@ + diff --git a/index.php b/index.php new file mode 100644 index 0000000..b4558cd --- /dev/null +++ b/index.php @@ -0,0 +1,4 @@ + diff --git a/jkl_style.css b/jkl_style.css new file mode 100644 index 0000000..9d2c109 --- /dev/null +++ b/jkl_style.css @@ -0,0 +1 @@ +/* Additional global styles can go here */ diff --git a/js/jkl_notifications.js b/js/jkl_notifications.js new file mode 100644 index 0000000..d6de7bd --- /dev/null +++ b/js/jkl_notifications.js @@ -0,0 +1,11 @@ +$(document).ready(function() { + setInterval(function() { + $.ajax({ + url: '../patient/jkl_get_notifications.php', // URL to fetch notifications + type: 'GET', + success: function(data) { + $('#notifications').html(data); // Update notifications area + } + }); + }, 30000); // Fetch new notifications every 30 seconds +}); diff --git a/patient/includes/jkl_notifications.php b/patient/includes/jkl_notifications.php new file mode 100644 index 0000000..fd3f5c3 --- /dev/null +++ b/patient/includes/jkl_notifications.php @@ -0,0 +1,18 @@ +prepare("INSERT INTO notifications (patient_id, message, created_at) VALUES (?, ?, NOW())"); + return $stmt->execute([$patient_id, $message]); +} + +// Get all notifications for a patient +function getPatientNotifications($patient_id) { + global $pdo; + $stmt = $pdo->prepare("SELECT * FROM notifications WHERE patient_id = ? ORDER BY created_at DESC"); + $stmt->execute([$patient_id]); + return $stmt->fetchAll(); +} +?> diff --git a/patient/includes/jkl_patient_crud.php b/patient/includes/jkl_patient_crud.php new file mode 100644 index 0000000..000bc11 --- /dev/null +++ b/patient/includes/jkl_patient_crud.php @@ -0,0 +1,57 @@ +prepare("INSERT INTO patients (name, email, password, address, dob) VALUES (?, ?, ?, ?, ?)"); + // Execute the query, passing the address along with other data + return $stmt->execute([$name, $email, password_hash($password, PASSWORD_DEFAULT), $address, $dob]); +} + +// Login patient +function loginPatient($email, $password) { + global $pdo; + $stmt = $pdo->prepare("SELECT * FROM patients WHERE email = ?"); + $stmt->execute([$email]); + $patient = $stmt->fetch(); + + // Verify password and return patient data if login is successful + if ($patient && password_verify($password, $patient['password'])) { + return $patient; + } + return false; +} + +// Retrieve patient details by ID +function getPatientDetails($id) { + global $pdo; // Use global $pdo for database access + $stmt = $pdo->prepare("SELECT * FROM patients WHERE id = ?"); + $stmt->execute([$id]); + return $stmt->fetch(); +} + +// Update patient profile with medical records and date of birth +function updatePatientProfile($id, $name, $address, $medical_records, $dob) { + global $pdo; + // Ensure we include 'address' and 'dob' in the update query + $stmt = $pdo->prepare("UPDATE patients SET name = ?, address = ?, medical_records = ?, dob = ? WHERE id = ?"); + return $stmt->execute([$name, $address, $medical_records, $dob, $id]); +} + +// Get patient appointments (sorted by appointment date) +function getPatientAppointments($patient_id) { + global $pdo; + $stmt = $pdo->prepare("SELECT * FROM appointments WHERE patient_id = ? ORDER BY appointment_date ASC"); + $stmt->execute([$patient_id]); + return $stmt->fetchAll(); +} + +// Create a new appointment for a patient +function createAppointment($patient_id, $caregiver_id, $appointment_date) { + global $pdo; + $stmt = $pdo->prepare("INSERT INTO appointments (patient_id, caregiver_id, appointment_date, status) VALUES (?, ?, ?, 'scheduled')"); + return $stmt->execute([$patient_id, $caregiver_id, $appointment_date]); +} +?> diff --git a/patient/includes/jkl_patient_functions.php b/patient/includes/jkl_patient_functions.php new file mode 100644 index 0000000..37f3758 --- /dev/null +++ b/patient/includes/jkl_patient_functions.php @@ -0,0 +1,25 @@ +prepare("SELECT * FROM patients WHERE email = ?"); + $stmt->execute([$patient_id]); + $patient = $stmt->fetch(); + + // Verify the password + if ($patient && password_verify($password, $patient['password'])) { + return true; + } + return false; +} + +// Get notifications for a patient +function getNotifications($patient_id) { + global $pdo; + $stmt = $pdo->prepare("SELECT * FROM notifications WHERE patient_id = ? ORDER BY created_at DESC"); + $stmt->execute([$patient_id]); + return $stmt->fetchAll(); +} +?> diff --git a/patient/jkl_appointments.php b/patient/jkl_appointments.php new file mode 100644 index 0000000..293943b --- /dev/null +++ b/patient/jkl_appointments.php @@ -0,0 +1,72 @@ + + + + + + + + + + Patient Appointments + + + + + + +
+

Your Appointments

+ + 0): ?> + + + + + + + + + + + + + + + + + +
CaregiverAppointment DateStatus
+ +
You have no upcoming appointments.
+ +
+ + + + + + diff --git a/patient/jkl_dashboard.php b/patient/jkl_dashboard.php new file mode 100644 index 0000000..c99c529 --- /dev/null +++ b/patient/jkl_dashboard.php @@ -0,0 +1,110 @@ + + + + + + + + + + Patient Dashboard + + +
+ + + + + +
+ + +
+

Welcome, !

+
+ +
+
+
Your Details
+
+

Email:

+

Address:

+

Date of Birth:

+
+
+
+ + +
+
+
Upcoming Appointments
+
+ +

-

+ +

No upcoming appointments.

+ +
+
+
+
+
+
+ +
+ + + + + + + + diff --git a/patient/jkl_get_notifications.php b/patient/jkl_get_notifications.php new file mode 100644 index 0000000..c0e5a30 --- /dev/null +++ b/patient/jkl_get_notifications.php @@ -0,0 +1,11 @@ + diff --git a/patient/jkl_login.php b/patient/jkl_login.php new file mode 100644 index 0000000..8bac69f --- /dev/null +++ b/patient/jkl_login.php @@ -0,0 +1,82 @@ + + + + + + + + + + Patient Login + + +
+
+
+ Patient +
+
+
+
+

Patient Login

+ +
+ +

+ +
+ +
+ + +
+
+ + +
+ +

Not a user? Sign Up

+
+
+
+
+
+ + + + + diff --git a/patient/jkl_logout.php b/patient/jkl_logout.php new file mode 100644 index 0000000..a568c63 --- /dev/null +++ b/patient/jkl_logout.php @@ -0,0 +1,7 @@ + diff --git a/patient/jkl_otp.php b/patient/jkl_otp.php new file mode 100644 index 0000000..8024fee --- /dev/null +++ b/patient/jkl_otp.php @@ -0,0 +1,44 @@ + + + + + + + + OTP Verification + + + + +
+

OTP Verification

+ + +
+ + +
+
+ + +
+ +
+
+ + diff --git a/patient/jkl_profile.php b/patient/jkl_profile.php new file mode 100644 index 0000000..5e95d6c --- /dev/null +++ b/patient/jkl_profile.php @@ -0,0 +1,92 @@ + + + + + + + + + + Patient Profile + + +
+ + + +

Patient Profile

+ + +
+ +
+ + +
+
+ + +
+ +
+ + +
+ +
+ + +
+ +
+ + +
+ + +
+
+ + + + + + diff --git a/patient/jkl_register.php b/patient/jkl_register.php new file mode 100644 index 0000000..73eaccf --- /dev/null +++ b/patient/jkl_register.php @@ -0,0 +1,92 @@ + + + + + + + + + + Patient Registration + + +
+
+
+ Patient +
+
+
+
+

Patient Registration

+ +
+ +

+ +
+ +
+ + +
+
+ + +
+
+ + +
+
+ + +
+
+ + +
+ +

Already a user? Sign In

+
+
+
+
+
+ + + + + diff --git a/patient/update_appointment.php b/patient/update_appointment.php new file mode 100644 index 0000000..865b4de --- /dev/null +++ b/patient/update_appointment.php @@ -0,0 +1,110 @@ + + + + + + + + + + Update Appointment + + + +
+

Update Appointment

+ + +
+ +
+ + +
+ + +
+ + +
+ +
+ + +
+ +
+ + +
+ + +
+
+ + + + + + diff --git a/patient/update_profile.php b/patient/update_profile.php new file mode 100644 index 0000000..a9f12d7 --- /dev/null +++ b/patient/update_profile.php @@ -0,0 +1,48 @@ +