Пример #1
0
        $endDate = \DateTime::createFromFormat('Y-m-d', urldecode($_GET['end']));
    }
    if (!$startDate) {
        $startDate = new \DateTime($default_date_range['start']);
    }
    if (!$endDate) {
        $endDate = new \DateTime($default_date_range['end']);
    }
    $startDate = $startDate->format('Y-m-d');
    $endDate = $endDate->format('Y-m-d');
    $requests = $model->getExamsAwaitingResponse($startDate, $endDate);
    //Remove the elements where a student does not yet have active accommodations for the exam
    foreach ($requests as $key => $r) {
        //We must also check to see if the student has opted out
        $opted_out = \Ventus\Utilities\Functions::checkIfStudentHasOptedOut($r['student_id'], $r['course_code'], $r['course_section'], $r['session']);
        $active_exam_accommodations = $model->getAllStudentActiveExamAndTranscriptionAccommodations($r['student_id'], $r['exam_date'], $r['course_code'], $r['course_section'], $r['session']);
        if (empty($active_exam_accommodations) || $opted_out) {
            unset($requests[$key]);
        }
    }
    $l10n->addResource(__DIR__ . '/l10n/unconfirmed-requests.json');
    $viewFile = 'views/unconfirmed-requests.php';
} elseif ($_GET['page'] === "initiate-confirmation") {
    $render = true;
    $request = $model->getUnconfirmedExamData($_GET['exam_request_id']);
    //We must also check to see if the student has opted out
    $opted_out = \Ventus\Utilities\Functions::checkIfStudentHasOptedOut($_GET['student_id'], $request['course_code'], $request['course_section'], $request['session']);
    $accommodations = array();
    if (!$opted_out) {
        $accommodations = $model->getAllStudentActiveExamAndTranscriptionAccommodations($_GET['student_id'], $_GET['exam_date'], $request['course_code'], $request['course_section'], $request['session']);
        //Check all the possible allowed accommodations to see if the student has extra time
Пример #2
0
    $allRequests = $model->getExamRequestsInRange($startDate, $endDate);
    $buildings = $seatManagement->getAllBuildings();
    foreach ($allRequests as &$req) {
        $req["dropped"] = $model->determineDropped($req);
        $req['proctor_status'] = \Ventus\Proctor\Proctor::determineStatus(array("is_cancelled" => $req['is_cancelled'], "proctor_initiated" => $req['proctor_initiated'], "official_evaluation_starttime" => \DateTime::createFromFormat(DATETIME_MYSQL, $req['official_evaluation_starttime']), "official_evaluation_endtime" => \DateTime::createFromFormat(DATETIME_MYSQL, $req['official_evaluation_endtime']), "actual_evaluation_starttime" => \DateTime::createFromFormat(DATETIME_MYSQL, $req['actual_evaluation_starttime']), "actual_evaluation_endtime" => \DateTime::createFromFormat(DATETIME_MYSQL, $req['actual_evaluation_endtime'])));
    }
    unset($req);
    $l10n->addResource(__DIR__ . '/l10n/confirmed-requests.json');
    $l10n->localizeArray($allRequests, 'accommodations');
    $viewFile = 'views/confirmed-requests.php';
} else {
    if ($_GET['page'] === "fetch-request-details") {
        //gather request and accommodation data
        $request = $model->getExamRequestById($_POST['request_id']);
        $examAccs = $model->getExamAccommodationsById($_POST['request_id']);
        $studentAccs = $model->getAllStudentActiveExamAndTranscriptionAccommodations($_POST['student_id'], $_POST['exam_date'], $request[0]['course_code'], $request[0]['course_section'], $request[0]['session']);
        if (!empty($studentAccs)) {
            $studentAccs = array_values($studentAccs);
        }
        $l10n->addResource(__DIR__ . '/l10n/confirmed-requests.json');
        $l10n->localizeArray($examAccs, 'name');
        $l10n->localizeArray($studentAccs, 'name');
        //set up response array
        $details = array("request" => $request, "exam_accommodations" => $examAccs, "student_accommodations" => $studentAccs);
        //if the request also has a seat associated with it recover the appropriate room and seat information
        if (!is_null($request[0]['seat_id'])) {
            //gather room and seat data
            $rooms = $seatManagement->getRooms($request[0]['building_id']);
            $seats = $seatManagement->getSeatsForRoom($request[0]['room_id']);
            $details['rooms'] = $rooms;
            $details['seats'] = $seats;