MDL-9628 At the suggestion of Tim Hunt, interchanged the position of grade letter...
[moodle-pu.git] / mod / assignment / index.php
blob5e35a949806550e51e9334317f2d907e07792ed4
1 <?php // $Id$
3 require_once("../../config.php");
4 require_once("lib.php");
6 $id = required_param('id', PARAM_INT); // course
8 if (! $course = get_record("course", "id", $id)) {
9 error("Course ID is incorrect");
12 require_course_login($course);
13 add_to_log($course->id, "assignment", "view all", "index.php?id=$course->id", "");
15 $strassignments = get_string("modulenameplural", "assignment");
16 $strassignment = get_string("modulename", "assignment");
17 $strassignmenttype = get_string("assignmenttype", "assignment");
18 $strweek = get_string("week");
19 $strtopic = get_string("topic");
20 $strname = get_string("name");
21 $strduedate = get_string("duedate", "assignment");
22 $strsubmitted = get_string("submitted", "assignment");
23 $strgrade = get_string("grade");
25 $navlinks = array();
26 $navlinks[] = array('name' => $strassignments, 'link' => '', 'type' => 'activity');
27 $navigation = build_navigation($navlinks);
29 print_header_simple($strassignments, "", $navigation, "", "", true, "", navmenu($course));
31 if (! $assignments = get_all_instances_in_course("assignment", $course)) {
32 notice(get_string('noassignments', 'assignment'), "../../course/view.php?id=$course->id");
33 die;
36 $timenow = time();
38 if ($course->format == "weeks") {
39 $table->head = array ($strweek, $strname, $strassignmenttype, $strduedate, $strsubmitted, $strgrade);
40 $table->align = array ("center", "left", "left", "left", "right");
41 } else if ($course->format == "topics") {
42 $table->head = array ($strtopic, $strname, $strassignmenttype, $strduedate, $strsubmitted, $strgrade);
43 $table->align = array ("center", "left", "left", "left", "right");
44 } else {
45 $table->head = array ($strname, $strassignmenttype, $strduedate, $strsubmitted, $strgrade);
46 $table->align = array ("left", "left", "left", "right");
49 $currentgroup = get_and_set_current_group($course, groupmode($course));
50 if ($currentgroup and has_capability('moodle/site:accessallgroups', get_context_instance(CONTEXT_COURSE, $id))) {
51 $group = groups_get_group($currentgroup, false);
52 $groupname = " ($group->name)";
53 } else {
54 $groupname = "";
57 $currentsection = "";
59 $types = assignment_types();
61 foreach ($assignments as $assignment) {
63 if (!file_exists($CFG->dirroot.'/mod/assignment/type/'.$assignment->assignmenttype.'/assignment.class.php')) {
64 continue;
67 require_once ($CFG->dirroot.'/mod/assignment/type/'.$assignment->assignmenttype.'/assignment.class.php');
68 $assignmentclass = 'assignment_'.$assignment->assignmenttype;
69 $assignmentinstance = new $assignmentclass($assignment->coursemodule);
71 $submitted = $assignmentinstance->submittedlink();
73 $grade = '-';
74 if ($submission = $assignmentinstance->get_submission($USER->id)) {
75 if ($submission->timemarked) {
76 $grade = $assignmentinstance->display_grade($submission->grade);
80 $type = $types[$assignment->assignmenttype];
82 $due = $assignment->timedue ? userdate($assignment->timedue) : '-';
83 if (!$assignment->visible) {
84 //Show dimmed if the mod is hidden
85 $link = "<a class=\"dimmed\" href=\"view.php?id=$assignment->coursemodule\">".format_string($assignment->name,true)."</a>";
86 } else {
87 //Show normal if the mod is visible
88 $link = "<a href=\"view.php?id=$assignment->coursemodule\">".format_string($assignment->name,true)."</a>";
91 $printsection = "";
92 if ($assignment->section !== $currentsection) {
93 if ($assignment->section) {
94 $printsection = $assignment->section;
96 if ($currentsection !== "") {
97 $table->data[] = 'hr';
99 $currentsection = $assignment->section;
102 if ($course->format == "weeks" or $course->format == "topics") {
103 $table->data[] = array ($printsection, $link, $type, $due, $submitted, $grade);
104 } else {
105 $table->data[] = array ($link, $type, $due, $submitted, $grade);
109 echo "<br />";
111 print_table($table);
113 print_footer($course);