var d=document;var t=true;var f=false;var n=null;var w=window
function _(o) {return d.getElementById(o)}
var sms = new Array();
sms['nametoshort'] = "Merci de remplir le champ NOM"
sms['cptoshort'] = "Le code postal doit comporter 5 chiffres"
sms['emailerror'] = "Le mail est invalide ou vide"
sms['adress'] = "l'adresse postale doit être renseignée"
sms['departements'] = "Sélectionnez un département puis une commune"
sms['city'] = "Sélectionnez une localité dans la liste"
sms['phone'] = "le numéro de téléphone est composé de 10 chiffres,\nsans espace ni ponctuation"

function k_control(o) {
	if (_('name').value.length == 0) {
		alert(sms['nametoshort']); _('name').focus(); return f
	}
	if (_('email').value.length == 0 || !k_cmail('email')) {
		alert(sms['emailerror']); _('email').focus(); return f
	}
	if (_('adress').value.length == 0) {
		alert(sms['adress']); _('adress').focus(); return f
	}
	if (_('departements').options.selectedIndex == 0) {
		alert(sms['departements']); _('departements').focus(); return f
	}

	if (_('phone').value.length != 10 || isNaN(_('phone').value)) {
		alert(sms['phone']); _('phone').focus(); return f
	}
	return t
}
function k_cmail(o) {
	var exp=/^[a-z][a-z0-9\._-]+@[a-z]{1}[a-z0-9\._-]+\.([a-z]{2,})$/i;
	if(!exp.test(_(o).value)) {
		return f;
	}
	return t;
}
function k_int(event) {
	var k = event.which || event.keyCode;
	var c = new Array();
	c[224] = 48; c[38] = 49; c[233] = 50; c[34] = 51; c[39] = 52; c[40] = 53; c[45] = 54; c[232] = 55; c[95] = 56; c[231] = 57;
	if(d.all) {
		if(k!=8 && k!=13 && k!=9) {
			if(k==224 || k==38 || k==233 || k==34 || k==39 || k==40 || k==45 || k==232 || k==95 || k==231) {
				 event.returnValue = f;
				 d.selection.createRange().text = String.fromCharCode(c[k]);
			} else if(k > 47 && k < 58) {
				event.returnValue = t;
			} else {
				event.returnValue = f;
			}
		}
	} else {
		if(k!=8 && k!=13 && k!=9 && k!=0) {
			if(k==224 || k==38 || k==233 || k==34 || k==39 || k==40 || k==45 || k==232 || k==95 || k==231) {
				var o = event.target;
				startString = o.value.substring( 0 , o.selectionStart );
				endString = o.value.substring( o.selectionEnd , o.textLength );
				o.value = startString.substring(0 , startString.length) + String.fromCharCode(c[k]) + endString;
				o.setSelectionRange( startString.length+1 , startString.length+1 );
				event.preventDefault();
			} else if(k > 47 && k < 58) {
				return t;
			} else {
				return f;
			}
		}
	}
}
function k_maj(event) {
	var k = event.which || event.keyCode;
	if(d.all) {
		if(k!=8 && k!=13 && k!=9 && k!=32) {
			if(event.keyCode > 96 && event.keyCode < 123) {
				 event.returnValue = f;
				 d.selection.createRange().text = String.fromCharCode(k - 32);
			} else if((k > 64 && k < 91) || k==45 || k==46) {
				event.returnValue = t;
			} else {
				event.returnValue = f;
			}
		}
	} else {
		if(k!=8 && k!=13 && k!=9 && k!=0 && k!=32) {
			if(k > 96 && k < 123) {
				var obj = event.target;
				startString = obj.value.substring( 0 , obj.selectionStart );
				endString = obj.value.substring( obj.selectionEnd , obj.textLength );
				obj.value = startString.substring(0 , startString.length) + String.fromCharCode(k - 32) + endString;
				obj.setSelectionRange( startString.length+1 , startString.length+1 );
				event.preventDefault();
			} else if((k > 64 && k < 91) || k==45 || k==46) {
				return t;
			} else {
				return f;
			}
		}
	}
}
// nettoyeur
function cleanContent(o) {
	while(_(o).childNodes.length != 0) {
		_(o).removeChild(_(o).lastChild);
	}
}

// ajax zone
function createObject() {
    if(w.XMLHttpRequest) {
		http = new XMLHttpRequest();
	} else if(w.ActiveXObject) {
		http = new ActiveXObject("Microsoft.XMLHTTP");
	}
	return http;
}

// départements/villes dynamiques
function __Get(requestUrl) {
    http = false;
	if (window.XMLHttpRequest) {
	    http = new XMLHttpRequest();
	} else if (window.ActiveXObject) {
	    http = new ActiveXObject("Microsoft.XMLHTTP");
	}
	http.open('GET', requestUrl, t);
	http.onreadystatechange = function() {
		cleanContent('villes')
		_('wait').childNodes.length == 0 ? _('wait').appendChild(d.createTextNode('recherche')) : f
		if(http.readyState == 4) {
			if(http.status == 200) {
				domx = http.responseXML
				var a = domx.getElementsByTagName('code')
				var b = domx.getElementsByTagName('label')
				var o = _('villes')
				for(var i=0; i<a.length-1; i++) {
					var code = a[i].firstChild.nodeValue;
					var label = b[i].firstChild.nodeValue;
					switch (_('orderby').options[_('orderby').options.selectedIndex].value) {
					 case 'ville' :
					 	var opt = new Option(code+ ' - ' +label , code+ '~' +label)
					 break;
					 case 'code' :
					 	var opt = new Option(label+ ' - ' +code , code+ '~' +label)
					 break;
					}
					o.options[o.options.length] = opt;
				}
				cleanContent('wait')
			}
		}
	}
	http.send(null);

}
function _outXML() {
	cleanContent('villes')
	_('wait').childNodes.length == 0 ? _('wait').appendChild(d.createTextNode('recherche')) : f
	if(http.readyState == 4) {
		if(http.status == 200) {
			domx = http.responseXML
			var a = domx.getElementsByTagName('code')
			var b = domx.getElementsByTagName('label')
			var o = _('villes')
			for(var i=0; i<a.length-1; i++) {
				var code = a[i].firstChild.nodeValue;
				var label = b[i].firstChild.nodeValue;
				switch (_('orderby').options[_('orderby').options.selectedIndex].value) {
				 case 'ville' :
				 	var opt = new Option(code+ ' - ' +label , code+ '~' +label)
				 break;
				 case 'code' :
				 	var opt = new Option(label+ ' - ' +code , code+ '~' +label)
				 break;
				}
				o.options[o.options.length] = opt;
			}
			cleanContent('wait')
		}
	}
}

