X-Git-Url: https://jasonwoof.com/gitweb/?p=wfpl.git;a=blobdiff_plain;f=calendar.php;h=4966abb18c2b3b7a568bd7ae013ba09e41e4cd1d;hp=6082989fdef3342f00a6d110c3d6818843ec992b;hb=15459c86d0996ab3037b1738a8be6efd378c1258;hpb=9852f8e5a8b84cb565343914dae4376336ccf387 diff --git a/calendar.php b/calendar.php index 6082989..4966abb 100644 --- a/calendar.php +++ b/calendar.php @@ -2,29 +2,26 @@ # Copyright (C) 2006 Jason Woofenden # -# This file is part of wfpl. -# -# wfpl is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. -# -# wfpl is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# General Public License for more details. -# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# # You should have received a copy of the GNU General Public License -# along with wfpl; see the file COPYING. If not, write to the -# Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, -# MA 02111-1307, USA. +# along with this program. If not, see . + # This file generates a simple calendar which looks something like this: # # December 2006 # Sun Mon Tue Wed Thu Fri Sat -# 1 2 +# 1 2 # 3 4 5 6 7 8 9 # 10 11 12 13 14 15 16 # 17 18 19 20 21 22 23 @@ -37,14 +34,8 @@ # The html and CSS is completely customizable without opening a php file. -# ACKNOWLEDGMENTS -# -# Thank you Oscar Merida for figuring out the necessary date() and strftime() -# calls: http://freshmeat.net/projects/simplephpcalendar/ - - -require_once('code/wfpl/template.php'); +require_once(__DIR__.'/'.'template.php'); function calendar_week(&$template) { $template->sub('week'); @@ -55,9 +46,16 @@ function calendar_day($kind, &$template) { $template->sub('day'); } -function calendar($year, $month, $events = 0, &$template = 0) { - if($template == 0) { - $template = $GLOBALS['wfpl_template']; +# php4 is broken, in that you cannot set a default value for a parameter that +# is passed by reference. So, this is set up to use the following screwy +# syntax: +# +# calendar('2006', '12', $events, ref($my_template)) +function calendar($year, $month, $events = 0, $template = 0) { + if($template === 0) { + $template = &$GLOBALS['wfpl_template']; + } else { + $template = &$template->ref; } if(strlen($year) == 2) { @@ -70,7 +68,7 @@ function calendar($year, $month, $events = 0, &$template = 0) { $template->set('month_year', strftime('%B', $start_timestamp) . " " . $year); # number of non-day slots at the begining of the month - $pre_non_days = date( 'w', $start_timestamp ); + $pre_non_days = date('w', $start_timestamp ); # first display empty cells so the 1st can be in the right column while($cell < $pre_non_days) { @@ -79,7 +77,7 @@ function calendar($year, $month, $events = 0, &$template = 0) { } # do the days in this month - $days_count = date( 't', $start_timestamp ); + $days_count = date('t', $start_timestamp ); for($day = 1; $day <= $days_count; $day++ ) { $template->set('day_number', $day); if(($cell + 1) % 7 < 2) {