// bikeright javascript


jQuery(function($){
	$.datepicker.regional['en-GB'] = {
		closeText: 'Done',
		prevText: 'Prev',
		nextText: 'Next',
		currentText: 'Today',
		monthNames: ['January','February','March','April','May','June',
		'July','August','September','October','November','December'],
		monthNamesShort: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun',
		'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'],
		dayNames: ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'],
		dayNamesShort: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'],
		dayNamesMin: ['Su','Mo','Tu','We','Th','Fr','Sa'],
		weekHeader: 'Wk',
		dateFormat: 'dd/mm/yy',
		firstDay: 1,
		isRTL: false,
		showMonthAfterYear: false,
		yearSuffix: ''};
	$.datepicker.setDefaults($.datepicker.regional['en-GB']);
});


$(document).ready(function(){
	
	if(!document.getElementById('duocmsTopbarOuter')){
		$('.datepicker').each(function(){
			$(this).datepicker($.datepicker.regional['en-GB']);
		});
	}
	
	
/*	$('.formdefault input').each(function(){
		if($(this).val() == "dd/mm/yyyy"){
			$(this).datepicker();
		}
	});*/
	
	
	if($('#date_selected_session2').length>0){
		updatePrice(document.getElementById('date_selected').options[document.getElementById('date_selected').selectedIndex].value,document.getElementById('date_selected_session2').options[document.getElementById('date_selected_session2').selectedIndex].value);
	}
	
	if($('#date_selected').length>0){
		updatePrice($('#date_selected').val());
	}
	
	
});

function flipFeatured(obj,dir){
	if(obj){
		var links = obj.getElementsByTagName('A');
		if(dir > 0){
			obj.style.backgroundPosition = 'left bottom';
			obj.style.cursor = 'pointer';
			for(var i=0;i<links.length;i++){
				links[i].style.color = '#ffffff';
			}
		} else {
			obj.style.backgroundPosition = 'left top';
			for(var i=0;i<links.length;i++){
				links[i].style.color = '#d7271a';
			}
		}
	}
}


function validateBookingForm(){
	if(document.getElementById('frmEventBooking')){
		var error = '';

		var reqs = $('.requiredfield');
		var agegroup, gender, experience, howoften, hasbike, traveltowork, hear, date_selected = false;
		
		reqs.each(function(){
		
			if($(this).attr('name') == "agegroup" && $(this).attr('checked')){ agegroup = true; }
			if($(this).attr('name') == "gender" && $(this).attr('checked')){ gender = true; }
			if($(this).attr('name') == "experience" && $(this).attr('checked')){ experience = true; }
			if($(this).attr('name') == "howoften" && $(this).attr('checked')){ howoften = true; }
			if($(this).attr('name') == "hasbike" && $(this).attr('checked')){ hasbike = true; }

			if($(this).attr('id') == "traveltowork" && $('#traveltowork option:selected').val() != ""){ traveltowork = true; }
			if($(this).attr('id') == "where_did_you_hear" && $('#where_did_you_hear option:selected').val() != ""){ hear = true; }
			if(document.getElementById('date_selected')){
				if($(this).attr('id') == "date_selected" && $('#date_selected option:selected').val() != ""){ date_selected = true; }
			}
			
			if($(this).attr('name') == "date_selected" && $(this).val() != ''){ date_selected = true; }
			
			
			itemVal = $(this).val();
			if(itemVal.length == 0 || itemVal == ''){
				error += $("label[for='"+$(this).attr('name')+"']").html()+" is a required field\n";
				$(this).attr('style','border: 1px solid #c00;background:#ffc;');
			} else {
				$(this).attr('style','');
			}
			if($(this).attr('name') == 'email'){
				if(!document.getElementById('bookingemail').value.match(/.+@.+/i)){
					error += "You must enter a valid email address\n";
					$(this).attr('style','border: 1px solid #c00;background:#ffc;');
				} else {
					$(this).attr('style','');
				}
			}
		});
		
		if(!agegroup){ error += "Age group: is a required field\n"; }
		if(!gender){ error += "Gender: is a required field\n"; }
		if(!howoften){ error += "Please tell us how often you cycle\n"; }
		if(!experience){ error += "Please tell us your level of experience\n"; }
		if(!hasbike){ error += "Please tell us if you have a bicycle\n"; }

		if(!traveltowork){ error += "Please tell us how you currently travel to work\n"; }
		if(!hear){ error += "Please tell us how you heard about the training\n"; }
		if(!date_selected){ error += "Please select your training session\n"; }
		
		if($('#agreement').attr('checked')){ agreed = true; } else { error += '\nYou must confirm that you agree to be contacted upon completion of your course.\n'; }
		
		if(error != ''){
			alert("Please correct the following errors: \n\n"+error);
		} else {
			document.getElementById('frmEventBooking').submit();
		}
	}
}

var error = '';

function validateBookingFormNew(action,template){
	if(document.getElementById('frmEventBooking')){
		var rad = false;
		
		var reqs = $('.requiredfield');
		
		reqs.each(function(){
		
			//console.log(this.nodeName.toLowerCase());
		
			switch(this.nodeName.toLowerCase()){
				case "select":
					if($('#'+$(this).attr('id')+' option:selected').val() == ""){
						errormsg($(this).attr('title'));
					} else {
						$(this).parent().attr('style','');
					}
					break;
				case "input":
				case "textarea":
					if($(this).attr('type') == 'radio'){
					
						$('input[name="'+$(this).attr('name')+'"]').each(function(){
							if($(this).attr('checked')){ rad = true; }
						});
						
						if(!rad){
							errormsg($(this).attr('title'));
							$(this).parent().attr('style','border: 1px solid #c00;background:#ffc;');
						}
						
					} else if($(this).attr('type') == 'checkbox'){
						if(!$(this).attr('checked')){
							errormsg($(this).attr('title'));
							$(this).parent().attr('style','border: 1px solid #c00;background:#ffc;');
						} else {
							$(this).parent().attr('style','');
						}
					} else {
						if($(this).val().length == 0 || $(this).val() == ''){
							errormsg($(this).attr('title'));
							$(this).parent().attr('style','border: 1px solid #c00;background:#ffc;');
						} else {
							$(this).parent().attr('style','');
						}
					}
					break;
			}
			
			rad = false;

			if($(this).attr('name') == 'email'){
				if(!document.getElementById('bookingemail').value.match(/.+@.+/i)){
					error += "You must enter a valid email address\n";
					$(this).parent().attr('style','border: 1px solid #c00;background:#ffc;');
				} else {
					$(this).attr('style','');
				}
			}
		});
	
		if(error){
			alert("Please correct the following errors: \n\n"+error);
			error = '';
		} else {
			if(action == 'bikeright/booking/'){ action = action + template+'/'; }
			$('#frmEventBooking').attr('action','/duocms/' + action);
			document.getElementById('frmEventBooking').submit();
		}
	}

}

function errormsg(txt){
	msg = txt+' is a required field\n';
	if(error.indexOf(msg) < 0){ error += msg; }
}


function updatePrice(){
	var selectedDateText=$("#date_selected option:selected").text();
	$('#courseDate').val(selectedDateText);

	if(arguments.length > 0){
		var url = "/duocms/bikeright/updateprice/";
		for(var i=0;i<arguments.length;i++){
			url += arguments[i]+"/";
		}
		$.ajax({
			type: "POST",
			url: url,
			success: function(msg){
				if($('#priceoption_deposit') && $('#priceoption_deposit').attr('checked')){
					if(msg > 0){
						var price = msg - 290;
					}
				} else {
					var price = msg;
				}
				$('#price').html(price);
				$('#pricehidden').val(price);
			}
		});
	}
}


