//Do the actual exchange of tags and data- employee details $content = str_replace("#specialistfname", $SESSION->first_name, $content); $content = str_replace("#specialistlname", $SESSION->last_name, $content); //Do the actual exchange of tags and data- link to student portal $content = str_replace("#studentportal", "http://www.sass.uottawa.ca/access/student-portal/", $content); //Do the actual exchange of tags and data- semester values $content = str_replace("#semester", $semester['now_long_en'], $content); $content = str_replace("#semestre", $semester['now_long_fr'], $content); //At the end, replace all incomplete tags with something $content = str_replace(array("#accommodationsclassroom", "#accommodationclassroom", "#accommodationslibrary", "#accommodationlibrary", "#accommodationsexams", "#accommodationexams", "#accommodationstranscription", "#accommodationtranscription"), "N/A", $content); echo $content; } elseif ($_GET['page'] === "generate") { $letter_details = $_POST; // Need to create a new student variable because request does not set the student number attribute $studentProfile = new \Ventus\Student\StudentProfile($dbo); $email_letter_utility = new \Ventus\Utilities\EmailLetterUtility($studentProfile); $email_letter = $email_letter_utility->generateEmailLetter($model, $letter_details); //We trigger an email to course professor(s) if this option was checked on the UI if ($letter_details['send_email'] === '1') { $pdf_utility = new \Ventus\Utilities\PdfUtility(); $email_letter_utility->triggerEmailLetter($email_letter, $pdf_utility); $loggers['audit']->info("EmailLetter triggered for student {$letter_details['student_num']} ?"); } } elseif ($_GET['page'] === "fetch-email") { $content = $model->getSentTemplate($_POST['email_letter_id']); $content = htmlspecialchars_decode($content[0]['content']); echo $content; } elseif ($_GET['page'] === "switch-hidden-status") { $model->switchLetterEmailHiddenStatus($_GET['id'], $_GET['hidden']); $loggers['audit']->info("Hidden status for letter/email {$_GET['id']} changed to {$_GET['hidden']}"); if (ctype_digit($_GET['student_num'])) {
echo '<br><br>'; $model->resendEmailConfirmation($u); $loggers['audit']->info("Confirmation email resent to requestor for NOE (confirmation ID: {$u['confirmation_key']})"); } } } elseif ($_GET['page'] === "send-cam-to-profs") { $semester = \Ventus\Utilities\Functions::fetchSemester(); $semester = $semester['now_short']; $students = $model->fetchStudentsWhoseProfessorsNeedCam(); foreach ($students as $s) { //Fetch all courses for the current semester $courses_this_semester = $student_profile->fetchStudentCoursesForSemesterForCam($s['student_num'], $semester); if (!empty($courses_this_semester)) { foreach ($courses_this_semester as $cts) { $letter_details = array('acc_mode' => $cts['code'] . '-' . (empty($cts['section']) ? 'null' : $cts['section']) . '-' . $cts['session'], 'mode' => 'letter', 'template_id' => CAM_LETTER_ID_FRENCH, 'emp_id' => CAM_LETTER_GENERATOR_EMPLOYEE_ID, 'student_num' => $s['student_num'], 'access_username' => $s['email'], 'year_of_study' => $s['year_of_study']); $email_letter_utility = new \Ventus\Utilities\EmailLetterUtility($student_profile); $email_letter_generator = new \Ventus\Specialist\EmailLetterGenerator(); $email_letter = $email_letter_utility->generateEmailLetter($email_letter_generator, $letter_details, $cts); $pdf_utility = new \Ventus\Utilities\PdfUtility(); $email_letter_utility->triggerEmailLetter($email_letter, $pdf_utility); $loggers['audit']->info("CAM sent to professor for student {$s['student_num']} -> " . print_r($cts, true)); } } } } elseif ($_GET['page'] === "send-final-exam-reminders") { $final_exams_from_registrar = $model->fetchAutoImportedNOE($_GET['session']); //For each of those final exams, check if there are any ventus students foreach ($final_exams_from_registrar as $f) { if ($model->verifyConfirmationExistsForNOE($f['exam_request_id'])) { $model->sendFinalExamReminder($f['cid'], $f['course_code'], $f['course_section'], $f['session'], $f['teach_method']); $loggers['audit']->info("Final exam reminder sent to professor for NOE (confirmation ID: {$f['cid']})");