From: defacer Date: Thu, 6 May 2004 07:45:10 +0000 (+0000) Subject: Fix for 3-month pane event filters, now you don't get a "missing required parameter" X-Git-Url: http://git.mjollnir.org/gw?a=commitdiff_plain;h=d715f7c4c0645bd3ebc33c60ced70064282ff420;p=moodle.git Fix for 3-month pane event filters, now you don't get a "missing required parameter" error when you click on them. Reported by Ger Tielemans in the forums. --- diff --git a/calendar/lib.php b/calendar/lib.php index ca9f821db2..0339d4059f 100644 --- a/calendar/lib.php +++ b/calendar/lib.php @@ -569,32 +569,38 @@ function calendar_top_controls($type, $data) { return $content; } -function calendar_filter_controls($type) { +function calendar_filter_controls($type, $vars = NULL) { global $CFG, $SESSION; $groupevents = true; - switch($type) { - case 'upcoming': - $getvars = ''; - break; - case 'prefs': - $getvars = '&from=prefs&pref='.$_GET['edit']; - break; - case 'event': - global $day, $mon, $yr; - $getvars = '&from=event&id='.$_GET['id']; - break; - case 'day': - global $day, $mon, $yr; - $getvars = '&from=day&cal_d='.$day.'&cal_m='.$mon.'&cal_y='.$yr; - break; - case 'course': - global $course; - $getvars = '&from=course&id='.$course->id; - if($course->groupmode == NOGROUPS && $course->groupmodeforce) { - $groupevents = false; - } - break; + + if($vars === NULL) { + switch($type) { + case 'upcoming': + $getvars = ''; + break; + case 'prefs': + $getvars = '&from=prefs&pref='.$_GET['edit']; + break; + case 'event': + global $day, $mon, $yr; + $getvars = '&from=event&id='.$_GET['id']; + break; + case 'day': + global $day, $mon, $yr; + $getvars = '&from=day&cal_d='.$day.'&cal_m='.$mon.'&cal_y='.$yr; + break; + case 'course': + global $course; + $getvars = '&from=course&id='.$course->id; + if($course->groupmode == NOGROUPS && $course->groupmodeforce) { + $groupevents = false; + } + break; + } + } + else { + $getvars = '&'.$vars; } $content = ''; diff --git a/calendar/view.php b/calendar/view.php index 90418fb547..178f7d87ff 100644 --- a/calendar/view.php +++ b/calendar/view.php @@ -171,7 +171,8 @@ print_side_block_start(get_string('monthlyview', 'calendar'), '', 'sideblockmain'); list($prevmon, $prevyr) = calendar_sub_month($mon, $yr); list($nextmon, $nextyr) = calendar_add_month($mon, $yr); - echo calendar_filter_controls($_GET['view']); + $getvars = 'from=month&cal_d='.$day.'&cal_m='.$mon.'&cal_y='.$yr; // For filtering + echo calendar_filter_controls($_GET['view'], $getvars); echo '

'; echo calendar_top_controls('display', array('m' => $prevmon, 'y' => $prevyr)); echo calendar_get_mini($courses, $groups, $users, $prevmon, $prevyr);