Пример #1
0
 public function deleteUser($userid)
 {
     $loggedInUser = CxSessionHandler::getItem('userid');
     // check if user has permission to delete users
     if (!RoleController::hasRole($loggedInUser, ADMINISTRATOR)) {
         $response_array = array(JsonResponse::P_STATUS => JsonResponse::STATUS_ERROR, JsonResponse::P_MESSAGE => 'You are not authorized to delete users!');
         return $response_array;
     }
     $user_deleted = $this->user->deleteUser($userid);
     if ($user_deleted) {
         // log user out from database level, once delete is succesful
         $authenticator = new AuthenticationController();
         $authenticator->flagUserOffline($userid);
     }
     return $user_deleted;
 }
Пример #2
0
                    </div>
                </div>
                <div class="vitals hidden">
                    <br/>
                    <ul class="list-group">
                    </ul>
                    <!--                    <button class="btn btn-info">Load More</button>-->
                </div>
            </div>
        </div>
        <div class="col-sm-3">
            <br/>
            <div class="panel panel-primary doctor">
                <div class="panel-heading">
                    <p style="display: none;" id="doctorid"><?php 
echo ucwords(CxSessionHandler::getItem(ProfileTable::userid));
?>
</p>
                    <h2 class="panel-title">Patient Queue</h2>
                </div>
                <div class="panel-body patients">
                </div>
            </div>
        </div>
    </div>
</div>

<!-- Bootstrap core JavaScript
================================================== -->
<!-- Placed at the end of the document so the pages load faster -->
<script src="../../js/bootstrap/jquery-1.10.2.min.js"></script>
Пример #3
0
        $result = $lab->getLabHistory($type, $patientId);
        if ($result) {
            echo JsonResponse::success($result);
            exit;
        } else {
            echo JsonResponse::error("No test found for this patient");
            exit;
        }
    } else {
        echo JsonResponse::error("Please select a lab type");
        exit;
    }
} elseif ($intent == 'labRequest') {
    if (isset($_REQUEST['labType'])) {
        $type = $_REQUEST['labType'];
        $doctorId = intval(CxSessionHandler::getItem('userid'));
        $treatmentId = intval($_REQUEST['treatmentId']);
        $encounterId = isset($_REQUEST['encounterId']) ? $_REQUEST['encounterId'] : 0;
        $description = isset($_REQUEST['description']) ? $_REQUEST['description'] : "";
        $lab = new LaboratoryController();
        $result = $lab->requestLabTest($type, $doctorId, $treatmentId, $encounterId, $description);
        if ($result) {
            echo JsonResponse::success("Request successful");
            exit;
        } else {
            echo JsonResponse::error("Request unsuccessful. Try again!");
            exit;
        }
    } else {
        echo JsonResponse::error("Please select a lab type");
        exit;
Пример #4
0
<?php

require_once '../_core/global/_require.php';
Crave::requireAll(GLOBAL_VAR);
Crave::requireAll(UTIL);
if (!CxSessionHandler::getItem(UserAuthTable::userid)) {
    header("Location: ../index.php");
} else {
    $name = CxSessionHandler::getItem(ProfileTable::surname) . " " . CxSessionHandler::getItem(ProfileTable::middlename) . " " . CxSessionHandler::getItem(ProfileTable::firstname);
}
?>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <meta name="description" content="">
    <meta name="author" content="">
    <link rel="icon" href="../favicon.ico">

    <title>PMS Mail</title>

    <!-- Bootstrap core CSS -->
    <link href="../css/bootstrap/bootstrap.min.css" rel="stylesheet">

    <!-- Custom styles for this template -->
    <link href="../css/master.css" rel="stylesheet">
    <link href="../css/bootstrap/datepicker.css" rel="stylesheet">
    <link href="../css/bootstrap/jquery-ui.css" rel="stylesheet">
Пример #5
0
        <div class="col-md-12">
            <div class="text-muted text-center text-uppercase ">
                <h1 class="text-primary">Setup Staff profile </h1>
            </div>
            <div class="form-profile">
                <div class="hidden text-center" id="form-loading">
                    <img src="../images/loading.gif">
                </div>
                        <div class="text-danger  text-center hidden " id="form-error"></div>
                        <div class="text-success text-center hidden" id="form-success"></div>
                <form action="#" method="post" role="form"  id="profile-form">
                    <input type="hidden" name="<?php 
echo ProfileTable::table_name . '[' . ProfileTable::userid . ']';
?>
" value="<?php 
echo CxSessionHandler::getItem(UserAuthTable::userid);
?>
">
                    <input type="hidden" name="intent" value="addProfile">
                    <div class="form-group-lg col-md-4">
                        <label for="first-name">First Name</label>
                        <input type="text" class="form-control" id="first-name" name="<?php 
echo ProfileTable::table_name . '[' . ProfileTable::firstname . ']';
?>
" required >
                    </div>
                    <div class="form-group-lg col-md-4">
                        <label for="middle-name">Middle Name</label>
                        <input type="text" class="form-control" id="middle-name"  name="<?php 
echo ProfileTable::table_name . '[' . ProfileTable::middlename . ']';
?>
Пример #6
0
    } else {
        echo JsonResponse::error("Could not fetch hospital details.");
        exit;
    }
} elseif ($intent == 'updateHospitalDetails') {
    $id = isset($_REQUEST['id']) ? $_REQUEST['id'] : null;
    $name = isset($_REQUEST['name']) ? $_REQUEST['name'] : "";
    $address = isset($_REQUEST['address']) ? $_REQUEST['address'] : "";
    $hospitalDetailsController = new HospitalDetailsController();
    if ($id) {
        $hospitalInfo = $hospitalDetailsController->updateHospitalDetails($id, $name, $address);
    } else {
        $hospitalInfo = $hospitalDetailsController->createHospitalDetails($name, $address);
    }
    if ($hospitalInfo) {
        CxSessionHandler::setItem(HOSPITAL_NAME, $name);
        // RESETS THE HOSPITAL NAME IN SESSION
        echo JsonResponse::success("Successfully updated  hospital details");
        exit;
    } else {
        echo JsonResponse::error("Could not update hospital details.");
        exit;
    }
} elseif ($intent == 'addDrugUnits') {
    $values = $_REQUEST['values'];
    $units = new PharmacistController();
    $result = $units->addDrugUnits($values);
    if ($result) {
        echo JsonResponse::success('Successfully added drug units.');
        exit;
    } else {
Пример #7
0
        $change = $authenticator->changePassword($_REQUEST['userid'], $_REQUEST['passcode'], $status);
        if ($change) {
            //DESTROY SESSION TO LOG USER OUT
            CxSessionHandler::destroy();
            //CONSTRUCT RESPONSE
            $response = array();
            $response[P_MESSAGE] = "Password change successful!";
            //SET MESSAGE FOR USER ON NEXT LOGIN
            CxSessionHandler::setViewBag("You just changed your password. Log in again with your new password.");
            //ECHO RESPONSE
            echo JsonResponse::success($response);
            exit;
        } else {
            echo JsonResponse::error("Unable to change password! Please try again.");
            exit;
        }
    } else {
        echo JsonResponse::error('Incomplete request parameters!');
        exit;
    }
} elseif ($intent == "logout") {
    $authenticator = new AuthenticationController();
    $userid = CxSessionHandler::getItem(UserAuthTable::userid);
    $authenticator->flagUserOffline($userid);
    CxSessionHandler::destroy();
    echo JsonResponse::message(STATUS_OK, "Logout successful");
    exit;
} else {
    echo JsonResponse::error('Invalid intent!');
    exit;
}
 public function countUnread()
 {
     $comm_model = new CommunicationModel();
     $userid = CxSessionHandler::getItem(UserAuthTable::userid);
     $feedback = $comm_model->countUnread($userid);
     return $feedback;
 }
Пример #9
0
    if (is_array($drugs) && !empty($drugs)) {
        echo JsonResponse::success($drugs);
        exit;
    } else {
        echo JsonResponse::error("No drug");
    }
} elseif ($intent == 'getUnits') {
    $units = (new PharmacistController())->getUnits();
    if (is_array($units) && !empty($units)) {
        echo JsonResponse::success($units);
        exit;
    } else {
        echo JsonResponse::error("No unit available");
    }
} elseif ($intent == 'clearPrescription') {
    $pharmacist_id = CxSessionHandler::getItem(UserAuthTable::userid);
    $data = isset($_REQUEST['data']) ? $_REQUEST['data'] : null;
    /*$data = array(array("drugId" => 1, "drugName" => "Paracetamol", "quantity" => 20, "unitId" => 1, "prescription" => array(5, 6)),
      array("drugId" => 3, "drugName" => "ampiclox", "quantity" => 20, "unitId" => 1, "prescription" => array(7)),
      array("drugId" => null, "drugName" => null, "quantity" => 20, "unitId" => 1, "prescription" => array(8)));*/
    if ($pharmacist_id && $data) {
        $isCleared = (new PharmacistController())->clearPrescription($pharmacist_id, $data);
        if ($isCleared) {
            echo JsonResponse::success("Successfully cleared!");
            exit;
        } else {
            echo JsonResponse::error("Clearing Unsuccessful. Retry.");
            exit;
        }
    } elseif (!$data) {
        echo JsonResponse::error("There are no prescriptions to clear");
Пример #10
0
require_once '../_core/global/_require.php';
Crave::requireAll(GLOBAL_VAR);
Crave::requireFiles(UTIL, array('SqlClient', 'JsonResponse', 'CxSessionHandler'));
Crave::requireFiles(MODEL, array('BaseModel', 'RoleModel', 'ChemicalPathologyModel', 'HaematologyModel', 'MicroscopyModel', 'ParasitologyModel', 'VisualModel', 'RadiologyModel'));
Crave::requireFiles(CONTROLLER, array('RoleController', 'LaboratoryController'));
if (isset($_REQUEST['intent'])) {
    $intent = $_REQUEST['intent'];
} else {
    echo JsonResponse::error('Intent not set!');
    exit;
}
/* This array maps the labType to the role_id for that labType */
$labType_Role = array(CHEMICAL_PATHOLOGY => CHEMICAL_PATHOLOGY_CONDUCTOR, HAEMATOLOGY => HAEMATOLOGY_CONDUCTOR, PARASITOLOGY => PARASITOLOGY_CONDUCTOR, MICROSCOPY => URINE_CONDUCTOR, VISUAL => VISUAL_CONDUCTOR, RADIOLOGY => XRAY_CONDUCTOR);
$status_id = isset($_REQUEST['status']) ? $_REQUEST['status'] : null;
$lab_attendant_id = CxSessionHandler::getItem('userid');
$data = isset($_REQUEST['data']) ? $_REQUEST['data'] : array();
$labType = $_REQUEST['labType'];
if ($data && $labType != 'radiology') {
    $data['details']['lab_attendant_id'] = $lab_attendant_id;
    $data['details']['status_id'] = $status_id;
} elseif ($labType == 'radiology') {
    $data['radiology']['lab_attendant_id'] = $lab_attendant_id;
    $data['radiology']['status_id'] = $status_id;
}
if ($intent == 'getPatientQueue') {
    if (isset($_REQUEST['labType'])) {
        $labType = $_REQUEST['labType'];
        $role = isset($labType_Role[$labType]) ? $labType_Role[$labType] : null;
        if ($role && RoleController::hasRole($lab_attendant_id, $role)) {
            $lab = new LaboratoryController();
Пример #11
0
            <div class="panel-body">
                <div class="text-center alert alert-warning" id="form-info">
                    Welcome! you need to change your password
                </div>

                <div class="hidden text-center" id="form-loading"><img src="../images/loading.gif"></div>
                <div class=" alert alert-danger hidden text-center" id="form-error"></div>
                <div class=" alert alert-success hidden text-center" id="form-success"></div>

                <input type="hidden" name="intent" value="changePassword">
                <input type="hidden" name="userid" value="<?php 
echo CxSessionHandler::getItem(UserAuthTable::userid);
?>
">
                <input type="hidden" name="status" value="<?php 
echo CxSessionHandler::getItem(UserAuthTable::status);
?>
">
                <div class="form-group">
                    <label class="sr-only" for="exampleInputAmount">Username</label>
                    <div class="input-group">
                        <div class="input-group-addon">New Password &nbsp; &nbsp; &nbsp;</div>
                        <input type="password" class="form-control" id="passcode" name="passcode" required>
                    </div>
                </div>
                <div class="form-group">
                    <label class="sr-only" for="passcode">Re-type Password</label>
                    <div class="input-group">
                        <div class="input-group-addon">Re-type Password </div>
                        <input type="password" class="form-control" id="confirm_passcode" name="confirm_passcode" required>
                    </div>
Пример #12
0
        echo JsonResponse::error("Queue is empty!");
        exit;
    }
} elseif ($intent == 'loadGenQueue') {
    //Load general queue
    $usher = new ArrivalController();
    $queue = $usher->getGenQueue();
    if (is_array($queue)) {
        echo JsonResponse::success($queue);
        exit;
    } else {
        echo JsonResponse::error("Queue is empty!");
        exit;
    }
} elseif ($intent == 'loadDoctorQueue') {
    $doctor_id = CxSessionHandler::getItem(UserAuthTable::userid);
    $is_doctor = RoleController::hasRole($doctor_id, DOCTOR);
    if ($is_doctor) {
        $usher = new ArrivalController();
        $response = $usher->getDoctorQueue($doctor_id);
        if (is_array($response)) {
            echo JsonResponse::success($response);
            exit;
        } else {
            echo JsonResponse::error("Doctorr queue is empty!");
            exit;
        }
    } else {
        echo JsonResponse::error("Logged in user is not a doctor!");
        exit;
    }
Пример #13
0
            $params['color'] = "#4CA618";
        } else {
            if ($array['duty'] == 10) {
                $params['color'] = "#3F3C3C";
            } else {
                $params['color'] = "#3A87AD";
            }
        }
        // Convert the input array into a useful Event object
        $event = new Event($params, null);
        $output_arrays[] = $event->toArray();
    }
    // Send JSON to the client.
    echo json_encode($output_arrays);
} elseif ($intent == 'getStaffRoster') {
    $staff_id = CxSessionHandler::getItem(UserAuthTable::userid);
    $staffs = new StaffRosterController();
    $staffRoster = $staffs->getStaffRoster($staff_id);
    // Accumulate an output array of event data arrays.
    $output_arrays = array();
    foreach ($staffRoster as $array) {
        $params['title'] = ucwords($array['firstname'] . " " . $array['middlename'] . " " . $array['lastname']);
        $params['start'] = $array['duty_date'];
        $params['roster_id'] = $array['roster_id'];
        if ($array['duty'] == 9) {
            $params['color'] = "#4CA618";
        } else {
            if ($array['duty'] == 10) {
                $params['color'] = "#3F3C3C";
            } else {
                $params['color'] = "#3A87AD";
Пример #14
0
 public static function getViewBag()
 {
     $data = CxSessionHandler::getItem(CxSessionHandler::VIEW_BAG);
     CxSessionHandler::clearItem(CxSessionHandler::VIEW_BAG);
     return $data;
 }
Пример #15
0
                            <th>Identification No.</th>
                            <th>Test Type</th>
                            <th>Status</th>
                            <th>Action</th>
                            <th>Created Date</th>
                        </tr>
                        </tfoot>
                    </table>
                </div>
            </div>
        </div>
        <div class="col-sm-3">
            <label>Select Test</label>
            <select id="type" class="form-control" name="test_id" onchange="Laboratory.onTestChange()">
                <?php 
foreach (CxSessionHandler::getItem(StaffRoleTable::staff_role_id) as $staff) {
    if ($staff[StaffRoleTable::staff_role_id] == HAEMATOLOGY_CONDUCTOR) {
        ?>
                        <option value="haematology">HAEMATOLOGY</option>
                <?php 
    } else {
        if ($staff[StaffRoleTable::staff_role_id] == URINE_CONDUCTOR) {
            ?>
                        <option value="microscopy">MICROSCOPY</option>
                <?php 
        } else {
            if ($staff[StaffRoleTable::staff_role_id] == XRAY_CONDUCTOR) {
                ?>
                        <option value="radiology">XRAY</option>
                <?php 
            } else {
Пример #16
0
<?php

require_once '../_core/global/_require.php';
Crave::requireAll(GLOBAL_VAR);
Crave::requireFiles(UTIL, array('SqlClient', 'JsonResponse', 'CxSessionHandler'));
Crave::requireFiles(MODEL, array('BaseModel', 'VitalsModel'));
Crave::requireFiles(CONTROLLER, array('VitalsController'));
if (isset($_REQUEST['intent'])) {
    $intent = $_REQUEST['intent'];
} else {
    echo JsonResponse::error("Intent not set!");
    exit;
}
if ($intent == 'addVitals') {
    if (isset($_POST[VitalsTable::patient_id], $_POST[VITALS])) {
        $added_by = CxSessionHandler::getItem(UserAuthTable::userid);
        $vitals_data = $_POST[VITALS];
        $valid_vitals = VitalsController::validateVitals($vitals_data);
        if (is_array($valid_vitals)) {
            $vitals_data = $valid_vitals;
        } else {
            echo JsonResponse::error("Invalid vitals data!");
            exit;
        }
        $vitals_data[VitalsTable::patient_id] = $_POST[VitalsTable::patient_id];
        $nurse = new VitalsController();
        $response = $nurse->addVitals($vitals_data, $added_by);
        if ($response) {
            echo JsonResponse::message(STATUS_OK, "Vitals added successfully!");
            exit;
        } else {
Пример #17
0
            <ul class="nav navbar-nav">
                <li class="adm-menu active" id="ward" data-view-id="1"><a href="#">Wards</a> </li>
                <li>
                    <a href="admission.php"><span class="fa fa-bed">&nbsp;</span>Admission</a>
                </li>
                <li>
                    <a href="mails.php">
                        <span class="fa fa-envelope"></span>
                        <sup class="badge notification message_unread"></sup>
                    </a>
                </li>
                <li class="dropdown">
                    <a href="#" class="dropdown-toggle" id="dropdownMenu1" data-toggle="dropdown" aria-expanded="true">
                        <img src="../images/profile.png">
                        <?php 
echo ucwords(CxSessionHandler::getItem(ProfileTable::surname) . ' ' . CxSessionHandler::getItem(ProfileTable::firstname));
?>
                        <span class="caret"></span>
                    </a>
                    <ul class="dropdown-menu" role="menu" aria-labelledby="dropdownMenu1">
                        <li role="presentation"><a href="dashboard.php">Dashboard</a></li>
                        <li class="divider"></li>
                        <li role="presentation"><a href="view-profile.php">View Profile</a></li>
                        <li role="presentation"><a href="#" id="sign-out">Sign out</a></li>
                    </ul>
                </li>
            </ul>
        </div>
    </div>
</nav>
Пример #18
0
        $warden = new AdmissionController();
        $response = $warden->dischargePatient($patient_id, $discharged_by);
        if ($response) {
            echo JsonResponse::message(STATUS_OK, "Patient successfully discharged!");
            exit;
        } else {
            echo JsonResponse::error("Unable to discharge patient!");
            exit;
        }
    } else {
        echo JsonResponse::error("Incomplete request parameters!");
        exit;
    }
} elseif ($intent == 'logEncounter') {
    if (isset($_REQUEST[AdmissionTable::admission_id], $_REQUEST[EncounterTable::comments], $_REQUEST[AdmissionTable::patient_id])) {
        $personnel_id = CxSessionHandler::getItem(UserAuthTable::userid);
        if (isset($_REQUEST[VITALS])) {
            $vitals_data = $_REQUEST[VITALS];
            $valid_vitals = VitalsController::validateVitals($vitals_data);
            if (is_array($valid_vitals)) {
                $vitals_data = $valid_vitals;
            } else {
                echo JsonResponse::error("Invalid vitals data!");
                exit;
            }
        } else {
            $vitals_data = null;
        }
        $warden = new AdmissionController();
        $response = $warden->logEncounter($personnel_id, $_REQUEST[AdmissionTable::patient_id], $_REQUEST[AdmissionTable::admission_id], $_REQUEST[EncounterTable::comments], $vitals_data);
        if ($response) {