
$(document).ready(function() {
	
	/////----- COURSE CHOOSING -----//////////
	
	courseSelect_check();
	$('#courseList input[name=course_PK]').click( function() {
		courseSelect_check();
	});
	
	
	/////------------- USER DETAILS -------------//////////
	
	
	// Where did you find out?
	findOut_check($('#user_a_findOut'));
	$('#user_a_findOut').change( function() {
		findOut_check(this);
	});
	
	
	// Children Check
	children_choose_check();
	$('#user_a_children_choose').change( function() {
		children_choose_check();
	});
	
	
	
	/////------------- DOG DETAILS -------------//////////
	

	// Choose new dog or current
	$('.enrollee_PK_choose').change( function() {
		dogDetails_check(this);
	});
	dogDetails_check($('#enrollee_PK_e1'));
	dogDetails_check($('#enrollee_PK_e2'));
	
	// Number of dogs (needs to be after details check)
	twoEnrollees_check();
	$('#signupForm input[name=twoEnrollees]').click( function() {
		twoEnrollees_check();
	});
	
	
	// Unreg Dog Extra Details
	unregDog_details_check();
	$('#enrollee_other_2nd_e1').change( function() {
		unregDog_details_check();
	});
	
	
	
	
	
	/////------------- SIGNUP VALIDATOR -------------//////////
	
	
	$("#signupForm_form").validate({
		event: "keyup",
		rules: {
			courseType: "required",
			course_PK: "required",
			user_firstName: "required",
			user_lastName: "required",
			user_email: "required",
			user_phone: "required",
			user_mobile: {required: true, digits: true},
			user_address1: "required",
			user_city: "required",
			user_state: "required",
			user_postcode: "required",
			user_a_children: {required: "#user_a_children:visible"},
			enrollee_name_e1: {required: "#dogDetailsEntry_e1:visible"},
			enrollee_name_e2: {required: "#dogDetailsEntry_e2:visible"},
			enrollee_birthdate_e1: {required: "#dogDetailsEntry_e1:visible", date: true},
			enrollee_birthdate_e2: {required: "#dogDetailsEntry_e2:visible", date: true},
			user_a_findOut: "required",
			user_a_findOut_extra: {required: "#user_a_findOut_extra_box:visible"},
			disclaimerCheck: "required"
		},
		messages: {
			courseType: "Please choose a course type",
			course_PK: "Please select a course to enroll to",
			disclaimerCheck: "You must agree to this disclaimer to enrol"
		}
	});
	
	/////----- CHOOSE PAYMENT -----//////////
	
	paymentTypeSelect_check();
	$('#enrollMe #signup_paymentChoose input[name=paymentType]').click( function() {
		paymentTypeSelect_check();
	});
	
	
});

function courseSelect_check() {
	selector = '#courseList input[name=course_PK]:checked';
	if( $(selector).val() ) {
		dogType = $(selector).attr('rel');
		$('#courseList tr').removeClass('selected');
		$(selector).parent().parent().addClass('selected');
		$('#signupForm .dogType_puppy').hide();
		$('#signupForm .dogType_puppyAdv').hide();
		$('#signupForm .dogType_puppyOld').hide();
		$('#signupForm .dogType_adult').hide();
		$('#signupForm .dogType_' + dogType).show();
		$('#signupForm_courseChosen').show();
	}
}

function show_courseTypes(type) {
	var rows = 0;
	$('#courseList table tbody tr').each(function(i) {
		if ($(this).hasClass('courseType_' + type)) {
			$(this).removeClass('hide');
			rows = rows + 1;
		} else {
			$(this).addClass('hide');
		}
		if (!rows) {
			$('#courseList').addClass('hide');
		} else {
			$('#courseList').removeClass('hide');
		}
	});
}

function signupDetails(mode) {
	if (mode=='show') {
		$('.signupDetails').removeClass('hide');
		$('#submitBox').removeClass('hide');
	} 
	if (mode=='hide') {
		$('.signupDetails').addClass('hide');
		$('#submitBox').addClass('hide');
	} 
}

function twoEnrollees_check() {
	if ($('#signupForm input[name=twoEnrollees]:checked').val()) {
		$('#signupForm .twoEnrollees').show();
		$('#signupForm #dogDetails_e2').show();
		$('#signupForm #dogDetailsEntry_e2').show(); // needed for validator
		unregDog_check();
	} else {
		$('#signupForm .twoEnrollees').hide();
		$('#signupForm #dogDetails_e2').hide();
		$('#signupForm #dogDetailsEntry_e2').hide(); // needed for validator
		unregDog_check();
	}
}

function children_choose_check() {
	if ($('#user_a_children_choose').children('option:selected').attr('value')=='Yes') {
		$('#user_a_children').show(); // needed for validator
		$('#user_a_children').parents('tr').removeClass('hide');
	} else {
		$('#user_a_children').hide(); // needed for validator
		$('#user_a_children').parents('tr').addClass('hide');
	}
}

function dogDetails_check(selectbox) {
	enrolleeExt = '';
	if( $(selectbox).hasClass('enrollee_e1') ) {
		enrolleeExt = '_e1';
	}
	else if( $(selectbox).hasClass('enrollee_e2') ) {
		enrolleeExt = '_e2';
	}
	if ($(selectbox).children('option:selected').attr('value')) {
		$('#dogDetailsEntry' + enrolleeExt).hide();
	} else {
		$('#dogDetailsEntry' + enrolleeExt).show();
	}
}

// Check to show unreg dog question
function unregDog_check() {
	// Check if doesnt have two dogs and no set enrollees
	if ( $('#signupForm input[name=twoEnrollees]:checked').val() ) {
		$('#signup_unregDog').addClass('hide');
	} else {
		$('#signup_unregDog').removeClass('hide');
	}
}

// Check to show details for unreg dog question
function unregDog_details_check() {
	if( $('#enrollee_other_2nd_e1').children('option:selected').attr('value') == 'Yes' ) {
		$('#signup_unregDog_details').removeClass('hide');
	}
	else {
		$('#signup_unregDog_details').addClass('hide');
	}
}

function findOut_check(selectbox) {
	var val = $(selectbox).children('option:selected').attr('value');
	if (val == 'vet' || val == 'other') {
		$('#user_a_findOut_extra_box').removeClass('hide');
		if (val == 'vet') {
			$('#user_a_findOut_extra_box label').html('Name of Vet Clinic');
		}
		if (val == 'other') {
			$('#user_a_findOut_extra_box label').html('More Details');
		}
	} else {
		$('#user_a_findOut_extra_box').addClass('hide');
	}
}

function paymentTypeSelect_check() {
	selector = '#enrollMe #signup_paymentChoose input[name=paymentType]:checked';
	if( $(selector).val() ) {
		$('#enrollMe #signup_paymentChoose .paymentType').removeClass('selected');
		$(selector).parent().parent().addClass('selected');
	}
}


