$(document).ready(function(){
  $("input[type='text']").addClass('text');
  $("input[type='password']").addClass('text');
  $("input:submit, :button").button();
  $("#errorBox").hide();
  $("#spinner").hide();
  
	$("#spinner").ajaxStart(function() { 
		if(!($("div#spinner span.middle").text() == "")){	
			$("#spinner").show();
		}
		$('body').css('cursor','wait');
	})
    .ajaxStop(function() { 
		$("#spinner").hide(); 	
		$('body').css('cursor','default');
	});
});


//Function to
//Last Edited 6/1/11 by Kelly Blumer
function loadMembershipFormData()
{
	generateAutoComplete();
	return true;
}
// ----------------------------------------------------------------------------
//Function to
//Last Edited 6/1/11 by Kelly Blumer
function generateAutoComplete()
{
$.ajax({
	type: 'POST',
	url: "getInfoToJSON.php",
	data:{table:"studentTable", fields:'`firstName`,`lastName`,`ID`', selection:'`lastName` IS NOT NULL',sortby:'`lastName`'}, 
	dataType: "json",		
	success: function(members){ 
		var members_array = new Array();
		var autoCompleteList = new Array();
		var autoCompleteJSON = [];
		var completeName;
		var first = true;
			$.each(members, function(i,member){		
					completeName = member['firstName']+" "+member['lastName'];	
					completeName = completeName.replace(/&quot;/g,'"');																	
					autoCompleteJSON.push({label:completeName, ID:member.ID});			
			});	
//			var members=[{"label":"test1","ID":1},{"label":"test2","ID":2}];
			//Add autocomplete to addMemName text box
			
			$("#addStudentName").autocomplete({
				source: autoCompleteJSON,
				select: function(event, data){
					if(!(data.item==null)){
						$("#SID").val(data.item.ID);
						$("#addStudentName").val(data.item.label);	
						addStudent();						
					}else {
						$("#SID").val("");
						$("#addStudentName").val("");																		
					}
					return false;
				},
				change: function(event, data){
					if(!(data.item==null)){
						$("#addStudentName").val(data.item.label);
					}
					return false;
				}				
			
			});//End of autocomplete for addStudentName
	}//End of success
});//End of AJAX to set up autocomplete for add students
$.ajax({
	type: 'POST',
	url: "getInfoToJSON.php",
	data:{table:"guardianTable", fields:'`firstName`,`lastName`,`ID`', selection:'`lastName` IS NOT NULL',sortby:'`lastName`'}, 
	dataType: "json",		
	success: function(members){ 
		var members_array = new Array();
		var autoCompleteList = new Array();
		var autoCompleteJSON = [];
		var completeName;
		var first = true;
			$.each(members, function(i,member){		
					completeName = member['firstName']+" "+member['lastName'];	
					completeName = completeName.replace(/&quot;/g,'"');																	
					autoCompleteJSON.push({label:completeName, ID:member.ID});			
			});	
//			var members=[{"label":"test1","ID":1},{"label":"test2","ID":2}];
			//Add autocomplete to addMemName text box
			
			$("#addGuardianName").autocomplete({
				source: autoCompleteJSON,
				select: function(event, data){
					if(!(data.item==null)){	
						$("#addGuardianName").val(data.item.label);						
						$("#GID").val(data.item.ID);
						addGuardian();						
					}else {
						$("#GID").val("");
						$("#addGuardianName").val("");												
					}
					return false;
				},
				change: function(event, data){
					if(!(data.item==null)){
						$("#addGuardianName").val(data.item.label);
					}
					return false;
				}				
			
			});//End of autocomplete for addStudentName
	}//End of success
});//End of AJAX
$.ajax({
	type: 'POST',
	url: "getInfoToJSON.php",
	data:{table:"family", fields:'`familyName`,`ID`', selection:'`familyName` IS NOT NULL',sortby:'`familyName`'}, 
	dataType: "json",		
	success: function(members){ 
		var members_array = new Array();
		var autoCompleteList = new Array();
		var autoCompleteJSON = [];
		var completeName;
		var first = true;
			$.each(members, function(i,member){		
					completeName = member['familyName']+" ("+member['ID']+")";	
					completeName = completeName.replace(/&quot;/g,'"');																	
					autoCompleteJSON.push({label:completeName, ID:member.ID});			
			});	
//			var members=[{"label":"test1","ID":1},{"label":"test2","ID":2}];
			//Add autocomplete to addMemName text box
			
			$("#familyNameSearch").autocomplete({
				source: autoCompleteJSON,
				select: function(event, data){
					if(!(data.item==null)){	
						$("#familyNameSearch").val(data.item.label);						
						$("#FamSearchID").val(data.item.ID);
					  	$("#FID").val(data.item.ID);
					  	$("em").removeClass("msgOn");
					 	 getFamInfo(data.item.ID);	 
						$("#familyNameSearch").val("");						  
					  	$tabs.tabs('select', 0);  //Pop to families tab							
					}else {
						$("#FamSearchID").val("");
						$("#familyNameSearch").val("");
					}
					return false;
				},
				change: function(event, data){
					if(!(data.item==null)){
						$("#familyNameSearch").val(data.item.label);
					}
					return false;
				}				
			});//End of autocomplete for addStudentName
	}//End of success
});//End of AJAX
}

// ----------------------------------------------------------------------------
//Function to create a guardian autocomplete
//Last Edited 11/6/11 by Kelly Blumer
function generateAutoCompleteGuardians(selectorSearchID,selectorID)
{
$.ajax({
	type: 'POST',
	url: "getInfoToJSON.php",
	data:{table:"guardianTable", fields:'`firstName`,`lastName`,`ID`', selection:'`lastName` IS NOT NULL',sortby:'`lastName`'}, 
	dataType: "json",		
	success: function(members){ 
		var members_array = new Array();
		var autoCompleteList = new Array();
		var autoCompleteJSON = [];
		var completeName;
		var first = true;
			$.each(members, function(i,member){		
					completeName = member['firstName']+" "+member['lastName'];	
					completeName = completeName.replace(/&quot;/g,'"');																	
					autoCompleteJSON.push({label:completeName, ID:member.ID});			
			});	

			//Add autocomplete to addMemName text box			
			$(selectorSearchID).autocomplete({
				source: autoCompleteJSON,
				select: function(event, data){
					if(!(data.item==null)){	
						$(selectorSearchID).val(data.item.label);						
						$(selectorID).val(data.item.ID);
						getInfo("guardian",data.item.ID, "*");						
					}else {
						$(selectorID).val("");
						$(selectorSearchID).val("");												
					}
					return false;
				},
				change: function(event, data){
					if(!(data.item==null)){
						$(selectorSearchID).val(data.item.label);
					}
					return false;
				}				
			
			});//End of autocomplete for addStudentName
	}//End of success
});//End of AJAX	
}
// ----------------------------------------------------------------------------
//Function to create a guardian autocomplete
//Last Edited 11/6/11 by Kelly Blumer
function generateAutoCompleteUsernames(selectorID)
{
$.ajax({
	type: 'POST',
	url: "getInfoToJSON.php",
	data:{table:"Users", fields:'`username`,`ID`', selection:'`username` IS NOT NULL',sortby:'`username`'}, 
	dataType: "json",		
	success: function(members){ 
		var members_array = new Array();
		var autoCompleteList = new Array();
		var autoCompleteJSON = [];
		var completeName;
		var first = true;
			$.each(members, function(i,member){		
					completeName = member['username'];	
					completeName = completeName.replace(/&quot;/g,'"');																	
					autoCompleteJSON.push({label:completeName, ID:member.ID});			
			});	

			//Add autocomplete to addMemName text box			
			$(selectorID).autocomplete({
				source: autoCompleteJSON,
				select: function(event, data){
					if(!(data.item==null)){	
						$(selectorID).val(data.item.label);						
						getInfo("Users",data.item.ID, "*");						
					}else {
						$(selectorID).val("");
					}
					return false;
				},
				change: function(event, data){
					if(!(data.item==null)){
						$(selectorID).val(data.item.label);
					}
					return false;
				}				
			
			});//End of autocomplete for addStudentName
	}//End of success
});//End of AJAX	
}
// ----------------------------------------------------------------------------
//Function to
//Last Edited 6/1/11 by Kelly Blumer
function generateAutoCompleteList(table)
{
	$.ajax({
		type: 'POST',
		url: "getInfoToJSON.php",
		data:{table:table, fields:'`firstName`,`lastName`,`ID`', selection:'`lastName` IS NOT NULL',sortby:'`lastName`'}, 
		dataType: "json",		
		success: function(members){ 
			var members_array = new Array();
			var autoCompleteList = new Array();
			var autoCompleteJSON = [];
			var completeName;
			var first = true;
				$.each(members, function(i,member){		
						completeName = member['firstName']+" "+member['lastName'];	
						completeName = completeName.replace(/&quot;/g,'"');																	
						autoCompleteJSON.push({label:completeName, ID:member.ID});			
				});									
				return autoCompleteJSON;
		}//End of success
	});//End of AJAX to set up autocomplete 
}

// ----------------------------------------------------------------------------
//Function to
//Last Edited 5/21/11 by Kelly Blumer
//Get family info from family for a given family id
function getFamInfo(FID)
{ 
	$("div#spinner span.middle").html("Retrieving family information ...");
//	if(FID == 0) {
//		resetMemForms();
//	}	else {
		$.ajax({
			type: 'POST',
			url: "getInfoToJSON.php",
			data:{table:"familyTable", selection:"`ID`="+FID}, 
			dataType: "json",		
			success: function(data){ 
			  $.each(data, function(i, data){  		   		  
				  $("#FID").val(data.ID);
				  $("#familyName").val(data.familyName);
				  $("#homePhone").val(data['homePhone']);		
				  $("#emailAddress").val(data['emailAddress']);	
				  $("#additionalInfo").val(data['additionalInfo']);		
				  $("#address").val(data['address']);
				  $("#needsPaperCommunication").val(data['needsPaperCommunication'].toLowerCase());	
				  $("#directory").val(data['directory'].toLowerCase());	
				  $("#photo").val(data['photo'].toLowerCase());	
			  });//End of each
			}//End of success
		  });//End of ajax
	  	  getFamMembers(FID);
//	}//End of if
}
// ----------------------------------------------------------------------------
//Function to
//Last Edited 5/21/11 by Kelly Blumer
function getFamMembers(FID){

  $.ajax({
	type: 'POST',
	url: "getInfoToJSON.php",
	data:{table:"studentTable",selection:'`familyName`='+FID, fields:'`ID`,`lastName`,`firstName`'}, 
	dataType: "json",		
	success: function(membersdata){ 
		if(isset(membersdata)){
			var html="";
			$.each(membersdata, function(k, membersdata){  
			  html += "<li id="+membersdata['ID']+" title='Click to view student information.' "+"><img id='img_"+membersdata['ID']+"' src='images/delete.png' alt='Delete Member' title='Click to delete student from family.'>"+membersdata['firstName']+" "+ membersdata['lastName']+"</li>";						  				
			});//End of each				
			$("#listStudents").html(html);		
			return true;
		} else {
			$("#listStudents li").remove();				
			return false;
		}
		
	}//End of success
  });//end of ajax
  $.ajax({
	type: 'POST',
	url: "getInfoToJSON.php",
	data:{table:"guardianTable",selection:'`familyName`='+FID, fields:'`ID`,`lastName`,`firstName`'}, 
	dataType: "json",		
	success: function(membersdata){ 
		if(isset(membersdata)){
			var html="";
			$.each(membersdata, function(k, membersdata){  
			  html += "<li id="+membersdata['ID']+" title='Click to view guardian information.' "+"><img id='img_"+membersdata['ID']+"' src='images/delete.png' alt='Delete Member' title='Click to delete guardian from family'>"+membersdata['firstName']+" "+ membersdata['lastName']+"</li>";						  				
			});//End of each				
			$("#listGuardians").html(html);
//		  	$tabs.tabs('select', 0);  //Pop to Family tab 			
			return true;
		} else {
			$("#listGuardians li").remove();			
			return false;
		}
	},//End of success
	error:function(){
//		$tabs.tabs('select', 0);  //Pop to Family tab 		
		return false;
	}//End of error
  });//end of ajax  
}//End of function
// ----------------------------------------------------------------------------
//Function to
//Last Edited 5/21/11 by Kelly Blumer

function getStudentInfo(SID){
	$("div#spinner span.middle").html("Retrieving member information ...");
	
  //Look up member info from parishioners
  $.ajax({
	type: 'POST',
	url: "getInfoToJSON.php",
	data:{table:"studentTable", selection:'`ID`='+SID, fields:'*'}, 
	dataType: "json",		
	success: function(memdata){ 
	  $.each(memdata, function(i, memdata){  
//	  	  if( (memdata['familyName'] != "0") || (memdata['familyName'] != "") ){	
//		  	  $("#FID").val(memdata['familyName']);
//		  }			  
		  $("#SID").val(memdata.ID);
		  $("#reprint").val(memdata['reprint'].toLowerCase());		  
		  $("#sFirstName").val(memdata['firstName']);
		  $("#sLastName").val(memdata['lastName']);
  		  if(memdata['birthdate'] != "0000-00-00"){		  				  
		  	$("#birthdate").val(invertDate(memdata['birthdate']));
		  } else {
			  	$("#birthdate").val("");			  
		  }		  		  
		  $("#gender").val(memdata['gender'].toLowerCase());
		  $("#grade").val(memdata['grade']);		 
		  $("#room").val(memdata['room']);		  
		  $("#learningCenter").val(memdata['learningCenter'].toLowerCase());	
		  $("#technologyAgreement").val(memdata['technologyAgreement'].toLowerCase());	
		  $("#rights").val(memdata['rights'].toLowerCase());	
		  $("#doctor").val(memdata['doctor']);	
		  $("#dentist").val(memdata['dentist']);	
		  $("#yearbooksOrdered").val(memdata['yearbooksOrdered']);	
		  $("#yearbookPd").val(memdata['yearbookPd'].toLowerCase());
		  $("#notes").val(memdata['notes']);	
		  $("#name1").val(memdata['name1']);	 
		  $("#phone1").val(memdata['phone1']);	 
		  $("#relationship1").val(memdata['relationship1'].toLowerCase());	 
		  $("#name2").val(memdata['name2']);	 
		  $("#phone2").val(memdata['phone2']);	 
		  $("#relationship2").val(memdata['relationship2'].toLowerCase());	 
		  $("#name3").val(memdata['name3']);
		  $("#phone3").val(memdata['phone3']);	 
		  $("#relationship3").val(memdata['relationship3'].toLowerCase());	 
		  $("#name4").val(memdata['name4']);	 
		  $("#phone4").val(memdata['phone4']);	 
		  $("#relationship4").val(memdata['relationship4'].toLowerCase());	 
		  $("#e1Name").val(memdata['e1Name']);	 
		  $("#e1Relationship").val(memdata['e1Relationship'].toLowerCase());	 
		  $("#e1HomePhone").val(memdata['e1HomePhone']);	 
		  $("#e1WorkPhone").val(memdata['e1WorkPhone']);	 
		  $("#e1CellPhone").val(memdata['e1CellPhone']);	 
		  $("#e1Address").val(memdata['e1Address']);	 
		  $("#e2Name").val(memdata['e2Name']);	 
		  $("#e2Relationship").val(memdata['e2Relationship'].toLowerCase());	 
		  $("#e2HomePhone").val(memdata['e2HomePhone']);	 
		  $("#e2WorkPhone").val(memdata['e2WorkPhone']);	 
		  $("#e2CellPhone").val(memdata['e2CellPhone']);	 
		  $("#e2Address").val(memdata['e2Address']);	 
		  $("#siblingName1").val(memdata['siblingName1']);	 
 		  if(memdata['siblingDOB1'] != "0000-00-00"){		  				  
		  	$("#siblingDOB1").val(invertDate(memdata['siblingDOB1']));
		  } else {
			  	$("#siblingDOB1").val("");			  
		  }		  
		  $("#siblingName2").val(memdata['siblingName2']);	 
 		  if(memdata['siblingDOB2'] != "0000-00-00"){		  				  
		  	$("#siblingDOB2").val(invertDate(memdata['siblingDOB2']));
		  } else {
			  	$("#siblingDOB2").val("");			  
		  }		  
		  $("#siblingName3").val(memdata['siblingName3']);	 
 		  if(memdata['siblingDOB3'] != "0000-00-00"){		  				  
		  	$("#siblingDOB3").val(invertDate(memdata['siblingDOB3']));
		  } else {
			  	$("#siblingDOB3").val("");			  
		  }		  
		  $("#siblingName4").val(memdata['siblingName4']);	 
  		  if(memdata['siblingDOB4'] != "0000-00-00"){		  				  
		  	$("#siblingDOB4").val(invertDate(memdata['siblingDOB4']));
		  } else {
			  	$("#siblingDOB4").val("");			  
		  }
	  });//end each
	}//end of success
  });//end ajax	
  $tabs.tabs('select', 1);  //Pop to students tab
  return true;
}
// ----------------------------------------------------------------------------
//Function to
//Last Edited 5/21/11 by Kelly Blumer

function getInfo(table,ID, fields){
	$("div#spinner span.middle").html("Retrieving member information ...");
	
  //Look up member info from parishioners
  $.ajax({
	type: 'POST',
	url: "getInfoToJSON.php",
	data:{table:table, selection:'`ID`='+ID, fields:fields}, 
	dataType: "json",		
	success: function(memdata){ 
		$.each(memdata, function(i, memdata){  
	  		$.each(memdata, function(key, field){
				selector='#'+key;
				if($(selector).length > 0){	//If selector exists					
					if((key == "copyFamPhone" || key == "copyFamEmail" || key == "copyFamAddress" )){
						 if((field.toLowerCase() == "true" || field.toLowerCase() == "yes" || field.toLowerCase() == "checked")){
							$(selector).attr('checked','checked');
						 } else {
							$(selector).removeAttr("checked");				 
						 }
					} else {
						if($(selector).is("select")){
							$(selector).val(field.toLowerCase());
						} else {
							if($(selector).hasClass('date')){ //If date invert
								field = invertDate(field);
							}
							$(selector).val(field);						
						}
					}
			}
			});
	  });//end each
	}//end of success
  });//end ajax	
  return true;
}
// ----------------------------------------------------------------------------
//Function to
//Last Edited 9/28/11 by Kelly Blumer
function getGuardianInfo(GID){
$("div#spinner span.middle").html("Retrieving member information ...");
	
  //Look up member info from parishioners
  $.ajax({
	type: 'POST',
	url: "getInfoToJSON.php",
	data:{table:"guardianTable", selection:'`ID`='+GID, fields:'*'}, 
	dataType: "json",		
	success: function(memdata){ 
	  $.each(memdata, function(i, memdata){  	
//	  	  $("#FID").val(memdata['familyName']);
		  $("#GID").val(memdata.ID);
		  $("#gFirstName").val(memdata['firstName']);
		  $("#gLastName").val(memdata['lastName']);
		  $("#relationship").val(memdata['relationship'].toLowerCase());
		  $("#guardianNmbr").val(memdata['guardianNmbr']);
		  if(memdata['copyFamPhone'] == "checked" || (memdata['copyFamPhone'] == "yes")|| (memdata['copyFamPhone'] == "true")){		 
		  	$("#copyFamPhone").attr('checked','checked');
		  	$("#gHPhone").val($("#homePhone").val());							  
		  } else {
		  	$("#copyFamPhone").removeAttr('checked');	
		  	$("#gHPhone").val(memdata['gHPhone']);							  
		  }	
		  	$("#gCPhone").val(memdata['gCPhone']);							  
		  	$("#gBPhone").val(memdata['gBPhone']);							  
		  if((memdata['copyFamEmail'] == "checked") || (memdata['copyFamEmail'] == "yes")|| (memdata['copyFamEmail'] == "true")){		  
		  	$("#copyFamEmail").attr('checked','checked');
		  	$("#gEmail").val($("#emailAddress").val());							  
		  } else {
		  	$("#copyFamEmail").removeAttr('checked');	
		  	$("#gEmail").val(memdata['gEmail']);		
		  }		  
		  if((memdata['copyFamAddress'] == "checked") || (memdata['copyFamAddress'] == "yes")|| (memdata['copyFamAddress'] == "true")){		  
		  	$("#copyFamAddress").attr('checked','checked');
		  	$("#gAddress").val($("#address").val());							  
		  } else {
		  	$("#copyFamAddress").removeAttr('checked');	
		  	$("#gAddress").val(memdata['gAddress']);
		  }		  
		  $("#gCompany").val(memdata['gCompany']);
		  
		  $("#purpleForm").val(memdata['purpleForm'].toLowerCase());
		  $("#cdlCleared").val(memdata['cdlCleared'].toLowerCase());
		  $("#cdlCopy").val(memdata['cdlCopy'].toLowerCase());
		  $("#cdlNmbr").val(memdata['cdlNmbr']);
  		  if(memdata['cdlExp'] != "0000-00-00"){		  		
			  $("#cdlExp").val(invertDate(memdata['cdlExp']));
		  }else {
			  	$("#cdlExp").val("");			  
		  }
		  $("#tbCopy").val(memdata['tbCopy'].toLowerCase());
		  $("#autoInsCopy").val(memdata['autoInsCopy'].toLowerCase());
		  
  		  if(memdata['tbExp'] != "0000-00-00"){		  		
			  $("#tbExp").val(invertDate(memdata['tbExp']));
		  }else {
			  	$("#tbExp").val("");			  
		  }
  		  if(memdata['autoInsExp'] != "0000-00-00"){		  		
		  		  $("#autoInsExp").val(invertDate(memdata['autoInsExp']));	
		  }else {
			  	$("#autoInsExp").val("");			  
		  }
		  $("#badCheck").val(memdata['badCheck'].toLowerCase());
		  $("#ptaMember").val(memdata['ptaMember'].toLowerCase());
		  
		  $("#gNotes").val(memdata['gNotes']);	  		  		  	  							  		  
	  });//end each
  $tabs.tabs('select', 2);  //Pop to Guardian tab
  return true;	  
	}//end of success
  });//end ajax	
  
}
// ----------------------------------------------------------------------------
//Function to
//Last Edited 5/21/11 by Kelly Blumer
function createFamSelectList(famID, selectID)
{
  $.ajax({
	type: 'POST',
	url: "getInfoToJSON.php",
	data:{table:'familyTable', fields:'`familyName`,`ID`', sortby:'familyName', order:'ASC'}, 
	dataType: "json",		
	success: function(memdata){ 
		if(famID == "") {
		  famID = 0;
		  var html = '<option value="0" selected="yes"></option>';
		} else {
		  var html = '<option value="0"></option>';
		}
		$.each(memdata, function(i, memdata){  
			if(memdata.familyName != ""){
				if(memdata.ID == famID){ 
					html += '\t<option value="'+memdata.ID+'" selected>'+memdata.familyName+'  ('+memdata.ID+')</option>\n';	  		
				}	else {
					html += '\t<option value="'+memdata.ID+'">'+memdata.familyName+'  ('+memdata.ID+')</option>\n';  		
				}
			}
		});//end each
		if(!(selectID == "") &&(isset(selectID))){
		  	$(selectID).html(html);			
		} else {
		  	$("#familyNameSelect").html(html);
		}
		return true;		  
	}//end of success
  });//end ajax		 
}
// ----------------------------------------------------------------------------
//Function to
//Last Edited 10/1/11 by Kelly Blumer

function saveStudentInfo(){
	$("div#spinner span.middle").html("Checking information...");
	var errorFlag=false;
	var reqFields = $('#studentInfoForm input.required');
	var required = new Object();
	reqFields.each(function(){
		field = $(this).attr('name');
		if(field=="sFirstName") field="firstName";
		if(field=="sLastName") field="lastName";
		required[field]=field;	
		if($(this).val() == ""){
			$(this).next("em").addClass("msgOn");			
			errorFlag = true;
		}
	}); //end of foreach required field
	if(errorFlag){
		timedErrorBoxMsg("Student information was not saved.");												
		return false;
	} else {

			var birthdate=formatDateForDB($("#birthdate").val());
			if(!birthdate){
				birthdate ="";
			}
			var siblingDOB1=formatDateForDB($("#siblingDOB1").val());
			if(!siblingDOB1){
				siblingDOB1 ="";
			}
			var siblingDOB2=formatDateForDB($("#siblingDOB2").val());
			if(!siblingDOB2){
				siblingDOB2 ="";
			}								
			var siblingDOB3=formatDateForDB($("#siblingDOB3").val());
			if(!siblingDOB3){
				siblingDOB3 ="";
			}
			var siblingDOB4=formatDateForDB($("#siblingDOB4").val());
			if(!siblingDOB4){
				siblingDOB4 ="";
			}							
			$.ajax({
				type: 'POST',
				url: "saveMembershipInfo.php",
				data:{
					ID:$("#SID").val(),
					familyName:$("#FID").val(),
					gender:$("#gender").val(),
					firstName:$("#sFirstName").val(),
					lastName:$("#sLastName").val(),		
					grade:$("#grade").val(),
					room:$("#room").val(),
					birthdate:birthdate,
					notes:$("#notes").val(),
					yearbooksOrdered:$("#yearbooksOrdered").val(),
					yearbookPd:$("#yearbookPd").val(),
					technologyAgreement:$("#technologyAgreement").val(),
					rights:$("#rights").val(),
					doctor:$("#doctor").val(),
					dentist:$("#dentist").val(),
					name1:$("#name1").val(),
					phone1:$("#phone1").val(),
					relationship1:$("#relationship1").val(),
					name2:$("#name2").val(),
					phone2:$("#phone2").val(),
					relationship2:$("#relationship2").val(),
					name3:$("#name3").val(),
					phone3:$("#phone3").val(),
					relationship3:$("#relationship3").val(),
					name4:$("#name4").val(),
					phone4:$("#phone4").val(),
					relationship4:$("#relationship4").val(),					
					e1Name:$("#e1Name").val(),
					e1Address:$("#e1Address").val(),
					e1HomePhone:$("#e1HomePhone").val(),
					e1WorkPhone:$("#e1WorkPhone").val(),
					e1CellPhone:$("#e1CellPhone").val(),
					e1Relationship:$("#e1Relationship").val(),
					e2Name:$("#e2Name").val(),
					e2Address:$("#e2Address").val(),
					e2HomePhone:$("#e2HomePhone").val(),
					e2WorkPhone:$("#e2WorkPhone").val(),
					e2CellPhone:$("#e2CellPhone").val(),
					e2Relationship:$("#e2Relationship").val(),										
					reprint:$("#reprint").val(),
					learningCenter:$("#learningCenter").val(),
					phoneTree:$("#phoneTree").val(),
					siblingName1:$("#siblingName1").val(),
					siblingDOB1:siblingDOB1,
					siblingName2:$("#siblingName2").val(),
					siblingDOB2:siblingDOB2,
					siblingName3:$("#siblingName3").val(),
					siblingDOB3:siblingDOB3,
					siblingName4:$("#siblingName4").val(),
					siblingDOB4:siblingDOB4,	
					table:"student",
					required:required									
				}, 				
				success: function(results){
					if(results != ""){			
						if(isNumeric(results)){ 	
							$("#SID").val(results)
							generateAutoComplete();
							getFamMembers($("#FID").val());
							getStudentInfo(results);
							$tabs.tabs('select', 1);  //Pop to students tab
							timedErrorBoxMsg("Student information was saved.");				
							return true;
						} else {	
							var errorFlag=false;
							for(var i=0; i < results.length; i++) {
								var fieldNameTxt = "#"+results[i].field;				
								var msgTxt = results[i].message;
								if(isset(msgTxt) && (msgTxt!="")){
									$(fieldNameTxt).next("em").text(msgTxt);
									$(fieldNameTxt).next("em").addClass("msgOn");
									errorFlag=true;	
								}//End of if there are err msg
								if(results[i].newValue !=""){
									$(fieldNameTxt).val(results[i].newValue);
								} //End of if newValue
							}//end of for	
							if(errorFlag){
								timedErrorBoxMsg("Student information was not saved.");
								return false;																														
							} else {
								timedErrorBoxMsg("Student information was saved.");				
								return true;
							}//End of errorFlag

						}
					}	else {
						timedErrorBoxMsg("Student information was not saved.");										
						return false;
					}
				},//end of success
				
				error: function(){
					timedErrorBoxMsg("Student information was not saved.");				
					$("#SID").val(SID)
					generateAutoComplete();
					getFamMembers($("#FID").val());
					getStudentInfo(SID);
					$tabs.tabs('select', 1);  //Pop to students tab					
					return false;
				}//End of error
			});//end ajax
	}//End of if errFlag		
}
// ----------------------------------------------------------------------------
//Function to
//Last Edited 8/1/11 by Kelly Blumer

function saveGuardianInfo(){
	$("div#spinner span.middle").html("Checking information...");
	var errorFlag=false;
	var reqFields = $('#guardianInfoForm input.required');
	var required = new Object();
	reqFields.each(function(){
		field = $(this).attr('name');
		if(field=="gFirstName") field="firstName";
		if(field=="gLastName") field="lastName";		
		required[field]=field;	
		if($(this).val() == ""){
			$(this).next("em").addClass("msgOn");			
			errorFlag = true;
		}
	});
	var results = checkGuardianNmbr($("#FID").val(), $("#GID").val(), $("#guardianNmbr").val(), "#guardianNmbr");	  
	if(results){
		errorFlag = true;
	}
		
	if(errorFlag){
		timedErrorBoxMsg("Guardian information was not saved.");												
		return false;
	} else {
					
  //Look up member info 
 
			var cdlExp=formatDateForDB($("#cdlExp").val());
			if(!cdlExp){
				cdlExp ="";
			}
			var tbExp=formatDateForDB($("#tbExp").val());
			if(!tbExp){
				tbExp ="";
			}
			var autoInsExp=formatDateForDB($("#autoInsExp").val());
			if(!autoInsExp){
				autoInsExp ="";
			}								
			$.ajax({
				type: 'POST',
				url: "saveMembershipInfo.php",
				data:{
					ID:$("#GID").val(),
					familyName:$("#FID").val(),
					firstName:$("#gFirstName").val(),
					lastName:$("#gLastName").val(),		
					relationship:$("#relationship").val(),
					guardianNmbr:$("#guardianNmbr").val(),					
					gHPhone:$("#gHPhone").val(),
					copyFamPhone:$("#copyFamPhone").attr('checked') ,
					gCPhone:$("#gCPhone").val(),
					gBPhone:$("#gBPhone").val(),
					gCompany:$("#gCompany").val(),
					gEmail:$("#gEmail").val(),
					copyFamEmail:$("#copyFamEmail").attr('checked') ,
					gAddress:$("#gAddress").val(),
					copyFamAddress:$("#copyFamAddress").attr('checked') ,
					gNotes:$("#gNotes").val(),
					badCheck:$("#badCheck").val(),
					ptaMember:$("#ptaMember").val(),
					purpleForm:$("#purpleForm").val(),
					cdlCleared:$("#cdlCleared").val(),
					cdlCopy:$("#cdlCopy").val(),
					cdlNmbr:$("#cdlNmbr").val(),
					tbCopy:$("#tbCopy").val(),
					autoInsCopy:$("#autoInsCopy").val(),
					cdlExp:cdlExp,
					tbExp:tbExp,
					autoInsExp:autoInsExp,	
					table:"guardian",
					required:required							
				}, 
				success: function(results){
					if(results != ""){			
						if(isNumeric(results)){ 	
							$("#GID").val(results)
							generateAutoComplete();
							getFamMembers($("#FID").val());
							getGuardianInfo(results);
							$tabs.tabs('select', 2);  //Pop to guardians tab						
							timedErrorBoxMsg("Guardian information was saved.");				
							return true;
						} else {	
							var errorFlag=false;
							for(var i=0; i < results.length; i++) {
								var fieldNameTxt = "#"+results[i].field;				
								var msgTxt = results[i].message;
								if(isset(msgTxt) && (msgTxt!="")){
									$(fieldNameTxt).next("em").text(msgTxt);
									$(fieldNameTxt).next("em").addClass("msgOn");
									errorFlag=true;	
								}
								if(results[i].newValue !=""){
									$(fieldNameTxt).val(results[i].newValue);
								}
							}//end of for	
							if(errorFlag){
								timedErrorBoxMsg("Guardian information was not saved.");
								return false;																														
							} else {
								timedErrorBoxMsg("Guardian information was saved.");												
								return true;
							}

						}
					}	else {
						timedErrorBoxMsg("Guardian information was not saved.");										
						return false;
					}
				},//end of success
				error: function(){
					timedErrorBoxMsg("Guardian information was not saved.");				
					return false;
				}
			});//end ajax
	}
}
// ----------------------------------------------------------------------------
//Function to
//Last Edited 5/21/11 by Kelly Blumer

function saveFamInfo(){
  //Look up member info from parishioners
	$("div#spinner span.middle").html("Saving family information ...").show();
  	if($("#familyName").val() == ""){	
		timedErrorBoxMsg("Family information was not saved.");								
		return false;
  	}	else { 	
		var FID=$("#FID").val();
		$.ajax({
			type: 'POST',
			url: "saveMembershipInfo.php",
			data:{
				ID:$("#FID").val(),
				familyName:$("#familyName").val(),
				homePhone:$("#homePhone").val(),
				emailAddress:$("#emailAddress").val(),
				additionalInfo:$("#additionalInfo").val(),
				directory:$("#directory").val(),		
				photo:$("#photo").val(),			
				needsPaperCommunication:$("#needsPaperCommunication").val(),				
				address:$("#address").val(),		
				table:"family"		
			}, 		
			success: function(results){
				if(results != ""){			
					if(isNumeric(results)){ 
						generateAutoComplete();
						$("#FID").val(FID)
						getFamInfo(FID);
						$tabs.tabs('select', 0);  //Pop to family tab						
						timedErrorBoxMsg("Family information was saved.");				
						return true;
					} else {	
						var errorFlag=false;
						for(var i=0; i < results.length; i++) {
							var fieldNameTxt = "#"+results[i].field;				
							var msgTxt = results[i].message;
							if(isset(msgTxt) && (msgTxt!="")){
								$(fieldNameTxt).next("em").text(msgTxt);
								$(fieldNameTxt).next("em").addClass("msgOn");
								errorFlag=true;	
							}
							if(results[i].newValue !=""){
								$(fieldNameTxt).val(results[i].newValue);
							}
						}//end of for	
						if(errorFlag){
							timedErrorBoxMsg("Family information was not saved.");
							return false;																														
						} else {
							timedErrorBoxMsg("Family information was saved.");												
							return true;
						}
					}
				}	else {
					timedErrorBoxMsg("Family information was not saved.");										
					return false;
				}
			},//end of success
			error: function(){
				timedErrorBoxMsg("Family information was not saved.");	
				return false;			
			}			
		});//end ajax	
	}
	
}
// ----------------------------------------------------------------------------
//Function to
//Last Edited 5/21/11 by Kelly Blumer

function addStudent(){
	$("div#spinner span.middle").html("Adding new student ...");

	var FID = $("#FID").val();	
	var studentName = $("#addStudentName").val();
	var SID = $("#SID").val();
	if(studentName != ""){		
		$.ajax({
			type: 'POST',
			url: "modFamMem.php",
			data:{table:'students',columns:'`familyName`', values:FID, matchColumns:'`ID`', matchValues:SID}, 
			success: function(){ 
				$("#addStudentName").val("");
				getFamMembers(FID);
				$tabs.tabs('select', 0);  //Pop to families tab													
				return true;
			}//end of success
		});//end ajax	
	}	else {
		$tabs.tabs('select', 0);  //Pop to families tab															
		timedErrorBoxMsg("Please select a name to add.");
		return false;		
	}
}
// ----------------------------------------------------------------------------
//Function to
//Last Edited 5/21/11 by Kelly Blumer

function addGuardian(){
	$("div#spinner span.middle").html("Adding new guardian ...");

	var FID = $("#FID").val();	
	var guardianName = $("#addGuardianName").val();
	var GID = $("#GID").val();
	if(guardianName != ""){		
		$.ajax({
			type: 'POST',
			url: "modFamMem.php",
			data:{table:'guardians',columns:'`familyName`', values:FID, matchColumns:'`ID`', matchValues:GID}, 
			success: function(){ 
				$("#addGuardianName").val("");
				getFamMembers(FID);
				$tabs.tabs('select', 0);  //Pop to families tab																	
				return true;
			}//end of success
		});//end ajax	
	}	else {
		$tabs.tabs('select', 0);  //Pop to families tab															
		timedErrorBoxMsg("Please select a name to add.");
		return false;		
	}
}
// ----------------------------------------------------------------------------
//Function to remove the FamilyName field from a member
//Last Edited 10/1/11 by Kelly Blumer
function deleteRecord(table,matchColumns,matchValues){	
	if((matchColumns.length != 0) && (matchValues.length != 0)){
		var confirm = prompt("Type DELETE to confirm that you would like to delete this "+table+".","");
		if(confirm.toLowerCase() == "delete" || confirm.toLowerCase() == "del" ){
			$("div#spinner span.middle").html("Removing "+table+" ...").show();		
			$.ajax({
				type: 'POST',
				url: "deleteRecord.php",
				data:{table:table, matchColumns:matchColumns, matchValues:matchValues},
				datatype:"text", 
				success: function(){ 	
					FID = $("#FID").val();	
					if(table == "guardian"){	
						resetGuardianInfoForm();
						generateAutoComplete();		
						getFamInfo(FID);											 			 	 						
					} else if (table == "student") {
						resetStudentInfoForm();
						generateAutoComplete();							 			 	 					
						getFamInfo(FID);
					} else if (table == "family"){
						selectorID = "select#familyNameSelect option[value="+FID+"]";
						$(selectorID).remove();						
						resetMemForms();
					}
	  				$tabs.tabs('select', 0);  //Pop to Family tab					
					return true;					
				},//end of success
				error:function(){
					timedErrorBoxMsg("Information was not deleted.");
					return false;
				}//end of error
			});//end ajax	  
		} else {
			timedErrorBoxMsg("Information was not deleted.");			
			return false;
		}//End of confirm delete
	}//End of confirm columns and values has data
}
// ----------------------------------------------------------------------------
//Function to remove the FamilyName field from a member
//Last Edited 10/1/11 by Kelly Blumer
function deleteRow(table,matchColumns,matchValues){	
	if((matchColumns.length != 0) && (matchValues.length != 0)){
//		var confirm = prompt("Type DELETE to confirm that you would like to delete this "+table+".","");
//		if(confirm.toLowerCase() == "delete" || confirm.toLowerCase() == "del" ){
			$("div#spinner span.middle").html("Removing "+table+" ...").show();		
			$.ajax({
				type: 'POST',
				url: "deleteRecord.php",
				data:{table:table, matchColumns:matchColumns, matchValues:matchValues}, 
				success: function(){ 	
					createSignupTable($("#SUID").val());			
				}//end of success
			});//end ajax	  
			return true;
//		} else {
//			return false;
//		}//End of confirm delete
	}//End of confirm columns and values has data
}
// ----------------------------------------------------------------------------
//Function to remove the FamilyName field from a member
//Last Edited 10/1/11 by Kelly Blumer
function delStudent(memID){	
	var confirm = prompt("Type DELETE to confirm that you would like to delete student from family.","");
	if(confirm == "DELETE" || confirm == "delete"){
		$("div#spinner span.middle").html("Removing student from family ...");		
		$.ajax({
			type: 'POST',
			url: "modFamMem.php",
			datatype:"json",
			data:{table:"students",columns:'`familyName`', values:"0", matchColumns:'`ID`', matchValues:memID}, 
			success: function(){ 
				$("#addMemName").val("");
				var famID = $("#FID").val();	
				resetStudentInfoForm();							
				getFamMembers(famID);
  				$tabs.tabs('select', 0);  //Pop to Family tab
			}//end of success
		});//end ajax	  
		return true;
	} else {
		return false;
	}
}
// ----------------------------------------------------------------------------
//Function to remove the FamilyName field from a member
//Last Edited 10/1/11 by Kelly Blumer
function delGuardian(memID){	
	var confirm = prompt("Type DELETE to confirm that you would like to delete guardian from family.","");
	if(confirm == "DELETE" || confirm == "delete"){
		$("div#spinner span.middle").html("Removing guardian from family ...");		
		$.ajax({
			type: 'POST',
			url: "modFamMem.php",
			data:{table:"guardians",columns:'`familyName`', values:null, matchColumns:'`ID`', matchValues:memID}, 
			datatype:"text",
			success: function(){ 
				$("#addMemName").val("");
				var famID = $("#FID").val();				
				resetGuardianInfoForm();				
				getFamMembers(famID);
  				$tabs.tabs('select', 0);  //Pop to Family tab						 			 	 				
			}//end of success
		});//end ajax	  
		return true;
	} else {
		return false;
	}
}
// ----------------------------------------------------------------------------
//Function to reset all forms on membership.php
//Last Edited 10/2/11 by Kelly Blumer
function resetMemForms()
{
	$("div#spinner span.middle").html("Resetting forms ...");		
	resetStudentInfoForm();
	resetGuardianInfoForm();
  	$tabs.tabs('select', 0);  //Pop to Family tab						 			 	 					 
	$(':input','#famInfoForm')
		 .not(':button, :submit, :reset, :hidden')
		 .val('')
		 .removeAttr('checked')
		 .removeAttr('selected');
	 $(':input','#whichFamForm')
		 .not(':button, :submit, :reset, :hidden')
		 .val('')
		 .removeAttr('checked')
		 .removeAttr('selected');				 			 	 
	$('*').removeClass("msgOn");
	$("#listStudents li").remove();
	$("#listGuardians li").remove();
	$("#FID").val("");	  
	$("#SID").val("");
	$("#GID").val("");
	return true;
 }
 // ----------------------------------------------------------------------------
//Function to reset studentInfoForm on membership.php
//Last Edited 5/21/11 by Kelly Blumer
 function resetStudentInfoForm()
 {
  	$tabs.tabs('select', 1);  //Pop to student tab						 			 	 					 
	$(':input','#studentInfoForm')
		.not(':button, :submit, :reset, :hidden')
		.val('')
		.removeAttr('checked')
		.removeAttr('selected');	
	$('*').removeClass("msgOn");
	$("#SID").val('');
}
 // ----------------------------------------------------------------------------
//Function to reset memInfoForm on membership.php
//Last Edited 5/21/11 by Kelly Blumer
 function resetGuardianInfoForm()
 {
  	$tabs.tabs('select', 2);  //Pop to guardian tab						 			 	 					 	 
	$(':input','#guardianInfoForm')
		.not(':button, :submit, :reset, :hidden')
		.val('')
		.removeAttr('checked')
		.removeAttr('selected');	
	$('*').removeClass("msgOn");
	$("#GID").val('');
}
 // ----------------------------------------------------------------------------
//Function to reset studentInfoForm on membership.php
//Last Edited 5/21/11 by Kelly Blumer
 function resetForm(form)
 {
	$(':input',form)
		.not(':button, :submit, :reset, :hidden')
		.val('')
		.removeAttr('checked')
		.removeAttr('selected');	
	$('*').removeClass("msgOn");
}
// ----------------------------------------------------------------------------
//Function to
//Last Edited 5/21/11 by Kelly Blumer
function getFormValues(fobj){
	var str = "";
	var valueArr = null;
	var val = "";
	var cmd = "";
	for(var i = 0;i < fobj.elements.length;i++)
	{
		switch(fobj.elements[i].type)
		{
			case "text":
				str += fobj.elements[i].name +
				"=" + escape(fobj.elements[i].value) + "&";
			break;

			case "textarea":
				str += fobj.elements[i].name +"=" + escape(fobj.elements[i].value) + "&";
			break;
			case "select-one":
				str += fobj.elements[i].name +"=" + fobj.elements[i].options[fobj.elements[i].selectedIndex].value + "&";
			break;	
			case "checkbox":
				if(fobj.elements[i].checked == true){
					str += fobj.elements[i].name +
					"=" + fobj.elements[i].value + "&";
				}
			break;	
		}	
	}
	str = str.substr(0,(str.length - 1));
	return str;
}


// ----------------------------------------------------------------------------
//Function to
//Last Edited 5/21/11 by Kelly Blumer

function createSelectList(members, optionvalue, selected, size)
{
	var ID = 1;
	var membersID;
	var membersFirstName;
	var membersLastName;
	if(size == null){
		size = 1;
	}
	if(selected == null){
		selected = "0";
	}
	if(optionvalue == null){
		optionvalue = 'ID';
	}	
	var html = '<select size="'+size+'">';
	html += "<option value=\"0\">Select a name.</option>";
	for(var memberskey in members){
			membersID = members[memberskey][0];
			membersLastName = members[memberskey][1];
			membersFirstName = members[memberskey][2];
			if( membersID == selected){
				html += '<option value="'+membersID+'" selected>'+membersLastName+', '+membersFirstName;
			} else {
				html += '<option value="'+membersID+'" >'+membersLastName+', '+membersFirstName;
			}
			html += "</option>";			
	}
	html += "</select>";
	return html;
}
// ----------------------------------------------------------------------------
//Function to
//Last Edited 5/21/11 by Kelly Blumer

function createNameTextBox(selected, fieldID,size, maxlength)
{
	size = size || 28;
	maxlength = maxlength || 40;	
	var membersID = selected[0];
	var membersFirstName = selected[1];
	var membersLastName = selected[2];
	if(membersID != "" && membersFirstName != "" && membersLastName != "") {
		var html = '<input value="'+membersFirstName+' '+membersLastName+'" type="text" class="name" id="'+fieldID+'"    size="'+size+'" maxlength="'+maxlength+'" name="'+fieldID+'">';
	} else {
		var html = '<input value="Sign Up" type="text" class="name" id="'+fieldID+'"    size="'+size+'" maxlength="'+maxlength+'"name="'+fieldID+'">';
	}
	return html;
}
// ----------------------------------------------------------------------------
//Function to
//Last Edited 5/21/11 by Kelly Blumer
function createTextBox(value, fieldID, myClass, size, maxlength)
{
	size = size || 85;
	maxlength = maxlength || 96;
	value = value || "";
	myClass = myClass || myClass;
	if(myClass != "" && myClass != 'undefined'){
		var html = '<input value="'+value+'" type="text" class="'+myClass+'" id="'+fieldID+'"  size="'+size+'" maxlength="'+maxlength+'" name="'+fieldID+'">';
	} else {
		var html = '<input value="'+value+'" type="text" id="'+fieldID+'"    size="'+size+'" maxlength="'+maxlength+'"name="'+fieldID+'">';
	}
	return html;
}

// ----------------------------------------------------------------------------
//Function to
//Last Edited 5/21/11 by Kelly Blumer
function listSignupEntry(signup, memberinfo)
{
	var optionvalue = "0";
	var size = "1";	
	var fieldID="";
	var perline = 3;
	var perdate = 18;
	var pertime = 6;
	var newline = true;
	var newdate = true;
	var newtime = true;
	var timeslot = 0;
	var slottext = new Array(3);
	var member = new Array(3);	
	var html="";
	var index="";
	var needle="";
	slottext = ["3:45-5:00","5:00-6:15","6:15-7:30"];
	for(var i=1; i<= perdate; i++){			
		if(newline){
			html +=  "<tr>";		
		}
		if(newdate){	
			html +=  '<td rowspan="'+perdate/perline+'">'+invertDate(signup.Date)+'<br><input type="button" value="Delete" class="delete" ID="'+signup.ID+'"></td>';
		}
		if(newtime){			
			html +=  '<td rowspan="'+pertime/perline+'" class="italic">'+slottext[timeslot]+'</td>';
			timeslot ++;
		}
		html +=  '<td>';
			fieldID = "Slot"+i;		
			needle = signup[fieldID];
			if(needle != ""){
				member = findMemberName(needle, memberinfo)
			} else {
				member[0]="";
				member[1]="";
				member[2]="";
			}
			html += createNameTextBox(member, signup.ID+"_"+fieldID,21,40);

			member.length = 0;	//Clear Array
		html +=  '</td>';
		if(i%perline == 0) {
			html +=  "</tr>";
			newline = true;
		} else {
			newline = false;
		}
		if(i%perdate==0){			
			newdate = true;
		} else {
			newdate = false;
		}
		if(i%pertime == 0){
			newtime = true;
		} else {
			newtime = false;
		}
	}		                                                                      	
	return html;
}
// ----------------------------------------------------------------------------
//Function to generate signups for meals.php
//Last Edited 5/21/11 by Kelly Blumer

function listMealSignupEntry(signup, memberinfo)
{
	var optionvalue = "0";
	var size = "1";	
	var member = new Array(3);	
	var field;
	var html="";
	var myClass;
	var boxValue;

	html +=  "<tr>";		
		html +=  '<td rowspan="3">'+invertDate(signup.Date)+'<br><input type="button" value="Delete" class="delete" ID="'+signup.ID+'"></td>';

//Recipient				
		html +=  '<td>';
			field = "Recipient";
			member = findMemberName(signup.Recipient, memberinfo);
			html += createNameTextBox(member, signup.ID+"_Recipient");
			member.length =0;	
		html +=  '</td>';
//Provider				
		html +=  '<td>';
			field = "Provider";
			member = findMemberName(signup.Provider, memberinfo);
			html += createNameTextBox(member, signup.ID+"_Provider");	
			member.length = 0;
		html +=  '</td>';
	html +=  "</tr>";
//MealInfo	
	html +=  "<tr>";			
		html +=  '<td colspan="2">';
			field = "MealInfo";
			if(signup.MealInfo == "" || signup.MealInfo == null){
				boxValue = "What will you bring?";
			}else {
				boxValue = signup.MealInfo;
			}
			myClass = "mealinfo";
			html += createTextBox(boxValue, signup.ID+"_MealInfo", myClass);	
		html +=  '</td>';	
	html +=  "</tr>";
				
//Notes		
	html +=  "<tr>";				
		html +=  '<td colspan="2">';
			field = "Notes";
			if(signup.Notes == "" || signup.Notes == null){
				boxValue = "Notes";
			}else {
				boxValue = signup.Notes;
			}			
			myClass = "notes";			
			html += createTextBox(boxValue, signup.ID+"_Notes", myClass);	
		html +=  '</td>';	
	html +=  "</tr>";					                                                               	
	return html;
}
// ----------------------------------------------------------------------------
//Function to generate signups for coffee.php
//Last Edited 5/26/11 by Kelly Blumer

function listCoffeeSignupEntry(signup, memberinfo)
{
	var optionvalue = "0";
	var size = "1";	
	var member = new Array(3);	
	var field;
	var html="";
	var myClass;
	var boxValue;
	

	html +=  "<tr>";		
		html +=  '<td rowspan="2">'+invertDate(signup.Date)+'<br><input type="button" value="Delete" class="delete" ID="'+signup.ID+'"></td>';

//Recipient				
		html +=  '<td>';
			field = "Server1";
			member = findMemberName(signup.Server1, memberinfo);
			html += createNameTextBox(member, signup.ID+"_Server1");
			member.length =0;	
		html +=  '</td>';
//Provider				
		html +=  '<td>';
			field = "Server2";
			member = findMemberName(signup.Server2, memberinfo);
			html += createNameTextBox(member, signup.ID+"_Server2");	
			member.length = 0;
		html +=  '</td>';
	html +=  "</tr>";				
//Notes		
	html +=  "<tr>";				
		html +=  '<td colspan="2">';
			field = "Notes";
			if(signup.Notes == "" || signup.Notes == null || signup.Notes == "NULL"){
				boxValue = "Notes";
			}else {
				boxValue = signup.Notes;
			}			
			myClass = "notes";			
			html += createTextBox(boxValue, signup.ID+"_Notes", myClass);	
		html +=  '</td>';	
	html +=  "</tr>";					                                                               	
	return html;
}
// ----------------------------------------------------------------------------
//Function to generate signups for communion.php
//Last Edited 5/26/11 by Kelly Blumer

function listCommunionSignupEntry(signup, memberinfo)
{
	var optionvalue = "0";
	var size = "1";	
	var member = new Array(3);	
	var field;
	var html="";
	var myClass;
	var boxValue;

	html +=  "<tr>";		
		html +=  '<td rowspan="2">'+invertDate(signup.Date)+'<br><input type="button" value="Delete" class="delete" ID="'+signup.ID+'"></td>';

//Recipient				
		html +=  '<td>';
			field = "Server1";
			member = findMemberName(signup.Server1, memberinfo);
			html += createNameTextBox(member, signup.ID+"_Server1");
			member.length =0;	
		html +=  '</td>';
//Provider				
		html +=  '<td>';
			field = "Server2";
			member = findMemberName(signup.Server2, memberinfo);
			html += createNameTextBox(member, signup.ID+"_Server2");	
			member.length = 0;
		html +=  '</td>';
	html +=  "</tr>";				
//Notes		
	html +=  "<tr>";				
		html +=  '<td colspan="2">';
			field = "Notes";
			if(signup.Notes == "" || signup.Notes == null || signup.Notes == "NULL"){
				boxValue = "Notes";
			}else {
				boxValue = signup.Notes;
			}			
			myClass = "notes";			
			html += createTextBox(boxValue, signup.ID+"_Notes", myClass);	
		html +=  '</td>';	
	html +=  "</tr>";					                                                               	
	return html;
}
// ----------------------------------------------------------------------------
//Function to
//Last Edited 5/21/11 by Kelly Blumer

function findMemberName(memberID, memberinfo)
{
	var member = new Array(3);
	needle = memberID;
	if(needle != ""){
		index = findIndexByCol(needle, memberinfo, 0);
		if(isset(index)){
			member[0] = memberinfo[index][0];
			member[1] = memberinfo[index][1];
			member[2] = memberinfo[index][2];
		} else {
			member[0] = "";
			member[1] = "";
			member[2] = "";
		}				 					
	} else {
			member[0] = "";
			member[1] = "";
			member[2] = "";
	}
	return member;				
	
}
// ----------------------------------------------------------------------------
//Function to look up FamilyName based on family id
//Last Edited 5/28/11 by Kelly Blumer

function findFamilyName(famID, familyInfo)
{
	var member = new Array(3);
	needle = famID;
	if(needle != ""){
		index = findIndexByCol(needle, familyInfo, 0);
		if(isset(index)){
			famName = familyInfo[index][1];
		} else {
			famName = "";
		}				 					
	} else {
			famName = "";
	}
	return famName;				
	
}

// ----------------------------------------------------------------------------
//Function to
//Last Edited 5/21/11 by Kelly Blumer
//function loadFamilyInfo()
//{
//	var famNameID = $("#famName").val().split(" ");
//	if(famNameID.length != 2) return false;
//	var famID = famNameID[1];	
//	$.getJSON("getMemberInfoToJSONbyFamID.php", {famID: famID}, function(members){
//		var members_array = new Array();
//		var autoCompleteList = new Array();
//		var completeName;
//		if(isset(members)){
//			$.each(members, function(i,member){												
//					members_array[i] = new Array();
//					members_array[i][0] = member.ID;
//					members_array[i][1] = member['FirstName'];		
//					members_array[i][2] = member['LastName'];
//					completeName = member['FirstName']+" "+member['LastName'];	
//					completeName = completeName.replace(/&quot;/g,'"');	
//					html += "<li id=\""+member.ID+"\">"+completeName+"</li>";											
//			});	
//			$("#listFamMem li:last-child").append(html);			
//		} 	else {
//			return false;		
//		}//End of if isset members		
//	});//End of getJSON	
//	return true;
//}



// ----------------------------------------------------------------------------
//Function to
//Last Edited 5/21/11 by Kelly Blumer
function addRow(signupTable,membersTable)
{
	var SUID = $("#SUID").val();
	var html;

	$.ajax({
		type: 'POST',
		url: "adddate.php",
		data:{signup:SUID}, 
		success: function(){ 
			$("div#spinner span.middle").html("Loading ...").show();
			createSignupTable($("#SUID").val());
		}//End of success
});//end of ajax			

}

// ----------------------------------------------------------------------------
//Function to
//Last Edited 5/21/11 by Kelly Blumer
function invertDate(date)
{
	date = date ||"";
	if(date != ""){
		splitDate = date.split("-"); 
		if(splitDate[0].length == 4){
			var date = splitDate[1]+"-"+splitDate[2]+"-"+splitDate[0];
		} else {
			var date = splitDate[2]+"-"+splitDate[0]+"-"+splitDate[1];		
		}
	} else {
		date = "";
	}
	return date;
}
// ----------------------------------------------------------------------------
//Function to
//Last Edited 5/24/11 by Kelly Blumer
function checkDate(date)
{
	var defaultDates = ["MM-DD-YYYY","","YYYY-MM-DD","MM-DD-YY","MM/DD/YYYY","YYYY/MM/DD"];
	var foundDefaultDate = findIndexByCol(date,defaultDates,0);
	if(foundDefaultDate === "") {
		var strSeparatorArray = new Array("-","/"," ",".");	
		var dateArray = date.split("-");
		if(dateArray.length != 3) {
			return false;
		} else {
			if(!(dateArray[0].length == 2 || dateArray[0].length == 1) || !(dateArray[1].length == 2 || dateArray[1].length == 1) || dateArray[2].length != 4) {
				return false;
			} else {
				return true;
			}
		}
	} else {
		return false;
	}

}
// ----------------------------------------------------------------------------
//Function to
//Last Edited 5/25/11 by Kelly Blumer
function formatDateForDB(date, dateStyle)
{
	var currentDate = new Date();
	var defaultDates = ["MM-DD-YYYY","","YYYY-MM-DD","MM-DD-YY","MM/DD/YYYY","YYYY/MM/DD"];
	var foundDefaultDate = findIndexByCol(date,defaultDates,0);
	var newDate = false;
	if(!(isset(foundDefaultDate))) {
		var strSeparatorArray = new Array("-","/"," ",".");	
		for (var i=0;i < strSeparatorArray.length; i++) {
			if (date.indexOf(strSeparatorArray[i]) != -1) {
				strDateArray = date.split(strSeparatorArray[i]);
				if (strDateArray.length != 3) {
					return false;
				} else {
					if(strDateArray[0].length == 4){
						strYear = strDateArray[0];
						strMonth = strDateArray[1];
						strDay = strDateArray[2];
													
					} else {
						if(strDateArray[2].length == 4){		
							strMonth = strDateArray[0];					
							strDay = strDateArray[1];
							strYear = strDateArray[2];
						} else {
							return false;
						}
					}//End of assignments
				
					switch(strDay){
						case "1":
							strDay = "01";
							break;
						case "2":
							strDay = "02";
							break;
						case "3":
							strDay = "03";
							break;
						case "4":
							strDay = "04";
							break;
						case "5":
							strDay = "05";
							break;
						case "6":
							strDay = "06";
							break;																														
						case "7":
							strDay = "07";
							break;
						case "8":
							strDay = "08";
							break;
						case "9":
							strDay = "09";
							break;												
					}//End of Switch Day
					switch(strMonth){
						case "1":
							strMonth = "01";
							break;
						case "2":
							strMonth = "02";
							break;
						case "3":
							strMonth = "03";
							break;
						case "4":
							strMonth = "04";
							break;
						case "5":
							strMonth = "05";
							break;
						case "6":
							strMonth = "06";
							break;																														
						case "7":
							strMonth = "07";
							break;
						case "8":
							strMonth = "08";
							break;
						case "9":
							strMonth = "09";
							break;	
					}//End of switch Month
				
					if(!(strYear.length == 4)|| strYear > 2100) return false;	
					if(!(strMonth.length == 2)|| strMonth < 0 || strMonth > 12) return false;						
					//Check for valid # of days
					var year = parseInt(strYear);
					var month = parseInt(strMonth);
					var day = parseInt(strDay);	
					if (month == 1 || month == 3 || month == 5 || month == 7 || month == 8 || month == 10 || month == 12) {
						if (strDay > 31) {
							return false;
						}
					}	else if(month == 4 || month == 6 || month == 9 || month == 11) {
						if (day > 30) {
							return false;
						}
					}	else if (month == 2) {
						// Leap year check
						if (year % 4 == 0) {
							var flg = false;
							if (year % 100 != 0) flg = true;
							else if (year % 400 == 0) flg = true;
							if (flg) {
								if (day > 29) {
									return false;
								}
							}
						}	else {
							if (day > 28) {
								return false;
							}
                        }
					}//End check for appropriate # of days
					if(!(strDay.length == 2)||strDay<0 || strDay > 31) return false;						
				}//End if if 3 pieces to array
				newDate = strYear+"-"+strMonth+"-"+strDay;	
//				if(newDate < currentDate) return false;							
				return newDate;				
			}//End of if the seperator is in the date	
		} //end of for all in strSeperatorArray	
		return newDate;
	}	else {
		return false;
	}//End of if default values found
}

// ----------------------------------------------------------------------------
//Function to
//Last Edited 5/21/11 by Kelly Blumer
function notEmpty(elem){
	if(elem.length == 0){
		return false;
	}
	return true;
}
// ----------------------------------------------------------------------------
//Function to
//Last Edited 5/21/11 by Kelly Blumer

function isNumeric(elem){
	var numericExpression = /^[0-9]+$/;
	if(elem.match(numericExpression)){
		return true;
	}else{
		return false;
	}
}
// ----------------------------------------------------------------------------
//Function to
//Last Edited 5/21/11 by Kelly Blumer

function isAlphabet(elem){
	var alphaExp = /^[a-zA-Z]+$/;
	if(elem.match(alphaExp)){
		return true;
	}else{
		return false;
	}
}
// ----------------------------------------------------------------------------
//Function to
//Last Edited 5/21/11 by Kelly Blumer

function isAlphanumeric(elem){
	var alphaExp = /^[0-9a-zA-Z]+$/;
	if(elem.match(alphaExp)){
		return true;
	}else{
		return false;
	}
}
// ----------------------------------------------------------------------------
//Function to
//Last Edited 5/21/11 by Kelly Blumer

function lengthRestriction(elem, min, max){
	var uInput = elem;
	if(uInput.length >= min && uInput.length <= max){
		return true;
	}else{
		return false;
	}
}
// ----------------------------------------------------------------------------
//Function to
//Last Edited 5/21/11 by Kelly Blumer

function madeSelection(elem){
	if(elem == "Please Choose"){
		return false;
	}else{
		return true;
	}
}
// ----------------------------------------------------------------------------
//Function to
//Last Edited 5/21/11 by Kelly Blumer

function emailValidator(elem){
	var emailExp = /^[\w\-\.\+]+\@[a-zA-Z0-9\.\-]+\.[a-zA-z0-9]{2,4}$/;
	if(elem.match(emailExp)){
		return true;
	}else{

		return false;
	}
}
// ----------------------------------------------------------------------------
//Function to
//Last Edited 5/21/11 by Kelly Blumer
var spinnerVisible = false;
function showProgress() {
	if (!spinnerVisible) {
		$("div#spinner span.middle").fadeIn("fast");
		spinnerVisible = true;
	}
}
// ----------------------------------------------------------------------------
//Function to
//Last Edited 5/21/11 by Kelly Blumer
function hideProgress() {
	if (spinnerVisible) {
		var spinner = $("div#spinner span.middle");
		spinner.stop();
		spinner.fadeOut("fast");
		spinnerVisible = false;
	}
}
// ----------------------------------------------------------------------------
//Function to check if something is an array such as php is_array
//Last Edited 5/25/11 by Kelly Blumer
function is_array(input){
	return typeof(input)=='object'&&(input instanceof Array);
}
// ----------------------------------------------------------------------------
//Function to
//Last Edited 5/25/11 by Kelly Blumer to check for multi arrays
function findIndexByCol(needle,haystack,cIdx)
{
	var ctr = "";
	for (var i=0; i < haystack.length; i++) {
		if(is_array(haystack[i])) {
			if (haystack[i][cIdx] == needle) {
				return i;							
			}
		} 	else {
			if(haystack[i] == needle)
				return i;				
		}				
	}
	return ctr;
}
// --------------------------------------------------------------------------
// Return memberID when FirstName and LastName match name in db
//Last Edited: 6/2/11 by Kelly Blumer
function getMemID(name, memberInfo){
	var first, last, firstName, lastName, memberID;	
	var nameArray = name.split(" ");	 			
	first = nameArray[0]; //The first piece is the FirstName
	last = nameArray[nameArray.length-1]; //The last piece is the LastName	
	var members = JSON.parse(memberInfo);
	for (var i=0; i < members.length; i++){												
		var firstNameArray = members[i]['FirstName'].split(" ");
		firstName = firstNameArray[0];
		var lastNameArray = members[i]['LastName'].split(" ");		
		if(lastNameArray.length > 1){
			lastName = lastNameArray[lastNameArray.length-1];
		}else{
			lastName = lastNameArray[0];
		}
		if((firstName == first) && (lastName == last)){
			memberID = members[i]['ID'];
			return memberID;
		} 	else {
			memberID = "";
		}
	}
	return memberID;	

}
// ----------------------------------------------------------------------------
//Function to
//Last Edited 5/25/11 by Kelly Blumer to check for multi arrays
function isset(myVar)
{   
	if(myVar === 0) return true;
	if(typeof myVar === 'undefined' || !myVar) {
	  // myVar is undefined or empty
	  return false;
	} else {
		return true;
	}
}

// ----------------------------------------------------------------------------
//Function to
function getFormValues(fobj){
	var str = "";
	var valueArr = null;
	var val = "";
	var cmd = "";
	for(var i = 0;i < fobj.elements.length;i++)
	{
		switch(fobj.elements[i].type)
		{
			case "text":
				str += fobj.elements[i].name +
				"=" + escape(fobj.elements[i].value) + "&";
			break;

			case "textarea":
				str += fobj.elements[i].name +
				"=" + escape(fobj.elements[i].value) + "&";
			break;
			case "select-one":
				str += fobj.elements[i].name +
				"=" + fobj.elements[i].options[fobj.elements[i].selectedIndex].value + "&";
			break;	
			case "checkbox":
				if(fobj.elements[i].checked == true){
					str += fobj.elements[i].name +
					"=" + fobj.elements[i].value + "&";
				}
			break;	
		}	
	}

	str = str.substr(0,(str.length - 1));
	return str;	
}
// ----------------------------------------------------------------------------
//Function to
function timedErrorBoxMsg(msg)
{
	$("#spinner").hide();
	$("div#spinner span.middle").html("");	
	$("div#errorBox span.middle").html(msg).css("display", "block");
	$("#errorBox").show();
	setTimeout(function(){
		$("#errorBox").fadeOut("slow", function () {
			$("#errorBox").remove();
		});
	}, 2000);	
}

// ----------------------------------------------------------------------------
//Function to
//Last Edited 5/21/11 by Kelly Blumer
function getCSVData(table)
{
 var csv_value=$(table).table2CSV({delivery:'value'});
 $("#csv_text").val(csv_value);	
}
// ----------------------------------------------------------------------------
//Function to
//Last Edited 5/21/11 by Kelly Blumer
function validateForm(values, required,dateFormat)
{	
	//set default date for for screen if it is not defined
	dateFormat = typeof(dateFormat) !== 'undefined' ? dateFormat : "mmddyyyy";
	$("#spinner").hide();
	$("div#spinner span.middle").html("");		
	$.ajax({
		type: 'POST',
		url: "validateform.php",
		data:{values:values, required:required, dateFormat:dateFormat}, 
		dataType: "json",		
		success: function(results){
			for(var i=0; i < results.length; i++) {
				var fieldNameTxt = "#"+results[i].field;				
				var msgTxt = results[i].message;
				if(isset(msgTxt) && (msgTxt!="")){
					$(fieldNameTxt).next("em").text(msgTxt);
					$(fieldNameTxt).next("em").addClass("msgOn");	
				}
				if(results[i].newValue !=""){
					$(fieldNameTxt).val(results[i].newValue);
				}
			}//end of for
		}//End of success
	});//End of AJAX to set up autocomplete for add students
	
}

// ----------------------------------------------------------------------------
//Function to
//Last Edited 5/25/11 by Kelly Blumer to check for multi arrays
function findIndexByCol(needle,haystack,cIdx)
{
	var ctr = "";
	for (var i=0; i < haystack.length; i++) {
		if(is_array(haystack[i])) {
			if (haystack[i][cIdx] == needle) {
				return i;							
			}
		} 	else {
			if(haystack[i] == needle)
				return i;				
		}				
	}
	return ctr;
}
// ----------------------------------------------------------------------------
//Function to create Preview for Signup Form
//Last Edited 10/5/2011 by Kelly Blumer
function createSignupFormPreview()
{

	var title = $("#signupTitle").val();
	$("#signupTitlePreview").html(title);
	var directions = $("#signupDirections").val();
	$("#signupDirectionsPreview").html(directions);
	var addGuardian = parseInt($("#guardianSignup").val());
	$("#addGuardian").val(addGuardian);
	var addStudent = parseInt($("#studentSignup").val());
	$("#addStudent").val(addStudent);
	var addDetail = $("#detailSignup").val();
	$("#addDetail").val(addDetail);
	var addNote = $("#notesSignup").val();
	$("#addNote").val(addNote);
	var addDate = $("#dateSignup").val();
	$("#addDate").val(addDate);
	var addTime = parseInt($("#timeSignup").val());
	$("#addTime").val(addTime);
	var html ="";
	var signup = new Array();
	html += addHeaderBlock(addDate, addTime, addDetail, addGuardian, addStudent, addNote);				
	html += addDeleteBlock(addDate, addTime, addDetail, addGuardian, addStudent, addNote, signup);
	html += addDateBlock(addDate, addTime, addDetail, addGuardian, addStudent, addNote, signup);
	html += "</table>";
	$("#signups").html(html).show();		
	return true;
}
// ----------------------------------------------------------------------------
//Function to
//Last Edited 10/09/11 by Kelly Blumer
function createSignupTable(SUID)
{
	$.ajax({
		type: 'POST',
		url: "getSignups.php",
		data:{signup:SUID}, 		
		dataType: "json",
		success: function(signups){
			if(isset(signups)){
				var addGuardian = parseInt($("#addGuardian").val());
				var addStudent = parseInt($("#addStudent").val());
				var addDetail = $("#addDetail").val();
				var addNote = $("#addNote").val();
				var addDate = $("#addDate").val();
				var addTime = parseInt($("#addTime").val());
				var html ="";
				$.each(signups, function(i,signup){		
					if(i == 0) {
						html += addHeaderBlock(addDate, addTime, addDetail, addGuardian, addStudent, addNote);				
					}
					if(isEven(i)){
						oddOrEvenRow="evenRow";
					} else {
						oddOrEvenRow="oddRow";
						
					}
					html += addDeleteBlock(addDate, addTime, addDetail, addGuardian, addStudent, addNote, signup,oddOrEvenRow);
					html += addDateBlock(addDate, addTime, addDetail, addGuardian, addStudent, addNote, signup,oddOrEvenRow);
					if(i == signups.length-1) {
						html += "</table>";
						$("#signups").html(html).show();							
					}
				}); //End of each signup
			} else {
				var addGuardian = parseInt($("#addGuardian").val());
				var addStudent = parseInt($("#addStudent").val());
				var addDetail = $("#addDetail").val();
				var addNote = $("#addNote").val();
				var addDate = $("#addDate").val();
				var addTime = parseInt($("#addTime").val());
				var html ="";
				html += addHeaderBlock(addDate, addTime, addDetail, addGuardian, addStudent, addNote,oddOrEvenRow);
				html += "</table";	
				$("#signups").html(html).show();															
			}//End of if signups
		}//end of success
	}); //end of ajax get signups
	
	$.ajax({
		type: 'POST',
		url: "getInfoToJSON.php",
		data:{table:"student", fields:'`firstName`,`lastName`,`ID`', selection:'`lastName` IS NOT NULL',sortby:'`lastName`'}, 
		dataType: "json",		
		success: function(members){ 
			var members_array = new Array();
			var autoCompleteList = new Array();
			var autoCompleteJSON = [];
			var completeName;
			var first = true;
			$.each(members, function(i,member){		
					completeName = member['firstName']+" "+member['lastName'];	
					completeName = completeName.replace(/&quot;/g,'"');																	
					autoCompleteJSON.push({label:completeName, ID:member.ID});			
			});		//End of each
			$(".student").livequery(function () {
				$(this).autocomplete({
					source: autoCompleteJSON,
					select: function(event, ui){
						if(!(ui.item==null)) {
							$(this).prev().val(ui.item.ID);
						}else{
							$(this).prev().val("");
						}
					},
					change: function(event, ui){
						if(!(ui.item==null)) {
							$(this).prev().val(ui.item.ID);
						}else{
							$(this).prev().val("");
						}	
					}// End of change
				});
			});											
		}//End of success
	});//End of AJAX to set up autocomplete 	

	$.ajax({
		type: 'POST',
		url: "getInfoToJSON.php",
		data:{table:"guardian", fields:'`firstName`,`lastName`,`ID`', selection:'`lastName` IS NOT NULL',sortby:'`lastName`'}, 
		dataType: "json",		
		success: function(members){ 
			var members_array = new Array();
			var autoCompleteList = new Array();
			var autoCompleteJSON = [];
			var completeName;
			var first = true;
			$.each(members, function(i,member){		
					completeName = member['firstName']+" "+member['lastName'];	
					completeName = completeName.replace(/&quot;/g,'"');																	
					autoCompleteJSON.push({label:completeName, ID:member.ID});			
			});		
			$(".guardian").livequery(function () {
				$(this).autocomplete({
					source: autoCompleteJSON,
					select: function(event, ui){
						if(!(ui.item==null)) {
							$(this).prev().val(ui.item.ID);
						}else{
							$(this).prev().val("");
						}
					},
					change: function(event, ui){
						if(!(ui.item==null)) {
							$(this).prev().val(ui.item.ID);
						}else{
							$(this).prev().val("");
						}	
					}// End of change
				});//End of autocomplete
			});	// End of livequery			
		}//End of success
	});//End of ajax guardians								
	$(".delete").livequery(function () {
		$(this).click(function(){
			var fieldID = $(this).attr('id');
			var RIDArray = new Array();
			RIDArray = fieldID.split("-");			
			var RID = RIDArray[1];			
			deleteRow("signupRows","ID",RID)
		});
	});
	$(".date").livequery(function(){
		$(this).datepicker({
			dateFormat: 'mm-dd-yy',
			altField: $(this).prev(),
			altFormat: "D"
		});
	});
	return true;
}
// ----------------------------------------------------------------------------
//Function to add datepicker to all fields with date class
//Last Edited 10/09/11 by Kelly Blumer	
function addDatePicker(){
	$(".date").each(function(){
		$(this).datepicker({
			dateFormat: 'mm-dd-yy',
			altField: $(this).prev(),
			altFormat: "D"
		});
	});
	return true;
}
// ----------------------------------------------------------------------------
//Function to
//Last Edited 10/09/11 by Kelly Blumer																	
function addNoteBlock(timeCntr,addTime,addDetail,addGuardian, addStudent,addNote,signup,oddOrEvenRow)
{
	var html ="\n";
	var signupColSpan = addGuardian + addStudent;	
	if(signupColSpan < 1) signupColSpan = 1; 
	if(addNote == "yes") {
		if(addGuardian > 0 || addStudent > 0 || addDetail =="yes"){
			html += "\n\t<tr>";
		}
		var fieldID = "notes_"+timeCntr+"-"+signup.ID;
		if((signup.notes == "") || !(isset(signup.notes))){
			html += "\n\t<td class='"+oddOrEvenRow+"' colspan='"+signupColSpan+"'><input id='"+fieldID+"' name='"+fieldID+"'  class='_100 text' type='text' value='Notes' /></td>\n";
		} else { //notes not blank
			var noteID = "notes_"+timeCntr;
			html += "\n\t<td  class='"+oddOrEvenRow+"' colspan='"+signupColSpan+"'><input  id='"+fieldID+"' name='"+fieldID+"' class='_100 text' type='text' value='"+signup[noteID]+"' /></td>\n";			
		}//End of if notes blank
		html += "</tr>\n";		
	}//End of if notes
	return html;	
}
// ----------------------------------------------------------------------------
//Function to
//Last Edited 10/09/11 by Kelly Blumer					
function addStudentBlock(timeCntr,addTime,addDetail,addGuardian,addStudent, addNote, signup,oddOrEvenRow){
	var html ="\n";	
	if(addStudent > 0){
		var studentNmbr;
		var fieldID;
		for(studentCntr=1; studentCntr <= addStudent; studentCntr++){
			studentNmbr = "student"+timeCntr+"_"+studentCntr;
			studentNmbrName = studentNmbr + "Name";
			fieldName = studentNmbr+"Name"+"-"+signup.ID			
			fieldID = studentNmbr+"-"+signup.ID;
			if(isset(signup[studentNmbr])&& !(signup[studentNmbr] == "0")){			
				html += "\t<td class='"+oddOrEvenRow+"' ><input type='hidden' name='"+fieldID+"' id='"+fieldID+"' value='"+signup[studentNmbr]+"' /><input id='"+fieldName+"' name='"+fieldName+"' class='student _100 text' type='text' value='"+signup[studentNmbrName]+"' /></td>\n";					  			
			 }	else {
				html += "\t<td class='"+oddOrEvenRow+"' ><input type='hidden' name='"+fieldID+"' id='"+fieldID+"' value='' /><input id='"+fieldName+"' name='"+fieldName+"' class='student _100 text' type='text' value='Student Name' /></td>\n";					  			
			}//End of isset			
		} // End of for students	
		html += "</tr>\n";
	} else {
		if(addGuardian >0 && !(addGuardian == 4) ) {
			html += "</tr>\n";
//			if(timeCntr < addTime) html+="\n<tr>";
		}
	}
	html += addNoteBlock(timeCntr,addTime,addDetail,addGuardian, addStudent,addNote, signup,oddOrEvenRow);	
	return html;
}

// ----------------------------------------------------------------------------
//Function to
//Last Edited 10/09/11 by Kelly Blumer
function addGuardianBlock(timeCntr,addTime,addDetail,addGuardian, addStudent, addNote, signup,oddOrEvenRow){
	var html ="\n";
	if(addGuardian > 0){
		var guardianNmbr;
		var fieldID;
		for(guardianCntr=1; guardianCntr <= addGuardian; guardianCntr++){
			guardianNmbr = "guardian"+timeCntr+"_"+guardianCntr;
			guardianNmbrName = guardianNmbr+"Name";
			fieldName = guardianNmbr+"Name"+"-"+signup.ID
			fieldID = guardianNmbr+"-"+signup.ID;
			if(isset(signup[guardianNmbr]) && !(signup[guardianNmbr] == "0")){
				html += "\t<td class='"+oddOrEvenRow+"' ><input type='hidden' name='"+fieldID+"' id='"+fieldID+"' value='"+signup[guardianNmbr]+"' /><input id='"+fieldName+"' name='"+fieldName+"' class='guardian _100 text' type='text' value='"+signup[guardianNmbrName]+"' /></td>\n";
			} else {
				html += "\t<td class='"+oddOrEvenRow+"' ><input type='hidden' name='"+fieldID+"' id='"+fieldID+"' value='' /><input id='"+fieldName+"' name='"+fieldName+"' class='guardian _100 text' type='text' value='Guardian Name' /></td>\n";			
			}//End of isset					
		}// End of for guardians
		if( (addGuardian + addStudent > 5) || ((addGuardian == 4) && (addStudent ==0))){
			html += "</tr>\n";
//			if(timeCntr < addTime) html+= "\n<tr>\n";
		}			
	}
	html += addStudentBlock(timeCntr,addTime,addDetail,addGuardian,addStudent, addNote, signup,oddOrEvenRow);
	return html;
}
// ----------------------------------------------------------------------------
//Function to
//Last Edited 10/09/11 by Kelly Blumer
function addDetailBlock(timeCntr,addTime,addDetail, addGuardian, addStudent, addNote, signup,oddOrEvenRow){
	var html ="";
	var signupColSpan = addGuardian + addStudent;
	if(addDetail == "yes"){
		var detailNmbr ="details_"+timeCntr;
		var fieldID = detailNmbr+"-"+signup.ID;	
		if((signup[detailNmbr] == "") || !(isset(signup[detailNmbr]))) {
			html += "\t<td  class='"+oddOrEvenRow+"' colspan='"+signupColSpan+"'><input id='"+fieldID+"' name='"+fieldID+"' class='_100 text' type='text' value='Sign up details'/></td>\n";	
		} else {
			html += "\t<td  class='"+oddOrEvenRow+"' colspan='"+signupColSpan+"'><input id='"+fieldID+"' name='"+fieldID+"' class='_100 text' type='text' value='"+signup[detailNmbr]+"'/></td>\n";	
		}
		if((addGuardian + addStudent) > 0){
			html += "</tr>\n\n<tr>\n"; //If adding guardians or students then start new line
		} else {
			html += "</tr>\n"; //If no guardians or students and going on to notes, just end the line.
		}
	}
	html += addGuardianBlock(timeCntr,addTime, addDetail,addGuardian, addStudent, addNote, signup,oddOrEvenRow);	
	return html;
}
// ----------------------------------------------------------------------------
//Function to
//Last Edited 10/09/11 by Kelly Blumer
function addTimeBlock(addTime, addDetail, addGuardian, addStudent, addNote, signup,oddOrEvenRow){
	var html ="";
	var timeRowHeight=0;
	var stdTime;
	if(addGuardian>0 || addStudent > 0)	timeRowHeight++;
	if(addDetail == "yes") timeRowHeight++;
	if(addNote == "yes") timeRowHeight++;
	if((addGuardian + addStudent > 5)) timeRowHeight++;	
	if(timeRowHeight == 0) timeRowHeight=1;	
	if(addTime > 0) {
		var fieldID;
		for(var timeCntr=1; timeCntr <= addTime; timeCntr++){
			timeNmbr = "time"+timeCntr;
			fieldID = timeNmbr+"-"+signup.ID;			
			stdTime = convertTime(signup[timeNmbr]);
			html += "\t<td  class='"+oddOrEvenRow+"' rowspan='"+timeRowHeight+"'><input  id='"+fieldID+"' name='"+fieldID+"' class='_100 text' type='text' value='"+stdTime+"'/></td>\n";
			if(addDetail=="yes" || addGuardian >0 || addStudent >0 || addNote=="yes"){
				html += addDetailBlock(timeCntr,addTime,addDetail, addGuardian, addStudent, addNote, signup,oddOrEvenRow);
			} else {
				html += "\n</tr>\n";
				if(timeCntr < addTime){
					html += "\n<tr>\n";
				}
			}																
		}
	} else {
		var timeCntr = 1;
		html += addDetailBlock(timeCntr,addTime, addDetail, addGuardian, addStudent, addNote, signup,oddOrEvenRow);				
		
	}
	return html;
}
// ----------------------------------------------------------------------------
//Function to
//Last Edited 10/09/11 by Kelly Blumer
function addDateBlock(addDate, addTime, addDetail, addGuardian, addStudent, addNote, signup,oddOrEvenRow){
	oddOrEvenRow = (typeof oddOrEvenRow == 'undefined') ?
     'oddRow' : oddOrEvenRow;
	var html ="";
	var weekday=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"];
	var fieldID = "date-"+signup.ID;
	var timeRowHeight=0;	
	if(addGuardian>0 || addStudent > 0)	timeRowHeight++;
	if(addDetail == "yes") timeRowHeight++;
	if(addNote == "yes") timeRowHeight++;
	if((addGuardian + addStudent > 5)) timeRowHeight++;	
	if(timeRowHeight == 0) timeRowHeight=1;
	//Create header
	if(addTime > 0 ){
		var deleteRowHeight = addTime*timeRowHeight;				
	} else {
		var deleteRowHeight = timeRowHeight;
	}		
	if(addDate == "yes"){
		var day;
		if(!(isset(signup.date) || signup.date == "") || signup.date == "0000-00-00") {
//			signup.date = "0000-00-00";
			var today = new Date();
			var months=["01","02","03","04","05","06","07","08","09","10","11","12"];
			var weekday=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"];
			signup.date =today.getFullYear()+"-"+months[today.getMonth()]+"-"+today.getDate();
			day = weekday[today.getDay()];
		} else {
			var theDate = signup.date.split("-");
			var tempDate = new Date(theDate[0],theDate[1]-1,theDate[2]);
			day = weekday[tempDate.getDay()];
		}
		html += "\t<td  class='"+oddOrEvenRow+"tableRowDate' rowspan='"+deleteRowHeight+"'><input  id='dayfield"+fieldID+"' class='text' type='text' readonly='readonly' value='"+day+"'/><input  id='"+fieldID+"' name='"+fieldID+"' class='date text' type='text' value='"+invertDate(signup.date)+"'/></td>\n";	
		
	}
	html += addTimeBlock(addTime, addDetail, addGuardian, addStudent, addNote, signup,oddOrEvenRow);
	return html;
}
// ----------------------------------------------------------------------------
//Function to
//Last Edited 10/09/11 by Kelly Blumer
function addDeleteBlock(addDate, addTime, addDetail, addGuardian, addStudent, addNote,signup, oddOrEvenRow)
{
	oddOrEvenRow = (typeof oddOrEvenRow == 'undefined') ?
     'oddRow' : oddOrEvenRow;	
	 var timeRowHeight=0;
	if(addGuardian>0 || addStudent > 0)	timeRowHeight++;
	if(addDetail == "yes") timeRowHeight++;
	if(addNote == "yes") timeRowHeight++;
	if((addGuardian + addStudent > 5)) timeRowHeight++;
	if(timeRowHeight == 0) timeRowHeight=1;	
	//Create header
	if(addTime > 0 ){
		var deleteRowHeight = addTime*timeRowHeight;				
	} else {
		var deleteRowHeight = timeRowHeight;
	}	
	var html = "\n<tr class='"+oddOrEvenRow+"'>\n";	
	var fieldID = "delete-"+signup.ID;
	var hiddenID = "RID-"+signup.ID;	
	var level = $("#level").val();
	if(level >=4){
		html += "\t<td rowspan='"+deleteRowHeight+"' class='tableRowDelete'><input type='hidden' name='"+hiddenID+"' id='"+hiddenID+"' value='"+signup.ID+"'/><input class='delete' id='"+fieldID+"'type='button' value='Delete'></td>\n";	
	} else {
		html += "\t<td rowspan='"+deleteRowHeight+"' class='tableRowDelete'><input type='hidden' name='"+hiddenID+"' id='"+hiddenID+"' value='"+signup.ID+"'/><input class='delete' id='"+fieldID+"'type='hidden' value='Delete'></td>\n";			
	}
	return html;
}
// ----------------------------------------------------------------------------
//Function to
//Last Edited 10/09/11 by Kelly Blumer
function addHeaderBlock(addDate, addTime, addDetail, addGuardian, addStudent, addNote){
	//Add header					
	var signupColSpan = addGuardian + addStudent;	
	if(signupColSpan < 1) signupColSpan=1;				
	var html = "<table id='signupsTable'>\n";
	html += "<tr>\n\t<th class='tableRowDelete'></th>";
	if(addDate == "yes") html += "<th class='tableRowDate'>Date</th>";
	if(addTime > 0 ) html += "<th class='tableRowTime'>Time</th>";
	if(addDetail == "yes" || addGuardian > 0 || addStudent > 0 || addNote == "yes" ) html += "<th class='tableRowSignup' colspan='"+signupColSpan+"'>Sign Up</th>";		
	html += "\n</tr>\n";				
	return html;
}
// ----------------------------------------------------------------------------
//Function to
//Last Edited 10/09/11 by Kelly Blumer
function convertTime(phpTime)
{
	if(!isset(phpTime)) return "00:00";
	var timeArray = phpTime.split(":");	
	var hours = timeArray[0];
	var minutes = timeArray[1];
	var seconds = timeArray[2];
	if( minutes < 10 && minutes > 0) minutes = "0"+minutes;
	if(hours > 11) {
		var am_pm = "pm";
	} else {
		var am_pm = "am";
	}
	if(hours > 12) hours -= 12;
	if(hours == 0) hours = 12;
	var formatTime =hours+":"+minutes;
	return formatTime;
}
// ----------------------------------------------------------------------------
//Function to
//Last Edited 10/09/11 by Kelly Blumer
function saveSignups(form)
{
	$("div#spinner span.middle").html("Saving information ...");	
	var dataString = form.serialize();
	$.ajax({
		type: 'POST',
		url: "savesignups.php",
		data: dataString,
		dataType: "json",		
		success: function(results){
			timedErrorBoxMsg("Information saved.");
		},//end of success
		error: function(objRequest){
			timedErrorBoxMsg("Information was not saved.");
		}//End of error
	}); //end of ajax get signups}
}
// ----------------------------------------------------------------------------
//Function to
//Last Edited 10/13/11 by Kelly Blumer
function deleteSignup(SUID)
{
	$.ajax({
		type: 'POST',
		url: "deleteSignup.php",
		data:{signup:SUID}, 
		success: function(){ 
		}//End of success
	});//end of ajax			
}
// ----------------------------------------------------------------------------
//Function to
//Last Edited 10/09/11 by Kelly Blumer
function saveToStudents(form)
{
	$("div#spinner span.middle").html("Saving information ...");	
	var dataString = form.serialize();
	$.ajax({
		type: 'GET',
		url: "savetoStudents.php",
		data: dataString,
		success: function(results){
			timedErrorBoxMsg("Information saved.");
		},//end of success
		error: function(objRequest){
			timedErrorBoxMsg("Information was not saved.");
		}//End of error
	}); //end of ajax get signups}
}
// ----------------------------------------------------------------------------
//Function to
//Last Edited 10/09/11 by Kelly Blumer
function saveInformation(form, table)
{
	$("div#spinner span.middle").html("Saving information ...");		
	var dataString = form.serialize();
	dataString += "&table="+table;
	required=new Object();	
	if($("input").hasClass('required')){
		required[field]=field;
	}	
	
	$.ajax({
		type: 'GET',
		url: "saveMembershipInfo.php",
		data: dataString,
		datatype:"json",
		success: function(results){
			timedErrorBoxMsg("Information saved.");
		},//end of success
		error: function(objRequest){
			timedErrorBoxMsg("Information was not saved.");
		}//End of error
	}); //end of ajax get signups}
}

// ----------------------------------------------------------------------------
//Function to
//Last Edited 10/09/11 by Kelly Blumer
function saveToGuardians(form)
{
	$("div#spinner span.middle").html("Saving information ...");	
	var dataString = form.serialize();
	$.ajax({
		type: 'GET',
		url: "savetoGuardians.php",
		data: dataString,
		success: function(results){
			timedErrorBoxMsg("Information saved.");
		},//end of success
		error: function(objRequest){
			timedErrorBoxMsg("Information was not saved.");
		}//End of error
	}); //end of ajax get signups}
}
// ----------------------------------------------------------------------------
//Function to
//Last Edited 10/09/11 by Kelly Blumer
function saveToHoursLog(form)
{
	$("div#spinner span.middle").html("Saving information ...");	
	var dataString = form.serialize();
	dataString += "&table=hours";
	$.ajax({
		type: 'GET',
		url: "saveMembershipInfo.php",
		data: dataString,
		success: function(results){
		},//end of success
		error: function(objRequest){
		}//End of error
	}); //end of ajax get signups}
	setTimeout(function(){
		getTotalVolunteerHours();
	}, 500);	
	return true;
}
// ----------------------------------------------------------------------------
//Function to
//Last Edited 10/09/11 by Kelly Blumer
function saveToDonations(form)
{
	$("div#spinner span.middle").html("Saving information ...");	
	var dataString = form.serialize();
	$.ajax({
		type: 'GET',
		url: "savetoDonations.php",
		data: dataString,
		success: function(results){
		},//end of success
		error: function(objRequest){
		}//End of error
	}); //end of ajax get signups}	
	return true;
}
// ----------------------------------------------------------------------------
//Function to
//Last Edited 10/09/11 by Kelly Blumer
function saveToFoxtravaganza(form)
{
	$("div#spinner span.middle").html("Saving information ...");	
	var dataString = form.serialize();
	$.ajax({
		type: 'GET',
		url: "savetoFoxtravaganza.php",
		data: dataString,
		success: function(results){
		},//end of success
		error: function(objRequest){
		}//End of error
	}); //end of ajax get signups}	
	return true;
}
// ----------------------------------------------------------------------------
//Function to
//Last Edited 10/09/11 by Kelly Blumer
function saveToFoxtravaganzaVolunteers(form)
{
	$("div#spinner span.middle").html("Saving information ...");	
	var dataString = form.serialize();
	$.ajax({
		type: 'GET',
		url: "savetoFoxtravaganzaVolunteers.php",
		data: dataString,
		success: function(results){
		},//end of success
		error: function(objRequest){
		}//End of error
	}); //end of ajax get signups}	
	return true;
}
// ----------------------------------------------------------------------------
//Function to
//Last Edited 10/09/11 by Kelly Blumer
function getVolunteerStatusByRoom(room)
{
	$("div#spinner span.middle").html("Retrieving volunteer information ...");	
	$.ajax({
		type: 'POST',
		url: "getGuardiansByRoom.php",
		data: {room:room},
		dataType: "json",				
		success: function(names){
			html = "<table id='csvTable'>\n";
			html +="\t<tr><th>First Name</th><th>Last Name</th><th>Purple Form</th><th>CDL Cleared</th><th>CDL Copy</th><th>CDL Exp</th><th>TB Copy</th><th>TB Exp</th><th>Insurance Copy</th><th>Insurance Exp</th></tr>\n";
			$.each(names, function(i,name){		
				html += "\t<tr><td>"+name.firstName+"</td><td>"+name.lastName+"</td>";
		
				if(name['purpleForm'].toLowerCase() == "yes") {
					html += "<td class='green'>yes</td>";
				} else {
					html += "<td class='red'>no</td>";	
				}
				if(name['cdlCleared'].toLowerCase() == "yes") {
					html += "<td class='green'>yes</td>";
				}else { 
					html += "<td class='red'>no</td>";
				}				
				if(name['cdlCopy'].toLowerCase() == "yes") html += "<td class='green'>yes</td>";
					else html += "<td class='red'>no</td>";	
				if(!(dateExpired(name['cdlExp']))) html += "<td class='green'>yes</td>";
					else html += "<td class='red'>no</td>";	
				if(name['tbCopy'].toLowerCase() == "yes") html += "<td class='green'>yes</td>";
					else html += "<td class='red'>no</td>";	
				if(!(dateExpired(name['tbExp']))) html += "<td class='green'>yes</td>";
					else html += "<td class='red'>no</td>";	
				if(name['autoInsCopy'].toLowerCase() == "yes") html += "<td class='green'>yes</td>";
					else html += "<td class='red'>no</td>";	
				if(!(dateExpired(name['autoInsExp']))) html += "<td class='green'>yes</td>";
					else html += "<td class='red'>no</td>";																					
				html += "</tr>\n";			
			});	
			html += "</table>\n";
			$("#volStatus").html(html);
			$("#volStatus").show();
		},//end of success
		error: function(objRequest){
			timedErrorBoxMsg("Information was not saved.");
		}//End of error
	}); //end of ajax get signups}
}

// ----------------------------------------------------------------------------
//Function to
//Last Edited 10/09/11 by Kelly Blumer
function dateExpired(tstDate)
{
	if(isset(tstDate)){
		var dateArray = new Array();	
		dateArray = tstDate.split("-");
		var year = dateArray[0];
		var month = dateArray[1];
		var day = dateArray[2];
		var dateFormatted = new Date(year, month, day);
		today = new Date();
		if(dateFormatted < today){
			return true; //Expired
		} else {
			return false; //Not Expired
		}
	} else {
		return true;
	}
}
// ----------------------------------------------------------------------------
//Function to
//Last Edited 10/09/11 by Kelly Blumer
function getTotalVolunteerHours(){
  $.ajax({
	type: 'POST',
	url: "gettotalvolhours.php",
	data:{ }, 
	dataType: "text",		
	success: function(results){ 
		var html="Total Volunteer Hours for the School Year: "+ results;
		$("#totalVolHours").html(	html);
	}, //end of success
	error: function(){
		var html="Total Volunteer Hours for the School Year: 0";
		$("#totalVolHours").html(	html);
	}
  });//end ajax	
  return true;
}
// ----------------------------------------------------------------------------
//Function to
//Last Edited 10/09/11 by Kelly Blumer
function getTotalNmbrBugsOpen(){
  $.ajax({
	type: 'POST',
	url: "getTotalBugsOpen.php",
	data:{ }, 
	dataType: "text",		
	success: function(results){ 
		var html="Total Number of Defects Not Closed: "+ results;
		$("#totalBugsOpen").html(html);
	}//end of success
  });//end ajax	
  return true;
}// ----------------------------------------------------------------------------
//Function to
//Last Edited 8/1/11 by Kelly Blumer

function saveDoctorInfo(){
	$("div#spinner span.middle").html("Saving information...");

  //Look up member info from parishioners
    if( $("#drLastName").val() == ""){
		timedErrorBoxMsg("Information was not saved.");						
		return false;
  	}	else { 													
			$.ajax({
				type: 'POST',
				url: "savetoDoctors.php",
				data:{
					ID:$("#doctorID").val(),
					firstName:$("#drFirstName").val(),
					lastName:$("#drLastName").val(),		
					phone:$("#drPhone").val(),							
				}, 
				success: function(ID){
					if(ID != ""){					
						$("#doctor").val(ID)
						$tabs.tabs('select', 1);  //Pop to student tab		
						createDoctorSelectList(ID, "doctor", $("#doctor"));	
						createDoctorSelectList("0", "doctor", $("#doctorPopup"));																																																											
						resetForm($("#editDoctor"));
						timedErrorBoxMsg("Information was saved.");	
						$("#editDoctor").dialog("close");									
						return true;
					}	else {
						timedErrorBoxMsg("Information was not saved.");										
						return false;
					}

				},//end of success
				error: function(){
					timedErrorBoxMsg("Information was not saved.");				
					return false;
				}
			});//end ajax
	}		
}
// ----------------------------------------------------------------------------
//Function to
//Last Edited 8/1/11 by Kelly Blumer

function saveDentistInfo(){
	$("div#spinner span.middle").html("Saving information...");

  //Look up member info from parishioners
    if( $("#dentistLastName").val() == ""){
		timedErrorBoxMsg("Information was not saved.");						
		return false;
  	}	else { 													
			$.ajax({
				type: 'POST',
				url: "savetoDentists.php",
				data:{
					ID:$("#dentistID").val(),
					firstName:$("#dentistFirstName").val(),
					lastName:$("#dentistLastName").val(),		
					phone:$("#dentistPhone").val(),							
				}, 
				success: function(ID){
					if(ID != ""){					
						$("#dentist").val(ID)
						$tabs.tabs('select', 1);  //Pop to student tab	
						createDoctorSelectList(ID, "dentist", $("#dentist"));
						createDoctorSelectList("0", "dentist", $("#dentistPopup"));	
						resetForm($("#editDentist"));																																													
						timedErrorBoxMsg("Information was saved.");		
						$("#editDentist").dialog("close");																	
						return true;
					}	else {
						timedErrorBoxMsg("Information was not saved.");										
						return false;
					}
				},//end of success
				error: function(){
					timedErrorBoxMsg("Information was not saved.");				
					return false;
				}
			});//end ajax
	}		
}
// ----------------------------------------------------------------------------
//Function to
//Last Edited 5/21/11 by Kelly Blumer
function createDoctorSelectList(ID, table, selectID)
{
  $.ajax({
	type: 'POST',
	url: "getInfoToJSON.php",
	data:{table:table, fields:'*', sortby:'lastName', order:'ASC'}, 
	dataType: "json",		
	success: function(memdata){ 
	if(ID == "") {
	  ID = 0;
	  var html = '<option value="0" selected="yes"></option>';
	} else {
	  var html = '<option value="0"></option>';
	}
	$.each(memdata, function(i, memdata){  
	  	if(memdata.lastName != ""){
			if(memdata.ID == ID){ 
				html += '\t<option value="'+memdata.ID+'" selected>'+memdata.lastName+', '+memdata.firstName+' '+ memdata.phone+'</option>\n';	  		
			}	else {
				html += '\t<option value="'+memdata.ID+'">'+memdata.lastName+', '+memdata.firstName+' '+ memdata.phone+'</option>\n';	  		
			}
		}
	  });//end each
	  $(selectID).html(html);
	}//end of success
  });//end ajax		 
}
// ----------------------------------------------------------------------------
//Function to
//Last Edited 10/09/11 by Kelly Blumer
function getClassInfoByRoom(room)
{
	$("div#spinner span.middle").html("Retrieving information ...");	
	$.ajax({
		type: 'POST',
		url: "getClassInfoByRoom.php",
		data: {room:room},
		dataType: "json",				
		success: function(names){
			html = "<table id='csvTable'>\n";
			html +="\t<tr><th>First Name</th><th>Last Name</th><th>Home Phone</th><th>Guardian 1 </th><th>Guardian 1 Email</th><th>Guardian 2</th><th>Guardian 2 Email</th></tr>\n";
			$.each(names, function(i,name){		
				html += "\t<tr><td>"+name.firstName+"</td><td>"+name.lastName+"</td><td>"+name.phone+"</td><td>"+name.g1_firstName+" "+name.g1_lastName+"</td><td>"+name.g1_email+"</td><td>"+name.g2_firstName+" "+name.g2_lastName+"</td><td>"+name.g2_email+"</td>\n";		
				html += "</tr>\n";			
			});	
			html += "</table>\n";
			$("#classRoster").html(html);
			$("#classRoster").show();
		},//end of success
		error: function(objRequest){
			timedErrorBoxMsg("Information was not saved.");
		}//End of error
	}); //end of ajax get signups}
}
// ----------------------------------------------------------------------------
//Function to
//Last Edited 10/09/11 by Kelly Blumer
function getRegInfoByRoom(room)
{
	$("div#spinner span.middle").html("Retrieving information ...");	
	$.ajax({
		type: 'POST',
		url: "getRegInfoByRoom.php",
		data: {room:room},
		dataType: "json",				
		success: function(names){				
			var first=true;		
			$.each(names, function(i,name){		
				if(first){
					html = "<table id='csvTable'>\n";
					html +="\t<tr>";
					$.each(name, function(fieldKey,field){						
						html+="<th>"+fieldKey+"</th>";
					});
					html+="</tr>\n";
					first=false;
				}
				html+="\t<tr>\n";
				$.each(name, function(fieldKey, field){
					html+="<td>"+field+"</td>";	
				});
				html+="\t</tr>\n";
			});	
			html += "</table>\n";
			$("#classRoster").html(html);
			$("#classRoster").show();
		}//end of success
	}); //end of ajax get signups}
}

// ----------------------------------------------------------------------------
//Function to
//Last Edited 10/09/11 by Kelly Blumer
function getDirectoryInfo()
{
	$("div#spinner span.middle").html("Retrieving information ...");	
	$.ajax({
		type: 'POST',
		url: "getDirectoryInfo.php",
		dataType: "json",				
		success: function(names){				
			var first=true;		
			$.each(names, function(i,name){		
				if(first){
					html = "<table id='csvTable'>\n";
					html +="\t<tr>";
					$.each(name, function(fieldKey,field){						
						html+="<th>"+fieldKey+"</th>";
					});
					html+="</tr>\n";
					first=false;
				}
				html+="\t<tr>\n";
				$.each(name, function(fieldKey, field){
					if(field != null && field != "" && isset(field)){
						html+="<td>"+field+"</td>";	
					} else {						
						html+="<td></td>";
					}
				});
				html+="\t</tr>\n";
			});	
			html += "</table>\n";
			$("#roster").html(html);
			$("#roster").show();
		}//end of success
	}); //end of ajax get signups}
}
// ----------------------------------------------------------------------------
//Function to
//Last Edited 10/09/11 by Kelly Blumer
function checkGuardianNmbr(FID, ID, guardianNmbr, selectorID)
{
	$(selectorID).next("em").removeClass("msgOn");					
	if(guardianNmbr == 1 || guardianNmbr == 2){
		$.ajax({
			type: 'POST',
			url: "getInfoToJSON.php",
			data:{table:'guardianTable', fields:'`lastName`,`ID`, `firstName`', selection:"`familyName`="+FID+" and `guardianNmbr`="+guardianNmbr+" and `ID`!="+ID,sortby:'lastName', order:'ASC'}, 
			dataType: "json",		
			success: function(memdata){ 
				$.each(memdata, function(i, memdata){  
					if(memdata.firstName !="" && memdata.lastName != "" && guardianNmbr!=""){				
						var msgTxt = memdata.firstName+" "+memdata.lastName+" has taken that order.";
						$(selectorID).next("em").text(msgTxt);
						$(selectorID).next("em").addClass("msgOn");
						return true;
					} else {
						return false;
					}
				});						
			},//end of success
			error: function(memdata){
				$.each(memdata, function(i, memdata){  
					if(memdata.firstName !="" && memdata.lastName != "" && guardianNmbr!=""){				
						var msgTxt = memdata.firstName+" "+memdata.lastName+" has taken that order.";
						$(selectorID).next("em").text(msgTxt);
						$(selectorID).next("em").addClass("msgOn");
						return true;
					} else {
						return false;
					}
				});				
			}//end of error
		});//end ajax		  
	} else {
		return false;
	}
	if($(selectorID).next("em").hasClass("msgOn")){
		return true;
	} else {
		return false;
	}
}
// ----------------------------------------------------------------------------
//Function to
//Last Edited 11/09/11 by Kelly Blumer
function isEven(someNumber)
{
	return (someNumber%2 == 0) ? true : false;
}
// ----------------------------------------------------------------------------
//Function to
//Last Edited 11/09/11 by Kelly Blumer
function getSessionInfo()
{
	fields = new Array("u-level","u_name");
	$.ajax({
		type: 'POST',
		url: "getSessionInfo.php",
		data: {fields:fields},
		dataType: "json",				
		success: function(sessionInfo){				
			return sessionInfo;
		}//end of success
	}); //end of ajax get signups}
}	
// ----------------------------------------------------------------------------
//Function to
//Last Edited 11/09/11 by Kelly Blumer
function disableLink(e) {
    // cancels the event
    e.preventDefault();

    return false;
}
