These are instructions for how to make a calendar of day-page links
formatted yyyy.mm.dd

I'm sure there's a less bulky way to do it, but it seems to work fine.
Let me know if I'm doing anything non-kosher with the coding and the
best way to make it accessible to everyone.

Thanks for your help on this Dan.
Dante


Page code asks for 2 functions:
add these to your boltwire/farm/functions.php
page-------------------------

function BOLTFgridDay($args, $zone=''){
##  finds correct calendar day for calendar grid
##  uses the grid number, month and year
##  returns dd (d if single digit)
        $gridDay = $args[''][0];        ##  grid number on calendar
        $calMonth = $args[''][1];
        $calYear = $args[''][2];
        $lastDay = date("t", mktime(0, 0, 0, $calMonth, 1, $calYear));
        $firstDay = date("w", mktime(0, 0, 0, $calMonth, 1, $calYear));
        $gridDay = $gridDay - $firstDay;
        ##loops around months if the grid day is out of month's range
        if ($gridDay < 1) {   ##  if grid day occurs before month starts
                if ($calMonth > 1) {
                        $calMonth = $calMonth - 1;
                        }
                else {
                        $calMonth = 12;
                        $calYear = $calYear - 1;
                        }
                $lastDay = date("t", mktime(0, 0, 0, $calMonth, 1, $calYear));
                $gridDay = $lastDay - (-1 * $gridDay);
                }
        elseif ($gridDay > $lastDay ) {   ##  if grid day occurs after month
ends
##              if ($calMonth < 12) {
##                      $calMonth = $calMonth + 1;
##                      }
##              else {
##                      $calMonth = 1;
##                      $calYear = $calYear + 1;
##                      }
                $gridDay = -1 * ($lastDay - $gridDay);
                }
        return $gridDay;
        }

function BOLTFlinkDay($args, $zone=''){
##  finds correct link calendar day for calendar grid using the grid
number, month and year
##  like gridDay except it adds 0's to single digit months and days
##  returns yyyy.mm.dd
        $gridDay = $args[''][0];
        $calMonth = $args[''][1];
        $calYear = $args[''][2];
        $lastDay = date("t", mktime(0, 0, 0, $calMonth, 1, $calYear));
        $firstDay = date("w", mktime(0, 0, 0, $calMonth, 1, $calYear));
        $gridDay = $gridDay - $firstDay;

        ##loops around months if the grid day is out of month's range
        if ($gridDay < 1) {   ##  if grid day occurs before month starts
                if ($calMonth > 1) {
                        $calMonth = $calMonth - 1;
                        }
                else {
                        $calMonth = 12;
                        $calYear = $calYear - 1;
                        }
                $lastDay = date("t", mktime(0, 0, 0, $calMonth, 1, $calYear));
                $gridDay = $lastDay - (-1 * $gridDay);
                }
        elseif ($gridDay > $lastDay ) {   ##  if grid day occurs after month
ends
                if ($calMonth < 12) {
                        $calMonth = $calMonth + 1;
                        }
                else {
                        $calMonth = 1;
                        $calYear = $calYear + 1;
                        }
                $gridDay = -1 * ($lastDay - $gridDay);
                }

        ## Adds zeros to linkdate if it's a single digit month or day
        if ($calMonth < 10) {
                $link = $calYear.".0".$calMonth;
                }
        else {
                $link = $calYear.".".$calMonth;
                }
        if ($gridDay < 10) {
                $link = $link.".0".$gridDay;
                }
        else {
                $link = $link.".".$gridDay;
                }
        return $link;
        }
--------------------------------------------------------
Then put this on your calendar page
========================
! {:title}  /*Calendar*/
[form]
Select date: [select calYear default='{:calYear}']
[option '2008']2008
[option '2009']2009
[option '2010']2010
[select][select calMonth default='{:calMonth}']
[option '1']January
[option '2']February
[option '3']March
[option '4']April
[option '5']May
[option '6']June
[option '7']July
[option '8']August
[option '9']September
[option '10']October
[option '11']November
[option '12']December
[select]
[select][(search group=snippets template=select)][submit]
[session savedata calMonth,calYear]
[form]

**[(time '{:calMonth}/1/{:calYear}' '%B')]**
[t][r][h]Sun
[h]Mon
[h]Tue
[h]Wed
[h]Thu
[h]Fri
[h]Sat
[r][c][if less [(gridDay 1 {:calMonth} {:calYear})] 10][[[(linkDay 1
{:calMonth} {:calYear})]|[(gridDay 1 {:calMonth} {:calYear})]]][if]
[c][if less [(gridDay 2 {:calMonth} {:calYear})] 10][[[(linkDay 2
{:calMonth} {:calYear})]|[(gridDay 2 {:calMonth} {:calYear})]]][if]
[c][if less [(gridDay 3 {:calMonth} {:calYear})] 10][[[(linkDay 3
{:calMonth} {:calYear})]|[(gridDay 3 {:calMonth} {:calYear})]]][if]
[c][if less [(gridDay 4 {:calMonth} {:calYear})] 10][[[(linkDay 4
{:calMonth} {:calYear})]|[(gridDay 4 {:calMonth} {:calYear})]]][if]
[c][if less [(gridDay 5 {:calMonth} {:calYear})] 10][[[(linkDay 5
{:calMonth} {:calYear})]|[(gridDay 5 {:calMonth} {:calYear})]]][if]
[c][if less [(gridDay 6 {:calMonth} {:calYear})] 10][[[(linkDay 6
{:calMonth} {:calYear})]|[(gridDay 6 {:calMonth} {:calYear})]]][if]
[c][[[(linkDay 7 {:calMonth} {:calYear})]|[(gridDay 7 {:calMonth}
{:calYear})]]]
[r][c][[[(linkDay 8 {:calMonth} {:calYear})]|[(gridDay 8 {:calMonth}
{:calYear})]]]
[c][[[(linkDay 9 {:calMonth} {:calYear})]|[(gridDay 9 {:calMonth}
{:calYear})]]]
[c][[[(linkDay 10 {:calMonth} {:calYear})]|[(gridDay 10 {:calMonth}
{:calYear})]]]
[c][[[(linkDay 11 {:calMonth} {:calYear})]|[(gridDay 11 {:calMonth}
{:calYear})]]]
[c][[[(linkDay 12 {:calMonth} {:calYear})]|[(gridDay 12 {:calMonth}
{:calYear})]]]
[c][[[(linkDay 13 {:calMonth} {:calYear})]|[(gridDay 13 {:calMonth}
{:calYear})]]]
[c][[[(linkDay 14 {:calMonth} {:calYear})]|[(gridDay 14 {:calMonth}
{:calYear})]]]
[r][c][[[(linkDay 15 {:calMonth} {:calYear})]|[(gridDay 15 {:calMonth}
{:calYear})]]]
[c][[[(linkDay 16 {:calMonth} {:calYear})]|[(gridDay 16 {:calMonth}
{:calYear})]]]
[c][[[(linkDay 17 {:calMonth} {:calYear})]|[(gridDay 17 {:calMonth}
{:calYear})]]]
[c][[[(linkDay 18 {:calMonth} {:calYear})]|[(gridDay 18 {:calMonth}
{:calYear})]]]
[c][[[(linkDay 19 {:calMonth} {:calYear})]|[(gridDay 19 {:calMonth}
{:calYear})]]]
[c][[[(linkDay 20 {:calMonth} {:calYear})]|[(gridDay 20 {:calMonth}
{:calYear})]]]
[c][[[(linkDay 21 {:calMonth} {:calYear})]|[(gridDay 21 {:calMonth}
{:calYear})]]]
[r][c][[[(linkDay 22 {:calMonth} {:calYear})]|[(gridDay 22 {:calMonth}
{:calYear})]]]
[c][[[(linkDay 23 {:calMonth} {:calYear})]|[(gridDay 23 {:calMonth}
{:calYear})]]]
[c][[[(linkDay 24 {:calMonth} {:calYear})]|[(gridDay 24 {:calMonth}
{:calYear})]]]
[c][[[(linkDay 25 {:calMonth} {:calYear})]|[(gridDay 25 {:calMonth}
{:calYear})]]]
[c][[[(linkDay 26 {:calMonth} {:calYear})]|[(gridDay 26 {:calMonth}
{:calYear})]]]
[c][[[(linkDay 27 {:calMonth} {:calYear})]|[(gridDay 27 {:calMonth}
{:calYear})]]]
[c][[[(linkDay 28 {:calMonth} {:calYear})]|[(gridDay 28 {:calMonth}
{:calYear})]]]
[r][c][if more [(gridDay 29 {:calMonth} {:calYear})] 20][[[(linkDay 29
{:calMonth} {:calYear})]|[(gridDay 29 {:calMonth} {:calYear})]]][if]
[c][if more [(gridDay 30 {:calMonth} {:calYear})] 20][[[(linkDay 30
{:calMonth} {:calYear})]|[(gridDay 30 {:calMonth} {:calYear})]]][if]
[c][if more [(gridDay 31 {:calMonth} {:calYear})] 20][[[(linkDay 31
{:calMonth} {:calYear})]|[(gridDay 31 {:calMonth} {:calYear})]]][if]
[c][if more [(gridDay 32 {:calMonth} {:calYear})] 20][[[(linkDay 32
{:calMonth} {:calYear})]|[(gridDay 32 {:calMonth} {:calYear})]]][if]
[c][if more [(gridDay 33 {:calMonth} {:calYear})] 20][[[(linkDay 33
{:calMonth} {:calYear})]|[(gridDay 33 {:calMonth} {:calYear})]]][if]
[c][if more [(gridDay 34 {:calMonth} {:calYear})] 20][[[(linkDay 34
{:calMonth} {:calYear})]|[(gridDay 34 {:calMonth} {:calYear})]]][if]
[c][if more [(gridDay 35 {:calMonth} {:calYear})] 20][[[(linkDay 35
{:calMonth} {:calYear})]|[(gridDay 35 {:calMonth} {:calYear})]]][if]
[r][c][if more [(gridDay 36 {:calMonth} {:calYear})] 20][[[(linkDay 36
{:calMonth} {:calYear})]|[(gridDay 36 {:calMonth} {:calYear})]]][if]
[c][if more [(gridDay 37 {:calMonth} {:calYear})] 20][[[(linkDay 37
{:calMonth} {:calYear})]|[(gridDay 37 {:calMonth} {:calYear})]]][if]
[c][if more [(gridDay 38 {:calMonth} {:calYear})] 20][[[(linkDay 38
{:calMonth} {:calYear})]|[(gridDay 38 {:calMonth} {:calYear})]]][if]
[c][if more [(gridDay 39 {:calMonth} {:calYear})] 20][[[(linkDay 39
{:calMonth} {:calYear})]|[(gridDay 39 {:calMonth} {:calYear})]]][if]
[c][if more [(gridDay 40 {:calMonth} {:calYear})] 20][[[(linkDay 40
{:calMonth} {:calYear})]|[(gridDay 40 {:calMonth} {:calYear})]]][if]
[c][if more [(gridDay 41 {:calMonth} {:calYear})] 20][[[(linkDay 41
{:calMonth} {:calYear})]|[(gridDay 41 {:calMonth} {:calYear})]]][if]
[c][if more [(gridDay 42 {:calMonth} {:calYear})] 20][[[(linkDay 42
{:calMonth} {:calYear})]|[(gridDay 42 {:calMonth} {:calYear})]]][if]
[t]


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"BoltWire" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/boltwire?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to