//fonction de controle

// initialisation des controles et des blocages, 
// et je determine aussi tous les champs et leur controle respectif
function init () {

	//if ( document.getElementById("menu") ) initMenu();
	
	formulaire   = document.getElementById("form-devis");

	tabchamps    = new Array();
	//											[types de controle : date-, date+, ouinon, liste, tel, email]
	//														[types de blocage : date, chiffre, texte]
	//				nom du champs	requis		controle 	blocage		ligne				type coherence					message incoherence
	//conducteur principal
	tabchamps[0]   = ["datnai", 		"requis",	"date-",		"date", 		"datnai-ligne", 	"",					""];
	tabchamps[1]   = ["sitfam", 		"requis",	"liste",		"",		 		"sitfam-ligne", 	"",					""];
	tabchamps[2]   = ["typer", 			"requis",	"liste",		"",		 		"typer-ligne", 	"",					""];
	//tabchamps[3]   = ["condex", 		"requis",	"ouinon",		"",		 		"condex-ligne", 	"",					""];
	//tabchamps[4]   = ["cargri", 		"requis",	"ouinon",		"",		 		"cargri-ligne", 	"",					""];
	
	tabchamps[3]   = ["datnaiSecond", 	"facult",	"date-",		"date", 		"datnaiSecond-ligne", 	"",					""];
	tabchamps[4]   = ["typerSecond", 	"facult",	"liste",		"",		 		"typerSecond-ligne", 	"",					""];
	
	tabchamps[5]   = ["dejass", 		"requis",	"liste",		"", 			"dejass-ligne", 	"",					""];	
	tabchamps[6]   = ["cpappo", 		"requis",	"liste",		"", 			"cpappo-ligne", 	"",					""];	
	tabchamps[7]  = ["ress", 			"requis",	"liste",		"",		 		"ress-ligne", 		"",					""];
	tabchamps[8]  = ["suspen", 		"requis",	"ouinon",		"",		 		"suspen-ligne", 	"",					""];
	tabchamps[9]  = ["alcool", 		"requis",	"ouinon",		"",		 		"alcool-ligne", 	"",					""];
	tabchamps[10]  = ["susper", 		"requis",	"liste",		"",		 		"susper-ligne", 	"verif_susper",					"Le motif de l'annulation ou de la suspension de permis doit etre renseign\u00e9"];	
	
	//sinsitres
	tabchamps[11]  = ["nbsin", 			"requis",	"texte",		"chiffre", 		"nbsin-ligne", 	"",					""];
	
	tabchamps[12]  = ["datsin1", 		"requis",	"date-",		"date", 		"sin1-ligne", 	"moins_de_36_mois",					"La date du 1er sinistre d\u00e9passe les 36 mois", true];
	tabchamps[13]  = ["typsin1", 		"requis",	"liste",		"", 			"sin1-ligne", 	"",					"", true];
	tabchamps[14]  = ["lien1", 		"requis",	"liste",		"", 			"sin1-ligne", 	"",					"", true];
	
	tabchamps[15]  = ["datsin2", 		"requis",	"date-",		"date", 		"sin2-ligne", 	"moins_de_36_mois",					"La date du 2e sinistre d\u00e9passe les 36 mois", true];
	tabchamps[16]  = ["typsin2", 		"requis",	"liste",		"", 			"sin2-ligne", 	"",					"", true];
	tabchamps[17]  = ["lien2", 		"requis",	"liste",		"", 			"sin2-ligne", 	"",					"", true];

	tabchamps[18]  = ["datsin3", 		"requis",	"date-",		"date", 		"sin3-ligne", 	"moins_de_36_mois",					"La date du 3e sinistre d\u00e9passe les 36 mois", true];
	tabchamps[19]  = ["typsin3", 		"requis",	"liste",		"", 			"sin3-ligne", 	"",					"", true];
	tabchamps[20]  = ["lien3", 		"requis",	"liste",		"", 			"sin3-ligne", 	"",					"", true];
	
	tabchamps[21]  = ["datsin4", 		"requis",	"date-",		"date", 		"sin4-ligne", 	"moins_de_36_mois",					"La date du 4e sinistre d\u00e9passe les 36 mois", true];
	tabchamps[22]  = ["typsin4", 		"requis",	"liste",		"", 			"sin4-ligne", 	"",					"", true];
	tabchamps[23]  = ["lien4", 		"requis",	"liste",		"", 			"sin4-ligne", 	"",					"", true];
	
	tabchamps[24]  = ["datsin5", 		"requis",	"date-",		"date", 		"sin5-ligne", 	"moins_de_36_mois",					"La date du 5e sinistre d\u00e9passe les 36 mois", true];
	tabchamps[25]  = ["typsin5", 		"requis",	"liste",		"", 			"sin5-ligne", 	"",					"", true];
	tabchamps[26]  = ["lien5", 		"requis",	"liste",		"", 			"sin5-ligne", 	"",					"", true];
	
	tabchamps[27]  = ["datsin6", 		"requis",	"date-",		"date", 		"sin6-ligne", 	"moins_de_36_mois",					"La date du 6e sinistre d\u00e9passe les 36 mois", true];
	tabchamps[28]  = ["typsin6", 		"requis",	"liste",		"", 			"sin6-ligne", 	"",					"", true];
	tabchamps[29]  = ["lien6", 		"requis",	"liste",		"", 			"sin6-ligne", 	"",					"", true];
	
	tabchamps[30]  = ["datsin7", 		"requis",	"date-",		"date", 		"sin7-ligne", 	"moins_de_36_mois",					"La date du 7e sinistre d\u00e9passe les 36 mois", true];
	tabchamps[31]  = ["typsin7", 		"requis",	"liste",		"", 			"sin7-ligne", 	"",					"", true];
	tabchamps[32]  = ["lien7", 		"requis",	"liste",		"", 			"sin7-ligne", 	"",					"", true];
	
	tabchamps[33]  = ["datsin8", 		"requis",	"date-",		"date", 		"sin8-ligne", 	"moins_de_36_mois",					"La date du 8e sinistre d\u00e9passe les 36 mois", true];
	tabchamps[34]  = ["typsin8", 		"requis",	"liste",		"", 			"sin8-ligne", 	"",					"", true];
	tabchamps[35]  = ["lien8", 		"requis",	"liste",		"", 			"sin8-ligne", 	"",					"", true];
	
	tabchamps[36]  = ["datsin9", 		"requis",	"date-",		"date", 		"sin9-ligne", 	"moins_de_36_mois",					"La date du 9e sinistre d\u00e9passe les 36 mois", true];
	tabchamps[37]  = ["typsin9", 		"requis",	"liste",		"", 			"sin9-ligne", 	"",					"", true];
	tabchamps[38]  = ["lien9", 		"requis",	"liste",		"", 			"sin9-ligne", 	"",					"", true];

	
	//conditions conducteur principal
	

	wFORMS.helpers.addEvent(formulaire["sitfam"],'change',conducteur_secondaire);
	
	function conducteur_secondaire () { // permet d ajouter une condiction apres coup sur cjtper = O et cargri = O, qui depend de la premiere condition sur sitfam = 2 ou sitfam = 3 
		
		var conditions 		= new Array()
		conditions[0] 			= ["sitfam","M"];
		conditions[1] 			= ["sitfam","K"];
	
		creer_condition (conditions, 
					 ["datnaiSecond","typerSecond"],
					 ["datnaiSecond-ligne","typerSecond-ligne","fieldset-conducteur-secondaire"],
					 "ou");
		
	}
	
	conducteur_secondaire ();
	
	var conditions 			= new Array()
	conditions[0] 			= ["dejass","O"];
	conditions[1] 			= ["dejass","I"];
	creer_condition (conditions, 
					 ["cpappo"], 
					 ["cpappo-ligne"],
					 "ou");
	
	
	wFORMS.helpers.addEvent(formulaire["nbsin"],'change',afficher_sinsitres);
	
	//wFORMS.helpers.addEvent(formulaire["sitfam"],'change',changer_question); // affichage d'un question differente selon les cas
	//changer_question()
	
	var conditions 			= new Array()
	conditions[0] 			= ["suspen","O"];
	creer_condition (conditions, 
					 ["alcool", "susper"], 
					 ["alcool-ligne", "susper-ligne"]
					 );
	

	// fonctions d'affichage
	afficher_sinsitres ();
	
	
	wFORMS.helpers.addEvent(formulaire["typsin1"],'change',menu_conducteur);
	wFORMS.helpers.addEvent(formulaire["typsin2"],'change',menu_conducteur);
	wFORMS.helpers.addEvent(formulaire["typsin3"],'change',menu_conducteur);
	wFORMS.helpers.addEvent(formulaire["typsin4"],'change',menu_conducteur);
	wFORMS.helpers.addEvent(formulaire["typsin5"],'change',menu_conducteur);
	wFORMS.helpers.addEvent(formulaire["typsin6"],'change',menu_conducteur);
	wFORMS.helpers.addEvent(formulaire["typsin7"],'change',menu_conducteur);
	wFORMS.helpers.addEvent(formulaire["typsin8"],'change',menu_conducteur);
	wFORMS.helpers.addEvent(formulaire["typsin9"],'change',menu_conducteur);
	
	refresh_menus_conducteur ();
	
	
	
	var selectMenuTyper = function() {
			$(".ui-selectmenu-status").css("padding-left", "");
			$(".ui-selectmenu-item-icon").parent().css("padding-left", "75px");		 
	}
	
	if($.browser.msie && Number( $.browser.version ) < 7) {
		
	}else{
		
		$('select#typer').selectmenu({
			icons: [
				{find: '.iconA'},
				{find: '.iconA1'},
				{find: '.iconB'},
				{find: '.iconC'},
				{find: '.iconD'},
				{find: '.iconB1'}
			]
		}).hide(1, selectMenuTyper).bind("change", selectMenuTyper)
		
	}
	

	
	
	
}
///////////////////////////////////////////////////////////////
/////////////////////////// FONCTIONS AFFICHAGE
///////////////////////////////////////////////////////////////
function afficher_sinsitres () {
	
	var nomredesinistres = formulaire["nbsin"].value
	
	for (var x=1; x<=9; x++) { 
		
		var bool0 = nomredesinistres > 0 ? "afficher" : "masquer";	
		afficher_ou_masquer_un_champ(null,["sin0-ligne"], bool0)
		
		var bool = nomredesinistres >= x ? "afficher" : "masquer";		
		afficher_ou_masquer_un_champ(["datsin"+ x,"typsin"+ x,"lien"+ x],["sin"+ x +"-ligne"], bool)
		
	}
	refresh_menus_conducteur();
	
}

// une question change Le conducteur principal Serez-vous le seul conducteur du v\u00e9hicule ?
// Votre conjoint et vous seront les seuls \u00e0 conduire ce v\u00e9hicule ?
function changer_question () {
	var question = "Serez-vous le seul conducteur du v\u00e9hicule ?"
	
	if( formulaire["sitfam"].value == "M" || formulaire["sitfam"].value == "K" ){
			var question = "Votre conjoint et vous seront-ils les seuls <br>\u00e0 conduire ce v\u00e9hicule ?"
	}
	document.getElementById("condex-aide").innerHTML = question;
}

//activer ou desactiver le menu conducteur pour le chargement
function refresh_menus_conducteur () {
	for (var c=1; c<=9; c++) {
		menu_conducteur ("typsin"+c);
	}
}
//activer ou desactiver le menu conducteur
function menu_conducteur (objet) {
	var objet = typeof(objet) == "string" ? formulaire[ objet ] : this;
	var nom = objet.name.replace( "typsin" , "lien" )	
		
		if (objet.value == "9" || objet.value == "10" || objet.value == "11" || objet.value == "12" || objet.value == "13" ) {		
			afficher_ou_masquer_un_champ([nom],null, "afficher")
			formulaire[ nom ].options[0].text = "Choisir";
			formulaire[ nom ].disabled = false
		}else{
			afficher_ou_masquer_un_champ([nom],null, "masquer")
			formulaire[ nom ].options[0].text = "";
			formulaire[ nom ].disabled = true
		}
	
}

//Pas plus de 3 ans d'interruption
///////////////////////////////////////////////////////////////

function moins_de_36_mois (objet) {	
		
	var result = age(objet) >= 3 ? false : true;
	
	return result;	
}

//Coherence susper
///////////////////////////////////////////////////////////////

function verif_susper (objet) {	
		
	var result = ( $("input[name='suspen']:checked").val() == "O" && $("input[name='alcool']:checked").val() == "N" && $("#susper").val() == "0" ) ? false : true;
	
	return result;
}

///////////////////////////////////////////////////////////////
/////////////////////////// PREVU POUR ETRE DANS LA PAGE
///////////////////////////////////////////////////////////////



