//_main/_library/diary_functions.js
//1.06, MC, 2/12/10

function isNumber(strNum){
   var isNumber=true
   for (var i=0;i<strNum.length && isNumber==true;i++) { 
      c=strNum.charAt(i) 
      if ("0123456789".indexOf(c)==-1){
         isNumber=false
	  }
   }
   return isNumber
}

function get_class(c){
	if (mod(c,2)==0){
		return 'diary_col1'
	} else {
		return 'diary_col2'
	}
}

function display_entry(filter,event_name,col,event_cnt,entry,cell_width){
	if (filter.toUpperCase()=='ALL' || filter.toUpperCase()==event_name.toUpperCase()){
		col++
		document.write("<td nowrap class='"+get_class(col)+"' width='"+cell_width+"'>"+entry+"</td>")
	}
	return col
}

function calculate_width_of_div(filter){
	// Determine number of events that match filter
	filtered_event_cell_width=0
	for (i=1;i<=gevent_cnt;i++){
		if (filter.toUpperCase()=='ALL' || filter.toUpperCase()==gevent_name[i].toUpperCase()){
			filtered_event_cell_width=filtered_event_cell_width+gevent_cell_width[i]
		}
	}
	// Get screen width
   	sw=window_width()
   	if (sw<800){
   	    sw=800
   	}
	// Set div width to max possible size, e.g. screen width-200
	sdw=sw-200
	// If div width > that width required to display filtered events?
	if (sdw>filtered_event_cell_width){
		// Yes
		// Set div width to width required to display filtered events 
		sdw=filtered_event_cell_width
	}		
	return sdw	
}

function display_diary(f){
	switch(f){
		//////////////////////////////////////////////////////////////////////////////////////////////////////
		//  Display scrolling list of events, called by home.htm
		//////////////////////////////////////////////////////////////////////////////////////////////////////
		case 1:
			if (gevent_cnt>8){
				for (i=1;i<=8;i++){
					if (gevent_html[i]==""){
						//document.write(gevent_name[i]+" - "+gevent_date[i]+" - "+gevent_venue[i]+"<br>")
						document.write(gevent_name[i]+" - "+gevent_date[i]+"<br>")
					} else {
						//document.write(gevent_html[i]+" - "+gevent_date[i]+" - "+gevent_venue[i]+"<br>")
						document.write(gevent_html[i]+" - "+gevent_date[i]+"<br>")
					}
				}
				document.write("<span class='block_std_text'><b>For more events visit the <a href='diary.htm'>diary</a> page</b></span>")
			} else {
				for (i=1;i<=gevent_cnt;i++){
					if (gevent_html[i]==""){
						//document.write(gevent_name[i]+" - "+gevent_date[i]+" - "+gevent_venue[i]+"<br>")
						document.write(gevent_name[i]+" - "+gevent_date[i]+"<br>")
					} else {
						//document.write(gevent_html[i]+" - "+gevent_date[i]+" - "+gevent_venue[i]+"<br>")
						document.write(gevent_html[i]+" - "+gevent_date[i]+"<br>")
					}
				}
			}
			break
		//////////////////////////////////////////////////////////////////////////////////////////////////////
		// Display diary, called by diary.htm
		//////////////////////////////////////////////////////////////////////////////////////////////////////
		case 2:
			// Populate filter dropdown
			filter=unescape(get_url_parameter("filter"))
			if (filter==""){
				filter="All"
			}
			option=new Array()
			option_cnt=-1
			event_list=","
			for (i=1;i<=gevent_cnt;i++){ 
				if (event_list.indexOf(","+gevent_name[i]+",")==-1){
					event_list=event_list+gevent_name[i]+","
					option_cnt++
					option[option_cnt]=gevent_name[i]
				}
			}
			option.sort()
			document.write("<tr>")
			document.write("<td align='center'>")
			document.write("Show <select name='filter' onchange='location=this.options[this.selectedIndex].value;'>")
			if (filter.toUpperCase()=="ALL"){
				document.write("<option value='diary.htm?filter=all' selected>all events</option>")
			}else{
				document.write("<option value='diary.htm?filter=all'>all events</option>")
			}
			for (i=0;i<=option_cnt;i++){ 
				if (filter.toUpperCase()==option[i].toUpperCase()){
					document.write("<option value='diary.htm?filter="+option[i]+"' selected>"+option[i]+"</option>")
				}else{
					document.write("<option value='diary.htm?filter="+option[i]+"'>"+option[i]+"</option>")
				}
			}
			document.write("</select>")
			document.write("</td>")
			document.write("</tr>")
			document.write("<tr><td>&nbsp;</td></tr>")
			// End page table
			document.write("</table>")
			// Start Diary tables
			document.write("<table id='mt' align='center' cellpadding='0' cellspacing='0'>")
			document.write("<td align='center'>")
			document.write("<tr>")
			// Col 1
			document.write("<td>")
			document.write("<table width='200' cellpadding='0' cellspacing='0'>")
			document.write("<tr><td class='diary_col0'>Event Name</td></tr>")
			document.write("<tr><td class='diary_col0'>Event Format</td></tr>")
			document.write("<tr><td class='diary_col0'>Event Date</td></tr>")
			document.write("<tr><td class='diary_col0'>Registration Instructions</td></tr>")
			document.write("<tr><td class='diary_col0'>Sponsor</td></tr>")
			document.write("<tr><td class='diary_col0'>Venue</td></tr>")
			document.write("<tr><td class='diary_col0'>Entry Fee</td></tr>")
			document.write("<tr><td class='diary_col0'>Entry Closing Date</td></tr>")
			document.write("<tr><td class='diary_col0'>Entry Limit</td></tr>")
			document.write("<tr><td class='diary_col0'>Classes</td></tr>")
			document.write("<tr><td class='diary_col0'>Camping</td></tr>")
			document.write("<tr><td class='diary_col0'>Organiser</td></tr>")
			document.write("<tr><td class='diary_col0'>Organisers Name</td></tr>")
			document.write("<tr><td class='diary_col0'>Organisers Phone No.</td></tr>")
			document.write("<tr><td class='diary_col0'>Organisers Email</td></tr>")
			document.write("<tr><td class='diary_col0'>Additional Info</td></tr>")
			document.write("<tr><td class='diary_col0'>Spectators permitted</td></tr>")
			// Dummy cell to allow for scrollbar at bottom of col2
			document.write("<tr><td>&nbsp<td></tr>")
			document.write("</table>")
			document.write("</td>")
			//Col2
			document.write("<td>")
			//document.write("<div id='sd' style='width:"+calculate_width_of_div(filter)+"px; overflow-x:scroll; overflow-y:visible;'>")
			document.write("<div id='sd' style='width:"+calculate_width_of_div(filter)+"px; overflow-x:auto; overflow-y:visible;'>")
			document.write("<table cellpadding='0' cellspacing='0'>")
			// Event name
			document.write("<tr>")
			col=0
			for (i=1;i<=gevent_cnt;i++){
				if (gevent_html[i]==""){
					col=display_entry(filter,gevent_name[i],col,gevent_cnt,gevent_name[i],gevent_cell_width[i])
				} else {
					col=display_entry(filter,gevent_name[i],col,gevent_cnt,gevent_html[i],gevent_cell_width[i])
				}
			}
			document.write("</tr>")
			// Event format
			document.write("<tr>")
			col=0
			for (i=1;i<=gevent_cnt;i++){
				col=display_entry(filter,gevent_name[i],col,gevent_cnt,gevent_format[i],gevent_cell_width[i])
			}
			document.write("</tr>")
			// Event date
			document.write("<tr>")
			col=0
			for (i=1;i<=gevent_cnt;i++){
				col=display_entry(filter,gevent_name[i],col,gevent_cnt,gevent_date[i],gevent_cell_width[i])
			}
			document.write("</tr>")
			// Registration Instructions
			document.write("<tr>")
			col=0
			for (i=1;i<=gevent_cnt;i++){
				if (gevent_registration_process[i]=="EMAIL"){
					col=display_entry(filter,gevent_name[i],col,gevent_cnt,"<a href='mailto:"+gevent_org_email[i]+"?subject="+gevent_name[i]+" - "+gevent_date[i]+"'>To Register Email Organiser</a>",gevent_cell_width[i])
				} else if (gevent_registration_process[i]=="PAYPAL-GENERIC"){
					col=display_entry(filter,gevent_name[i],col,gevent_cnt,"<a href='generic_event_registration.htm?event_id="+i+"'>To Register Click Here</a>",gevent_cell_width[i])
				} else if (gevent_registration_process[i]=="PAYPAL-SERIES"){
					col=display_entry(filter,gevent_name[i],col,gevent_cnt,"<a href='series_event_registration1.htm?event_id="+i+"'>To Register Click Here</a>",gevent_cell_width[i])
				} else {
					col=display_entry(filter,gevent_name[i],col,gevent_cnt,gevent_registration_process[i],gevent_cell_width[i])
				}
			}
			document.write("</tr>")
			// Sponsor
			document.write("<tr>")
			col=0
			for (i=1;i<=gevent_cnt;i++){
				col=display_entry(filter,gevent_name[i],col,gevent_cnt,gevent_sponsor[i],gevent_cell_width[i])
			}
			document.write("</tr>")
			// Venue
			document.write("<tr>")
			col=0
			for (i=1;i<=gevent_cnt;i++){
				col=display_entry(filter,gevent_name[i],col,gevent_cnt,gevent_venue[i],gevent_cell_width[i])
			}
			document.write("</tr>")
			// Entry fee
			document.write("<tr>")
			col=0
			for (i=1;i<=gevent_cnt;i++){
				if (isNumber(gevent_fee[i])){
					col=display_entry(filter,gevent_name[i],col,gevent_cnt,"£"+gevent_fee[i],gevent_cell_width[i])
				} else {
					col=display_entry(filter,gevent_name[i],col,gevent_cnt,gevent_fee[i],gevent_cell_width[i])
				}
			}
			document.write("</tr>")
			// Entry closing date
			document.write("<tr>")
			col=0
			for (i=1;i<=gevent_cnt;i++){
				col=display_entry(filter,gevent_name[i],col,gevent_cnt,gevent_closing_date[i],gevent_cell_width[i])
			}
			document.write("</tr>")
			// Entry limit
			document.write("<tr>")
			col=0
			for (i=1;i<=gevent_cnt;i++){
				col=display_entry(filter,gevent_name[i],col,gevent_cnt,gevent_entry_limit[i],gevent_cell_width[i])
			}
			document.write("</tr>")
			// Classes
			document.write("<tr>")
			col=0
			for (i=1;i<=gevent_cnt;i++){
				col=display_entry(filter,gevent_name[i],col,gevent_cnt,gevent_classes[i],gevent_cell_width[i])
			}
			document.write("</tr>")
			// Camping
			document.write("<tr>")
			col=0
			for (i=1;i<=gevent_cnt;i++){
				col=display_entry(filter,gevent_name[i],col,gevent_cnt,gevent_camping[i],gevent_cell_width[i])
			}
			document.write("</tr>")
			// Organisation
			document.write("<tr>")
			col=0
			for (i=1;i<=gevent_cnt;i++){
				col=display_entry(filter,gevent_name[i],col,gevent_cnt,gevent_org[i],gevent_cell_width[i])
			}
			document.write("</tr>")
			// Organisers name
			document.write("<tr>")
			col=0
			for (i=1;i<=gevent_cnt;i++){
				col=display_entry(filter,gevent_name[i],col,gevent_cnt,gevent_org_name[i],gevent_cell_width[i])
			}
			document.write("</tr>")
			// Organisers phone no.
			document.write("<tr>")
			col=0
			for (i=1;i<=gevent_cnt;i++){
				col=display_entry(filter,gevent_name[i],col,gevent_cnt,gevent_org_phone[i],gevent_cell_width[i])
			}
			document.write("</tr>")
			// Organisers email
			document.write("<tr>")
			col=0
			for (i=1;i<=gevent_cnt;i++){
				col=display_entry(filter,gevent_name[i],col,gevent_cnt,"<a href='mailto:"+gevent_org_email[i]+"?subject="+gevent_name[i]+" - "+gevent_date[i]+"'>"+gevent_org_email[i]+"</a>",gevent_cell_width[i])
			}
			document.write("</tr>")
			// Additional info
			document.write("<tr>")
			col=0
			for (i=1;i<=gevent_cnt;i++){
				col=display_entry(filter,gevent_name[i],col,gevent_cnt,gevent_additional_info[i],gevent_cell_width[i])
			}
			document.write("</tr>")
			// Spectators
			document.write("<tr>")
			col=0
			for (i=1;i<=gevent_cnt;i++){
				col=display_entry(filter,gevent_name[i],col,gevent_cnt,gevent_spectators[i],gevent_cell_width[i])
			}
			document.write("</tr>")
			//
			document.write("</table>")
			document.write("</div>")
			document.write("</td>")
			document.write("</tr>")
			// End diary table
			document.write("</table>")						
			// Start page table
			document.write("<table width='800' align='center' cellpadding='0' cellspacing='0'>")
			break
	}
}
