<!-- I should add something in here to highlight "today" if it's in the scope of the viewed month -->
<?php
# $selected{Month,Day,Year} should be set by the calling script.
# Actually, I should turn this into a function/object, and call it with
# those values. That would sanatize the calling script. Too many
# variables crawling about already.
# Create an html calendar for a month.
if (!$selectedDay ) {
$selectedDay = date( 'd');
}
if (!$selectedMonth) {
$selectedMonth = date( 'm');
}
if (!$selectedYear) {
$selectedYear = date( 'Y');
}
# get the first day of the week!
$firstday = date( 'w',mktime(0,0,0,$selectedMonth,1,$selectedYear));
# have to perform a loop to test from 31 backwards using this
# to see which is the last day of the month
$lastday = 31;
do {
# *Sigh* recursion would have been more fun here.
$monthOrig = date( 'm',mktime(0,0,0,$selectedMonth,1,$selectedYear));
$monthTest = date( 'm',mktime(0,0,0,$selectedMonth,$lastday,$selectedYear));
if ($monthTest != $monthOrig) { $lastday -= 1; }
} while ($monthTest != $monthOrig);
$monthName = date( 'F',mktime(0,0,0,$selectedMonth,1,$selectedYear));
if($DEBUGGING_SET) {
print( "<p>first day of the first week of $selectedMonth $selectedYear is $firstday (from 0 to 6) <p>\n");
print( "The last day of $selectedMonth $selectedYear is $lastday\n<p>");
}
$days[0] = 'Sun';
$days[1] = 'Mon';
$days[2] = 'Tue';
$days[3] = 'Wed';
$days[4] = 'Thu';
$days[5] = 'Fri';
$days[6] = 'Sat';
$dayRow = 0;
print( "<table bgcolor=\"#FFFFFF\">");
print( "<caption valign=\"center\"><b>$monthName $selectedYear</b></caption>");
print( "<tr>\n");
for($i=0; $i<=6; $i++) {
print( "<td width=10%>$days[$i]</td>\n");
}
print( "</tr>\n");
print( "<tr>\n");
while($dayRow < $firstday) {
print( "<td><!-- This day in last month --></td>");
$dayRow += 1;
}
$day = 0;
if($frametarget) {
$targetString = 'target = '.$frametarget;
} else {
$targetString = '';
}
while($day < $lastday) {
if(($dayRow % 7) == 0) {
print( "</tr>\n<tr>\n");
}
$adjusted_day = $day+1;
print( "<td><a href=\"/php3/eventCalendar/event_content.phtml?
month=$selectedMonth&day=$adjusted_day&year=$selectedYear\" $targetString>$adjusted_day</a></td>");
$day += 1;
$dayRow += 1;
}
print( "\n</tr>\n</table>\n");
# print("$selectedMonth");
?>
<?php
# $selected{Month,Day,Year} should be set by the calling script.
# Actually, I should turn this into a function/object, and call it with
# those values. That would sanatize the calling script. Too many
# variables crawling about already.
# Create an html calendar for a month.
if (!$selectedDay ) {
$selectedDay = date( 'd');
}
if (!$selectedMonth) {
$selectedMonth = date( 'm');
}
if (!$selectedYear) {
$selectedYear = date( 'Y');
}
# get the first day of the week!
$firstday = date( 'w',mktime(0,0,0,$selectedMonth,1,$selectedYear));
# have to perform a loop to test from 31 backwards using this
# to see which is the last day of the month
$lastday = 31;
do {
# *Sigh* recursion would have been more fun here.
$monthOrig = date( 'm',mktime(0,0,0,$selectedMonth,1,$selectedYear));
$monthTest = date( 'm',mktime(0,0,0,$selectedMonth,$lastday,$selectedYear));
if ($monthTest != $monthOrig) { $lastday -= 1; }
} while ($monthTest != $monthOrig);
$monthName = date( 'F',mktime(0,0,0,$selectedMonth,1,$selectedYear));
if($DEBUGGING_SET) {
print( "<p>first day of the first week of $selectedMonth $selectedYear is $firstday (from 0 to 6) <p>\n");
print( "The last day of $selectedMonth $selectedYear is $lastday\n<p>");
}
$days[0] = 'Sun';
$days[1] = 'Mon';
$days[2] = 'Tue';
$days[3] = 'Wed';
$days[4] = 'Thu';
$days[5] = 'Fri';
$days[6] = 'Sat';
$dayRow = 0;
print( "<table bgcolor=\"#FFFFFF\">");
print( "<caption valign=\"center\"><b>$monthName $selectedYear</b></caption>");
print( "<tr>\n");
for($i=0; $i<=6; $i++) {
print( "<td width=10%>$days[$i]</td>\n");
}
print( "</tr>\n");
print( "<tr>\n");
while($dayRow < $firstday) {
print( "<td><!-- This day in last month --></td>");
$dayRow += 1;
}
$day = 0;
if($frametarget) {
$targetString = 'target = '.$frametarget;
} else {
$targetString = '';
}
while($day < $lastday) {
if(($dayRow % 7) == 0) {
print( "</tr>\n<tr>\n");
}
$adjusted_day = $day+1;
print( "<td><a href=\"/php3/eventCalendar/event_content.phtml?
month=$selectedMonth&day=$adjusted_day&year=$selectedYear\" $targetString>$adjusted_day</a></td>");
$day += 1;
$dayRow += 1;
}
print( "\n</tr>\n</table>\n");
# print("$selectedMonth");
?>
0 comments:
Post a Comment