function get(id){
	return document.getElementById(id);
}


function checkContactForm(){
	var err = '';

	if( get('type_pro') && !get('type_pro').checked && get('type_par') && !get('type_par').checked){
		err+="Le type de client est obligatoire.\n";
	}

	if(!get('gender_m').checked && !get('gender_melle').checked && !get('gender_mme').checked){
		err+="La civilité est obligatoire.\n";
	}

	if(!get('name').value) err+= "Le nom est obligatoire.\n";

	if(!get('firstname').value) err+= "Le prénom est obligatoire.\n";

	if(!get('phone').value && !get('email').value) err+= "Un des deux champs parmis \"Email\" et \"Tél.\" doit être renseigné.\n";

	if(get('email').value && !isEmail(get('email').value)){
		err+= "Le champs \"Email\" n'est pas correctement renseigné.\n";
	}

	if(!get('object').selectedIndex) err+= "L'objet est obligatoire.\n";

	if(!get('message').value) err+= "Le message est obligatoire.\n";

	if(err) alert(err);
	else get('contact').submit();
}

function checkDevisForm(){
	var err = '';

	if(!get('gender_m').checked && !get('gender_melle').checked && !get('gender_mme').checked){
		err+="La civilité est obligatoire.\n";
	}

	if(!get('name').value) err+= "Le nom est obligatoire.\n";

	if(!get('firstname').value) err+= "Le prénom est obligatoire.\n";

	if(!get('compagny').value) err+= "Le nom de la société est obligatoire.\n";

	if(!get('phone').value) err+= "Le numéro de téléphone est obligatoire.\n";

	if(get('email').value && !isEmail(get('email').value)){
		err+= "Le champs \"Email\" n'est pas correctement renseigné.\n";
	}

	if(err) alert(err);
	else get('devis').submit();
}

// returns true if the string is a valid email
function isEmail(str){
	var re = /^[^\s()<>@,;:\/]+@\w[\w\.-]+\.[a-z]{2,}$/i
	return re.test(str);
}

//
//  getPageSize()
//
function getPageSize() {

	var xScroll, yScroll;

	if (window.innerHeight && window.scrollMaxY) {
		xScroll = window.innerWidth + window.scrollMaxX;
		yScroll = window.innerHeight + window.scrollMaxY;
	} else if (document.body.scrollHeight > document.body.offsetHeight){ // all but Explorer Mac
		xScroll = document.body.scrollWidth;
		yScroll = document.body.scrollHeight;
	} else { // Explorer Mac...would also work in Explorer 6 Strict, Mozilla and Safari
		xScroll = document.body.offsetWidth;
		yScroll = document.body.offsetHeight;
	}

	var windowWidth, windowHeight;

	if (self.innerHeight) {	// all except Explorer
		if(document.documentElement.clientWidth){
			windowWidth = document.documentElement.clientWidth;
		} else {
			windowWidth = self.innerWidth;
		}
		windowHeight = self.innerHeight;
	} else if (document.documentElement && document.documentElement.clientHeight) { // Explorer 6 Strict Mode
		windowWidth = document.documentElement.clientWidth;
		windowHeight = document.documentElement.clientHeight;
	} else if (document.body) { // other Explorers
		windowWidth = document.body.clientWidth;
		windowHeight = document.body.clientHeight;
	}

	// for small pages with total height less then height of the viewport
	if(yScroll < windowHeight){
		pageHeight = windowHeight;
	} else {
		pageHeight = yScroll;
	}

	// for small pages with total width less then width of the viewport
	if(xScroll < windowWidth){
		pageWidth = xScroll;
	} else {
		pageWidth = windowWidth;
	}

	return [pageWidth,pageHeight];
}

function display_map(){
	dim = getPageSize();
	get('overlay').style.width='100%';
	get('overlay').style.height=dim[1]+'px';
	get('overlay').style.visibility = 'visible';

	get('map_container').style.visibility = 'visible';
}

function hide_map(){
	get('overlay').style.width='0px';
	get('overlay').style.height='0px';
	get('overlay').style.visibility = 'hidden';
	get('map_container').style.visibility = 'hidden';
}