. See http://diveintomark.org/archives/2002/07/03 @list($p, $pl) = each($pn); @list($n, $nl) = each($pn); //previous and next links, if applicable if($p) $p = ''.($pl ? ''.$p.'' : $p).' '; if($n) $n = ' '.($nl ? ''.$n.'' : $n).''; $calendar = ''."\n"; $calendar .= "\n"; if($weekNr) { $calendar .= "\t".'\n\n\n"; if($weekNr) { $calendar .= "\t".'\n"; $weekStart = date('W', $first_of_month); } if($day_name_length){ //if the day names should be shown ($day_name_length > 0) //if day_name_length is >3, the full name of the day will be printed foreach($day_names as $d) { $calendar .= "\t".'\n"; } $calendar .= "\n\n"; } if($weekday > 0) { if($weekNr) { $calendar .= "\t".'\n"; $weekStart++; } $calendar .= "\t".''."\n"; //initial 'empty' days } for($day=1,$days_in_month=gmdate('t',$first_of_month); $day<=$days_in_month; $day++,$weekday++) { if($weekday == 7) { $weekday = 0; //start a new week $calendar .= "\n\n"; } if($weekNr && $weekday == 0) { $calendar .= "\t".'\n"; $weekStart++; } $thisSelected = (intval($year) == THIS_YEAR && intval($month) == THIS_MONTH && $day == THIS_DAY) ? true : false; $checkDay = $YYYYmm . substr('0'.$day, -2); if(isset($days[$checkDay]) && is_array($days[$checkDay])){ @list($link, $classes, $content) = $days[$checkDay]; @list($link, $target) = explode(' ', trim($link)); $target = $target ? ' target="'.$target.'"' : ''; if(is_null($content)) { $content = $day; } if($thisSelected) { $content = ''.$content.''; } $calendar .= "\t'.$content.'' : $content; $calendar .= "\n"; } else { $calendar .= "\t"; $calendar .= $thisSelected ? '\n"; } } if($weekday != 7) { $calendar .= "\t".''."\n"; //remaining "empty" days } if($locale) { setlocale(LC_TIME, $_oldLocale); //switch current locale back to old value } return $calendar."\n
'; } else { $calendar .= "\t".''; } $calendar .= $p; $calendar .= $month_href ? ''.$title.'' : $title; $calendar .= $n; $calendar .= "
'.$weekNrTitle."'.htmlentities($day_name_length < 4 ? substr($d,0,$day_name_length) : $d)."
'.$weekStart." 
'.$weekStart."' : ''; $calendar .= $day." 
\n"; } function tzdelta ( $iTime = 0 ) { if ( 0 == $iTime ) { $iTime = time(); } $ar = localtime ( $iTime ); $ar[5] += 1900; $ar[4]++; $iTztime = gmmktime ( $ar[2], $ar[1], $ar[0], $ar[4], $ar[3], $ar[5], $ar[8] ); return ( $iTztime - $iTime ); } ///////////////////////////////////////////////////////////////////////////////////// ?>