* * Displays the main calendar page (month view). * * $Id$ * @package plugins * @subpackage calendar */ /** */ define('SM_PATH','../../'); /* Calender plugin required files. */ require_once(SM_PATH . 'plugins/calendar/calendar_data.php'); require_once(SM_PATH . 'plugins/calendar/functions.php'); /* SquirrelMail required files. */ require_once(SM_PATH . 'include/validate.php'); require_once(SM_PATH . 'functions/strings.php'); require_once(SM_PATH . 'functions/date.php'); require_once(SM_PATH . 'config/config.php'); require_once(SM_PATH . 'functions/page_header.php'); require_once(SM_PATH . 'include/load_prefs.php'); require_once(SM_PATH . 'functions/html.php'); /* get globals */ // undo rg = on effects if (isset($month)) unset($month); if (isset($year)) unset($year); if (isset($_GET['month']) && is_numeric($_GET['month'])) { $month = $_GET['month']; } if (isset($_GET['year']) && is_numeric($_GET['year'])) { $year = $_GET['year']; } if (isset($_POST['year']) && is_numeric($_POST['year'])) { $year = $_POST['year']; } if (isset($_POST['month']) && is_numeric($_POST['month'])) { $month = $_POST['month']; } /* got 'em */ //display upper part of month calendar view function startcalendar() { global $year, $month, $color; $prev_date = mktime(0, 0, 0, $month - 1, 1, $year); $act_date = mktime(0, 0, 0, $month, 1, $year); $next_date = mktime(0, 0, 0, $month + 1, 1, $year); $prev_month = date( 'm', $prev_date ); $next_month = date( 'm', $next_date); $prev_year = date( 'Y', $prev_date); $next_year = date( 'Y', $next_date ); $self = 'calendar.php'; echo html_tag( 'tr', "\n". html_tag( 'td', "\n". html_tag( 'table', '', '', $color[0], 'width="100%" border="0" cellpadding="2" cellspacing="1"' ) . html_tag( 'tr', "\n". html_tag( 'th', "<< ".($year-1)."" ) . "\n". html_tag( 'th', "< " . date_intl( 'M', $prev_date). "" ) . "\n". html_tag( 'th', date_intl( 'F Y', $act_date ), '', $color[0], 'colspan="3"') . html_tag( 'th', "" . date_intl( 'M', $next_date) . " >" ) . "\n". html_tag( 'th', "".($year+1)." >>" ) ) . "\n". html_tag( 'tr', html_tag( 'th', _("Sunday"), '', $color[5], 'width="14%" width="90"' ) ."\n" . html_tag( 'th', _("Monday"), '', $color[5], 'width="14%" width="90"' ) ."\n" . html_tag( 'th', _("Tuesday"), '', $color[5], 'width="14%" width="90"' ) ."\n" . html_tag( 'th', _("Wednesday"), '', $color[5], 'width="14%" width="90"' ) ."\n" . html_tag( 'th', _("Thursday"), '', $color[5], 'width="14%" width="90"' ) ."\n" . html_tag( 'th', _("Friday"), '', $color[5], 'width="14%" width="90"' ) ."\n" . html_tag( 'th', _("Saturday"), '', $color[5], 'width="14%" width="90"' ) ."\n" ) ) , '', $color[0] ) ."\n"; } //main logic for month view of calendar function drawmonthview() { global $year, $month, $color, $calendardata, $todayis; $aday = 1 - date('w', mktime(0, 0, 0, $month, 1, $year)); $days_in_month = date('t', mktime(0, 0, 0, $month, 1, $year)); while ($aday <= $days_in_month) { echo html_tag( 'tr' ); for ($j=1; $j<=7; $j++) { $cdate="$month"; ($aday<10)?$cdate=$cdate."0$aday":$cdate=$cdate."$aday"; $cdate=$cdate."$year"; if ( $aday <= $days_in_month && $aday > 0){ echo html_tag( 'td', '', 'left', $color[4], 'height="50" valign="top"' ) ."\n". html_tag( 'div', '', 'right' ); echo(($cdate==$todayis) ? '[ ' . _("TODAY") . " ] " : ''); echo "$aday"; } else { echo html_tag( 'td', '', 'left', $color[0]) ."\n". " "; } if (isset($calendardata[$cdate])){ $i=0; while ($calfoo = each($calendardata[$cdate])) { $calbar = $calendardata[$cdate][$calfoo['key']]; $title = '['. $calfoo['key']. '] ' .$calbar['message']; echo ($calbar['priority']==1) ? "$calbar[title]
\n" : "$calbar[title]
\n"; $i=$i+1; if($i==2){ break; } } } echo "\n\n"; $aday++; } echo ''; } } //end of monthly view and form to jump to any month and year function endcalendar() { global $year, $month, $day, $color; echo html_tag( 'tr' ) ."\n" . html_tag( 'td', '', 'left', '', 'colspan="7"' ) ."\n" . "
\n". " \n". " \n". ' \n". "
\n". " \n". "\n"; } if( !isset( $month ) || $month <= 0){ $month = date( 'm' ); } if( !isset($year) || $year <= 0){ $year = date( 'Y' ); } if( !isset($day) || $day <= 0){ $day = date( 'd' ); } $todayis = date( 'mdY' ); $calself=basename($PHP_SELF); displayPageHeader($color, 'None'); calendar_header(); readcalendardata(); startcalendar(); drawmonthview(); endcalendar(); ?>