Monday, November 08, 2010 at 12:04 AM.

system.verbs.builtins.mainResponder.calendar.getLinks

on getLinks (adrCal, theDate, url, startTime=mainResponder.calendar.getFirstDay (adrCal), maxDate=nil) {
	<<Get next month and prev month links for a calendar for this day
		<<Changes:
			<<Mon, 01 Mar 1999 13:01:37 GMT by AR
				<<Changed startTime parameter to default to mainResponder.calendar.getFirstDay(adrCal) instead of date("4/1/97")
			<<02/08/00; 10:59:25 AM by PBS
				<<When building the link to the next month, start at the end of the next month, and work backward in time until a day is found.
			<<04/03/00; 10:39:29 AM by PBS
				<<maxDate is a new optional parameter, needed to support time zones in Manila. If maxDate is not supplied, the default is clock.now ().
			<<03/20/01; 5:01:38 PM by PBS
				<<Use the new routines for getting links to prev and next months. These routines avoid looping, and skip empty months.
	
	<<on getLink (d, flForwardInTime)
		<<if maxDate == nil //PBS 04/02/00: maxDate is a new optional parameter needed for time zone support in Manila
			<<maxDate == clock.now ()
		<<if d > maxDate
			<<d = maxDate
		<<
		<<return (mainResponder.calendar.getLink (adrCal, d, url, flForwardInTime, startTime, maxDate))
	
	local (htmlText = "", indentLevel = 0);
	on add (s) {
		htmlText = htmlText + string.filledString ("\t", indentLevel) + s + "\r"};
	
	add ("<center><font size=\"-2\"><b>"); indentLevel++;
	<<add (getLink (date.lastOfMonth (date.prevMonth (theDate)), false))
	add (mainResponder.calendar.getLinkToPrevMonth (adrCal, theDate, url)); //PBS 03/20/01: faster script for getting link to next month -- plus it skips months as needed
	add (" ");
	<<add (getLink (date.lastOfMonth (date.nextMonth (theDate)), false)) //PBS 02/08/00: start at the end of the next month and work backward in time.
	add (mainResponder.calendar.getLinkToNextMonth (adrCal, theDate, url)); //PBS 03/20/01: faster script for getting link to next month -- plus it skips months as needed
	add ("</b></font></center>"); indentLevel--;
	
	return (htmlText)}



This listing is for code that runs in the OPML Editor environment. I created these listings because I wanted the search engines to index it, so that when I want to look up something in my codebase I don't have to use the much slower search functionality in my object database. Dave Winer.