/*********************************
Each consultant is tied to an ID:
#61 - Cordt Withum
#64 - Joseph Mapes
#66 - Ricardo Bucio
#70 - Elizabeth Fasula
#79 - Anyone
#80 - Nick Saule
*********************************/
jQuery(document).ready(function(){
	//Hide these fields on page load
	jQuery("#selectConsultant").hide();
	jQuery("#consultantList").hide();
	jQuery("#new_type").hide();
	jQuery(".selecttime").hide();
	jQuery("#referer61").hide();
	jQuery("#referer64").hide();
	jQuery("#referer66").hide();
	jQuery("#referer70").hide();
	jQuery("#referer79").hide();
	jQuery("#referer80").hide();
	
	//Load the profiles into their forms
	jQuery("#form61").html(jQuery("#profile61").html());
	jQuery("#form64").html(jQuery("#profile64").html());
	jQuery("#form66").html(jQuery("#profile66").html());
	jQuery("#form70").html(jQuery("#profile70").html());
	jQuery("#form79").html(jQuery("#profile79").html());
	jQuery("#form80").html(jQuery("#profile80").html());
	
	//Show a list of consultants to select
	jQuery("#list61").html(jQuery("#profile61").html());
	jQuery("#list64").html(jQuery("#profile64").html());
	jQuery("#list66").html(jQuery("#profile66").html());
	jQuery("#list70").html(jQuery("#profile70").html());
	jQuery("#list79").html(jQuery("#profile79").html());
	jQuery("#list80").html(jQuery("#profile80").html());
	jQuery("#list79").hide();
	
	//Load footer text in each form
	jQuery(".ftext").each(function() {
		jQuery(this).html(jQuery("#footer_text").html());
	});
	
	//Change the available consultants based on appointment type
	jQuery("#appt_type").change(function() {
		//Hide any visible form
		if(jQuery("#61").is(":visible")) { jQuery("#61").hide(); }
		if(jQuery("#64").is(":visible")) { jQuery("#64").hide(); }
		if(jQuery("#66").is(":visible")) { jQuery("#66").hide(); }
		if(jQuery("#70").is(":visible")) { jQuery("#70").hide(); }
		if(jQuery("#79").is(":visible")) { jQuery("#79").hide(); }
		if(jQuery("#80").is(":visible")) { jQuery("#80").hide(); }
		
		//Determine appointment duration
		if(jQuery("#appt_type").val() == "new") {
			//Show everyone except Elizabeth and Joe
			jQuery("#list61").show();
			jQuery("#list64").hide();
			jQuery("#list66").show();
			jQuery("#list70").hide();
			jQuery("#list80").show();
			
			//Let user select by time or consultant
			jQuery("#new_type").fadeIn();
			
			//Change the appointment types for each consultant to a new purchase
			jQuery(".appt_reason").each(function() {
				jQuery(this).val("new");
				jQuery("#timefiller61").html(jQuery("#new61").html());
				jQuery("#timefiller70").html(jQuery("#new70").html());
				jQuery("#timefiller64").html(jQuery("#new64").html());
				jQuery("#timefiller66").html(jQuery("#new66").html());
				jQuery("#timefiller79").html(jQuery("#new79").html());
				jQuery("#timefiller80").html(jQuery("#new80").html());
			});
		} else if(jQuery("#appt_type").val() == "existing") {
			//User can only select by consultant
			jQuery("#new_type").fadeOut();
		
			//Show everyone
			jQuery("#list61").show();
			jQuery("#list64").show();
			jQuery("#list66").show();
			jQuery("#list70").show();
			jQuery("#list80").show();
			
			//Show consultant selection
			jQuery("#consultantList").fadeIn();

			//Reset the appointment type for each consultant
			jQuery(".appt_reason").each(function() {
				jQuery(this).removeAttr("disabled");
				jQuery("#timefiller61").html(jQuery("Please select an appointment type.").html());
				jQuery("#timefiller70").html(jQuery("Please select an appointment type.").html());
				jQuery("#timefiller64").html(jQuery("Please select an appointment type.").html());
				jQuery("#timefiller66").html(jQuery("Please select an appointment type.").html());
				jQuery("#timefiller79").html(jQuery("Please select an appointment type.").html());
				jQuery("#timefiller80").html(jQuery("Please select an appointment type.").html());
			});			
		} else if(jQuery("#appt_type").val() == "none") {
			jQuery("#consultantList").fadeOut();
			jQuery("#new_type").fadeOut();
		}
	});

	/* Show the generic booking form if the user does not care who they see */
	jQuery("#new_type").change(function() {
		if(jQuery("#new_type").val() == "availability") {
			jQuery("#consultantList").fadeOut();
			jQuery("#79").fadeIn();
		} else if(jQuery("#new_type").val() == "consultant") {
			jQuery("#consultantList").fadeIn();
			jQuery("#79").fadeOut();
		}
	});
	
	jQuery(".selectable").click(function() {
		jQuery(".selectable").each(function() {
			jQuery(this).hide();
		});
		
		jQuery("#"+jQuery(this).attr("rel")).fadeIn();
	});
	
	/* Since referral is required, we must delete the value from the first option to make sure people change it */
	jQuery("option[value='Please select']").each(function() {
		jQuery(this).val("");
	});
	
	/* Hide / Show referer */
	jQuery("select[name='referral61']").change(function() {
		if(jQuery(this).val() == "Referral") {
			jQuery("#referer61").each(function() {
				jQuery(this).fadeIn();
			});
		} else {
			jQuery("#referer61").each(function() {
				jQuery(this).fadeOut();
			});
		}
	});
	
	jQuery("select[name='referral64']").change(function() {
		if(jQuery(this).val() == "Referral") {
			jQuery("#referer64").each(function() {
				jQuery(this).fadeIn();
			});
		} else {
			jQuery("#referer64").each(function() {
				jQuery(this).fadeOut();
			});
		}
	});
	
	jQuery("select[name='referral66']").change(function() {
		if(jQuery(this).val() == "Referral") {
			jQuery("#referer66").each(function() {
				jQuery(this).fadeIn();
			});
		} else {
			jQuery("#referer66").each(function() {
				jQuery(this).fadeOut();
			});
		}
	});
	
	jQuery("select[name='referral70']").change(function() {
		if(jQuery(this).val() == "Referral") {
			jQuery("#referer70").each(function() {
				jQuery(this).fadeIn();
			});
		} else {
			jQuery("#referer70").each(function() {
				jQuery(this).fadeOut();
			});
		}
	});
	
	jQuery("select[name='referral79']").change(function() {
		if(jQuery(this).val() == "Referral") {
			jQuery("#referer79").each(function() {
				jQuery(this).fadeIn();
			});
		} else {
			jQuery("#referer79").each(function() {
				jQuery(this).fadeOut();
			});
		}
	});
	
	jQuery("select[name='referral80']").change(function() {
		if(jQuery(this).val() == "Referral") {
			jQuery("#referer80").each(function() {
				jQuery(this).fadeIn();
			});
		} else {
			jQuery("#referer80").each(function() {
				jQuery(this).fadeOut();
			});
		}
	});
	
	/* Appointment durations */


	jQuery("#reason61").change(function() {
		if(jQuery(this).val() == "new") {
			jQuery("#timefiller61").html(jQuery("#new61").html());
		} else if(jQuery(this).val() == "fitting") {
			jQuery("#timefiller61").html(jQuery("#fitting61").html());
		} else {
			jQuery("#timefiller61").html("Please select an appointment type.");
		}
	});
	
	jQuery("#reason64").change(function() {
		if(jQuery(this).val() == "new") {
			jQuery("#timefiller64").html(jQuery("#new64").html());
		} else if(jQuery(this).val() == "fitting") {
			jQuery("#timefiller64").html(jQuery("#fitting64").html());
		} else {
			jQuery("#timefiller64").html("Please select an appointment type.");
		}
	});
	
	jQuery("#reason66").change(function() {
		if(jQuery(this).val() == "new") {
			jQuery("#timefiller66").html(jQuery("#new66").html());
		} else if(jQuery(this).val() == "fitting") {
			jQuery("#timefiller66").html(jQuery("#fitting66").html());
		} else {
			jQuery("#timefiller66").html("Please select an appointment type.");
		}
	});
	
	jQuery("#reason70").change(function() {
		if(jQuery(this).val() == "new") {
			jQuery("#timefiller70").html(jQuery("#new70").html());
		} else if(jQuery(this).val() == "fitting") {
			jQuery("#timefiller70").html(jQuery("#fitting70").html());
		} else {
			jQuery("#timefiller70").html("Please select an appointment type.");
		}
	});
	
	jQuery("#reason79").change(function() {
		if(jQuery(this).val() == "new") {
			jQuery("#timefiller79").html(jQuery("#new79").html());
		} else if(jQuery(this).val() == "fitting") {
			jQuery("#timefiller79").html(jQuery("#fitting79").html());
		} else {
			jQuery("#timefiller79").html("Please select an appointment type.");
		}
	});
	
	jQuery("#reason80").change(function() {
		if(jQuery(this).val() == "new") {
			jQuery("#timefiller80").html(jQuery("#new80").html());
		} else if(jQuery(this).val() == "fitting") {
			jQuery("#timefiller80").html(jQuery("#fitting80").html());
		} else {
			jQuery("#timefiller80").html("Please select an appointment type.");
		}
	});
});
