$ERRORSTR[] = "Your account does not have the permissions required to use this feature of this module.<br /><br />If you believe you are receiving this message in error please contact <a href=\"mailto:" . html_encode($AGENT_CONTACTS["administrator"]["email"]) . "\">" . html_encode($AGENT_CONTACTS["administrator"]["name"]) . "</a> for assistance."; echo display_error(); application_log("error", "Group [" . $_SESSION["permissions"][$ENTRADA_USER->getAccessId()]["group"] . "] and role [" . $_SESSION["permissions"][$ENTRADA_USER->getAccessId()]["role"] . "] does not have access to this module [" . $MODULE . "]"); } else { ini_set('auto_detect_line_endings', true); $HEAD[] = "<script type=\"text/javascript\" src=\"" . ENTRADA_URL . "/javascript/eventtypes_list.js?release=" . html_encode(APPLICATION_VERSION) . "\"></script>"; $HEAD[] = "<script type=\"text/javascript\" src=\"" . ENTRADA_URL . "/javascript/AutoCompleteList.js?release=" . html_encode(APPLICATION_VERSION) . "\"></script>"; echo "<script language=\"text/javascript\">var DELETE_IMAGE_URL = '" . ENTRADA_URL . "/images/action-delete.gif';</script>"; $BREADCRUMB[] = array("url" => ENTRADA_URL . "/admin/course/groups?" . replace_query(array("section" => "add")), "title" => "Add Course Group"); $group_type = "individual"; $group_populate = "group_number"; $number_of_groups = ""; $populate = 0; $GROUP_IDS = array(); $course_details = $db->GetRow("SELECT * FROM `courses` WHERE `course_id` = " . $db->qstr($COURSE_ID)); courses_subnavigation($course_details, "groups"); echo "<h2>Add Group</h2>\n"; // Error Checking switch ($STEP) { case 2: /* * CSV file format "group_name, first_name, last_name, status, entrada_id" */ $PROCESSED["updated_date"] = time(); $PROCESSED["updated_by"] = $ENTRADA_USER->getID(); /** * Required field "prefix" / Group Name. */ if (isset($_POST["prefix"]) && ($group_prefix = clean_input($_POST["prefix"], array("notags", "trim")))) { $PROCESSED["group_name"] = $group_prefix; } else {
} } else { $clinical_presentations_list = false; } if (isset($_POST["clinical_presentations"]) && is_array($_POST["clinical_presentations"]) && count($_POST["clinical_presentations"])) { foreach ($_POST["clinical_presentations"] as $objective_id) { if ($objective_id = clean_input($objective_id, array("trim", "int"))) { $query = "SELECT a.`objective_id`\n\t\t\t\t\t\t\t\t\t\tFROM `global_lu_objectives` AS a\n\t\t\t\t\t\t\t\t\t\tJOIN `objective_organisation` AS b\n\t\t\t\t\t\t\t\t\t\tON a.`objective_id` = b.`objective_id`\n\t\t\t\t\t\t\t\t\t\tWHERE a.`objective_id` = " . $db->qstr($objective_id) . "\n\t\t\t\t\t\t\t\t\t\tAND b.`organisation_id` = " . $db->qstr($ENTRADA_USER->getActiveOrganisation()) . "\n\t\t\t\t\t\t\t\t\t\tORDER BY a.`objective_order` ASC"; $result = $db->GetRow($query); if ($result) { $clinical_presentations[$objective_id] = $clinical_presentations_list[$objective_id]; } } } } courses_subnavigation($course_details, "details"); echo "<h1>Editing " . $module_singular_name . "</h1>\n"; $PROCESSED["permission"] = $course_details["permission"]; $PROCESSED["sync_ldap"] = $course_details["sync_ldap"]; $PROCESSED["sync_ldap_courses"] = $course_details["sync_ldap_courses"]; // Error Checking switch ($STEP) { case 2: if ($ENTRADA_ACL->amIAllowed(new CourseResource($COURSE_ID, $ENTRADA_USER->getActiveOrganisation()), "update")) { $PROCESSED["organisation_id"] = $ENTRADA_USER->getActiveOrganisation(); } else { add_error("You do not have permission to update a course for this organisation. This error has been logged and will be investigated."); application_log("error", "Proxy id [" . $ENTRADA_USER->getID() . "] tried to create a course within an organisation [" . $ENTRADA_USER->getActiveOrganisation() . "] they didn't have permissions on. "); } /** * Non-required field "curriculum_type_id" / Curriculum Category
* @copyright Copyright 2013 Queen's University. All Rights Reserved. * */ if (!defined("IN_COURSE_REPORTS")) { exit; } elseif (!isset($_SESSION["isAuthorized"]) || !$_SESSION["isAuthorized"]) { header("Location: " . ENTRADA_URL); exit; } elseif (!$ENTRADA_ACL->amIAllowed(new CourseContentResource($COURSE_ID, $ENTRADA_USER->getActiveOrganisation(), true), "update")) { add_error("Your account does not have the permissions required to use this feature of this module.<br /><br />If you believe you are receiving this message in error please contact <a href=\"mailto:" . html_encode($AGENT_CONTACTS["administrator"]["email"]) . "\">" . html_encode($AGENT_CONTACTS["administrator"]["name"]) . "</a> for assistance."); echo display_error(); application_log("error", "Group [" . $GROUP . "] and role [" . $ROLE . "] does not have access to this module [" . $MODULE . "]"); } else { $query = "\tSELECT * FROM `courses`\n\t\t\t\tWHERE `course_id` = " . $db->qstr($COURSE_ID) . "\n\t\t\t\tAND `course_active` = '1'"; $course_details = $db->GetRow($query); courses_subnavigation($course_details, "reports"); $query = "\tSELECT *\n\t\t\t\tFROM `course_lu_reports` a\n\t\t\t\tJOIN `course_reports` b\n\t\t\t\tON a.`course_report_id` = b.`course_report_id`\n\t\t\t\tWHERE b.`course_id` = " . $db->qstr($COURSE_ID) . "\n\t\t\t\tORDER BY a.`course_report_title` ASC"; $reports = $db->getAll($query); ?> <h1>Available Reports</h1> <?php if ($reports) { ?> <ul> <?php foreach ($reports as $report) { ?> <li> <a href="<?php echo ENTRADA_URL . '/admin/courses/reports?section=' . $report["section"] . '&id=' . $COURSE_ID;
} } /** * Add PlotKit to the beginning of the $HEAD array. */ array_unshift($HEAD, "<script type=\"text/javascript\" src=\"" . ENTRADA_URL . "/javascript/MochiKit/MochiKit.js\"></script>", "<script type=\"text/javascript\" src=\"" . ENTRADA_URL . "/javascript/PlotKit/excanvas.js\"></script>", "<script type=\"text/javascript\" src=\"" . ENTRADA_URL . "/javascript/PlotKit/Base.js\"></script>", "<script type=\"text/javascript\" src=\"" . ENTRADA_URL . "/javascript/PlotKit/Layout.js\"></script>", "<script type=\"text/javascript\" src=\"" . ENTRADA_URL . "/javascript/PlotKit/Canvas.js\"></script>", "<script type=\"text/javascript\" src=\"" . ENTRADA_URL . "/javascript/PlotKit/SweetCanvas.js\"></script>", "<script type=\"text/javascript\" src=\"" . ENTRADA_URL . "/javascript/PlotKit/EasyPlot.js\"></script>"); if ($COURSE_ID) { $query = "SELECT * FROM `courses` \n\t\t\t\t\tWHERE `course_id` = " . $db->qstr($COURSE_ID) . "\n\t\t\t\t\tAND `course_active` = '1'"; $course_details = $db->GetRow($query); if ($course_details && $ENTRADA_ACL->amIAllowed(new GradebookResource($course_details["course_id"], $course_details["organisation_id"]), "read")) { $query = " SELECT a.*, b.`cohort`, c.`id` AS `marking_scheme_id`, c.`handler`, c.`description` as `marking_scheme_description`\n FROM `assignments` AS a\n JOIN `assessments` AS b\n ON a.`assessment_id` = b.`assessment_id`\n LEFT JOIN `assessment_marking_schemes` AS c\n ON c.`id` = b.`marking_scheme_id`\n WHERE a.`assignment_id` = " . $db->qstr($ASSIGNMENT_ID) . "\n AND b.`active` = 1\n AND a.`assignment_active` = '1'"; $assignment = $db->GetRow($query); if ($assignment) { $BREADCRUMB[] = array("url" => ENTRADA_URL . "/admin/gradebook/assessments?" . replace_query(array("section" => "grade", "id" => $COURSE_ID, "step" => false)), "title" => $assignment["assignment_title"]); $COHORT = $assignment["cohort"]; courses_subnavigation($course_details, "gradebook"); echo "<div class=\"content-small\">"; if ($COURSE_ID) { $curriculum_path = curriculum_hierarchy($COURSE_ID); if (is_array($curriculum_path) && count($curriculum_path)) { echo implode(" > ", $curriculum_path); } } else { echo "No Associated Course"; } echo "</div>\n"; ?> <style type="text/css"> .sortableList li { width: 100%; }
exit; } elseif (!isset($_SESSION["isAuthorized"]) || !$_SESSION["isAuthorized"]) { header("Location: " . ENTRADA_URL); exit; } elseif (!$ENTRADA_ACL->amIAllowed("gradebook", "delete", false)) { $ONLOAD[] = "setTimeout('window.location=\\'" . ENTRADA_URL . "/admin/" . $MODULE . "\\'', 15000)"; $ERROR++; $ERRORSTR[] = "Your account does not have the permissions required to use this feature of this module.<br /><br />If you believe you are receiving this message in error please contact <a href=\"mailto:" . html_encode($AGENT_CONTACTS["administrator"]["email"]) . "\">" . html_encode($AGENT_CONTACTS["administrator"]["name"]) . "</a> for assistance."; echo display_error(); application_log("error", "Group [" . $_SESSION["permissions"][$ENTRADA_USER->getAccessId()]["group"] . "] and role [" . $_SESSION["permissions"][$ENTRADA_USER->getAccessId()]["role"] . "] does not have access to this module [" . $MODULE . "]"); } else { if ($COURSE_ID) { $query = "\tSELECT * FROM `courses` \n\t\t\t\t\t\t\tWHERE `course_id` = " . $db->qstr($COURSE_ID) . "\n\t\t\t\t\t\t\tAND `course_active` = '1'"; $course_details = $db->GetRow($query); if ($course_details && $ENTRADA_ACL->amIAllowed(new GradebookResource($course_details["course_id"], $course_details["organisation_id"]), "update")) { courses_subnavigation($course_details); $curriculum_path = curriculum_hierarchy($COURSE_ID); if (is_array($curriculum_path) && count($curriculum_path)) { echo "<h1>" . implode(": ", $curriculum_path) . " Gradebook </h1>"; } echo "<br />"; $ASSESSMENT_IDS = array(); $INDEX_URL = ENTRADA_URL . "/admin/gradebook?" . replace_query(array("section" => "view", "step" => false)); // Error Checking switch ($STEP) { case 2: case 1: default: if (!isset($_POST["delete"]) || !is_array($_POST["delete"]) || !@count($_POST["delete"])) { $ERROR++; $ERRORSTR[] = "You must select at least 1 assessment to delete by checking the checkbox to the left the assessment.";
*/ if (!defined("PARENT_INCLUDED") || !defined("IN_COURSE_ENROLMENT")) { exit; } elseif (!isset($_SESSION["isAuthorized"]) || !$_SESSION["isAuthorized"]) { header("Location: " . ENTRADA_URL); exit; } elseif (!$ENTRADA_ACL->amIAllowed('course', 'update', false)) { $ONLOAD[] = "setTimeout('window.location=\\'" . ENTRADA_URL . "/admin/" . $MODULE . "\\'', 15000)"; $ERROR++; $ERRORSTR[] = "You do not have the permissions required to use this module.<br /><br />If you believe you are receiving this message in error please contact <a href=\"mailto:" . html_encode($AGENT_CONTACTS["administrator"]["email"]) . "\">" . html_encode($AGENT_CONTACTS["administrator"]["name"]) . "</a> for assistance."; echo display_error(); application_log("error", "Group [" . $_SESSION["permissions"][$ENTRADA_USER->getAccessId()]["group"] . "] and role [" . $_SESSION["permissions"][$ENTRADA_USER->getAccessId()]["role"] . "] do not have access to this module [" . $MODULE . "]"); } else { $course = Models_Course::get($COURSE_ID); if ($course) { courses_subnavigation($course->toArray(), "enrolment"); $curriculum_periods = Models_CurriculumPeriod::fetchRowByCurriculumTypeIDCourseID($course->getCurriculumTypeID(), $course->getID()); if ($curriculum_periods) { if (isset($_GET["cperiod_id"]) && ($temp = clean_input($_GET["cperiod_id"], array("trim", "int")))) { $cperiod_id = $temp; } $course_audience = $course->getMembers($cperiod_id); if (isset($_GET["download"]) && ($type = clean_input($_GET["download"], array("trim", "striptags")))) { switch ($type) { case "csv": ob_clean(); if ($course_audience) { $output = ""; $num_members = 0; foreach ($course_audience as $audience_type => $audience_type_members) { if ($audience_type == "groups") {
text[id] = $('objective_text_'+id).value; $('objective_text_'+id).remove(); } } } </script> <?php $sub_query = "SELECT `proxy_id` FROM `course_contacts` WHERE `course_contacts`.`course_id`=" . $db->qstr($COURSE_ID) . " AND `course_contacts`.`contact_type` = 'director' ORDER BY `contact_order` ASC"; $sub_results = $db->GetAll($sub_query); if ($sub_results) { foreach ($sub_results as $sub_result) { $OTHER_DIRECTORS[] = $sub_result["proxy_id"]; } } require_once ENTRADA_ABSOLUTE . "/javascript/courses.js.php"; courses_subnavigation($course_details, "content"); echo "<h1 id=\"page-top\">" . html_encode($course_details["course_name"]) . "</h1>\n"; if ($SUCCESS) { echo display_success(); } if ($NOTICE) { echo display_notice(); } if ($ERROR) { echo display_error(); } ?> <a name="course-details-section"></a> <h2 title="Course Details Section"><?php echo $module_singular_name; ?>
case "list": if ($clean_emails) { echo json_encode(array("status" => "success", "data" => implode(";", $clean_emails))); } else { echo json_encode(array("status" => "error", "data" => array("An error occured while attempting to get teacher email addresses."))); } break; } } else { echo json_encode(array("status" => "error", "data" => array("No method provided."))); } exit; } $course = Models_Course::get($COURSE_ID); if ($course) { courses_subnavigation($course->toArray(), "reports"); $original_preferences = preferences_load("courses"); if (isset($original_preferences["teacher_report_start"]) && isset($original_preferences["teacher_report_finish"])) { $PROCESSED["start_date"] = (int) $original_preferences["teacher_report_start"]; $PROCESSED["finish_date"] = (int) $original_preferences["teacher_report_finish"]; $teachers = $course->getTeachersByDates($PROCESSED["start_date"], $PROCESSED["finish_date"]); if (!$teachers) { add_notice("No Teachers found between " . date("Y-m-d", $PROCESSED["start_date"]) . " and " . date("Y-m-d", $PROCESSED["finish_date"]) . ""); } } //Error checking switch ($STEP) { case 2: if (isset($_POST["start_date"])) { $PROCESSED["start_date"] = validate_calendar("Start Date", "start", false); }