course)) { error("Course is misconfigured"); } if (! $attforblock = get_record("attforblock", "id", $cm->instance)) { error("Course module is incorrect"); } } else { error("Module id is incorrect."); // if (! $attforblock = get_record("attforblock", "id", $a)) { // error("Course module is incorrect"); // } // if (! $course = get_record("course", "id", $attforblock->course)) { // error("Course is misconfigured"); // } // if (! $cm = get_coursemodule_from_instance("attforblock", $attforblock->id, $course->id)) { // error("Course Module ID was incorrect"); // } } require_login($course->id); if (!$context = get_context_instance(CONTEXT_MODULE, $cm->id)) { print_error('badcontext'); } if (!$studentid && (has_capability('mod/attforblock:manageattendances', $context) || has_capability('mod/attforblock:takeattendances', $context) || has_capability('mod/attforblock:changeattendances', $context))) { redirect("manage.php?id=$cm->id"); } if (!$studentid && has_capability('mod/attforblock:viewreports', $context)) { redirect("report.php?id=$cm->id"); } if (! $user = get_record('user', 'id', $USER->id) ) { error("No such user in this course"); } require_capability('mod/attforblock:view', $context); $student = false; if ($studentid) { if ($studentid == $USER->id or has_capability('mod/attforblock:viewreports', $context)) { if (!$student = get_record('user', 'id', $studentid) ) { error("No such user in this course"); } } } // if (empty($student) && has_capability('mod/attforblock:manageattendances', $context)) { // redirect("manage.php?id=$cm->id"); // } if ($student) { $user = $student; } if ($printing) { if ($mode === 'thiscourse') { print_header('', $course->fullname.' - '.get_string('attendancereport','attforblock')); print_user_attendaces($user, $cm, $attforblock, $course, 'printing'); } else { print_header('', get_string('attendancereport','attforblock')); print_user_attendaces($user, $cm, $attforblock, 0, 'printing'); } exit(); } /// Print headers $navlinks[] = array('name' => $attforblock->name, 'link' => "view.php?id=$id", 'type' => 'activityinstance'); $navlinks[] = array('name' => get_string('attendancereport', 'attforblock'), 'link' => null, 'type' => 'title'); $navigation = build_navigation($navlinks); print_header("$course->shortname: ".$attforblock->name.' - ' .get_string('export', 'quiz'), $course->fullname, $navigation, "", "", true, " ", navmenu($course)); //add info to log add_to_log($course->id, 'attendance', 'student view', "mod/attforblock/view.php?course=$course->id&student=$USER->id", $USER->lastname.' '.$USER->firstname); // print_heading(get_string('attendanceforthecourse','attforblock').' :: ' .$course->fullname); /// Prints out tabs $currenttab = $mode; $studstr = $student ? '&student='.$student->id : ''; $toprow = array(); $toprow[] = new tabobject('thiscourse', "view.php?id=$id&mode=thiscourse{$studstr}", get_string('thiscourse','attforblock')); $toprow[] = new tabobject('allcourses', "view.php?id=$id&mode=allcourses{$studstr}", get_string('allcourses','attforblock')); print_tabs(array($toprow), $currenttab); if ($mode === 'thiscourse') { print_user_attendaces($user, $cm, $attforblock, $course); } else { print_user_attendaces($user, $cm, $attforblock); } print_footer($course); ?>