'; $calendarmonthend = ''; $calendartablestart = ''; $calendartableend = '
'; $calendarrowstart = ''; $calendarrowend = ''; $calendarheaderdisplay = 1; // set this to 0 if you don't want to display the "Mon Tue Wed..." header $calendarheadercellstart = ''; // please leave $abbr there ! $calendarheadercellend = ''; $calendarheaderabbrlenght = 3; // lenght of the shortened weekday $calendarcellstart = ''; $calendarcellend = ''; $calendaremptycellstart = ''; $calendaremptycellend = ''; $calendaremptycellcontent = ' '; /* stop customizing (unless you really know what you're doing) */ include('b2config.php'); require_once("$b2inc/b2template.functions.php"); require_once("$b2inc/b2functions.php"); require_once("$b2inc/b2vars.php"); dbconnect(); if (isset($calendar) && ($calendar != '')) { $thisyear = substr($calendar,0,4); $thismonth = substr($calendar,4,2); } else { if (isset($m) && ($m != '')) { $calendar = substr($m,0,6); $thisyear = substr($m,0,4); if (strlen($m) < 6) { $thismonth = '01'; } else { $thismonth = substr($m,4,2); } } else { $thisyear = date('Y', time()+($time_difference * 3600)); $thismonth = date('m', time()+($time_difference * 3600)); } } $archive_link_m = $siteurl.'/'.$blogfilename.$querystring_start.'m'.$querystring_equal; // original arrow hack by Alex King $ak_previous_year = $thisyear; $ak_next_year = $thisyear; $ak_previous_month = $thismonth - 1; $ak_next_month = $thismonth + 1; if ($ak_previous_month == 0) { $ak_previous_month = 12; --$ak_previous_year; } if ($ak_next_month == 13) { $ak_next_month = 1; ++$ak_next_year; } $ak_first_post = mysql_query("SELECT MONTH(MIN(post_date)), YEAR(MIN(post_date)) FROM $tableposts"); $ak_first_post = mysql_fetch_array($ak_first_post); // using text links by default $ak_previous_month_dim = '<  '; $ak_previous_month_active = '<  '; $ak_next_month_dim = '  >'; $ak_next_month_active = '  >'; if ($ak_use_arrows == 1) { if (mktime(0,0,0,$ak_previous_month,1,$ak_previous_year) < mktime(0,0,0,$ak_first_post[0],1,$ak_first_post[1])) { $ak_previous_month_link = $ak_previous_month_dim; } else { $ak_previous_month_link = $ak_previous_month_active; } if (mktime(0,0,0,$ak_next_month,1,$ak_next_year) > mktime()) { $ak_next_month_link = $ak_next_month_dim; } else { $ak_next_month_link = $ak_next_month_active; } } else { $ak_previous_month_link = ""; $ak_next_month_link = ""; } $end_of_week = (($start_of_week + 7) % 7); $calendarmonthwithpost = 0; while($calendarmonthwithpost == 0) { $arc_sql="SELECT DISTINCT YEAR(post_date), MONTH(post_date), DAYOFMONTH(post_date) FROM $tableposts WHERE MONTH(post_date) = '$thismonth' AND YEAR(post_date) = '$thisyear' ORDER BY post_date DESC"; $querycount++; $arc_result=mysql_query($arc_sql) or die($arc_sql."
".mysql_error()); if (mysql_num_rows($arc_result) > 0) { $daysinmonthwithposts = '-'; while($arc_row = mysql_fetch_array($arc_result)) { $daysinmonthwithposts .= $arc_row["DAYOFMONTH(post_date)"].'-'; } $calendarmonthwithpost = 1; } elseif ($calendar != '') { $daysinmonthwithposts = ''; $calendarmonthwithpost = 1; } else { $thismonth = zeroise(intval($thismonth)-1,2); if ($thismonth == '00') { $thismonth = '12'; $thisyear = ''.(intval($thisyear)-1); } } } $daysinmonth = intval(date('t', mktime(0,0,0,$thismonth,1,$thisyear))); $datestartofmonth = $thisyear.'-'.$thismonth.'-01'; $dateendofmonth = $thisyear.'-'.$thismonth.'-'.$daysinmonth; // caution: offset bug inside $calendarblah = get_weekstartend($datestartofmonth, $start_of_week); if (mysql2date('w', $datestartofmonth) == $start_of_week) { $calendarfirst = $calendarblah['start']+1+3600; // adjust for daylight savings time } else { $calendarfirst = $calendarblah['end']-604799+3600; // adjust for daylight savings time } $calendarblah = get_weekstartend($dateendofmonth, $end_of_week); if (mysql2date('w', $dateendofmonth) == $end_of_week) { $calendarlast = $calendarblah['start']+1; } else { $calendarlast = $calendarblah['end']+10000; } $beforethismonth = zeroise(intval($thismonth)-1,2); $afterthismonth = zeroise(intval($thismonth)-1,2); // here the offset bug is corrected if ((intval(date('d', $calendarfirst)) > 1) && (intval(date('m', $calendarfirst)) == intval($thismonth))) { $calendarfirst = $calendarfirst - 604800; } // displays everything echo $calendartablestart."\n"; if ($calendarmonthdisplay) { echo $calendarmonthstart; echo $ak_previous_month_link; echo date_i18n($calendarmonthformat, mktime(0, 0, 0, $thismonth, 1, $thisyear)); echo $ak_next_month_link; echo $calendarmonthend."\n"; } if ($calendarheaderdisplay) { echo $calendarrowstart."\n"; for ($i = $start_of_week; $i<($start_of_week+7); $i = $i + 1) { echo str_replace('$abbr', $weekday[($i % 7)], $calendarheadercellstart); echo ucwords(substr($weekday[($i % 7)], 0, $calendarheaderabbrlenght)); echo $calendarheadercellend; } echo $calendarrowend."\n"; } echo $calendarrowstart."\n"; $newrow = 0; $j = 0; $k = 1; // original tooltip hack by Alex King if ($ak_use_tooltip_titles == 1) { $ak_days_result = mysql_query("SELECT post_title, post_date FROM $tableposts WHERE YEAR(post_date) = '$thisyear' AND MONTH(post_date) = '$thismonth'"); $ak_day_title_array = array(); while($ak_temp = mysql_fetch_array($ak_days_result)) { $ak_day_title_array[] = $ak_temp; } if (strstr($HTTP_SERVER_VARS["HTTP_USER_AGENT"], "MSIE")) { $ak_title_separator = "\n"; $ak_trim = 1; } else { $ak_title_separator = ", "; $ak_trim = 2; } } for($i = $calendarfirst; $i<($calendarlast+86400); $i = $i + 86400) { if ($newrow == 1) { if ($k > $daysinmonth) { break; } echo $calendarrowend."\n"; if (($i+86400) < ($calendarlast+86400)) { echo $calendarrowstart."\n"; } $newrow = 0; } if (date('m',$i) != $thismonth) { echo $calendaremptycellstart; echo $calendaremptycellcontent; echo $calendaremptycellend; } else { $k = $k + 1; echo $calendarcellstart; $calendarblah = '-'.date('j',$i).'-'; $calendarthereisapost = ereg($calendarblah, $daysinmonthwithposts); $calendartoday = (date('Ymd',$i) == date('Ymd', (time() + ($time_difference * 3600)))); if ($calendarthereisapost) { // original tooltip hack by Alex King if ($ak_use_tooltip_titles == 1) { // check to see if we want to show the tooltip titles $ak_day_titles = ""; foreach($ak_day_title_array as $post) { if (substr($post[1], 8, 2) == date('d',$i)) { $ak_day_titles = $ak_day_titles.stripslashes($post[0]).$ak_title_separator; } } $ak_day_titles = substr($ak_day_titles, 0, strlen($ak_day_titles) - $ak_trim); echo ''; } else { echo ''; } } if ($calendartoday) { echo ''; } echo date('j',$i); if ($calendartoday) { echo ''; } if ($calendarthereisapost) { echo ''; } echo $calendarcellend."\n"; } $j = $j + 1; if ($j == 7) { $j = 0; $newrow = 1; } } echo $calendarrowend."\n"; echo $calendartableend; ?>