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 = '<table class="cal_controls" style="width: 98%;">';
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 '<p>';
echo calendar_top_controls('display', array('m' => $prevmon, 'y' => $prevyr));
echo calendar_get_mini($courses, $groups, $users, $prevmon, $prevyr);