aboutsummaryrefslogtreecommitdiffstats
path: root/functions/list_icals.php
blob: 8ca60d15657ccf28058b3f0a9ee1eb17f5470bcc (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
<?php
if ($display_ical_list == "yes") {

	// start of <select> tag
	if (isset($getdate)) {
		$query="&getdate=$getdate";
	} else {
		$query="";
	}
	print "<form>\n<select name=\"action\" class=\"query_style\" onChange=\"window.location=(this.options[this.selectedIndex].value+'$query');\">\n";
	
	// open file
	$dir_handle = @opendir($calendar_path) or die("Unable to open $calendar_path");
	
	// build the <option> tags
	while ($file = readdir($dir_handle)) {
		if (substr($file, -4) == ".ics") {
			// $cal_filename is the filename of the calendar without .ics
			// $cal is a urlencoded version of $cal_filename
			// $cal_displayname is $cal_filename with occurrences of "32" replaced with " "
			$cal_filename_tmp = substr($file,0,-4);
			$cal_tmp = urlencode($cal_filename_tmp);
			$cal_displayname_tmp = str_replace("32", " ", $cal_filename_tmp);
			
			if ($cal_tmp == $cal) {
				print "<option value=\"$current_view.php?cal=$cal_tmp\" selected>$cal_displayname_tmp Calendar</option>\n";
			} else {
				print "<option value=\"$current_view.php?cal=$cal_tmp\">$cal_displayname_tmp Calendar</option>\n";	
			}			
		}
	}			
	
	// close file
	closedir($dir_handle);
	
	// finish <select>
	print "</select>\n</form>";
	
}
?>	

© 2014-2024 Faster IT GmbH | imprint | privacy policy