// JavaScript Document
function flexitform_verif(form){
	Form = $(document.body).getElement('form[name='+form.get('name')+']');

	// on cree un div au dessus du formulaire
	var el = new Element("div", {
	   'id' : form.get('name')+"_msg",
		'styles':{
			'width': Form.getElement('table').getSize().x
		}
	}).inject(Form,'before');
	
	new Request.HTML({
		method: 'post',
		url: '/globalflexit/backoffice/modules/formulaire/front/verif_formulaire.php',
		data : form,
		onRequest: function(){
			$(form.name+"_msg").set('html','chargement');
		},
		update: $(form.name+"_msg")
	}).send();
}

function flexitform_erreur(nom_formulaire,tab_des_champ,tab_des_erreur){
	Form = $(document.body).getElement('form[name='+nom_formulaire+']');

	tab_des_erreurF = new Array();
	tab_des_erreurV = new Array();
	for (var i=0; i < tab_des_champ.length; ++i){
		champ = tab_des_champ[i];
		tab_des_erreurF[champ] = 1;
		tab_des_erreurV[champ] = tab_des_erreur[i];
	}
	
	Form.getElements('input,select,textarea').each(
		function (elem){
			if(elem.get('name')==null)return;
//			alert(elem.get('name')+" - "+tab_des_erreurF[elem.get('name')]+" - "+tab_des_erreurV[elem.get('name')]);
//			if(!tab_des_erreurF[elem.get('name')]  && !tab_des_erreurV[elem.get('name')])return;
			   
			// on supprime les classes
			var parent;
			elem.removeClass('ffError');
			parent = elem.getParent("span.ffFieldParent");
			
			if(parent && parent.hasClass('flexitFormError'))parent.removeClass('flexitFormError');
		
			// verification si le champs est en erreur ou pas
			if(tab_des_erreurF[elem.get('name')]==1){
				//alert(elem.get('name'));
				elem.addClass('ffError');
//				if(elem.hasClass("ffCalendar"))alert("t'es trop fort");
				if(parent){
					//if(elem.hasClass("ffCalendar"))alert(elem.get('class'));
					parent.addClass('flexitFormError');
					//if(elem.hasClass("ffCalendar"))alert(parent.get('class'));
				}
			}	
		}
	);	
}

function flexitform_destroy(nom_formulaire){
	Form = $(document.body).getElement('form[name='+nom_formulaire+']');
	
	var morph = new Fx.Morph(Form,{duration: 'long'}); 
	morph.start({
		'opacity': 0
	}); 
}

function flexitform_roll_item(elem,parent,etat){
	flexitFormFields = elem.getParent(parent).getElements('.flexitpng');

	url = strstr(elem.getElements('.flexitpng').get('src'),'couleur=',true)+"couleur=";
	
	if(etat=="on"){
		note = elem.get('rel');
	} else if(etat=="out"){
		note = elem.getParent(parent).getElement('input').get('value');
	}
	note = eval(note);

	obj = JSON.decode(elem.getElement('.flexitpng').get('rel'),false);
	for(j = 0; j < flexitFormFields.length; j++){
		if(eval(flexitFormFields[j].getParent('a').get('rel'))<=note){
			if(flexitFormFields[j].get('tag')=="span"){
				sty = flexitFormFields[j].getStyle('filter');
				flexitFormFields[j].setStyle('filter',str_replace(obj.off,obj.on,sty));
			} else {
				flexitFormFields[j].set('src',url+obj.on);
			}
		} else {
			if(flexitFormFields[j].get('tag')=="span"){
				sty = flexitFormFields[j].getStyle('filter');
				flexitFormFields[j].setStyle('filter',str_replace(obj.on,obj.off,sty));
			} else {
				flexitFormFields[j].set('src',url+obj.off);
			}
		}
	}	
}