// JavaScript Document


// JavaScript Document
/*
function controlValue(val, typ) {
	var statut = true;
	switch(typ) {
		case "text" : 
			statut = (val.match(/([+-]?)(\d+)[,.]?(\d*)/g))
		break;
		case "integer" : 
			statut = (val.match(/([+-]?)([0-9]+)/g));
		break;
		case "mail" : 
			statut = (val.match(/^[0-9a-z]([-_.]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z]+)*\.[a-z]{2,4}$/g) );
		break;
	}
	return statut;
}


function controlForm(idForm){
	alert("controlForm");
	var $this = $(this);
	var statut = true;
	var type = "";
	$("#"+idForm + " input:text").each(function(){
		statut = true;
		if($(this).hasClass("text")) type = "text";
		if($(this).hasClass("integer")) type = "integer";		
		if($(this).hasClass("mail")) type = "mail";									
		statut = statut && controlValue( $(this).val(), type);
		if($(this).hasClass("required")) { statut = statut && ( $(this).val() != ""); }

		if(statut) {
			
			$(this).next("span.statut").removeClass("ctrlNok").addClass("ctrlOk");
		}
		else {
			$(this).next("span.statut").removeClass("ctrlOk").addClass("ctrlNok");
			$(this).css("background-color", "#FFC1C1");
		}
	});
	return statut;
}
*/
// JavaScript Document

function controlValue(val, typ) {
	var statut = true;
	if(val == "")
		return true;
	else {
	switch(typ) {
		case "text" : 
			
		break;
		case "decimal" : 
			statut = (val.match(/([+-]?)(\d+)[,.]?(\d*)/g));
		break;
		case "tel" : 
			statut = (val.match(/[.-0-9]*/g));
		break;
		case "integer" : 
			statut = (val.match(/([+-]?)([0-9]+)/g));
		break;
		case "mail" : 
			statut = (val.match(/^[0-9a-z]([-_.]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z]+)*\.[a-z]{2,4}$/g) );
		break;
	}
	return statut;
	}
}

function typeControle(id) {
	var $obj = $("#" + id);
	if($obj.hasClass("text")) type = "text";
	else if($obj.hasClass("integer")) type = "integer";		
	else if($obj.hasClass("mail")) type = "mail";		
	else if($obj.hasClass("tel")) type = "tel";
	else if($obj.hasClass("decimal")) type = "decimal";
	else  type = "default";
	return type;
}




function formToParam(idForm) {
	var tblParam = new Array();
	var iParam = 0;
	$("#"+idForm + " input:text").each(function(){
		tblParam[iParam++] = $(this).attr("id") + "=" + $(this).val();									
	});
        $("#"+idForm + " input:hidden").each(function(){
		tblParam[iParam++] = $(this).attr("id") + "=" + $(this).val();
	});
	$("#"+idForm + " input:checkbox").each(function(){
		tblParam[iParam++] = $(this).attr("id") + "=" + ($(this).attr("checked") ? "1" : "0");									
	});	
	var arrayNames = new Array();
	$("#"+idForm + " input:radio").each(function(){
		arrayNames[ $(this).attr("name") ] = $(this).attr("name");
	});	
	for(var key in arrayNames) {
		tblParam[iParam++] =   key + "=" +  $('input[type=radio][name='+key+']:checked').attr('value');
	}
	
	$("#"+idForm + " select").each(function(){
		tblParam[iParam++] = $(this).attr("id") + "=" + $(this).val();										
	});
	return tblParam.join("&");
}
/*
function controlForm(idForm){
	
	var generalStatut = true;
	var type = "";
	$("#"+idForm + " input:text").each(function(){
		var statut = true;
		type = typeControle( $(this).attr("id") );
		statut = statut && controlValue( $(this).val(), type);
		if($(this).hasClass("required")) { statut = statut && ( $(this).val() != ""); }
		var $objSpan = $(this).next("span.statut");
		if(statut) {
			$objSpan.removeClass("ctrlNok");
			if($(this).hasClass("required")) $objSpan.addClass("ctrlOk");
			$(this).css("border-color", "#000");
		}
		else {
			$objSpan.removeClass("ctrlOk").addClass("ctrlNok");
			$(this).css("border-color", "#F60");
		}
		generalStatut = generalStatut && statut;
	});
	
	$("#"+idForm + " textarea").each(function(){
		var statut = true;
		type = typeControle( $(this).attr("id") );								
		statut = statut && controlValue( $(this).val(), type);
		if($(this).hasClass("required")) { statut = statut && ( $(this).val() != ""); }
		var $objSpan = $(this).parent("div").prev("div").find("span.statut");
		if(statut) {
			
			$objSpan.removeClass("ctrlNok");
			if($(this).hasClass("required")) $objSpan.addClass("ctrlOk");
			$(this).css("border-color", "#000");
		}
		else {
			$objSpan.removeClass("ctrlOk").addClass("ctrlNok");
			// $(this).css("background-color", "#FFC1C1");
			$(this).css("border-color", "#F60");
		}
		generalStatut = generalStatut && statut;
	});
	return generalStatut;
}*/
