3 if ( empty ( $PHP_SELF ) && ! empty ( $_SERVER ) &&
4 ! empty ( $_SERVER['PHP_SELF'] ) ) {
5 $PHP_SELF = $_SERVER['PHP_SELF'];
7 if ( ! empty ( $PHP_SELF ) && preg_match ( "/\/includes\//", $PHP_SELF ) ) {
8 die ( "You can't access this file directly!" );
11 // NOTE: This file is included within the print_trailer function found
12 // in includes/init.php. If you add a global variable somewhere in this
13 // file, be sure to declare it global in the print_trialer function
18 <form action="month.php" method="get" name="SelectMonth" id="monthform">
20 if ( ! empty ( $user ) && $user != $login ) {
21 echo "<input type=\"hidden\" name=\"user\" value=\"$user\" />\n";
23 if ( ! empty ( $cat_id ) && $categories_enabled == "Y"
24 && ( ! $user || $user == $login ) ) {
25 echo "<input type=\"hidden\" name=\"cat_id\" value=\"$cat_id\" />\n";
28 <label for="monthselect"><?php etranslate("Month")?>: </label>
29 <select name="date" id="monthselect" onchange="document.SelectMonth.submit()">
31 if ( ! empty ( $thisyear ) && ! empty ( $thismonth ) ) {
38 $d_time = mktime ( 3, 0, 0, $m, 1, $y );
39 $thisdate = date ( "Ymd", $d_time );
41 for ( $i = 0; $i < 25; $i++ ) {
47 $d = mktime ( 3, 0, 0, $m, 1, $y );
48 echo "<option value=\"" . date ( "Ymd", $d ) . "\"";
49 if ( date ( "Ymd", $d ) == $thisdate ) {
50 echo " selected=\"selected\"";
53 echo date_to_str ( date ( "Ymd", $d ), $DATE_FORMAT_MY, false, true );
58 <input type="submit" value="<?php etranslate("Go")?>" />
61 <form action="week.php" method="get" name="SelectWeek" id="weekform">
63 if ( ! empty ( $user ) && $user != $login ) {
64 echo "<input type=\"hidden\" name=\"user\" value=\"$user\" />\n";
66 if ( ! empty ( $cat_id ) && $categories_enabled == "Y"
67 && ( ! $user || $user == $login ) ) {
68 echo "<input type=\"hidden\" name=\"cat_id\" value=\"$cat_id\" />\n";
71 <label for="weekselect"><?php etranslate("Week")?>: </label>
72 <select name="date" id="weekselect" onchange="document.SelectWeek.submit()">
74 if ( ! empty ( $thisyear ) && ! empty ( $thismonth ) ) {
81 if ( ! empty ( $thisday ) ) {
86 $d_time = mktime ( 3, 0, 0, $m, $d, $y );
87 $thisdate = date ( "Ymd", $d_time );
88 $wday = date ( "w", $d_time );
89 // $WEEK_START equals 1 or 0
90 $wkstart = mktime ( 3, 0, 0, $m, $d - ( $wday - $WEEK_START ), $y );
92 for ( $i = -7; $i <= 7; $i++ ) {
93 $twkstart = $wkstart + ( 3600 * 24 * 7 * $i );
94 $twkend = $twkstart + ( 3600 * 24 * 6 );
95 echo "<option value=\"" . date ( "Ymd", $twkstart ) . "\"";
96 if ( date ( "Ymd", $twkstart ) <= $thisdate &&
97 date ( "Ymd", $twkend ) >= $thisdate ) {
98 echo " selected=\"selected\"";
101 if ( ! empty ( $GLOBALS['PULLDOWN_WEEKNUMBER'] ) && $GLOBALS['PULLDOWN_WEEKNUMBER'] = "Y" ) {
102 echo "(" . week_number ( $twkstart ) . ") ";
105 date_to_str ( date ( "Ymd", $twkstart ), $DATE_FORMAT_MD, false, true ),
106 date_to_str ( date ( "Ymd", $twkend ), $DATE_FORMAT_MD, false, true ) );
111 <input type="submit" value="<?php etranslate("Go")?>" />
114 <form action="year.php" method="get" name="SelectYear" id="yearform">
116 if ( ! empty ( $user ) && $user != $login ) {
117 echo "<input type=\"hidden\" name=\"user\" value=\"$user\" />\n";
119 if ( ! empty ( $cat_id ) && $categories_enabled == "Y"
120 && ( ! $user || $user == $login ) ) {
121 echo "<input type=\"hidden\" name=\"cat_id\" value=\"$cat_id\" />\n";
124 <label for="yearselect"><?php etranslate("Year")?>: </label>
125 <select name="year" id="yearselect" onchange="document.SelectYear.submit()">
127 if ( ! empty ( $thisyear ) ) {
132 for ( $i = $y - 4; $i < $y + 4; $i++ ) {
133 echo "<option value=\"$i\"";
135 echo " selected=\"selected\"";
137 echo ">$i</option>\n";
141 <input type="submit" value="<?php etranslate("Go")?>" />
146 $goto_link = array ( );
147 $views_link = array ( );
148 $reports_link = array ( );
149 $manage_calendar_link = array ( );
152 $can_add = ( $readonly == "N" );
153 if ( $public_access == "Y" && $public_access_can_add != "Y" &&
154 $login == "__public__" ) {
158 if ( ! empty ( $GLOBALS['STARTVIEW'] ) ) {
159 $mycal = $GLOBALS['STARTVIEW'];
161 $mycal = "index.php";
165 $todayURL = 'month.php';
166 $reqURI = 'month.php';
167 if ( ! empty ( $GLOBALS['SCRIPT_NAME'] ) ) {
168 $reqURI = $GLOBALS['SCRIPT_NAME'];
169 } else if ( ! empty ( $_SERVER['SCRIPT_NAME'] ) ) {
170 $reqURI = $_SERVER['SCRIPT_NAME'];
172 if ( ! strstr ( $reqURI, "month.php" ) &&
173 ! strstr ( $reqURI, "week.php" ) &&
174 ! strstr ( $reqURI, "day.php" ) ) {
175 $todayURL = 'day.php';
180 if ( $single_user != "Y" ) {
181 if ( ! empty ( $user ) && $user != $login ) {
182 /* $goto_link[] = "<a title=\"" .
183 translate("My Calendar") . "\" style=\"font-weight:bold;\" " .
185 translate("Back to My Calendar") . "</a>";
189 $goto_link[] = "<a title=\"" .
190 translate("My Calendar") . "\" style=\"font-weight:bold;\" " .
192 translate("My Calendar") . "</a>";
195 if ( ! empty ( $user ) && $user != $login ) {
196 $todayURL .= '?user=' . $user;
199 $goto_link[] = "<a title=\"" .
200 translate("Today") . "\" style=\"font-weight:bold;\" " .
201 "href=\"$todayURL\">" .
202 translate("Today") . "</a>";
204 if ( $login != '__public__' && $readonly == 'N' ) {
205 $goto_link[] = "<a title=\"" .
206 translate("Admin") . "\" style=\"font-weight:bold;\" " .
207 "href=\"adminhome.php\">" .
208 translate("Admin") . "</a>";
210 if ( $login != "__public__" && $readonly == "N" &&
211 ( $require_approvals == "Y" || $public_access == "Y" ) ) {
212 $url = 'list_unapproved.php';
213 if ($is_nonuser_admin) {
214 $url .= "?user=$user";
216 $goto_link[] = "<a title=\"" .
217 translate("Unapproved Events") . "\" href=\"$url\">" .
218 translate("Unapproved Events") . "</a>";
220 if ( $login == "__public__" && $public_access_others != "Y" ) {
221 // don't allow them to see other people's calendar
222 } else if ( $allow_view_other == "Y" || $is_admin ) {
224 $goto_link[] = "<a title=\"" .
225 translate("Another User's Calendar") . "\" href=\"select_user.php\">" .
226 translate("Another User's Calendar") . "</a>";
230 $goto_link[] = "<a title=\"" .
231 translate("My Calendar") . "\" style=\"font-weight:bold;\" " .
233 translate("My Calendar") . "</a>";
234 $goto_link[] = "<a title=\"" .
235 translate("Today") . "\" style=\"font-weight:bold;\" " .
236 "href=\"$todayURL\">" .
237 translate("Today") . "</a>";
238 if ( $readonly == 'N' ) {
239 $goto_link[] = "<a title=\"" .
240 translate("Admin") . "\" style=\"font-weight:bold;\" " .
241 "href=\"adminhome.php\">" .
242 translate("Admin") . "</a>";
245 // only display some links if we're viewing our own calendar.
246 if ( empty ( $user ) || $user == $login ) {
247 $goto_link[] = "<a title=\"" .
248 translate("Search") . "\" href=\"search.php\">" .
249 translate("Search") . "</a>";
250 if ( $login != '__public__' ) {
251 $goto_link[] = "<a title=\"" .
252 translate("Import") . "\" href=\"import.php\">" .
253 translate("Import") . "</a>";
254 $goto_link[] = "<a title=\"" .
255 translate("Export") . "\" href=\"export.php\">" .
256 translate("Export") . "</a>";
259 $url = "<a title=\"" .
260 translate("Add New Entry") . "\" href=\"edit_entry.php";
261 if ( ! empty ( $thisyear ) ) {
262 $url .= "?year=$thisyear";
263 if ( ! empty ( $thismonth ) ) {
264 $url .= "&month=$thismonth";
266 if ( ! empty ( $thisday ) ) {
267 $url .= "&day=$thisday";
270 $url .= "\">" . translate("Add New Entry") . "</a>";
274 if ( $login != '__public__' ) {
276 $goto_link[] = "<a title=\"" .
277 translate("Help") . "\" href=\"#\" onclick=\"window.open " .
278 "( 'help_index.php', 'cal_help', 'dependent,menubar,scrollbars, " .
279 "height=400,width=400,innerHeight=420,outerWidth=420' );\" " .
280 "onmouseover=\"window.status='" .
281 translate("Help") . "'\">" .
282 translate("Help") . "</a>";
286 if ( count ( $goto_link ) > 0 ) {
287 ?><span class="prefix"><?php etranslate("Go to")?>:</span> <?php
288 for ( $i = 0; $i < count ( $goto_link ); $i++ ) {
298 if ( ( $is_admin || $allow_view_other != "N" ) && count ( $views ) > 0 ) {
299 for ( $i = 0; $i < count ( $views ); $i++ ) {
300 $out = "<a title=\"" .
301 htmlspecialchars ( $views[$i]['cal_name'] ) .
303 $out .= $views[$i]['url'];
304 if ( ! empty ( $thisdate ) )
305 $out .= "&date=$thisdate";
307 htmlspecialchars ( $views[$i]['cal_name'] ) . "</a>\n";
308 $views_link[] = $out;
312 if ( count ( $views_link ) > 0 ) {
313 ?><br /><span class="prefix"><?php etranslate("Views")?>:</span> <?php
314 for ( $i = 0; $i < count ( $views_link ); $i++ ) {
317 echo $views_link[$i];
324 $reports_link = array ();
325 if ( ! empty ( $reports_enabled ) && $reports_enabled == 'Y' ) {
326 if ( ! empty ( $user ) && $user != $login ) {
327 $u_url = "&user=$user";
331 $res = dbi_query ( "SELECT cal_report_name, cal_report_id " .
332 "FROM webcal_report " .
333 "WHERE cal_login = '$login' OR " .
334 "( cal_is_global = 'Y' AND cal_show_in_trailer = 'Y' ) " .
335 "ORDER BY cal_report_id" );
337 while ( $row = dbi_fetch_row ( $res ) ) {
338 $reports_link[] = "<a title=\"" .
339 htmlspecialchars ( $row[0] ) .
340 "\" href=\"report.php?report_id=$row[1]$u_url\">" .
341 htmlspecialchars ( $row[0] ) . "</a>";
343 dbi_free_result ( $res );
346 if ( count ( $reports_link ) > 0 ) {
347 ?><br/><span class="prefix"><?php etranslate("Reports");?>:</span> <?php
348 for ( $i = 0; $i < count ( $reports_link ); $i++ ) {
351 echo $reports_link[$i];
357 <!-- CURRENT USER -->
360 if ( ! $use_http_auth ) {
361 if ( empty ( $login_return_path ) )
362 $login_url = "login.php";
364 $login_url = "login.php?return_path=$login_return_path";
366 // Should we use another application's login/logout pages?
367 if ( substr ( $GLOBALS['user_inc'], 0, 9 ) == 'user-app-' ) {
368 if ( strlen ( $login ) && $login != "__public__" ) {
369 $login_url = $GLOBALS['app_logout_page'];
371 if ($login_return_path != '' && $GLOBALS['app_redir_param'] != '') {
372 $GLOBALS['app_login_page'] .= '?'. $GLOBALS['app_redir_param'] .
373 '=' . $login_return_path;
375 $login_url = $GLOBALS['app_login_page'];
379 if ( strlen ( $login ) && $login != "__public__" ) {
380 echo "<span class=\"prefix\">" .
381 translate("Current User") . ":</span> $fullname (<a title=\"" .
382 translate("Logout") . "\" href=\"$login_url\">" .
383 translate("Logout") . "</a>)\n";
385 echo "<span class=\"prefix\">" .
386 translate("Current User") . ":</span> " .
387 translate("Public Access") . " (<a title=\"" .
388 translate("Login") . "\" href=\"$login_url\">" .
389 translate("Login") . "</a>)\n";
394 // Manage Calendar links
395 if ( ! empty ( $nonuser_enabled ) && $nonuser_enabled == "Y" )
396 $admincals = get_nonuser_cals ( $login );
397 if ( $has_boss || ! empty ( $admincals[0] ) ||
398 ( $is_admin && $public_access ) ) {
399 $grouplist = user_get_boss_list ( $login );
400 if ( ! empty ( $admincals[0] ) ) {
401 $grouplist = array_merge ( $admincals, $grouplist );
403 if ( $is_admin && $public_access == 'Y' ) {
405 "cal_login" => "__public__",
406 "cal_fullname" => translate ( "Public Access" )
408 array_unshift ( $grouplist, $public );
411 for ( $i = 0; $i < count ( $grouplist ); $i++ ) {
412 $l = $grouplist[$i]['cal_login'];
413 $f = $grouplist[$i]['cal_fullname'];
414 // Use the preferred view if it is day/week/month/year.php. Do
415 // not use a user-created view because it might not display the
416 // proper user's events. (Fallback to month.php if this is true.)
417 $xurl = get_preferred_view ( "", "user=$l" );
418 if ( strstr ( $xurl, "view_" ) ) {
419 $xurl = "month.php?user=$l";
423 $groups .= "<a title=\"$f\" href=\"$xurl\">$f</a>";
425 if ( ! empty ( $groups ) ) {
427 echo "<br/><span class=\"prefix\">";
428 etranslate ( "Manage calendar of" );
429 echo ":</span> " . $groups;
434 // WebCalendar Info...
435 print "<br/><br/><a title=\"" . $GLOBALS['PROGRAM_NAME'] . "\" " .
436 "id=\"programname\" href=\"$GLOBALS[PROGRAM_URL]\" target=\"_new\">" .
437 $GLOBALS['PROGRAM_NAME'] . "</a>\n";