////////////////////////////Menu fonction

var timeout         = 1000;
var closetimer		= 0;
var ddmenuitem      = 0;

function nav_open()
{	nav_canceltimer();
	nav_close();
	ddmenuitem = $(this).find('ul').eq(0).css('display', 'block');}

function nav_close()
{	if(ddmenuitem) ddmenuitem.css('display', 'none');}

function nav_timer()
{	closetimer = window.setTimeout(nav_close, timeout);}

function nav_canceltimer()
{	if(closetimer)
	{	window.clearTimeout(closetimer);
		closetimer = null;}}

$(document).ready(function()
{	$('#nav > li').bind('mouseover', nav_open);
	$('#nav > li').bind('mouseout',  nav_timer);});

document.onclick = nav_close;


/************************************************/
/**********CUSTOM CHECKBOX -SELECT- RADIO*********/
/************************************************/

var checkboxHeight = "25";
var radioHeight = "25";
var selectWidth = "140";

/* No need to change anything after this */

document.write('<style type="text/css">input.styled { display: none; } select.styled { position: relative; width: ' + selectWidth + 'px; opacity: 0; filter: alpha(opacity=0); z-index: 5; }</style>');

var Custom = {
	init: function() {
		var inputs = document.getElementsByTagName("input"), span = Array(), textnode, option, active;
		for(a = 0; a < inputs.length; a++) {
			if((inputs[a].type == "checkbox" || inputs[a].type == "radio") && inputs[a].className == "styled") {
				span[a] = document.createElement("span");
				span[a].className = inputs[a].type;

				if(inputs[a].checked == true) {
					if(inputs[a].type == "checkbox") {
						position = "0 -" + (checkboxHeight*2) + "px";
						span[a].style.backgroundPosition = position;
					} else {
						position = "0 -" + (radioHeight*2) + "px";
						span[a].style.backgroundPosition = position;
					}
				}
				inputs[a].parentNode.insertBefore(span[a], inputs[a]);
				inputs[a].onchange = Custom.clear;
				span[a].onmousedown = Custom.pushed;
				span[a].onmouseup = Custom.check;
				document.onmouseup = Custom.clear;
			}
		}
		inputs = document.getElementsByTagName("select");
		for(a = 0; a < inputs.length; a++) {
			if(inputs[a].className == "styled") {
				option = inputs[a].getElementsByTagName("option");
				active = option[0].childNodes[0].nodeValue;
				textnode = document.createTextNode(active);
				for(b = 0; b < option.length; b++) {
					if(option[b].selected == true) {
						textnode = document.createTextNode(option[b].childNodes[0].nodeValue);
					}
				}
				span[a] = document.createElement("span");
				span[a].className = "select";
				span[a].id = "select" + inputs[a].name;
				span[a].appendChild(textnode);
				inputs[a].parentNode.insertBefore(span[a], inputs[a]);
				inputs[a].onchange = Custom.choose;
			}
		}
	},
	pushed: function() {
		element = this.nextSibling;
		if(element.checked == true && element.type == "checkbox") {
			this.style.backgroundPosition = "0 -" + checkboxHeight*3 + "px";
		} else if(element.checked == true && element.type == "radio") {
			this.style.backgroundPosition = "0 -" + radioHeight*3 + "px";
		} else if(element.checked != true && element.type == "checkbox") {
			this.style.backgroundPosition = "0 -" + checkboxHeight + "px";
		} else {
			this.style.backgroundPosition = "0 -" + radioHeight + "px";
		}
	},
	check: function() {
		element = this.nextSibling;
		if(element.checked == true && element.type == "checkbox") {
			this.style.backgroundPosition = "0 0";
			element.checked = false;
		} else {
			if(element.type == "checkbox") {
				this.style.backgroundPosition = "0 -" + checkboxHeight*2 + "px";
			} else {
				this.style.backgroundPosition = "0 -" + radioHeight*2 + "px";
				group = this.nextSibling.name;
				inputs = document.getElementsByTagName("input");
				for(a = 0; a < inputs.length; a++) {
					if(inputs[a].name == group && inputs[a] != this.nextSibling) {
						inputs[a].previousSibling.style.backgroundPosition = "0 0";
					}
				}
			}
			element.checked = true;
		}
	},
	clear: function() {
		inputs = document.getElementsByTagName("input");
		for(var b = 0; b < inputs.length; b++) {
			if(inputs[b].type == "checkbox" && inputs[b].checked == true && inputs[b].className == "styled") {
				inputs[b].previousSibling.style.backgroundPosition = "0 -" + checkboxHeight*2 + "px";
			} else if(inputs[b].type == "checkbox" && inputs[b].className == "styled") {
				inputs[b].previousSibling.style.backgroundPosition = "0 0";
			} else if(inputs[b].type == "radio" && inputs[b].checked == true && inputs[b].className == "styled") {
				inputs[b].previousSibling.style.backgroundPosition = "0 -" + radioHeight*2 + "px";
			} else if(inputs[b].type == "radio" && inputs[b].className == "styled") {
				inputs[b].previousSibling.style.backgroundPosition = "0 0";
			}
		}
	},
	choose: function() {
		option = this.getElementsByTagName("option");
		for(d = 0; d < option.length; d++) {
			if(option[d].selected == true) {
				document.getElementById("select" + this.name).childNodes[0].nodeValue = option[d].childNodes[0].nodeValue;
			}
		}
		if(document.getElementById("calendar")){
			if(document.getElementById("calendar").value == "cal"){
				document.calendar.submit();
				
			}
		}	
	}
}
window.onload = Custom.init;


/***********************************************************************/
/*************************FICHE PRODUIT ONGLET**************************/
/***********************************************************************/
function montreCalqueFiche() {
		document.getElementById('calqueFiche').style.visibility = "visible";
		document.getElementById('calqueFiche').style.display = "block";
		document.getElementById('calqueDetail').style.visibility = "hidden";
		document.getElementById('calqueDetail').style.display = "none";
		document.getElementById('lienCalqueFiche').className = "on";
		document.getElementById('lienCalqueDetail').className = "off";
}

function montreCalqueDetail() {
		document.getElementById('calqueDetail').style.visibility = "visible";
		document.getElementById('calqueDetail').style.display = "block";
		document.getElementById('calqueFiche').style.visibility = "hidden";
		document.getElementById('calqueFiche').style.display = "none";
		document.getElementById('lienCalqueFiche').className = "off";
		document.getElementById('lienCalqueDetail').className = "on";
}

/*
 * Tooltip script 
 * powered by jQuery (http://www.jquery.com)
 * 
 * written by Alen Grakalic (http://cssglobe.com)
 * 
 * for more info visit http://cssglobe.com/post/1695/easiest-tooltip-and-image-preview-using-jquery
 *
 */
 


this.tooltip = function(){	
	/* CONFIG */		
		xOffset = 10;
		yOffset = 20;		
		// these 2 variable determine popup's distance from the cursor
		// you might want to adjust to get the right result		
	/* END CONFIG */		
	$("td.tooltip").hover(function(e){											  
		this.t = this.title;
		this.title = "";									  
		$("body").append("<p id='tooltip'>"+ this.t +"</p>");
		$("#tooltip")
			.css("top",(e.pageY - xOffset) + "px")
			.css("left",(e.pageX + yOffset) + "px")
			.fadeIn("fast");		
    },
	function(){
		this.title = this.t;		
		$("#tooltip").remove();
    });	
	$("td.tooltip").mousemove(function(e){
		$("#tooltip")
			.css("top",(e.pageY - xOffset) + "px")
			.css("left",(e.pageX + yOffset) + "px");
	});			
};



// starting the script on page load
$(document).ready(function(){
	tooltip();
		
});











/*********************************************************************/
/***************************POPUP***************************/
/*********************************************************************/
/*
 * SimpleModal 1.2.2 - jQuery Plugin
 * http://www.ericmmartin.com/projects/simplemodal/
 * Copyright (c) 2008 Eric Martin
 * Dual licensed under the MIT and GPL licenses
 * Revision: $Id: general.js,v 1.72 2009/07/13 10:36:19 sboyjoo Exp $
 */
(function($){var ie6=$.browser.msie&&parseInt($.browser.version)==6&&!window['XMLHttpRequest'],ieQuirks=$.browser.msie&&!$.boxModel,w=[];$.modal=function(data,options){return $.modal.impl.init(data,options);};$.modal.close=function(){$.modal.impl.close();};$.fn.modal=function(options){return $.modal.impl.init(this,options);};$.modal.defaults={opacity:50,overlayId:'simplemodal-overlay',overlayCss:{},containerId:'simplemodal-container',containerCss:{},dataCss:{},zIndex:1000,close:true,closeHTML:'<a class="modalCloseImg" title="Close"></a>',closeClass:'simplemodal-close',position:null,persist:false,onOpen:null,onShow:null,onClose:null};$.modal.impl={opts:null,dialog:{},init:function(data,options){if(this.dialog.data){return false;}this.opts=$.extend({},$.modal.defaults,options);this.zIndex=this.opts.zIndex;this.occb=false;if(typeof data=='object'){data=data instanceof jQuery?data:$(data);if(data.parent().parent().size()>0){this.dialog.parentNode=data.parent();if(!this.opts.persist){this.dialog.orig=data.clone(true);}}}else if(typeof data=='string'||typeof data=='number'){data=$('<div/>').html(data);}else{alert('SimpleModal Error: Unsupported data type: '+typeof data);return false;}this.dialog.data=data.addClass('simplemodal-data').css(this.opts.dataCss);data=null;this.create();this.open();if($.isFunction(this.opts.onShow)){this.opts.onShow.apply(this,[this.dialog]);}return this;},create:function(){w=this.getDimensions();if(ie6){this.dialog.iframe=$('<iframe src="javascript:false;"/>').css($.extend(this.opts.iframeCss,{display:'none',opacity:0,position:'fixed',height:w[0],width:w[1],zIndex:this.opts.zIndex,top:0,left:0})).appendTo('body');}this.dialog.overlay=$('<div/>').attr('id',this.opts.overlayId).addClass('simplemodal-overlay').css($.extend(this.opts.overlayCss,{display:'none',opacity:this.opts.opacity/100,height:w[0],width:w[1],position:'fixed',left:0,top:0,zIndex:this.opts.zIndex+1})).appendTo('body');this.dialog.container=$('<div/>').attr('id',this.opts.containerId).addClass('simplemodal-container').css($.extend(this.opts.containerCss,{display:'none',position:'fixed',zIndex:this.opts.zIndex+2})).append(this.opts.close?$(this.opts.closeHTML).addClass(this.opts.closeClass):'').appendTo('body');this.setPosition();if(ie6||ieQuirks){this.fixIE();}this.dialog.container.append(this.dialog.data.hide());},bindEvents:function(){var self=this;$('.'+this.opts.closeClass).bind('click.simplemodal',function(e){e.preventDefault();self.close();});$(window).bind('resize.simplemodal',function(){w=self.getDimensions();self.setPosition();if(ie6||ieQuirks){self.fixIE();}else{self.dialog.iframe&&self.dialog.iframe.css({height:w[0],width:w[1]});self.dialog.overlay.css({height:w[0],width:w[1]});}});},unbindEvents:function(){$('.'+this.opts.closeClass).unbind('click.simplemodal');$(window).unbind('resize.simplemodal');},fixIE:function(){var p=this.opts.position;$.each([this.dialog.iframe||null,this.dialog.overlay,this.dialog.container],function(i,el){if(el){var bch='document.body.clientHeight',bcw='document.body.clientWidth',bsh='document.body.scrollHeight',bsl='document.body.scrollLeft',bst='document.body.scrollTop',bsw='document.body.scrollWidth',ch='document.documentElement.clientHeight',cw='document.documentElement.clientWidth',sl='document.documentElement.scrollLeft',st='document.documentElement.scrollTop',s=el[0].style;s.position='absolute';if(i<2){s.removeExpression('height');s.removeExpression('width');s.setExpression('height',''+bsh+' > '+bch+' ? '+bsh+' : '+bch+' + "px"');s.setExpression('width',''+bsw+' > '+bcw+' ? '+bsw+' : '+bcw+' + "px"');}else{var te,le;if(p&&p.constructor==Array){if(p[0]){var top=typeof p[0]=='number'?p[0].toString():p[0].replace(/px/,'');te=top.indexOf('%')==-1?top+' + (t = '+st+' ? '+st+' : '+bst+') + "px"':parseInt(top.replace(/%/,''))+' * (('+ch+' || '+bch+') / 100) + (t = '+st+' ? '+st+' : '+bst+') + "px"';}if(p[1]){var left=typeof p[1]=='number'?p[1].toString():p[1].replace(/px/,'');le=left.indexOf('%')==-1?left+' + (t = '+sl+' ? '+sl+' : '+bsl+') + "px"':parseInt(left.replace(/%/,''))+' * (('+cw+' || '+bcw+') / 100) + (t = '+sl+' ? '+sl+' : '+bsl+') + "px"';}}else{te='('+ch+' || '+bch+') / 2 - (this.offsetHeight / 2) + (t = '+st+' ? '+st+' : '+bst+') + "px"';le='('+cw+' || '+bcw+') / 2 - (this.offsetWidth / 2) + (t = '+sl+' ? '+sl+' : '+bsl+') + "px"';}s.removeExpression('top');s.removeExpression('left');s.setExpression('top',te);s.setExpression('left',le);}}});},getDimensions:function(){var el=$(window);var h=$.browser.opera&&$.browser.version>'9.5'&&$.fn.jquery<='1.2.6'?document.documentElement['clientHeight']:el.height();return[h,el.width()];},setPosition:function(){var top,left,hCenter=(w[0]/2)-((this.dialog.container.height()||this.dialog.data.height())/2),vCenter=(w[1]/2)-((this.dialog.container.width()||this.dialog.data.width())/2);if(this.opts.position&&this.opts.position.constructor==Array){top=this.opts.position[0]||hCenter;left=this.opts.position[1]||vCenter;}else{top=hCenter;left=vCenter;}this.dialog.container.css({left:left,top:top});},open:function(){this.dialog.iframe&&this.dialog.iframe.show();if($.isFunction(this.opts.onOpen)){this.opts.onOpen.apply(this,[this.dialog]);}else{this.dialog.overlay.show();this.dialog.container.show();this.dialog.data.show();}this.bindEvents();},close:function(){if(!this.dialog.data){return false;}if($.isFunction(this.opts.onClose)&&!this.occb){this.occb=true;this.opts.onClose.apply(this,[this.dialog]);}else{if(this.dialog.parentNode){if(this.opts.persist){this.dialog.data.hide().appendTo(this.dialog.parentNode);}else{this.dialog.data.remove();this.dialog.orig.appendTo(this.dialog.parentNode);}}else{this.dialog.data.remove();}this.dialog.container.remove();this.dialog.overlay.remove();this.dialog.iframe&&this.dialog.iframe.remove();this.dialog={};}this.unbindEvents();}};})(jQuery);



/*
 * SimpleModal Contact Form
 * http://www.ericmmartin.com/projects/simplemodal/
 * http://code.google.com/p/simplemodal/
 *
 * Copyright (c) 2008 Eric Martin - http://ericmmartin.com
 *
 * Licensed under the MIT license:
 *   http://www.opensource.org/licenses/mit-license.php
 *
 * Revision: $Id: general.js,v 1.72 2009/07/13 10:36:19 sboyjoo Exp $
 *
 */

$(document).ready(function () {
	$('#contactForm input.contact, #contactForm a.contact').click(function (e) {
		e.preventDefault();
		
		//recupere des extra param
		
		 if (document.getElementById('extra')){
			
			extraxx = document.getElementById('extra').value;	
		 }else{
			extraxx = '';
		}

		
		//path defined with language and nv to determine which page is calling the popup and in which language
			
		path = "includes/contact/contact_" + document.getElementById('nv').value + ".php?language=" + document.getElementById('lang').value + "&nv=" + document.getElementById('nv').value + "&extra="+ extraxx;
		
		
		// load the contact form using ajax
		$.get(path, function(data){
			// create a modal dialog with the data
			$(data).modal({
				close: false,
				position: ["15%",],
				overlayId: 'contact-overlay',
				containerId: 'contact-container',
				onOpen: contact.open,
				onShow: contact.show,
				onClose: contact.close
			});
		});
	});

	// preload images
	var img = ['cancel.png', 'form_bottom.gif', 'form_top.gif', 'loading.gif', 'send.png'];
	$(img).each(function () {
		var i = new Image();
		i.src = 'img/contact/' + this;
	});
});

var contact = {
	message: null,
	open: function (dialog) {
		// add padding to the buttons in firefox/mozilla
		if ($.browser.mozilla) {
			$('#contact-container .contact-button').css({
				'padding-bottom': '2px'
			});
		}
		// input field font size
		if ($.browser.safari) {
			$('#contact-container .contact-input').css({
				'font-size': '.9em'
			});
		}

		// dynamically determine height
		var h = 280;
		
		if ($('#contact-subject').length) {
			h += 1;
		}
		if ($('#contact-cc').length) {
			h += 22;
		}
		if(document.getElementById('lang').value == '1'){
			msg_load = 'Loading...';
		}else{
			msg_load = 'Chargement en cours...';
		}

		var title = $('#contact-container .contact-title').html();
		$('#contact-container .contact-title').html(msg_load);
		dialog.overlay.fadeIn(200, function () {
			dialog.container.fadeIn(200, function () {
				dialog.data.fadeIn(200, function () {
					$('#contact-container .contact-content').animate({
						height: h
					}, function () {
						$('#contact-container .contact-title').html(title);
						$('#contact-container form').fadeIn(200, function () {
							$('#contact-container #contact-name').focus();

							$('#contact-container .contact-cc').click(function () {
								var cc = $('#contact-container #contact-cc');
								cc.is(':checked') ? cc.attr('checked', '') : cc.attr('checked', 'checked');
							});

							// fix png's for IE 6
							if ($.browser.msie && $.browser.version < 7) {
								$('#contact-container .contact-button').each(function () {
									if ($(this).css('backgroundImage').match(/^url[("']+(.*\.png)[)"']+$/i)) {
										var src = RegExp.$1;
										$(this).css({
											backgroundImage: 'none',
											filter: 'progid:DXImageTransform.Microsoft.AlphaImageLoader(src="' +  src + '", sizingMethod="crop")'
										});
									}
								});
							}
						});
					});
				});
			});
		});	
	},
	show: function (dialog) {
		 if (document.getElementById('extra')){
			extraxx = document.getElementById('extra').value;	
		}else{
			extraxx = '';
		}
		path = "includes/contact/contact_" + document.getElementById('nv').value + ".php?language=" + document.getElementById('lang').value + "&nv=" + document.getElementById('nv').value + "&extra="+ extraxx;
		if(document.getElementById('lang').value == '1'){
			msg_send = 'Sending...';
			msg_date = 'Verifiying dates\' availibility before sending...';
			msg_thanks = 'Thank you!';
		}else{
			msg_send = 'Envoi de votre email est en cours...';
			msg_date = 'Vrification de la disponibilit des dates avant l\'envoi...';
			msg_thanks = 'Merci!';
		}
		
		
		$('#contact-container .contact-send').click(function (e) {
			e.preventDefault();
			// validate form
			
			if (contact.validate()) {
				$('#contact-container .contact-message').fadeOut(function () {
					$('#contact-container .contact-message').removeClass('contact-error').empty();
				});
				$('#contact-container .contact-title').html(msg_date);
				$('#contact-container form').fadeOut(200);
				$('#contact-container .contact-content').animate({
					height: '80px'
				}, function () {
					$('#contact-container .contact-loading').fadeIn(200, function () {
						$.ajax({
							url: path,
							data: $('#contact-container form').serialize() + '&action=send',
							type: 'post',
							cache: false,
							dataType: 'html',
							complete: function (xhr) {
								$('#contact-container .contact-loading').fadeOut(200, function () {
									$('#contact-container .contact-title').html(msg_thanks);
									$('#contact-container .contact-message').html(xhr.responseText).fadeIn(200);
								});
							},
							error: contact.error
						});
					});
				});
			}
			else {
				if ($('#contact-container .contact-message:visible').length > 0) {
					var msg = $('#contact-container .contact-message div');
					msg.fadeOut(200, function () {
						msg.empty();
						contact.showError();
						msg.fadeIn(200);
					});
				}
				else {
					
					document.getElementById('contact-message').style.display = 'block';
					contact.showError();
				}
				
			}
		});
	},
	close: function (dialog) {
	if(document.getElementById('lang').value == '1'){
			msg_bye = 'Goodbye...';
	}else{
			msg_bye = 'Aurevoir...';
	}
		$('#contact-container .contact-message').fadeOut();
		$('#contact-container .contact-title').html(msg_bye);
		$('#contact-container form').fadeOut(200);
		$('#contact-container .contact-content').animate({
			height: 40
		}, function () {
			dialog.data.fadeOut(200, function () {
				dialog.container.fadeOut(200, function () {
					dialog.overlay.fadeOut(200, function () {
						$.modal.close();
					});
				});
			});
		});
	},
	error: function (xhr) {
		alert(xhr.statusText);
	},
	validate: function () {
		/***To determine if calling the popup from newsletter or other pages***/
		var newsletter = false;
		dateStart = document.getElementById('contact-DOA').value.split('/');
		dateEnd = document.getElementById('contact-DOD').value.split('/');
		
		if(document.getElementById('nv').value == 'newsletter'){
			newsletter = true;
		}else{
			newsletter = false;
		}
		if(document.getElementById('lang').value == '1'){
			msg_name = '<br> Your Name is required.';
			msg_Fname = '<br> First Name is required. ';
			msg_Lname = '<br> Last Name is required.';
			msg_email = '<br> Email is required.';
			msg_invalid_email = '<br> Email is invalid.';
			msg_country = '<br> Country of Residence is required.';
			msg_doa = '<br> Date of arrival is required.';
			msg_dod = '<br> Date of departure is required.';
			if(document.getElementById('nv').value != 'cars'){
				msg_no_adults = '<br> Number of adults is required.';
				msg_no_children = '<br> Number of children is required.';
				msg_no_babies = '<br> Number of babies is required.';
				}
			msg_error_dates = '<br> Please verify date of arrival and date of departure.' ;		
		}else{
			msg_name = '<br> Veuillez saisir votre nom.';
			msg_Fname = '<br> Veuillez saisir votre prnom. ';
			msg_Lname = '<br> Veuillez saisir votre surnom.';
			msg_email = '<br> Veuillez saisir votre adresse email.';
			msg_invalid_email = '<br> Veuillez saisir une adresse email valide.';
			msg_country = '<br> Veuillez saisir votre pays.';
			msg_doa = '<br> Veuillez saisir votre date d\'arrive.';
			msg_dod = '<br> Veuillez saisir votre date de dpart.';
			if(document.getElementById('nv').value != 'cars'){
				msg_no_adults = '<br> Veuillez saisir le nombre d\'adultes.';
				msg_no_children = '<br> Veuillez saisir le nombre d\'enfants.';
				msg_no_babies = '<br> Veuillez saisir le nombre de bbs.';
				}
			msg_error_dates = '<br> Veuillez verifier la date d\'arrive et la date de dpart.' ;	
		}
		contact.message = '';
		var numeric = '1 2 3 4 5 6 7 8 9 0';
	/***Validation for popup which is called for quotes***/
	if(!newsletter){	
			
			if (!$('#contact-container #contact-F_name').val()) {
				contact.message += msg_Fname;
			}
			
			if (!$('#contact-container #contact-L_name').val()) {
				contact.message += msg_Lname;
			}
			
			if (!$('#contact-container #contact-country').val()) {
				contact.message += msg_country;
			}
			
			if (!$('#contact-container #contact-DOA').val()) {
				contact.message += msg_doa;
			}
			
			if (!$('#contact-container #contact-DOD').val()) {
				contact.message += msg_dod;
			}
			if($('#contact-container #contact-DOD').val() && $('#contact-container #contact-DOA').val()){
				if( (dateStart[1]>dateEnd[1]) || (dateStart[2]>dateEnd[2]) ){
					contact.message += msg_error_dates;
					
			}
			//verifying when month and year of start date > that of end date
			if( (dateStart[1]>dateEnd[1]) && (dateStart[2]>dateEnd[2]) ){
				contact.message += msg_error_dates;
			}
			//verify when day of start date > end date given the month & year is the same
			if((dateStart[1]== dateEnd[1]) && (dateStart[2]== dateEnd[2])){
				if(dateStart[0]>dateEnd[0]){
					contact.message += msg_error_dates;
				}	
	}
			}	
			if(document.getElementById('nv').value != 'cars'){
					if (!$('#contact-container #contact-no_adults').val()) {
						contact.message += msg_no_adults;
					}
					
					if (!$('#contact-container #contact-no_children').val()) {
						contact.message += msg_no_children;
					}
					
					if (!$('#contact-container #contact-no_babies').val()) {
						contact.message += msg_no_babies;
					}
			}
		}else{
			if (!$('#contact-container #contact-name').val()) {
			contact.message += msg_name;
			}
		}
		var email = $('#contact-container #contact-email').val();
		if (!email) {
			contact.message += msg_email;
		}
		else {
			if (!contact.validateEmail(email)) {
				contact.message += msg_invalid_email;
			}
		}
		if(contact.message != ''){
		contact.message += '<br>&nbsp;';
		return false;
		}
		else{
			return true;
		};

	},
	validateEmail: function (email) {
		var at = email.lastIndexOf("@");

		// Make sure the at (@) sybmol exists and  
		// it is not the first or last character
		if (at < 1 || (at + 1) === email.length)
			return false;

		// Make sure there aren't multiple periods together
		if (/(\.{2,})/.test(email))
			return false;

		// Break up the local and domain portions
		var local = email.substring(0, at);
		var domain = email.substring(at + 1);

		// Check lengths
		if (local.length < 1 || local.length > 64 || domain.length < 4 || domain.length > 255)
			return false;

		// Make sure local and domain don't start with or end with a period
		if (/(^\.|\.$)/.test(local) || /(^\.|\.$)/.test(domain))
			return false;

		// Check for quoted-string addresses
		// Since almost anything is allowed in a quoted-string address,
		// we're just going to let them go through
		if (!/^"(.+)"$/.test(local)) {
			// It's a dot-string address...check for valid characters
			if (!/^[-a-zA-Z0-9!#$%*\/?|^{}`~&'+=_\.]*$/.test(local))
				return false;
		}
	
		// Make sure domain contains only valid characters and at least one period
		if (!/^[-a-zA-Z0-9\.]*$/.test(domain) || domain.indexOf(".") === -1)
			return false;	

		return true;
	},
	showError: function () {
		document.getElementById('contact-form').style.display = 'none';
		document.getElementById('btn_ok').style.display = 'block';
		$('#contact-container .contact-message')
			.html($('<div class="contact-error">').append(contact.message))
			.fadeIn(200);	
	}
	
};
//Ajout de Souraksha  - fonction pour fermer le pop up des erreurs 
function closeErrorWindow(){
	
	document.getElementById('contact-message').style.display = 'none';
	document.getElementById('btn_ok').style.display = 'none';
	document.getElementById('form').style.display = 'block';
	document.getElementById('contact-form').style.display = 'block';
	
	
}
//validation email
function validateEmail(adminForm,email) {
   var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
   var address = document.forms[adminForm].elements[email].value;
   if(reg.test(address) == false) {
      //alert('Invalid Email Address');
      document.forms[adminForm].elements[email].focus();
      return false;
   }else{
    return true;
   }
 }

//validation email quotes (without setting focus)
function validateEmailQuotes(adminForm,email) {
   var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
   var address = document.forms[adminForm].elements[email].value;
   if(reg.test(address) == false) {
      //alert('Invalid Email Address');
      //document.forms[adminForm].elements[email].focus();
      return false;
   }else{
    return true;
   }
 }


//validation existence
function checkEmpty(input){
	if(input.value==''){
 		return false;
 	}else{
 		return true;
 	}
}	

//radio buttons validation - checking if one radio button is checked
function valRadioButton(btn) {

    for (var i=0; i<btn.length; i++) {
        if (btn[i].checked) {
	        return true;
	        break;
        }
   }
   return false;
 
}


//validation des formulaires de souscription
function validateSubscribe(frm,lang){
	
	error = false;
	if(lang =='1'){
		var message = 'Please enter:';
		var msg_gender = ' - your gender';
		var msg_nom =' - your name';
		var msg_email = ' - your email address'; 
		var valid_email = ' - a valid email';
	}
	else{
		var message = 'Veuillez saisir:';
		var msg_gender = ' - votre civilit\351';
		var msg_nom =' - votre nom';
		var msg_email = ' - votre adresse email'; 
		var valid_email = ' - une adresse email valide';
	}
	if(!valRadioButton(frm.optGender)){
		message = message + "\n" + msg_gender;
		error = true;
	}
	if(!checkEmpty(frm.txtName) || frm.txtName.value == 'Nom' || frm.txtName.value == 'Name'){
		frm.txtName.focus();
		message = message + "\n" + msg_nom;
		error = true;
	}
	if(!checkEmpty(frm.txtEmail) || frm.txtEmail.value == 'Email'){
		frm.txtEmail.focus();
		message = message + "\n" + msg_email;
		error = true;
	}
	//afficher le message d'erreur seulement quand le email adresse a ete saisi et non au debut lorque le champs est vide
	if(!validateEmail('frmNews','txtEmail') && checkEmpty(frm.txtEmail) && frm.txtEmail.value != 'Email' ){
		message = message + "\n" + valid_email;	
		error = true;	
	}
	if(error == true){
		//frm.txtName.value='';
		alert(message);
		return false;
		
	}else{
		return true;
	}
	
	return false;
}
function existingSub(){
	document.getElementById('applicationForm').style.display = 'none';
	document.getElementById('message').style.display = 'block';
}

function insertName(name){
	var name;
   document.getElementById('extra').value = name;

}
/**
validSearch modifier -- brian -- on passe le lang id et l'element qu'on veux valider. 
**/
function validateSearchHeader(lang, element){
	if (lang == 1){
		errorMsg = 'Please enter a keyword';
	}else{
		errorMsg = 'Veuillez saisir un mot';
	}
	if(document.getElementById(element).value == ''){
		alert(errorMsg);
		document.getElementById(element).focus();
		return false;
	}else{
		//document.getElementById('searchFlag').value == document.getElementById(element).value ;
		this.form.submit();
	}	
}
/***Fonction pour afficher le message des dates non-disponibles pour les reservations des villas***/
function showDates(datesArray,lang){
	if(lang == 1){
		message = "The following dates are not available:";
		msg_alert = "Dates not available, please modify.";
	}else{
		message = "Les dates suivantes ne sont pas disponibles:";
		msg_alert = "Dates indisponibles, veuillez les modifier.";
	}
	for(i=0;i<datesArray.length;i++){
		message = message + "<br />" + "- "+ datesArray[i]; 
	}
	document.getElementById('contact-form').style.display = 'none';
	document.getElementById('btn_ok').style.display = 'block';
		$('#contact-container .contact-message')
			.html($('<div class="contact-error">').append(message))
			.fadeIn(200);	
		$('#contact-container .contact-title').html(msg_alert);	
}


function validateDates(form){
	
	var err_from = document.getElementById('error_from').value;
	var err_to = document.getElementById('error_to').value;
	var err_criteria = document.getElementById('error_criteria').value;
	var err_date = document.getElementById('error_date').value;
	var err_fin = document.getElementById('error_fin').value;
	var err_debut = document.getElementById('error_debut').value;
	
	var doa = document.getElementById('From').value;
	var dod = document.getElementById('To').value;
	var no_rooms = document.getElementById('no_rooms').value;
	
	if(document.getElementById('no_child')){
		var no_child = document.getElementById('no_child').value;
	}
	if(document.getElementById('no_adult')){
		var no_adult = document.getElementById('no_adult').value;
	}
	var ratings_id = document.getElementById('ratings_id').value;
	var regions_id = document.getElementById('regions_id').value;
	
	dateStart = doa.split('/');
	dateEnd = dod.split('/');
	
	error = false;
	var msg = '';
	
	
	
	if(doa == err_from && dod == err_to && no_rooms==''&& no_child==''&& no_adult==''&& ratings_id==''&& regions_id==''){
		msg = msg + err_criteria;
		error =true;
	}	
	
	if(doa != err_from &&  dod == err_to){
	    msg = msg + err_fin;
		error =true;
	}
	
	if(doa == err_from &&  dod != err_to){
	    msg = msg + err_debut;
		error =true;
	}
	
	
	if(doa != err_from &&  dod != err_to){
		if( (dateStart[1]>dateEnd[1]) || (dateStart[2]>dateEnd[2]) ){
			msg = msg + '\n'+ err_date;
			error = true;		
		}
		//verifying when month and year of start date > that of end date
		if( (dateStart[1]>dateEnd[1]) && (dateStart[2]>dateEnd[2]) ){
			msg = msg + '\n'+ err_date;
			error = true;
		}
		//verify when day of start date > end date given the month & year is the same
		if((dateStart[1]== dateEnd[1]) && (dateStart[2]== dateEnd[2])){
			if(dateStart[0]>dateEnd[0]){
				msg = msg + '\n'+ err_date;
				error = true;
			}	
		}
	
	}
	if(error == true){
		alert(msg);
		return false;
	}else{			
		form.submit();
		//return true;
	}
}

function validateQuoteForm(frm,lang){
	error = false;
	if(lang =='1'){
		var message = 'Please enter:';
		var msg_lname =' - your surname';
		var msg_fname =' - your first name';
		var msg_country = ' - your country';
		var msg_town = ' - your town';
		var msg_street = ' - your street';
		var msg_tel =' - your telephone number';
		var msg_mobile =' - your mobile number';
		var msg_email = ' - your email address'; 
		var valid_email = ' - a valid email';
		var msg_adults = ' - number of adults'; 
		var msg_teens = ' - number of teenagers'; 
		var msg_child = ' - number of chidlren'; 
		var msg_babies = ' - number of infants'; 
		var msg_arrival = ' - your arrival date';
		var msg_departure = ' - your departure date';
		var err_date = 'Please verify the dates entered';
		
	}
	else{
		var message = 'Veuillez saisir:';
		var msg_lname =' - votre surnom';
		var msg_fname =' - votre pr\351nom';
		var msg_country = ' - votre pays';
		var msg_town = ' - votre ville';
		var msg_street = ' - le nom de votre rue';
		var msg_tel =' - votre num\351ro de t\351l\351phone';
		var msg_mobile =' - votre num\351ro de portable';
		var msg_email = ' - votre adresse email'; 
		var valid_email = ' - une adresse email valide';
		var msg_adults = ' - le nombre d\'adultes'; 
		var msg_teens = ' - le nombre d\'adoslescents'; 
		var msg_child = ' - le nombre d\'enfants'; 
		var msg_babies = ' - le nombre de b\351b\351s'; 
		var msg_arrival = ' - votre date d\'arriv\351e';
		var msg_departure = ' - votre date de d\351part';
		var err_date = 'Veuillez v\351rifier les dates choisies';
	}
	
		var doa = frm.arrival_date.value;
		var dod = frm.departure_date.value;
		var	dateStart = doa.split('/');
		var dateEnd   = dod.split('/');
		
		
		if(!checkEmpty(frm.lname))
	{
		message = message + "\n" + msg_lname;	
		error = true;
	}
		if(!checkEmpty(frm.fname))
	{
		message = message + "\n" + msg_fname;	
		error = true;
	}
		if(!checkEmpty(frm.country))
	{
		message = message + "\n" + msg_country;	
		error = true;
	}
		if(!checkEmpty(frm.town))
	{
		message = message + "\n" + msg_town;	
		error = true;
	}
		if(!checkEmpty(frm.street1))
	{
		message = message + "\n" + msg_street;	
		error = true;
	}
		if(!checkEmpty(frm.tel))
	{
		message = message + "\n" + msg_tel;	
		error = true;
	}
		if(!checkEmpty(frm.mobile))
	{
		message = message + "\n" + msg_mobile;	
		error = true;
	}
		if(!checkEmpty(frm.email1))
	{
		message = message + "\n" + msg_email;	
		error = true;
	}
		if(!checkEmpty(frm.no_adult))
	{
		message = message + "\n" + msg_adults;	
		error = true;
	}
	/*	if(!checkEmpty(frm.no_teens))
	{
			//verifying first if number of adults has not been entered
			if(checkEmpty(frm.no_adult))
			{
				message = message + "\n" + msg_teens;	
				error = true;
			}
	}
		if(!checkEmpty(frm.no_child))
	{
			//verifying first if number of adults has not been entered
			if(checkEmpty(frm.no_adult))
			{
				message = message + "\n" + msg_child;	
				error = true;
			}else{
				
			}
	}
		if(!checkEmpty(frm.no_babies))
	{
				//verifying first if number of adults has not been entered
				if(checkEmpty(frm.no_adult))
				{
					message = message + "\n" + msg_babies;	
					error = true;
				}
	}*/
	if(doa == 'DD/MM/YYYY')
	{
		message = message + "\n" + msg_arrival;	
		error = true;
	}
	if(dod == 'DD/MM/YYYY')
	{
		message = message + "\n" + msg_departure;	
		error = true;
	}
	
	if( (doa != 'DD/MM/YYYY') && (dod != 'DD/MM/YYYY') ){
		if(dod == doa){
			message = message + '\n'+ err_date;
			error = true;	
		}
		if( (dateStart[1]>dateEnd[1]) || (dateStart[2]>dateEnd[2]) ){
				message = message + '\n'+ err_date;
				error = true;		
		}
		//verifying when month and year of start date > that of end date
		if( (dateStart[1]>dateEnd[1]) && (dateStart[2]>dateEnd[2]) ){
				message = message + '\n'+ err_date;
				error = true;
		}
		//verify when day of start date > end date given the month & year is the same
		if((dateStart[1]== dateEnd[1]) && (dateStart[2]== dateEnd[2])){
				if(dateStart[0]>dateEnd[0]){
					message = message + '\n'+ err_date;
					error = true;
				}	
		}
	}	
	if( (!validateEmail('quotesForm','email1') && checkEmpty(frm.email1))  || (!validateEmail('quotesForm','email2') && checkEmpty(frm.email2)) ){
		message = message + "\n" + valid_email;	
		error = true;	
	}
	if((document.getElementById('valid').value == 0)&& document.getElementById('mvCode').style.display == 'block'){
		error = true;
	}
	if(error == true){
		alert(message);
	return false;
	}else{			
		return true;
	}
}
/*---- fonction pour veririfier le mvcode saisi ----*/
function validateMVcode(code){
	//in case the error message was displayed, set it off
	document.getElementById('wrongCode').style.display = 'none';
	queryString = '?mvCode=' + code;
	file('mvCode.php'+queryString);
}

/*---- le XMLHttpRequest  ----*/
function file(fichier)
{

if(window.XMLHttpRequest) //sous FIREFOX
  xhr_object = new XMLHttpRequest();
else if(window.ActiveXObject) //sous IE
  xhr_object = new ActiveXObject("Microsoft.XMLHTTP");
else
  return(false);
  
xhr_object.open("GET", fichier, false); //acceder les valeurs par $_GET
xhr_object.send(null);



if(xhr_object.readyState == 4){
	var response = xhr_object.responseText;
	
	if(document.getElementById('valid')){
		 	document.getElementById('valid').value = response;
		 	if(xhr_object.responseText == '0')
		 	{
		 		document.getElementById('wrongCode').style.display = 'block';
		 	}
		 	
	}
	if(document.getElementById('sub_category') && !response.indexOf('cat')){
		response = response.substring(3);
		document.getElementById('sub_category').innerHTML = response;
	}
	if(document.getElementById('maxPrice') && !response.indexOf('price')){
		response = response.substring(5);
		document.getElementById('maxPrice').innerHTML = response;
	}
	if(document.getElementById('txtResultBrand') && !response.indexOf('brand')){
		response = response.substring(5);
		document.getElementById('txtResultBrand').innerHTML = response;
	}
	if(document.getElementById('txtResultModel') && !response.indexOf('model')){
		response = response.substring(5);
		document.getElementById('txtResultModel').innerHTML = response;
	}
	/*
	if(document.getElementById('maxPrice')){ //&& !response.indexOf('price')
		response = response.substring(6); //response = response.substring(5);
		document.getElementById('maxPrice').innerHTML = response;
	}
	*/
	if(document.getElementById('ratings_combo')&& !response.indexOf('cat')){
		response = response.substring(3);
		document.getElementById('ratings_combo').innerHTML = response;
		document.getElementById('ratings_combo2').innerHTML = response;
	}
}else{
 return(false);
}
}

function getXhr()
{
    
  xhr = false;
 // branch for native XMLHttpRequest object
    if(window.XMLHttpRequest && !(window.ActiveXObject)) 
	{
    	try 
		{
			xhr = new XMLHttpRequest();
        } catch(e) 
		{
			xhr = false;
      	}
    // branch for IE/Windows ActiveX version
    } 
    else if(window.ActiveXObject) 
	{
       	try 
		{
        	xhr = new ActiveXObject("Msxml2.XMLHTTP");
      	} catch(e) 
		{
        	try 
			{
          		xhr = new ActiveXObject("Microsoft.XMLHTTP");
        	} catch(e) 
			{
          		xhr = false;
        	}
		}
    }
	return xhr;
    
}

// funtion display Hide div Google Map
function change(msg) 
{


	if(msg=='show')
	{
		document.getElementById('show').style.display="block";
		document.getElementById('hide').style.display="none";
		document.getElementById('div-Map').style.display="block";
	}
	else if(msg=='hide')
	{
		document.getElementById('show').style.display="none";
		document.getElementById('hide').style.display="block";
		document.getElementById('div-Map').style.display="none";
	}
}



/***************************/
//@Author: Adrian "yEnS" Mato Gondelle
//@website: www.yensdesign.com
//@email: yensamg@gmail.com
//@license: Feel free to use it, but keep this credits please!					
/***************************/

//SETTING UP OUR POPUP
//0 means disabled; 1 means enabled;
var popupStatus = 0;

//loading popup with jQuery magic!
function loadPopup(){
	//loads popup only if it is disabled
	if(popupStatus==0){
		$("#backgroundPopup").css({
			"opacity": "0.6"
		});
		$("#backgroundPopup").fadeIn("slow");
		$("#popupContact").fadeIn("slow");
		popupStatus = 1;
		
	
	
	}
}

//disabling popup with jQuery magic!
function disablePopup(){
	//disables popup only if it is enabled
	if(popupStatus==1){
		$("#backgroundPopup").fadeOut("slow");
		$("#popupContact").fadeOut("slow");
		popupStatus = 0;
	}
}

//centering popup
function centerPopup(){
	//request data for centering
	var documentHeight;	
	if(navigator.appVersion.indexOf('MSIE 6.0') != -1)
	{
		documentHeight = document.body.clientHeight;
	}
	else
	{
		documentHeight = document.documentElement.clientHeight;
	}
	
	var windowHeight = document.documentElement.clientHeight;
	var windowWidth = document.documentElement.clientWidth;
	var popupHeight = $("#popupContact").height();
	var popupWidth = $("#popupContact").width();
	
	//centering
	$("#popupContact").css({
		//"position": "absolute",
		"top": windowHeight/2-popupHeight/2,
		"left": windowWidth/2-popupWidth/2
	});
	//only need force for IE6
	
	
	$("#backgroundPopup").css({
		"height": documentHeight
	});
	
}


//CONTROLLING EVENTS IN jQuery
$(document).ready(function(){
	
	//LOADING POPUP
	//Click the button event!
	$(".button").click(function(){
		//centering with css
		centerPopup();
		//load popup
		loadPopup();
		if(document.getElementById('my_email')){
			document.getElementById('my_email').focus();
		}	
	});
				
	//CLOSING POPUP
	//Click the x event!
	$("#popupContactClose").click(function(){
		disablePopup();
	});
	//Click out event!
	$("#backgroundPopup").click(function(){
		disablePopup();
	});
	//Press Escape event!
	$(document).keypress(function(e){
		if(e.keyCode==27 && popupStatus==1){
			disablePopup();
		}
	});

});	

//function expandMenu2(bigDivToDisplay,currentSmallDiv)
function expandMenu2(bigDivToDisplay,currentSmallDiv){
	
	
	var alreadySelectedMenu=document.getElementById('selectedmenu').value;
	var alreadyActiveMenu=document.getElementById('activesousmenu').value;
	
	if(document.getElementById('oldSelectedMenu').value!=''){
		var oldSelectedMenu=document.getElementById('oldSelectedMenu').value;
		document.getElementById(oldSelectedMenu).style.display="block";
	}
	document.getElementById('oldSelectedMenu').value=currentSmallDiv;
	document.getElementById(currentSmallDiv).style.display="none";
	
	if(alreadySelectedMenu!=""){
		document.getElementById(alreadySelectedMenu).style.display='none';
	}
		
	document.getElementById('selectedmenu').value=bigDivToDisplay;
	document.getElementById('activesousmenu').value=currentSmallDiv;
	
	document.getElementById(bigDivToDisplay).style.display='block';
}




function GetXmlHttpObject(handler)
{
   var objXMLHttp=null
   if (window.XMLHttpRequest)
   {
       objXMLHttp=new XMLHttpRequest()
   }
   else if (window.ActiveXObject)
   {
       objXMLHttp=new ActiveXObject("Microsoft.XMLHTTP")
   }
   return objXMLHttp
}

function stateChanged()
{
   if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
   {
           document.getElementById("txtResult").innerHTML= xmlHttp.responseText;
   }
   else {
           //alert(xmlHttp.status);
   }
}

// Will populate data based on input
function htmlData(url, qStr, div)
{
   if (url.length==0)
   {
       document.getElementById("txtResult").innerHTML="";
       return;
   }
   xmlHttp=GetXmlHttpObject()
   if (xmlHttp==null)
   {
       alert ("Browser does not support HTTP Request");
       return;
   }

   url=url+"?"+qStr;
   url=url+"&sid="+Math.random();
   xmlHttp.onreadystatechange=stateChanged;
   xmlHttp.open("GET",url,true) ;
   xmlHttp.send(null);
}

function stateChanged2()
{
   if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
   {
           document.getElementById("txtResultModel").innerHTML= xmlHttp.responseText;
   }
   else {
           //alert(xmlHttp.status);
   }
}

// Will populate data based on input
function htmlData2(url, qStr)
{
   if (url.length==0)
   {
       document.getElementById("txtResultModel").innerHTML="";
       return;
   }
   xmlHttp=GetXmlHttpObject()
   if (xmlHttp==null)
   {
       alert ("Browser does not support HTTP Request");
       return;
   }

   url=url+"?"+qStr;
   url=url+"&sid="+Math.random();
   xmlHttp.onreadystatechange=stateChanged2;
   xmlHttp.open("GET",url,true) ;
   xmlHttp.send(null);
}

function resetselectModel(language_id){
	var obj = document.getElementById('modelList');
	
	// remove all the <option> current in the drop down
	while (obj.firstChild) {
		obj.removeChild(obj.firstChild);
	}
	
	//add an empty option at the beginning
	var option = document.createElement('option');
	if(language_id=='1'){
		option.appendChild(document.createTextNode(' -- Please Choose -- '));
	}else{
		option.appendChild(document.createTextNode(' -- Veuiller Choisir -- '));
	}
	option.setAttribute('value', '');
	obj.appendChild(option);
}
//fonction pour faire apparaitre le combo des sous categories de services
function subCategoryNames(elementId){
	//alert(elementId);
	var cat = elementId.value;
	if(cat != 'Choose'){
		queryString = "cat="+cat;
		file('servicesSubCatNames.php?'+queryString);
	}
}

//fonction pour populer le combo des prix
function getMaxPrice(elementId){
		
	var minPrice = elementId.value;
	
	if(minPrice != 'Choose'){
		queryString = "minPrice="+minPrice;
		file('calculateMaxPrice.php?'+queryString);
	}else{
		
		var obj = document.getElementById('price_to');
		
		// remove all the <option> current in the drop down of gamme
		while (obj.firstChild) {
			obj.removeChild(obj.firstChild);
		}
		
		var option = document.createElement('option');
		var language_id=document.getElementById('language_id').value;
		if(option){
			//add an empty option at the beginning
			if(language_id=='1'){
				option.appendChild(document.createTextNode('To'));
			}else{
				option.appendChild(document.createTextNode('Jusqu\'à'));
			}
			option.setAttribute('value', 'Choose');
			obj.appendChild(option);
		}
	}
}
//fonction pour valider les combos de la recherche des options
function validateOptionSearch(frm,lang){
	//alert(frm.subCat_id.value);
	error = false;
	if(lang =='1'){
		var message = 'Please enter:';
		var category = '- a category';
		var subcategory = '- a sub category';
		var price = '- a price range';
		var parameter = '- a search parameter';
	}
	else{
		var message = 'Veuillez saisir:';
		var category = '- une cat&eacute;gorie';
		var subcategory = '- une sous cat&eacute;gorie';
		var price = '- une fourchette de prix';
		var parameter = '- un paramètre';
	}
	if(frm.category_id.value == 'Choose' && frm.subCat_id.value == 'Choose' && frm.price_from.value == 'Choose' && frm.price_to.value == 'Choose')
	{
		message = message + "\n" + parameter;	
		error = true;
		
		
	}else{
	/*if(frm.subCat_id.value == 'Choose')
	{
		message = message + "\n" + subcategory;	
		error = true;
	}*/
		if(frm.category_id.value == 'Choose' && frm.subCat_id.value == 'Choose'){
				if(frm.price_to){
					if((frm.price_from.value == 'Choose')||(frm.price_to.value == 'Choose'))
					{
						message = message + "\n" + price;	
						error = true;
					}
				}
					
		}
		else{
			if(frm.price_to){
				if((frm.price_from.value != 'Choose')&&(frm.price_to.value == 'Choose'))
				{
					message = message + "\n" + price;	
					error = true;
				}
			}
		}
	}	
	if(error == true){
		alert(message);
		return false;
		
	}else{
		return true;
		//frm.submit();
	}
	
}
//fonction pour l'affichage fiche
function changeView(tab){
	
	if(document.getElementById('tabs')){
		var ul = document.getElementById('tabs');
		var oKid = ul.firstChild;
		while (oKid){
			if (oKid.id != 'show-map'){
				oKid.className = '';
			}
			oKid = oKid.nextSibling;
	    }
	}
	document.getElementById(tab).className="active";
	
	
	switch(tab){
		case 'Overview':
			document.getElementById('facilityBlock').style.display = 'none';
			document.getElementById('mapBlock').style.display = 'none';
			document.getElementById('overviewBlock').style.display = 'block';
			document.getElementById('conditionBlock').style.display = 'none';
			document.getElementById('en').innerHTML = '<a href=" ' + img_file_path + 'index.php?nv=fiche&pTYPE=' + type + '&pID=' + pID + '&language=en&onglet=' + tab + '"><img src="' + img_file_path + 'medias/ang.gif" alt="English" /></a>';
			document.getElementById('fr').innerHTML = '<a href=" ' + img_file_path + 'index.php?nv=fiche&pTYPE=' + type + '&pID=' + pID + '&language=fr&onglet=' + tab + '"><img src="' + img_file_path + 'medias/fra.gif" alt="French" /></a>';
			
		break;
		case 'facility':
			//alert(tab);
			document.getElementById('overviewBlock').style.display = 'none';
			document.getElementById('mapBlock').style.display = 'none';
			document.getElementById('facilityBlock').style.display = 'block';
			document.getElementById('conditionBlock').style.display = 'none';
			document.getElementById('en').innerHTML = '<a href=" ' + img_file_path + 'index.php?nv=fiche&pTYPE=' + type + '&pID=' + pID + '&language=en&onglet=' + tab + '"><img src="' + img_file_path + 'medias/ang.gif" alt="English" /></a>';
			document.getElementById('fr').innerHTML = '<a href=" ' + img_file_path + 'index.php?nv=fiche&pTYPE=' + type + '&pID=' + pID + '&language=fr&onglet=' + tab + '"><img src="' + img_file_path + 'medias/fra.gif" alt="French" /></a>';
						
		break;
		case 'property':
			document.getElementById('overviewBlock').style.display = 'none';
			document.getElementById('facilityBlock').style.display = 'none';
			document.getElementById('mapBlock').style.display = 'block';
			document.getElementById('conditionBlock').style.display = 'none';
			document.getElementById('en').innerHTML = '<a href=" ' + img_file_path + 'index.php?nv=fiche&pTYPE=' + type + '&pID=' + pID + '&language=en&onglet=' + tab + '"><img src="' + img_file_path + 'medias/ang.gif" alt="English" /></a>';
			document.getElementById('fr').innerHTML = '<a href=" ' + img_file_path + 'index.php?nv=fiche&pTYPE=' + type + '&pID=' + pID + '&language=fr&onglet=' + tab + '"><img src="' + img_file_path + 'medias/fra.gif" alt="French" /></a>';
			
			break;
		case 'condition':
			document.getElementById('overviewBlock').style.display = 'none';
			document.getElementById('facilityBlock').style.display = 'none';
			document.getElementById('mapBlock').style.display = 'none';
			document.getElementById('conditionBlock').style.display = 'block';
			document.getElementById('en').innerHTML = '<a href=" ' + img_file_path + 'index.php?nv=fiche&pTYPE=' + type + '&pID=' + pID + '&language=en&onglet=' + tab + '"><img src="' + img_file_path + 'medias/ang.gif" alt="English" /></a>';
			document.getElementById('fr').innerHTML = '<a href=" ' + img_file_path + 'index.php?nv=fiche&pTYPE=' + type + '&pID=' + pID + '&language=fr&onglet=' + tab + '"><img src="' + img_file_path + 'medias/fra.gif" alt="French" /></a>';
			
			break;
	
	
		
	}
	//alert(document.getElementById('facility').style.display);
}


//fonction pour valider les combos de la recherche des options  VILLA SEARCH
function validateSearch(frm,lang){
	error = false;
	if(lang =='1'){
		var messagedefault = '- at least one combo';
		var message = 'Please enter:';
		var region = '- a region';
		var rating = '- a rating';
		var price = '- a price range';
	}
	else{
		var messagedefault = '- au moins une combo';
		var message = 'Veuillez saisir:';
		var region = '- une region';
		var rating = '- une rating';
		var price = '- une fourchette de prix';
	}

if(frm.regions_id.value == 'Region' && frm.ratings_id.value == 'Ratings' && frm.price_from.value == 'Choose'){
	message = message + "\n" + messagedefault;	
	error = true;
}else{
	if( frm.regions_id.value == 'north' || frm.regions_id.value == 'south' || frm.regions_id.value == 'east' || frm.regions_id.value == 'west' )
			{
				message = message + "\n" + region;	
				error = true;
			}
			if( frm.ratings_id.value == 'villa' || frm.ratings_id.value == 'hotel')
			{
				message = message + "\n" + rating;	
				error = true;
			}
			if(frm.price_to){
				if((frm.price_from.value!= 'Choose')&&(frm.price_to.value == 'Choose'))
				{
					message = message + "\n" + price;	
					error = true;
				}
			}
}
	
	if(error == true){
		alert(message);
		return false;
		
	}else{
		//return true;
		frm.submit();
	}
	
}

function displaysearch(type){
	var hotel = document.getElementById('hotel');
	var guesthouse = document.getElementById('guesthouse');
	var villa = document.getElementById('villa');
	
	document.getElementById("type").value=type;   
	
	
	
	if(type=='guesthouse'){
		hotel.style.display='none';
		guesthouse.style.display='block';
		villa.style.display='none';
		}else if(type=='hotel'){
			hotel.style.display='block';
			guesthouse.style.display='none';
			villa.style.display='none';
			file('construct_combo_rating.php?type=hotel');
		}else {
			hotel.style.display='none';
			guesthouse.style.display='none';
			villa.style.display='block';
			file('construct_combo_rating.php?type=villa');
			
		}

	}


/*RECHERCHE SUR HOMEPAGE LE PROPERTY TYPE*/
function validateSearchhmpage(lang){
	error = false;
	
	var  date1 = document.getElementById('date1');
	var  date2 = document.getElementById('date2');
	var  regions = document.getElementById('regions');
	var  ratings = document.getElementById('ratings');
	var  no_room = document.getElementById('no_room');
	var  no_person = document.getElementById('no_person');
	
	var frm = document.getElementById("type");
	
	var doa = date1.value;
	var dod = date2.value;
	var	dateStart = doa.split('/');
	var dateEnd   = dod.split('/');
	
	if(lang =='1'){
		var messagedefault2 = '- at least one parameter';
		var messagedefault = '- at least one type of property';
		var date = '- a valid interval of dates';
		var message = 'Please enter:';
		var region = '- a region';
		var cardinalpt = '- a specific region and not a cardinal point';
		var rating = '- a rating';
		var room = '- number of rooms';
		var person = '- number of person';
		var err_date = 'Please verify the dates entered';
			
	}
	else{
		var messagedefault2 = '- au moins un paramètre';
		var messagedefault = '- au moins un type de propriété';
		var date = '- un interval de jours valide';
		var message = 'Veuillez saisir:';
		var region = '- une region';
		var cardinalpt = '- un lieu spécifique et non un point cardinal';
		var rating = '- une rating';
		var room = '- nombre de chambre';
		var person = '- nombre de personne';
		var err_date = 'Veuillez v\351rifier les dates choisies';
	}
	
 if(frm.value==''){
	message = message + "\n" + messagedefault;	
	error = true;
 }else{
	 /* VILLA ET APPARTEMENT*/     
	if(frm.value=='villa' || frm.value=='appartement')
		{
	    	 if( (date1.value == '' && date2.value != '') ||(date1.value != '' && date2.value == ''))
				{
					message = message + "\n" + date;	
					error = true;
				}
	    	 
	    	 /*
	    	 if( date1.value == '' && date2.value == '' && regions.value == '' && ratings.value == '' && no_room.value == ''&& no_person.value == '')
				{
					message = message + "\n" + messagedefault2;	
					error = true;
				}
	    	 */
	    	 if( regions.value == 'north' || regions.value == 'south' || regions.value == 'east' || regions.value == 'west' )
				{
					message = message + "\n" + cardinalpt;	
					error = true;
				}
	    		if( (doa != 'DD/MM/YYYY') && (dod != 'DD/MM/YYYY') ){
	    			if(dod == doa && dod != '' && doa != ''){
	    				message = message + '\n'+ err_date;
	    				error = true;	
	    			}
	    			if( (dateStart[1]>dateEnd[1]) || (dateStart[2]>dateEnd[2]) ){
	    					message = message + '\n'+ err_date;
	    					error = true;		
	    			}
	    			//verifying when month and year of start date > that of end date
	    			if( (dateStart[1]>dateEnd[1]) && (dateStart[2]>dateEnd[2]) ){
	    					message = message + '\n'+ err_date;
	    					error = true;
	    			}
	    			//verify when day of start date > end date given the month & year is the same
	    			if((dateStart[1]== dateEnd[1]) && (dateStart[2]== dateEnd[2])){
	    					if(dateStart[0]>dateEnd[0]){
	    						message = message + '\n'+ err_date;
	    						error = true;
	    					}	
	    			}
	    		}
		}
	/* HOTEL*/   
	else if(frm.value=='hotel')
		{
	    	     /*
		    	 if( document.hotel.regions.value == '' && document.hotel.ratings.value == '' )
					{
						message = message + "\n" + messagedefault2;	
						error = true;
					}
		    	 */
		    	 if( regions.value == 'north' || regions.value == 'south' || regions.value == 'east' || regions.value == 'west' )
					{
						message = message + "\n" + region;	
						error = true;
					}
			}
	/* GUESTHOUSE*/   
	else if(frm.value=='guesthouse')
			{
			    	
					/*
					if( document.guesthouse.regions.value == '' && document.guesthouse.no_person.value == '' )
					{
						message = message + "\n" + messagedefault2;	
						error = true;
					}
					*/
					if( regions.value == 'north' || regions.value == 'south' || regions.value == 'east' || regions.value == 'west' )
					{
						message = message + "\n" + region;	
						error = true;
					}
			}
}
	
	if(error == true){
		alert(message);
		return false;
		
	}else{
		//return true;
		
		switch(frm.value)
		{
		case 'villa':
		case 'appartement':
			document.villa.submit();
		  break;
		case 'hotel':
			document.hotel.submit();
		  break;
		case 'guesthouse':
			document.guesthouse.submit();
		  break;
		
		}
	}
	
}
//fonction pour valider le formulaire de l'envoi a un ami
function validateEmailFriend(lang){
	
	var myEmail = document.getElementById('my_email');
	var friendEmail =  document.getElementById('friend_email');
	var friendMsg =  document.getElementById('message');
	var error = false;
	
	var sID = document.getElementById('sID');
	var optID = document.getElementById('optID');
	var type = document.getElementById('type');
	
	if(lang == '2'){
		var message = '<br> Veuillez saisir :';
		var msg_myEMail = '<br> - votre email.';
		var msg_friendEmail = '<br> - l\'email de votre ami.';
		var msg_validEmail = '<br> Votre email n\'est pas valide.';
		var msg_validFriendEmail = '<br> L\'email de votre ami n\'est pas valide.';
	}else{
		var message = '<br> Please enter :';
		var msg_myEMail = '<br> - your email.';
		var msg_friendEmail = '<br> - your friend\'s email.';
		var msg_validEmail = '<br> Your email is not valid.';
		var msg_validFriendEmail = '<br> Your friend\'s email is not valid.';
	}
	if(!checkEmpty(myEmail))
	{
		message = message + msg_myEMail;	
		error = true;
	}
	if(!checkEmpty(friendEmail))
	{
		message = message +  msg_friendEmail;	
		error = true;
	}
	
	if (!validateEmail('frm_sendFriend','my_email')) {
		if(checkEmpty(myEmail))
		{
			message = msg_validEmail;	
			error = true;
		}
	}
	if (!validateEmail('frm_sendFriend','friend_email')) {
		if(checkEmpty(friendEmail))
		{
			message = msg_validFriendEmail;	
			error = true;
		}

	}
	if(error == true){
		//alert(message);
		message = message + '<br><br> <input class="btn-submit" type="button" onclick="hideValidationErrors(\'popupContact-int\',\'validationErrors\');" value="Ok">'  
		document.getElementById('popupContact-int').style.display = 'none';
		document.getElementById('validationErrors').style.display = 'block';
		document.getElementById('validationErrors').innerHTML = message;
		return false;
		
	}else{
		if (type.value == 'services'){
			sendFiendEmail(myEmail,friendEmail,friendMsg,sID,optID,type);	
		}else if (type.value == 'fiche'){
			var pid = document.getElementById('pid');
			var tid = document.getElementById('tid');
			var ptype = document.getElementById('ptype');
			sendFiendEmailFiche(myEmail,friendEmail,friendMsg,pid,tid,ptype,type);
		}
	}
}
//fonction pour fermer la fenetre des erreurs de validation
function hideValidationErrors(divToShow, divToHide){
	document.getElementById('popupContact-int').style.display = 'block';
	document.getElementById('validationErrors').style.display = 'none';
}
//fonction pour envoyer le mail a un ami
function sendFiendEmail(myEmail,friendEmail,friendMsg,sID,optID,type){
	queryString = '?sID=' + sID.value + '&optID='+ optID.value + '&my_email=' + myEmail.value + '&friend_email='+ friendEmail.value + '&message=' + friendMsg.value + '&type=' + type.value;
	
	file('sendToAFriend.php'+queryString);
}

function pop_up(url,title){
	window.open(url,title,'width=950,height=850,screenX=0,screenY=0,menubar=no,status=no,location=no,toolbar=no,scrollbars=yes');
}

//fonction pour envoyer le mail a un ami sur page fiche
function sendFiendEmailFiche(myEmail,friendEmail,friendMsg,pid,tid,ptype,type){
	queryString = '?pid=' + pid.value + '&tid=' + tid.value + '&ptype=' + ptype.value + '&my_email=' + myEmail.value + '&friend_email='+ friendEmail.value + '&message=' + friendMsg.value + '&type=' + type.value;
	
	file('sendToAFriend.php'+queryString);
}
/******************************************************************************************************************/
/**************************************Fonctions reliees au google map*********************************************/
function initialize(lat,lng) {
    map = new GMap2(document.getElementById("map_canvas"));
    map.addControl(new GLargeMapControl());
    //map.setCenter(new GLatLng(-19.8999999, 56.8921520), 10);
    map.setCenter(new GLatLng(lat,lng),10);
    
    geocoder = new GClientGeocoder();
   }
   
     
    function addLocationToMap(response) {
      // map.clearOverlays();
    if (!response || response.Status.code != 200) {
      //alert("Sorry, we were unable to geocode that address");
    } else {
      place = response.Placemark[0];
      point = new GLatLng(place.Point.coordinates[1],
                          place.Point.coordinates[0]);

      
      placeMarker(point,js_array,index);
      index++;
      
     }
   }
   
   
   //  Adds locations to map onload
   function populateMap() {

     for(i=0;i<js_array.length;i++){
    /*	 regionName = js_array[i][0];
    	//on verifie si on a remplace les apostrophe du nom de la region auparavant 
    	if(regionName.lastIndexOf('@') != -1){
    		stringIndex = regionName.lastIndexOf('@') + 1;
    		
    		region = regionName.substring(stringIndex);
    	}else{
    		region = js_array[i][0];
    	}*/
        geocoder.getLocations(js_array[i][0]+", Mauritius", addLocationToMap);    
     }
     setTimeout('reloadContainer()', 10);
//map.checkResize();
   }
   
  
         
   // Creates a marker whose info window displays the details corresponding
   // to the given index.
   function createMarker(point,js_array,index) {
   
     var iconImage = new GIcon(baseIcon);
     iconImage.image = img_file_path + "medias/marker.png";
     
     // Set up our GMarkerOptions object
     markerOptions = { icon:iconImage };
     var marker = new GMarker(point, markerOptions);
     
     GEvent.addListener(marker, "mouseover", function() {
  
     marker.openInfoWindowHtml(js_array[index][1]);
  });   
     return marker;
   }
     function placeMarker(points,place,index){
       
       map.addOverlay(createMarker(points,place,index));       
      
     }
     function  reloadContainer () {
    	 
 		map.checkResize();
  
 	}
     function unloadMap(){
    	 if(document.getElementById('div-Map').style.display == 'block'){
    		 GUnload();
    		 index = 0;
    		 document.getElementById('div-Map').style.display == 'none';
    		 document.getElementById('div-Map').style.visibility == 'hidden';
    	 }
     }

/*****************************************************************************************************************************************/
     
// funtion display Hide pop up's div Google Map in the product page
function changeFiche(msg) 
{
 	
	if(msg=='show')
	{
 		cacheSelect();
		document.getElementById('show').style.display="block";
		document.getElementById('hide').style.display="none";
		document.getElementById('popupContact').className = "popupContact2";
		
		if (document.getElementById('envoie-ami')){
			document.getElementById('envoie-ami').style.display="none";	
			
		}
		if (document.getElementById('div-Map')){
			document.getElementById('div-Map').style.display="block";
			document.getElementById('div-Map').style.visibility="visible";
		}
	}
	else if(msg =='hide')
	{
		montreSelect();
		document.getElementById('show').style.display="none";
		document.getElementById('hide').style.display="block";
		
		if (document.getElementById('envoie-ami')){
			//document.getElementById('envoie-ami').style.display="block";
			//on ne fais pas reapparaitre le div tout de suite a cause du fade effect de jquery
		}
		if (document.getElementById('div-Map')){
			document.getElementById('div-Map').style.display="none";
			//document.getElementById('div-Map').style.visibility="hidden";
		}
	 }else if(msg=='envoie-ami'){
		 	cacheSelect();
			if (document.getElementById('envoie-ami')){
				document.getElementById('div-Map').style.display="none";
				document.getElementById('div-Map').style.visibility="hidden";
				document.getElementById('envoie-ami').style.display="block";
				document.getElementById('popupContact').className = "popupContact";
				
			}
	 }
	 
 }

//cache select

function cacheSelect(){
	theObjects = document.getElementsByTagName("select");
	for (var i = 0; i < theObjects.length; i++) {
		theObjects[i].style.visibility = "hidden";
	}
	
	//document.getElementById('my_email').focus();
}

function montreSelect(){
	theObjects = document.getElementsByTagName("select");
	for	(var i = 0; i < theObjects.length; i++) {
		theObjects[i].style.visibility = "visible";
	}
}


/*****************************************************************************************************************************************/     



function valButton(btn) {
    var cnt = -1;
    for (var i=btn.length-1; i > -1; i--) {
        if (btn[i].checked) {
        	cnt = i; 
        	i = -1;
        }
    }
    if (cnt > -1) return true;
    else return false;
}

function chk_number(t){
	var valid = "0123456789+()";
	var tt = t.value;
	for (var i=0; i < tt.length; i++) {
		temp = "" + tt.substring(i, i+1);
		if (valid.indexOf(temp) == "-1"){
			//t.focus();
			return false;	
		}
	}	
	return true;
}

function chkFieldsQuotes(frm, lang){
	var title = valButton(frm.title); //radio
	var surname = document.getElementById('surname');
	var first_name = document.getElementById('first_name');
	var country = document.getElementById('country');
	var town = document.getElementById('town');
	var street = document.getElementById('street');
	var tel = document.getElementById('tel');	
	var mobile = document.getElementById('mobile');	
	var email1 = document.getElementById('email1');
	var email2 = document.getElementById('email2');
	var selectAdults = document.getElementById('selectAdults'); //select
	var arrivalDate = document.getElementById('arrivalDate');
	var departureDate = document.getElementById('departureDate');
	var key = document.getElementById('key').value;
	var today = document.getElementById('today').value;
	var error = false;
	
	
	var doa = arrivalDate.value;
    var dod = departureDate.value;
	var dtoday = today;
	var dateStart = doa.split('/');
    var dateEnd   = dod.split('/');
	var dateToday = dtoday.split('/');
	var arrivalDate2 = new Date(dateStart[2], dateStart[0] , dateStart[1]);
    var departureDate2 = new Date(dateEnd[2], dateEnd[0], dateEnd[1]);	
	var todayDate = new Date(dateToday[2], dateToday[0], dateToday[1]);
	
	//alert(dateStart[0] +"/"+dateStart[1]+"/"+dateStart[2]);
	

   document.getElementById('error').innerHTML="";
	
	
	
	
	if(lang == '2'){
		var message = '<br> <span>Veuillez saisir :</span>';
		var msg_title = '<br> - votre civilité.';
		var msg_surname = '<br> - votre nom.';
		var msg_first_name = '<br> - votre prénom.';
		var msg_country = '<br> - votre pays.';
		var msg_town = '<br> - votre ville.';
		var msg_street = '<br> - votre rue.';
		//var msg_tel = '<br> - votre numéro de téléphone.';
		var msg_telNumber = '<br> - votre numéro de téléphone doit contenir uniquement des chiffres.';
		//var msg_mobile = '<br> - votre numéro de portable.';
		var msg_mobileNumber = '<br> - votre numéro de portable doit contenir uniquement des chiffres.';
		var msg_email1 = '<br> - votre adresse email principale.';
		var msg_validEmail1 = '<br> - votre adresse email principale n\'est pas valide.';
		//var msg_email2 = '<br> - votre adresse email secondaire.';
		var msg_validEmail2 = '<br> - votre adresse email secondaire n\'est pas valide.';
		var msg_adults = '<br> - nombre de personnes dans votre groupe.';		
		var msg_arrivalDate = '<br> - votre date d\'arrivée.';
		var msg_departureDate = '<br> - votre date de depart.';

		var msg_arrivalDateAfterToday = '<br> - votre date d\'arrivée doit être postérieure à la date du jour.';
		var msg_departureDateAfterToday = '<br> - votre date de départ doit être postérieure à la date du jour.';
		var msg_departureDateAfter = '<br> - votre date de départ doit être postérieure à la date du jour.';
		var msg_productsdepartureDateAfter = '<br> - votre date de départ doit être postérieure à la date d\'arrivée (liste produits)';
		var msg_DateFromAfterToday = '<br> - votre date d\'arrivée doit être postérieure la date du jour ou à ce jour (liste produits) ';
		var msg_DateToAfterToday = '<br> - votre date de départ doit être postérieure à la date du jour ou à ce jour (liste produits)';
		
	}else{
		var message = '<br><span> Please enter :</span>';
		var msg_title = '<br> - your title.';
		var msg_surname = '<br> - your surname.';
		var msg_first_name = '<br> - your first name.';
		var msg_country = '<br> - your country.';
		var msg_town = '<br> - your town.';
		var msg_street = '<br> - your street.';
		//var msg_tel = '<br> - your telephone number.';
		var msg_telNumber = '<br> - your telephone number should contain numbers only.';
		//var msg_mobile = '<br> - your mobile number.';
		var msg_mobileNumber = '<br> - your mobile number should contain numbers only.';
		var msg_email1 = '<br> - your primary email address.';
		var msg_validEmail1 = '<br> - your primary email address is not valid.';
		//var msg_email2 = '<br> - your secondary email address.';
		var msg_validEmail2 = '<br> - your secondary email address is not valid.';
		var msg_adults = '<br> - number of persons in your party.';
		var msg_arrivalDate = '<br> - your arrival date.';
		var msg_departureDate = '<br> - your departure date.';
		
		var msg_arrivalDateAfterToday = '<br> - your arrival date must be after the present date.';
		var msg_departureDateAfterToday = '<br> - your departure date must be after the present date.';
		var msg_departureDateAfter = '<br> - your departure date must be after your arrival date.';
		var msg_productsdepartureDateAfter = '<br> - your departure date must be after your arrival date (products list) ';
		var msg_DateFromAfterToday = '<br> - your arrival date must be the present date or after the present date (products list) ';
		var msg_DateToAfterToday = '<br> - your departure date must be the present date or after the present date (products list) ';
	}
	
	if (title == false) {
		message = message + msg_title;	
		error = true;
	}
	
	if(!checkEmpty(surname))
	{
		message = message + msg_surname;	
		error = true;
	}
	
	if(!checkEmpty(first_name))
	{
		message = message + msg_first_name;	
		error = true;
	}
	
	if(!checkEmpty(country))
	{
		message = message + msg_country;	
		error = true;
	}
	
	if(!checkEmpty(town))
	{
		message = message + msg_town;	
		error = true;
	}
	
	if(!checkEmpty(street))
	{
		message = message + msg_street;	
		error = true;
	}
	/*
	if(!checkEmpty(tel))
	{
		message = message + msg_tel;	
		error = true;
	}
	*/
	if(!chk_number(frm.tel))
	{
		if(checkEmpty(tel))
		{
			message = message + msg_telNumber;	
			error = true;
		}
	}
	/*
	if(!checkEmpty(mobile))
	{
		message = message + msg_mobile;	
		error = true;
	}
	*/
	
	if(!chk_number(frm.mobile))
	{
		if(checkEmpty(mobile))
		{
			message = message + msg_mobileNumber;	
			error = true;
		}
	}
	
	if(!checkEmpty(email1))
	{
		message = message + msg_email1;	
		error = true;
	}
	
	if (!validateEmailQuotes('frmQuote','email1')) {
		if(checkEmpty(email1))
		{
			message = message + msg_validEmail1;	
			error = true;
		}
	}
	/*	
	if(!checkEmpty(email2))
	{
		message = message + msg_email2;	
		error = true;
	}
	*/
	if (!validateEmailQuotes('frmQuote','email2')) {
		if(checkEmpty(email2))
		{
			message = message + msg_validEmail2;	
			error = true;
		}
	}
	
	if(frm.selectAdults[frm.selectAdults.selectedIndex].value == ""){
		message = message + msg_adults;	
		error = true;
    }

	
	
	
     if( (doa != 'MM/DD/YYYY') && (dod != 'MM/DD/YYYY') ){
        if(dod == doa && dod != '' && doa != ''){
           message = message + msg_departureDateAfter;
            error = true;
        }
        if( (dateStart[2] == dateEnd[2])){
            if( (dateStart[0]>dateEnd[0]) ){
                message = message + msg_departureDateAfter;
                error = true;
            }
        }
         //verifying when month and year of start date > that of end date
        if( (dateStart[2]>dateEnd[2]) ){
            message = message + msg_departureDateAfter;
            error = true;
        }
        //verifying when month and year of start date > that of end date
        if( (dateStart[0]>dateEnd[0]) && (dateStart[2]>dateEnd[2]) ){
            message = message + msg_departureDateAfter;
            error = true;
        }
        //verify when day of start date > end date given the month & year is the same
        if((dateStart[0]== dateEnd[0]) && (dateStart[2]== dateEnd[2])){
            if(dateStart[1]>dateEnd[1]){
               message = message + msg_departureDateAfter;
                error = true;
            }
        }
    }


    if( (doa != 'MM/DD/YYYY') ){

         if(doa == today && doa != ''){
           message = message + msg_arrivalDateAfterToday;
            error = true;
        }

        if( (dateToday[2] == dateStart[2])){
            if( (dateToday[0]>dateStart[0]) ){
                message = message + msg_arrivalDateAfterToday;
                error = true;
            }
        }
         //verifying when month and year of start date > that of end date
        if( (dateToday[2]>dateStart[2]) ){
            message = message + msg_arrivalDateAfterToday;
            error = true;
        }
        //verifying when month and year of start date > that of end date
        if( (dateToday[0]>dateStart[0]) && (dateToday[2]>dateStart[2]) ){
            message = message + msg_arrivalDateAfterToday;
            error = true;
        }
        //verify when day of start date > end date given the month & year is the same
        if((dateToday[0]== dateStart[0]) && (dateToday[2]== dateStart[2])){
            if(dateToday[1]>dateStart[1]){
               message = message + msg_arrivalDateAfterToday;
                error = true;
            }
        }
    }





	if(!checkEmpty(arrivalDate))
	{
		message = message + msg_arrivalDate;
		error = true;
	}

	

	if(!checkEmpty(departureDate))
	{
		message = message + msg_departureDate;
		error = true;
	}
	
	
	
	
	for(var i=0; i<=key; i++){
	
		
		var dateFrom = document.getElementById('dateFrom_'+i);
	var dateTo = document.getElementById('dateTo_'+i);
	
	var doaP = dateFrom.value;
    var dodP = dateTo.value;
	var dateStartP = doaP.split('/');
    var dateEndP   = dodP.split('/');
	
	 
	 
	 if( (doaP != 'MM/DD/YYYY') && (dodP != 'MM/DD/YYYY') ){
        if(dodP == doaP && dodP != '' && doaP != ''){
           message = message + msg_DateToAfterToday + (i+1) + '.';	
            error = true;
        }
        if( (dateStartP[2] == dateEndP[2])){
            if( (dateStartP[0]>dateEndP[0]) ){
                message = message + msg_DateToAfterToday + (i+1) + '.';	
                error = true;
            }
        }
         //verifying when month and year of start date > that of end date
        if( (dateStartP[2]>dateEndP[2]) ){
            message = message + msg_DateToAfterToday + (i+1) + '.';	
            error = true;
        }
        //verifying when month and year of start date > that of end date
        if( (dateStartP[0]>dateEndP[0]) && (dateStartP[2]>dateEndP[2]) ){
            message = message + msg_DateToAfterToday + (i+1) + '.';	
            error = true;
        }
        //verify when day of start date > end date given the month & year is the same
        if((dateStartP[0]== dateEndP[0]) && (dateStartP[2]== dateEndP[2])){
            if(dateStartP[1]>dateEndP[1]){
               message = message + msg_productsdepartureDateAfter + (i+1) + '.';	
                error = true;
            }
        }
    }


    if( (doaP != 'MM/DD/YYYY') ){

         if(doaP == today && doaP != ''){
           message = message + msg_DateFromAfterToday + (i+1) + '.';	
            error = true;
        }

        if( (dateToday[2] == dateStartP[2])){
            if( (dateToday[0]>dateStartP[0]) ){
                message = message + msg_DateFromAfterToday + (i+1) + '.';	
                error = true;
            }
        }
         //verifying when month and year of start date > that of end date
        if( (dateToday[2]>dateStartP[2]) ){
            message = message + msg_DateFromAfterToday + (i+1) + '.';	
            error = true;
        }
        //verifying when month and year of start date > that of end date
        if( (dateToday[0]>dateStartP[0]) && (dateToday[2]>dateStartP[2]) ){
            message = message + msg_DateFromAfterToday + (i+1) + '.';	
            error = true;
        }
        //verify when day of start date > end date given the month & year is the same
        if((dateToday[0]== dateStartP[0]) && (dateToday[2]== dateStartP[2])){
            if(dateToday[1]>dateStartP[1]){
               message = message + msg_DateFromAfterToday + (i+1) + '.';	
                error = true;
            }
        }
    }
		
		
	if(!checkEmpty(dateFrom))
	{
		message = message + msg_DateFromAfterToday + (i+1);
		error = true;
	}

	

	if(!checkEmpty(dateTo))
	{
		message = message + msg_DateToAfterToday + (i+1);
		error = true;
	}
	
		
		
		
		
		
		
		
		
		
		
	}
	
	if(error == true){
		//alert(message);
		document.getElementById('error').style.display = 'block';
		document.getElementById('error').innerHTML = message;
		
		var obj = document.getElementById('error');
		var pos = findPos(obj);
		window.scroll(pos[1], pos[2]);

		return false;
		
	}else{
		frm.submit();
		return true;		
	}

}

function findPos(obj) {
	var curleft = curtop = 0;
	if (obj.offsetParent) {
		do {
		curleft += obj.offsetLeft;
		curtop += obj.offsetTop;
	} while (obj = obj.offsetParent);
		var arr = new Array();
		arr[1] = curleft;
		arr[2] = curtop;
		return arr;
	}
}

//fonction pour l'affichage fiche
function showOnglet(tab){
		
	//alert(document.getElementById('facility').style.display);
	if(document.getElementById('tabs')){
		var ul = document.getElementById('tabs');
		var oKid = ul.firstChild;
		while (oKid){
			if (oKid.id != 'show-map'){
				oKid.className = '';
			}
			oKid = oKid.nextSibling;
	    }
	}
	
	document.getElementById(tab).className="active";
	
	
	switch(tab){
		case 'overview':
			document.getElementById('facilityBlock').style.display = 'none';
			document.getElementById('mapBlock').style.display = 'none';
			document.getElementById('overviewBlock').style.display = 'block';
			//modifiying link on language icons
			document.getElementById('en').innerHTML = '<a href=" ' + img_file_path + 'index.php?nv=fiche&pTYPE=' + type + '&pID=' + pID + '&language=en&onglet=' + tab + '"><img src="' + img_file_path + 'medias/ang.gif" alt="English" /></a>';
			document.getElementById('fr').innerHTML = '<a href=" ' + img_file_path + 'index.php?nv=fiche&pTYPE=' + type + '&pID=' + pID + '&language=fr&onglet=' + tab + '"><img src="' + img_file_path + 'medias/fra.gif" alt="French" /></a>';
		break;
		case 'facilities':
			//alert(tab);
			document.getElementById('overviewBlock').style.display = 'none';
			document.getElementById('mapBlock').style.display = 'none';
			document.getElementById('facilityBlock').style.display = 'block';
			//modifiying link on language icons
			document.getElementById('en').innerHTML = '<a href=" ' + img_file_path + 'index.php?nv=fiche&pTYPE=' + type + '&pID=' + pID + '&language=en&onglet=' + tab + '"><img src="' + img_file_path + 'medias/ang.gif" alt="English" /></a>';
			document.getElementById('fr').innerHTML = '<a href=" ' + img_file_path + 'index.php?nv=fiche&pTYPE=' + type + '&pID=' + pID + '&language=fr&onglet=' + tab + '"><img src="' + img_file_path + 'medias/fra.gif" alt="French" /></a>';
			//alert(document.getElementById('facility'));
		break;
		case 'map':
			document.getElementById('overviewBlock').style.display = 'none';
			document.getElementById('facilityBlock').style.display = 'none';
			document.getElementById('mapBlock').style.display = 'block';
			//modifiying link on language icons
			document.getElementById('en').innerHTML = '<a href=" ' + img_file_path + 'index.php?nv=fiche&pTYPE=' + type + '&pID=' + pID + '&language=en&onglet=' + tab + '"><img src="' + img_file_path + 'medias/ang.gif" alt="English" /></a>';
			document.getElementById('fr').innerHTML = '<a href=" ' + img_file_path + 'index.php?nv=fiche&pTYPE=' + type + '&pID=' + pID + '&language=fr&onglet=' + tab + '"><img src="' + img_file_path + 'medias/fra.gif" alt="French" /></a>';
		break;
	
	}
	//alert(document.getElementById('facility').style.display);
}
function setCurr(curr, sID){
	
	document.getElementById('en').innerHTML = '<a href=" ' + path + 'index.php?nv=fiche_services_options&sID='+ sID +'&curr='+ curr +'&action=browse&language=en"><img src="' + path + 'medias/ang.gif" alt="English" /></a>';
	document.getElementById('fr').innerHTML = '<a href=" ' + path + 'index.php?nv=fiche_services_options&sID='+ sID +'&curr='+ curr +'&action=browse&language=fr"><img src="' + path + 'medias/fra.gif" alt="French" /></a>';

}
function setUrl(curr, sID, direction){
	
	document.getElementById('en').innerHTML = '<a href=" ' + path + 'index.php?nv=fiche_services_options&sID='+ sID +'&curr='+ curr +'&'+ direction +'&action=browse&language=en"><img src="' + path + 'medias/ang.gif" alt="English" /></a>';
	document.getElementById('fr').innerHTML = '<a href=" ' + path + 'index.php?nv=fiche_services_options&sID='+ sID +'&curr='+ curr +'&'+ direction +'&action=browse&language=fr"><img src="' + path + 'medias/fra.gif" alt="French" /></a>';

}
function carBrand(catId){
	var category = catId.value;
	if(category != 'Choose'){
		queryString = "category="+category;
		file('carSpecs.php?'+queryString);
	}
}
function carModel(brandId,catId){
	var category = catId.value;
	var brand = brandId.value;
	
	
	if(category != 'Choose'){
		queryString = "category="+category;
		
	}
	if(brand != 'Choose'){
		queryString = queryString + "&brand="+brand;
		
	}
	
	file('carSpecs.php?'+queryString);
}
