setCustomForm = function(form) {
var formroot;
if(!(formroot=xGetElementById(form))) return;
var value = getValue(formroot);
var li=xGetElementsByTagName("LI",formroot);
for (i=0; i<li.length; i++){
	var name = li[i].innerHTML;
	var IEinput = '<input name="_'+name+'"class="radio">';
	for (j=0;j<3;j++){
		var radio = document.createElement(IE?IEinput:'input');//name and class way with IE!
		radio.onclick = function(){this.checked = true};
		if(!IE) radio.setAttribute('name', "_"+name);//don't work with IE
		if(!IE) radio.setAttribute('class', "radio");//don't work with IE
		radio.setAttribute('type',"radio");
		radio.setAttribute('value',"_"+value[j]);
		li[i].appendChild(radio);
		}	
	for (j=0;j<3;j++) xLeft(li[i].childNodes[j+1],100+j*37);
	}
var div=xGetElementsByTagName("div",formroot);
for (j=0;j<3;j++) xLeft(div[j],100+j*37);
}

function getValue(ele){
switch(ele.id){
	case 'CountryChoiceForm':
	value = new Array('no','maybe','yes');
	break;
	case 'ActivityChoiceForm':
	value = new Array('not','ok','lot');
	break;
	}
return value;
}

function testFormRedirect(varname){
var url = window.location.href;
var qparts = url.split("?");
if (qparts.length<=1) return false;
var vars = qparts[1].split("&");
var value = "";
for (i=0;i<vars.length;i++){
    var parts = vars[i].split("=");
    if (parts[0] == varname){
      value = parts[1];
	  if (!value) value = "beaucoup";
      break;
    }
  } 
value = unescape(value);// Convert escape code
value.replace(/\+/g," ");// Convert "+"s to " "s
return value;
}

function formThankYou(name){
var thanks=xGetElementById('thankyou');
var message = thanks.innerHTML;
message = message.replace(/Merci/,'Merci&nbsp;<b>'+name+'</b>');
return message;
}

function submitForm(form){
var errors="";
errors += validateText(form.prenom);
if (form.nom) errors += validateText(form.nom);
if (form.age) errors += validateNumber(form.age,2,2);
if (form.pays) errors += validateText(form.pays);
errors += validatePhone(form.tel);
errors += validateEmail(form.email);
if (form.budget) errors += validateSelection(form.budget);
if (errors) {alert('Les erreurs suivantes sont apparues:\n'+errors);return false};
var prenom = form.prenom.value;
var redirect = form.budget? xGetElementById('redirect_custom'):xGetElementById('redirect_contact');
if (!form.nom) redirect = xGetElementById('redirect_tourcontact');
var value="http://www.biwakwango.com/index.html?form="+prenom;
redirect.setAttribute('value',value);
return true;
}

function validateText(field){
var error = "";
var text=field.name;
if (field.value=="") error = '- Votre '+text+' doit être donné.\n';
	else if (field.value.length < 2) error = '- Votre '+text+' est invalide\n';
return error;	
}

function validatePhone(fld) {
var error = "";
var stripped = fld.value.replace(/[\(\)\.\-\ ]/gi,"");     
if (fld.value == "") error = "- Un téléphone doit être donné.\n";
	else if (isNaN(stripped) || stripped.length < 8) error = "- Numéro de téléphone est invalide .\n";
return error;
}

function validateNumber(field,m,M) {
var error = "";
var text=field.name;
if (field.value=="") error = '- Votre '+text+' doit être donné.\n';
	else if (isNaN(field.value) || field.value.length < m  || field.value.length > M  ) error = '- Votre '+text+' est invalide\n';
return error;	
}

function validateEmail(fld) {
var error="";
var tfld = trim(fld.value);// value of field with whitespace trimmed off
var emailFilter = /^[^@]+@[^@.]+\.[^@]*\w\w$/ ;
var illegalChars= /[\(\)\<\>\,\;\:\\\"\[\]]/ ;
if (fld.value == "") error = "- Une adresse Email doit être donnée.\n";
	else if (!emailFilter.test(tfld) || fld.value.match(illegalChars)) error = "- Adresse Email invalide.\n";
return error;
}
function trim(s){return s.replace(/^\s+|\s+$/, '')}

function validateSelection(field) {
var error = "";
if (field.selectedIndex == 0) error = "- Choisissez un budget.\n";
return error;
}
