jQuery(document).ready(function(){
		_CORE.date();
		_ACCORDION.ini();
		_RESERVATION.ini();
		jQuery('.form-reservez-bg').fadeTo(0,0.85);
		
	jQuery("#form-contact").validate({
		
		errorPlacement: function(error, element) {
			//alert(element.name);
			var n = jQuery(element).attr('name');
			if(n=='tel1' || n=='tel2' || n=='tel3'){
				jQuery(error).hide();
			}else{
				error.insertAfter(element);
			}
		},
		
		//debug:true,
							   
		rules: {
			prenom: {
				required: true
			},
			
			courriel: {
				required: true,
				email: true
			},
			
			telephone: {
				required: true
			},
			
			tel1: {
				required: true,
				digits: true,
				minlength: 3
			},
			tel2: {
				required: true,
				digits: true,
				minlength: 3
			},
			tel3: {
				required: true,
				digits: true,
				minlength: 4
			},
			
			sujet: {
				required: true
			},
			commentaires: {
				required: true
			}
		}

	});
	
	jQuery("#form-certificats").validate({
		
		errorPlacement: function(error, element) {
			//alert(element.name);
			var n = jQuery(element).attr('name');
			if(n=='tel1' || n=='tel2' || n=='tel3'){
				jQuery(error).hide();
			}else{
				error.insertAfter(element);
			}
		},
		
		//debug:true,
							   
		rules: {
			titre: {
				required: true
			},
			
			prenom: {
				required: true
			},
			
			courriel: {
				required: true,
				email: true
			},
			
			adresse: {
				required: true
			},
			
			ville: {
				required: true
			},
			
			province: {
				required: true
			},
			
			pays: {
				required: true
			},
			
			postal: {
				required: true
			},
			
			telephone: {
				required: true
			},
			
			tel1: {
				required: true,
				digits: true,
				minlength: 3
			},
			tel2: {
				required: true,
				digits: true,
				minlength: 3
			},
			tel3: {
				required: true,
				digits: true,
				minlength: 4
			}
		}

	});
	
	_CORE.iniTelephone(['tel']);
});
var _ACCORDION = {
	
	_CLOSE: null,
	_DELAY: 500,
	
	ini: function(id){
		
		//currentURL = jQuery(location).attr('href');
		
		jQuery('ul.menu li:has(ul)').addClass('haschild');
		
		jQuery('ul.menu li:has(ul) ul').hide();
		
		jQuery('ul.menu li:has(ul)').mouseover(function(){
													_ACCORDION.reset();
													jQuery('ul.menu li.active').removeClass('active');
													jQuery(this).addClass('active');
													});
		jQuery('ul.menu li:has(ul)').mouseout(function(){
													_ACCORDION.reset();
													jQuery(this).addClass('deactive');
													_ACCORDION._CLOSE = setTimeout('_ACCORDION.deactivate();',_ACCORDION._DELAY);
													});
		
		jQuery('ul.menu li a').mouseover(function(){
													jQuery('ul.menu li.active').removeClass('active');
													});
		
		jQuery('ul.menu li:has(ul) ul').mouseover(function(){
													_ACCORDION.reset();
													jQuery(this).parent().removeClass('deactive');
													if(!jQuery(this).parent().hasClass('active')){
														jQuery(this).parent().addClass('active');
													}
													});
		jQuery('ul.menu li:has(ul) ul').mouseout(function(){
													_ACCORDION.reset();
													jQuery(this).parent().addClass('deactive');
													_ACCORDION._CLOSE = setTimeout('_ACCORDION.deactivate();',_ACCORDION._DELAY);
													});
		
	},
	
	deactivate: function(obj){
		if(jQuery('ul.menu li').hasClass('deactive')){
			jQuery('ul.menu li.deactive').removeClass('active');
			jQuery('ul.menu li.deactive').removeClass('deactive');
		}
	},
	
	reset: function(){
		if(_ACCORDION._CLOSE != null){
			clearTimeout(_ACCORDION._CLOSE);
		}
	}

}

var _CORE = {
	
	date: function(){
		jQuery('input.datepicker').datepicker({prevText:'<',nextText:'>'});
	},
	
	iniTelephone: function(arr){
		var i =0;
		if(jQuery('.telephone').length>0){
				
				var ii = 0;
				var l = jQuery('.telephone input').not(':hidden').length;
				for(ii=0;ii<l;ii++){
					jQuery('.telephone input').not(':hidden').eq(ii).keyup(function(){
						var n = jQuery(this).attr('class');
						n = n.replace(/ ([a-z0-9]*)/gi,'');
						var c = jQuery(this).parent();
						var m = jQuery(this).attr('maxlength');
						if(jQuery(this).val().length == m){
							jQuery(c).find('input').eq(jQuery(this).index() + 1).focus();
						}
						if(jQuery(c).find('input').eq(0).val().length==3&&jQuery(c).find('input').eq(1).val().length==3&&jQuery(c).find('input').eq(2).val().length==4){
							jQuery(c).find('input:hidden').val("("+jQuery(c).find('input').eq(0).val()+") "+jQuery(c).find('input').eq(1).val()+"-"+jQuery(c).find('input').eq(2).val());
						}				   
					});
				}
		}
	},
	
	send: function(f){
		jQuery(f).submit();
	}
	
}

var _RESERVATION = {
	
	showForm: function(){
		var form = jQuery('.form-reservez');
		if(jQuery(form).is(":visible")){
			jQuery(form).hide();
			return false;
		}
		jQuery(form).show();
	},
	
	send: function(){
		jQuery('#form-reservation-header').submit();
	},
	
	ini: function(){
		jQuery('#form-reservez-date').change(function(){
			var check = jQuery('#form-reservez-date').val().split('/');
			if(check.length == 3){
				jQuery('#form-reservation-header input[name=fday]').val(check[0]);
				jQuery('#form-reservation-header input[name=fmonth]').val(check[1]);
				jQuery('#form-reservation-header input[name=fyear]').val(check[2]);
			}
		});
	}
	
}
