// *************************************
// schedule.js Version 3.0 (IscheduerPlus) 
// Dec 09
//
// Develped exclusively for 
//     Rodriguez Funeral Home
//     by Jay Grubb dba Grubb Consulting Service (GCS) 
//

function SetCellSpacing()
// Adjusts the table cellspacing given the screen resolution
{

 		var xs = screen.availWidth ;
		var ys = screen.availHeight ;	 
		
		try {
				var listObj = document.getElementById('listing');
		    var detailObj =document.getElementById('details');
				
				if(xs < 800 || ys < 500)  
				{
		   			listObj.cellSpacing = "5" ;
	     			detailObj.cellSpacing = "6" ;
				}
				else if(xs < 1000 || ys < 700) 
				{
		   	 		listObj.cellSpacing = "7" ;
	     			detailObj.cellSpacing = "8" ;
				}
	  		else if(xs < 1150 || ys < 900)  
				{
		   	 		listObj.cellSpacing = "10" ;
	     			detailObj.cellSpacing = "11" ;
				}
				else 
				{
		   	 		listObj.cellSpacing = "14" ;
	     			detailObj.cellSpacing = "16" ;
				}
		}
		catch(error)
		{
		}
}

function WriteList(bOrderByName)
// writes the schedule list at at top of the page
{
 		// declare local variables
 		var dtToday = new Date ;	 // todays date
    var i, j ;								 // index variable
		
		for( j=0 ; j<nMaxRec ; j++) {	// repeat for all records imported from the database

				 i = bOrderByName == 0 ? aDateOrder[j] : aNameOrder[j] ;
		
				 var dtRec = new Date(aDateOfService[i] + " 23:59:59") ; // get the date of the last schedule service for this item
					
				 if(dtRec < dtToday) // display the record if the schedule service has not already passed
							continue ;		 			
		
					// write the name of the deceased							
					document.write("<TR class='schedLeft'>") ;		
					document.write("<TD><a class='schedA' href='#R" + aDeceased[i][fldID] + "';>" + aDeceased[i][fldName] + "</a></TD>") ;
					document.write("<TD>" + aDeceased[i][fldPassing] + "</TD>") ;
	
					if( aObituary[i] ) {
							document.write("<TD class='schedObit TimesFont'>&lt;") ;
							document.write("<A href='../obituaries/" +  aDeceased[i][fldID] + ".html' title='View Obituary' target='_self'>") ;   
							document.write("Obituary</A>&gt;</TD>") ;
					}
					else
							document.write("<TD></TD>")
							
					// indicate a service has been scheduled if a service is scheduled
					if ((aIsService3[i] + aIsService2[i] + aIsService1[i] + aIsService4[i]) != 0) 
						 	document.write("<TD class='schedLeft'>Services Scheduled</TD>") ;
					else
							document.write("<TD class='schedLeft'>Call</TD>") ;
		}			
}

function WriteTable()
{
		// declair local variables 
 		var dtToday = new Date ; // today' date
		var nService1 = 0, nService2=0, nService3=0, nService4=0 ; // count of services displayed
		var bNewRow ; // true if a service has been displayed
		var nRowspan ; // number of services that will be displaed
		var j, i ;// index value 				
		
		for(j=0 ; j<nMaxRec ; j++) {	// repeat for all records imported from the database

				 i = aNameOrder[j] ;

				 var dtRec = new Date(aDateOfService[i] + " 23:59:59") ; // get the date of the last schedule service for this item
					
				 if(dtRec < dtToday) {  // display the record if the schedule service has not already passed
					if( aIsService1[i] )
							++nService1 ;
					if( aIsService2[i] ) 
							++nService2 ;
				  if( aIsService3[i] )  
							++nService3 ;
					if( aIsService4[i] )
							++nService4 ;
							continue ;		 			
				  }						  
					// get the number of services that will be displayed			
					nRowspan = ((aIsService1[i] + aIsService2[i] + aIsService3[i] + aIsService4[i])*-1) + 1 ;
					// there must be a minimum of 2 service rows
					if(nRowspan<=1) 
							++nRowspan ;
												  
					// write a new header 
					document.write("<TR class='schedDetailHdr'>") ;
          document.write("<TD class='schedDetailFirst'><a name='R" + aDeceased[i][fldID] + "'></a><u>Name</u></TD>") ;
				  document.write("<TD><u>Services</u></TD>") ;
				  document.write("<TD><u>Location</u></TD>") ;
				  document.write("<TD><u>Misc Information</u></TD></TR>") ;
						
					
				  // show the deceased's name and date of passing								
					document.write("<TR>") ;
				  document.write("<TD class='schedLeft' rowspan='" + nRowspan + "'>");		
					document.write("<span class='schedName'>" + aDeceased[i][fldName] + "</span><br/>") ;
					document.write(aDeceased[i][fldDate]) ;
					document.write("<br/><br/>" + aDeceased[i][fldFuneralMisc]) ;
					if( aObituary[i] ) {
							document.write("<P class='schedObituary TimesFont'>&lt;") ;
							document.write("<A href='../obituaries/" + aDeceased[i][fldID] + ".html' title='View Obituary' target='_self'>") ;   
							document.write("Obituary</A>&gt;</P>") ;
					}
					document.write("</TD>") ;
			
					bNewRow = false ; // clear service display flag
				  if( aIsService1[i] ) {
					// show the first service information
								document.write("<TD><span class='schedService'>" + aService1[i][fldServiceName] + ":</span>") ;
 								document.write("<br/>" + aService1[i][fldServiceDateTime] + "</TD>") ;
								document.write("<TD><span class='schedLocation'>" + aService1[i][fldLocation] + "</span>") ;
								document.write("<br/>" + aService1[i][fldAddress] + "</TD>") ;
								document.write("<TD>" + aService1[i][fldServiceMisc] + "</TD>") ;
								document.write("</TR>") ;			
								bNewRow = true ;
								++nService1 ;
					}
								
					if( aIsService2[i] ) {
					// show the next service information
							  if(bNewRow)
										document.write("<TR>") ;			
								document.write("<TD><span class='schedService'>" + aService2[i][fldServiceName] + ":</span>") ;
 								document.write("<br/>" + aService2[i][fldServiceDateTime] + "</TD>") ;
								document.write("<TD><span class='schedLocation'>" + aService2[i][fldLocation] + "</span>") ;
								document.write("<br/>" + aService2[i][fldAddress] + "</TD>") ;
								document.write("<TD>" + aService2[i][fldServiceMisc] + "</TD>") ;
								document.write("</TR>") ;			
								++nService2 ;
								bNewRow = true ;
					}
								
				  if( aIsService3[i] ) { 
					// show the next service information
							 if( bNewRow )
										document.write("<TR>") ;			
								document.write("<TD><span class='schedService'>" + aService3[i][fldServiceName] + ":</span>") ;
 								document.write("<br/>" + aService3[i][fldServiceDateTime] + "</TD>") ;
								document.write("<TD><span class='schedLocation'>" + aService3[i][fldLocation] + "</span>") ;
								document.write("<br/>" + aService3[i][fldAddress] + "</TD>") ;
								document.write("<TD>" + aService3[i][fldServiceMisc] + "</TD>") ;
								document.write("</TR>") ;			
								++nService3 ;
								bNewRow = true ;
					}
								
					if( aIsService4[i] ){
					// show the next service information
							  if( bNewRow )
										document.write("<TR>") ;			
								document.write("<TD><span class='schedService'>" + aService4[i][fldServiceName] + ":</span>") ;
 								document.write("<br/>" + aService4[i][fldServiceDateTime] + "</TD>") ;
								document.write("<TD><span class='schedLocation'>" + aService4[i][fldLocation] + "</span>") ;
								document.write("<br/>" + aService4[i][fldAddress] + "</TD>") ;
								document.write("<TD>" + aService4[i][fldServiceMisc] + "</TD>") ;
								document.write("</TR>") ;			
								++nService4 ;
								bNewRow = true ;
					}		
					// close the row
					if ( !bNewRow ) 
					      document.write("<TD>call<TD></TR>") ;
					
					// show who is servicing this account			
					document.write("<TR>")
					document.write("<TD colspan=3 class='schedServicedBy TimesFont'>" + aDeceased[i][fldFuneralHome] + "</TD>") ;
					
					// draw a dividing line									 
				  document.write("<TR>") ;
					document.write("<TD colspan='5' class='schedDividLine'>") ;
					document.write("<A class='schedToTop' href='#pagetitle'>&lt;top&gt;</A>") ;	
					document.write("</TD></TR>") ;
			
		}
}
