// 2002.20.06 Mark Rovendro
// Copyright 2002-2003 Mark Rovendro - All rights reserved
// File: functions.js
// 2003.03.13 MJR - Added nextMeeting()
// 2003.03.25 MJR = Updated nextMeeting to take one arg
// 2003.09.02 MJR - Changed nextMeeting to display "Tonight" on the day of the meeting (previously it displayed the next meeting).

// MODULE GLOBALS
var days = new Array('Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday');
var months = new Array('January','February','March','April','May','June','July','August','September','October','November','December');


function lastUpdated() {
  // Netscape 4.7 lastModified is in the format "Friday, December 01, 2000 00:35:05
  // IE 5.0 lastModified is in the format "12/01/2000 00:35:05"
  if ( navigator.appName == "Netscape" )
      document.writeln( 'Last updated ' + document.lastModified.substring(0,document.lastModified.length-9) ) ;
  else
      document.writeln( 'Last updated ' + document.lastModified.substring(0,10) ) ;
} //lastUpdated 


function y2k(number){
	return (number < 1000) ? number + 1900 : number;
} // y2k


function printDate() {
	var now = new Date();
	var date = ((now.getDate()<10) ? "0" : "")+ now.getDate();
	mod = "" //"<font face=\"Verdana,Arial\" size=\"2\">"
	mod +=  days[now.getDay()] + ", " + months[now.getMonth()] + " " 
	mod += date  +  ", " + (y2k(now.getYear())) 
	document.write(mod)
	//document.write("</font>")
} //printDate


// Constructor for meeting date object
//  month - passed in as 1-12
function meetingDate( month, day, year ) {
	/*
	this.month = (month-1) ;	// 0 - 11
 	this.day = day ;			// 1 - 31
	this.year = year ;			// YYYY
	*/
	this.date = new Date( year, (month-1), day ) ;
	this.display = months[month-1] + " " + day + ", " + year ;
} // meetingDate


function nextMeeting( msg ) {
	var today = new Date() ;
	var meetings = new Array() ;
	var meetingCount = 0 ;
	var oneDay = 1000*60*60*24 ;

/*
	meetings[meetingCount++] = new meetingDate( 01, 17, 2007 );
	meetings[meetingCount++] = new meetingDate( 02, 21, 2007 );
	meetings[meetingCount++] = new meetingDate( 03, 21, 2007 );
	meetings[meetingCount++] = new meetingDate( 04, 18, 2007 );
	meetings[meetingCount++] = new meetingDate( 05, 16, 2007 );
	meetings[meetingCount++] = new meetingDate( 06, 20, 2007 );
	meetings[meetingCount++] = new meetingDate( 07, 18, 2007 );
	meetings[meetingCount++] = new meetingDate( 08, 15, 2007 );
	meetings[meetingCount++] = new meetingDate( 09, 19, 2007 );
	meetings[meetingCount++] = new meetingDate( 10, 17, 2007 );
	meetings[meetingCount++] = new meetingDate( 11, 21, 2007 );
	meetings[meetingCount++] = new meetingDate( 12, 19, 2007 );
	
	meetings[meetingCount++] = new meetingDate( 01, 16, 2008 );
	meetings[meetingCount++] = new meetingDate( 02, 20, 2008 );
	meetings[meetingCount++] = new meetingDate( 03, 19, 2008 );
	meetings[meetingCount++] = new meetingDate( 04, 16, 2008 );
	meetings[meetingCount++] = new meetingDate( 05, 21, 2008 );
	meetings[meetingCount++] = new meetingDate( 06, 18, 2008 );
	meetings[meetingCount++] = new meetingDate( 07, 16, 2008 );
	meetings[meetingCount++] = new meetingDate( 08, 20, 2008 );
	meetings[meetingCount++] = new meetingDate( 09, 17, 2008 );
	meetings[meetingCount++] = new meetingDate( 10, 15, 2008 );
	meetings[meetingCount++] = new meetingDate( 11, 19, 2008 );
	meetings[meetingCount++] = new meetingDate( 12, 17, 2008 );
	
	meetings[meetingCount++] = new meetingDate( 01, 21, 2009 );
	meetings[meetingCount++] = new meetingDate( 02, 18, 2009 );
	meetings[meetingCount++] = new meetingDate( 03, 18, 2009 );
	meetings[meetingCount++] = new meetingDate( 04, 15, 2009 );
	meetings[meetingCount++] = new meetingDate( 05, 20, 2009 );
	meetings[meetingCount++] = new meetingDate( 06, 17, 2009 );
	meetings[meetingCount++] = new meetingDate( 07, 15, 2009 );
	meetings[meetingCount++] = new meetingDate( 08, 19, 2009 );
	meetings[meetingCount++] = new meetingDate( 09, 16, 2009 );
	meetings[meetingCount++] = new meetingDate( 10, 21, 2009 );
	meetings[meetingCount++] = new meetingDate( 11, 18, 2009 );
	meetings[meetingCount++] = new meetingDate( 12, 16, 2009 );
*/		
	meetings[meetingCount++] = new meetingDate( 01, 20, 2010 );
	meetings[meetingCount++] = new meetingDate( 02, 17, 2010 );
	meetings[meetingCount++] = new meetingDate( 03, 17, 2010 );
	meetings[meetingCount++] = new meetingDate( 04, 21, 2010 );
	meetings[meetingCount++] = new meetingDate( 05, 19, 2010 );
	meetings[meetingCount++] = new meetingDate( 06, 16, 2010 );
	meetings[meetingCount++] = new meetingDate( 07, 21, 2010 );
	meetings[meetingCount++] = new meetingDate( 08, 18, 2010 );
	meetings[meetingCount++] = new meetingDate( 09, 15, 2010 );
	meetings[meetingCount++] = new meetingDate( 10, 20, 2010 );
	meetings[meetingCount++] = new meetingDate( 11, 17, 2010 );
	meetings[meetingCount++] = new meetingDate( 12, 15, 2010 );
	
	meetings[meetingCount++] = new meetingDate( 01, 19, 2011 );
	meetings[meetingCount++] = new meetingDate( 02, 16, 2011 );
	meetings[meetingCount++] = new meetingDate( 03, 16, 2011 );
	meetings[meetingCount++] = new meetingDate( 04, 20, 2011 );
	meetings[meetingCount++] = new meetingDate( 05, 18, 2011 );
	meetings[meetingCount++] = new meetingDate( 06, 15, 2011 );
	meetings[meetingCount++] = new meetingDate( 07, 20, 2011 );
	meetings[meetingCount++] = new meetingDate( 08, 17, 2011 );
	meetings[meetingCount++] = new meetingDate( 09, 21, 2011 );
	meetings[meetingCount++] = new meetingDate( 10, 19, 2011 );
	meetings[meetingCount++] = new meetingDate( 11, 16, 2011 );
	meetings[meetingCount++] = new meetingDate( 12, 21, 2011 );
	
	meetings[meetingCount++] = new meetingDate( 01, 18, 2012 );
	meetings[meetingCount++] = new meetingDate( 02, 15, 2012 );
	meetings[meetingCount++] = new meetingDate( 03, 21, 2012 );
	meetings[meetingCount++] = new meetingDate( 04, 18, 2012 );
	meetings[meetingCount++] = new meetingDate( 05, 16, 2012 );
	meetings[meetingCount++] = new meetingDate( 06, 20, 2012 );
	meetings[meetingCount++] = new meetingDate( 07, 18, 2012 );
	meetings[meetingCount++] = new meetingDate( 08, 15, 2012 );
	meetings[meetingCount++] = new meetingDate( 09, 19, 2012 );
	meetings[meetingCount++] = new meetingDate( 10, 17, 2012 );
	meetings[meetingCount++] = new meetingDate( 11, 21, 2012 );
	meetings[meetingCount++] = new meetingDate( 12, 19, 2012 );

	meetings[meetingCount++] = new meetingDate( 01, 16, 2013 );
	meetings[meetingCount++] = new meetingDate( 02, 20, 2013 );
	meetings[meetingCount++] = new meetingDate( 03, 20, 2013 );
	meetings[meetingCount++] = new meetingDate( 04, 17, 2013 );
	meetings[meetingCount++] = new meetingDate( 05, 15, 2013 );
	meetings[meetingCount++] = new meetingDate( 06, 19, 2013 );
	meetings[meetingCount++] = new meetingDate( 07, 17, 2013 );
	meetings[meetingCount++] = new meetingDate( 08, 21, 2013 );
	meetings[meetingCount++] = new meetingDate( 09, 18, 2013 );
	meetings[meetingCount++] = new meetingDate( 10, 16, 2013 );
	meetings[meetingCount++] = new meetingDate( 11, 20, 2013 );
	meetings[meetingCount++] = new meetingDate( 12, 18, 2013 );
	
	meetings[meetingCount++] = new meetingDate( 01, 15, 2014 );
	meetings[meetingCount++] = new meetingDate( 02, 19, 2014 );
	meetings[meetingCount++] = new meetingDate( 03, 19, 2014 );
	meetings[meetingCount++] = new meetingDate( 04, 16, 2014 );
	meetings[meetingCount++] = new meetingDate( 05, 21, 2014 );
	meetings[meetingCount++] = new meetingDate( 06, 18, 2014 );
	meetings[meetingCount++] = new meetingDate( 07, 16, 2014 );
	meetings[meetingCount++] = new meetingDate( 08, 20, 2014 );
	meetings[meetingCount++] = new meetingDate( 09, 17, 2014 );
	meetings[meetingCount++] = new meetingDate( 10, 15, 2014 );
	meetings[meetingCount++] = new meetingDate( 11, 19, 2014 );
	meetings[meetingCount++] = new meetingDate( 12, 17, 2014 );
	
	meetings[meetingCount++] = new meetingDate( 01, 21, 2015 );
	meetings[meetingCount++] = new meetingDate( 02, 18, 2015 );
	meetings[meetingCount++] = new meetingDate( 03, 18, 2015 );
	meetings[meetingCount++] = new meetingDate( 04, 15, 2015 );
	meetings[meetingCount++] = new meetingDate( 05, 20, 2015 );
	meetings[meetingCount++] = new meetingDate( 06, 17, 2015 );
	meetings[meetingCount++] = new meetingDate( 07, 15, 2015 );
	meetings[meetingCount++] = new meetingDate( 08, 19, 2015 );
	meetings[meetingCount++] = new meetingDate( 09, 16, 2015 );
	meetings[meetingCount++] = new meetingDate( 10, 21, 2015 );
	meetings[meetingCount++] = new meetingDate( 11, 18, 2015 );
	meetings[meetingCount++] = new meetingDate( 12, 16, 2015 );
	
	meetings[meetingCount++] = new meetingDate( 01, 20, 2016 );
	meetings[meetingCount++] = new meetingDate( 02, 17, 2016 );
	meetings[meetingCount++] = new meetingDate( 03, 16, 2016 );
	meetings[meetingCount++] = new meetingDate( 04, 20, 2016 );
	meetings[meetingCount++] = new meetingDate( 05, 18, 2016 );
	meetings[meetingCount++] = new meetingDate( 06, 15, 2016 );
	meetings[meetingCount++] = new meetingDate( 07, 20, 2016 );
	meetings[meetingCount++] = new meetingDate( 08, 17, 2016 );
	meetings[meetingCount++] = new meetingDate( 09, 21, 2016 );
	meetings[meetingCount++] = new meetingDate( 10, 19, 2016 );
	meetings[meetingCount++] = new meetingDate( 11, 16, 2016 );
	meetings[meetingCount++] = new meetingDate( 12, 14, 2016 );

	meetings[meetingCount++] = new meetingDate( 01, 18, 2017 );
	meetings[meetingCount++] = new meetingDate( 02, 15, 2017 );
	meetings[meetingCount++] = new meetingDate( 03, 15, 2017 );
	meetings[meetingCount++] = new meetingDate( 04, 19, 2017 );
	meetings[meetingCount++] = new meetingDate( 05, 17, 2017 );
	meetings[meetingCount++] = new meetingDate( 06, 21, 2017 );
	meetings[meetingCount++] = new meetingDate( 07, 19, 2017 );
	meetings[meetingCount++] = new meetingDate( 08, 16, 2017 );
	meetings[meetingCount++] = new meetingDate( 09, 20, 2017 );
	meetings[meetingCount++] = new meetingDate( 10, 18, 2017 );
	meetings[meetingCount++] = new meetingDate( 11, 22, 2017 );
	meetings[meetingCount++] = new meetingDate( 12, 20, 2017 );	

	meetings[meetingCount++] = new meetingDate( 01, 17, 2018 );
	meetings[meetingCount++] = new meetingDate( 02, 21, 2018 );
	meetings[meetingCount++] = new meetingDate( 03, 21, 2018 );
	meetings[meetingCount++] = new meetingDate( 04, 18, 2018 );
	meetings[meetingCount++] = new meetingDate( 05, 16, 2018 );
	meetings[meetingCount++] = new meetingDate( 06, 20, 2018 );
	meetings[meetingCount++] = new meetingDate( 07, 18, 2018 );
	meetings[meetingCount++] = new meetingDate( 08, 15, 2018 );
	meetings[meetingCount++] = new meetingDate( 09, 19, 2018 );
	meetings[meetingCount++] = new meetingDate( 10, 17, 2018 );
	meetings[meetingCount++] = new meetingDate( 11, 21, 2018 );
	meetings[meetingCount++] = new meetingDate( 12, 19, 2018 );

	meetings[meetingCount++] = new meetingDate( 01, 16, 2019 );
	meetings[meetingCount++] = new meetingDate( 02, 20, 2019 );
	meetings[meetingCount++] = new meetingDate( 03, 20, 2019 );
	meetings[meetingCount++] = new meetingDate( 04, 17, 2019 );
	meetings[meetingCount++] = new meetingDate( 05, 15, 2019 );
	meetings[meetingCount++] = new meetingDate( 06, 19, 2019 );
	meetings[meetingCount++] = new meetingDate( 07, 17, 2019 );
	meetings[meetingCount++] = new meetingDate( 08, 21, 2019 );
	meetings[meetingCount++] = new meetingDate( 09, 18, 2019 );
	meetings[meetingCount++] = new meetingDate( 10, 16, 2019 );
	meetings[meetingCount++] = new meetingDate( 11, 20, 2019 );
	meetings[meetingCount++] = new meetingDate( 12, 18, 2019 );

	meetings[meetingCount++] = new meetingDate( 01, 15, 2020 );
	meetings[meetingCount++] = new meetingDate( 02, 19, 2020 );
	meetings[meetingCount++] = new meetingDate( 03, 18, 2020 );
	meetings[meetingCount++] = new meetingDate( 04, 15, 2020 );
	meetings[meetingCount++] = new meetingDate( 05, 20, 2020 );
	meetings[meetingCount++] = new meetingDate( 06, 17, 2020 );
	meetings[meetingCount++] = new meetingDate( 07, 15, 2020 );
	meetings[meetingCount++] = new meetingDate( 08, 19, 2020 );
	meetings[meetingCount++] = new meetingDate( 09, 16, 2020 );
	meetings[meetingCount++] = new meetingDate( 10, 21, 2020 );
	meetings[meetingCount++] = new meetingDate( 11, 18, 2020 );
	meetings[meetingCount++] = new meetingDate( 12, 16, 2020 );
	
	
	// interate through dates looking for a match
	for( var x=0; x < (meetingCount-1); x++ )
	{
		var date1 = meetings[x].date ;
		var date2 = meetings[x+1].date ; 

// document.write( "date1: " + date1.getTime() + "<BR>" ) ;
// document.write( "date2: " + date2.getTime() + "<BR>" ) ;
// document.write( "today: " + today.getTime() + "<BR>" ) ;

		if( (today.getTime()-date1.getTime()) < oneDay )
		{
			document.write( "Tonight - " + meetings[x].display + " " + msg ) ;
			return ;
		}
		if( date1.getTime() <= today.getTime() && today.getTime() < date2.getTime() )
		{
			document.write( meetings[x+1].display + " " + msg ) ;
			return ;
		}
	} // for
	
	// Failed to match
	document.write( "Please check back soon for next available date." ) ;
} // nextMeeting


// main image rollover
//var menuImg = new Array() ;
//menuImg[1] = new Image() ;
//menuImg[1].src = "images/btwbd2001-5.jpg" ;
//menuImg[2] = new Image() ;
//menuImg[2].src = "images/btwbd2001-4.jpg" ;
function loadImage(name,index) {
  if ( document.images && name != "" ) {
    document.images[name].src = menuImg[index].src ;
  }
  if ( arguments.length == 3 ) {
    window.status = arguments[2] ;
  } else {
    window.status = '' ;
  }
  return true ;  // THIS IS REQUIRED FOR THE WINDOW.STATUS CHANGE TO OCCUR
} //loadImage


// GLOBAL VARS
var detailWin = "" ;	// Handler to detail window

// Open a detail info window.
// If the window is already open reuse it and bring it to the foreground.
function openDetailWindow( url ) {
/*
  // Reuse window if exists
  if ( detailWin && detailWin != "" && detailWin.closed == 0 ) {
    // Check if a new URL was provided
	if ( URL != openDetailWindow.url ) {
	  //alert("Using new URL: " + URL + " Old: " + openDetailWindow.url ) ;
	  openDetailWindow.url = URL ;
	  detailWin.location = URL ;
	}
    detailWin.focus() ;
  } else {
  // Create the window
    openDetailWindow.url = URL ;
	// 2003.03.03 detailWin = window.open( URL,"detail","toolbar=no,scrollbars=yes,height=700,width=450,resizable=yes") ;
	// This is the correct setting for the sponsorbook with the headings - too big for 800x600 display
	// 2003.03.04 detailWin = window.open( URL,"detail","toolbar=no,scrollbars=yes,height=610,width=370,resizable=yes") ;
	// This is the correct settings for the basic sponsorbook that works on an 800x600 display
	detailWin = window.open( URL,"detail","toolbar=no,scrollbars=no,height=525,width=325,resizable=yes") ;
  }
*/
	// This is the correct settings for the basic sponsorbook that works on an 800x600 display
	previewWindow( url, 325, 525, "no" ) ;
} //openDetailWindow


function openSlideShowWindow( url ) {
  previewWindow( url, 600, 570, "no" ) ;
} //openSlideShowWindow


function previewWindow( url, width, height, scrollbars ) {
	// previewWindow.win is a static variable
	// previewWindow.url is a static variable
	//  <A HREF="javascript:previewWindow('file.html',400,600,"yes");"> Link </A>
	// First check if we have a good url
	if ( url && url != "" ) {
		if ( previewWindow.win && previewWindow.win != "" && previewWindow.win.closed == 0 ) {
			previewWindow.win.focus() ;
			if( previewWindow.url != url ) {
				previewWindow.url = url ;
				previewWindow.win.location = url ;
			}
		} else {
			if ( ! (scrollbars && scrollbars != "") ) {
				scrollbars = "yes" ;
			}
			previewWindow.win = window.open(url,"previewWindow","toolbar=no,location=no,status=no,menubar=no,scrollbars=" + scrollbars + ",resizable=yes,height=" + height + ",width=" + width ) ;
		}
    } // url
    else
    {
		alert( "No url was provided to display." ) ;
    }
} // previewWindow


// End: functions.js
