

var urlRoot 	= "http://www.e-niouze.com";
var lg			= "fr";
var mem_init_obj;

/*
******************************************
Classe d'options a passer au formulaire
******************************************
*/
function OptionForm(){  
	/* variables privees */
	var additionnalFields 	= new Array();  
	var requiredFields		= new Array();
	var questions			= new Array();
	
    /* params */
	this.mode				= 'normal';
	
	
	/* mot clé "all", ou id de la question */
	this.addQuestionID 		= function(pid){
		questions.push(pid);
	}
	/* parmis ceux proposés, évidement */
	this.addRequiredField 	= function(pstr){
		requiredFields.push(pstr);
	}
	this.getRequiredField	= function(){
		return 	requiredFields;
	}
	/* parmis ceux implémentés. à vérifier dans drawForm.php */
	this.addField 			= function(pstr){
		additionnalFields.push(pstr);
	}
	
	
	/* permet d'obtenir une chaine GET pour request Php  */
	this.getParamsUrl = function(){
		var str = "";
		var i;
		for(i=0; i< questions.length; i++){
			str+= "&questions[]="+questions[i];
		}
		for(i=0; i< requiredFields.length; i++){
			str+= "&requiredFields[]="+requiredFields[i];
		}
		for(i=0; i< additionnalFields.length; i++){
			str+= "&additionnalFields[]="+additionnalFields[i];
		}
		return str;
	}
}  
 
 
 
function drawFormInscr(pcode,init_obj){	
	var pcode   	= arguments[0];
	var init_obj	= arguments[1];
	var mode;
	
	// compatibilité
	if(typeof(init_obj)=='string'){
		mode = init_obj;
	}else if(init_obj != null){
		if(init_obj.mode != null){
			mode = init_obj.mode;
		}
	}else{
		init_obj = new OptionForm();
	}
	// IMPORTANT : MEMORISE L'OBJET D'INIT :
	mem_init_obj = init_obj

	
				
	// prépare l'emplacement
	document.write('<div id="form_inscr_eniouze"></div>');
				
	// type de formulaire
	var url		=  urlRoot+'/newsletter/inscription/drawForm.php'
	var params	=  "pcode="+pcode+"&domain="+document.domain+"&lg="+lg;
	switch(mode){
		case 'badge' :
			params+=  "&formtype=badge";
		break;
		default :
			params+=  "&formtype=normal";
		break;
	}
	// on recupère les parametres additionnels
	params+= init_obj.getParamsUrl();
	
	
	getReturn(params,url,'drawReturn');
}
function sendFormNormal(pkey){
	clearFeedBack('system');
	clearFeedBack('nom');
	clearFeedBack('email');
	var req = mem_init_obj.getRequiredField();
	for(var jreq=0; jreq<req.length; jreq++){
		clearFeedBack(req[jreq]);
	}
	document.getElementById('seqnews_fields').style.visibility 	= 'hidden';
	document.getElementById('seqnews_loading').style.display 	= 'block';
	document.getElementById('seqnews_submit_normal').disabled 			= 'disabled';
	
	
	
	var url		=  urlRoot+'/newsletter/inscription/sendFormNormal.php'
	var params	=  "key="+pkey+"&lg="+lg;
	// envoi dyn
	var form = document.getElementById('seqnews_form_inscr');
	for(i=0; i< form.length; i++){
		if(form[i].value){
			if((form[i].type=='checkbox' && form[i].checked) || form[i].type!='checkbox'){
				params+= '&'+form[i].name+'='+form[i].value;
			}
		}		
	}
	// on recupère les parametres additionnels
	params+= mem_init_obj.getParamsUrl();
	
	timeout = setTimeout(function(){getReturn(params,url,'feedbackForm');},1000);

}
function sendFormBadge(pkey){
	clearFeedBack('system');
	clearFeedBack('email');
	document.getElementById('seqnews_fields').style.visibility 	= 'hidden';
	document.getElementById('seqnews_loading').style.display 	= 'block';
	document.getElementById('seqnews_submit_normal').disabled 			= 'disabled';
		

	var url		=  urlRoot+'/newsletter/inscription/sendFormBadge.php'
	var params	=  "key="+pkey+"&lg="+lg;
	// envoi dyn
	var form = document.getElementById('seqnews_form_inscr');
	for(i=0; i< form.length; i++){
		if(form[i].value){
			if((form[i].type=='checkbox' && form[i].checked) || form[i].type!='checkbox'){
				params+= '&'+form[i].name+'='+form[i].value;
			}
		}		
	}
	// on recupère les parametres additionnels
	params+= mem_init_obj.getParamsUrl();
	
	timeout = setTimeout(function(){getReturn(params,url,'feedbackForm');},1000);

}
function feedbackForm(pjson){				
	var errors = pjson.erreurs
	if(errors){
		if(errors.length>0){
			for (i=0;i<errors.length;i++){
				var txt 	= errors[i].txt;
				var code 	= errors[i].codeErreur;
				setFeedBack(code,txt);
			}
		}
	}
	
	document.getElementById('seqnews_fields').style.visibility 	= 'visible';
	document.getElementById('seqnews_loading').style.display 	= 'none';
	document.getElementById('seqnews_submit_normal').disabled 	= '';	
	
	if(pjson.success == '1'){
		setFeedBack('system',pjson.message);
	}
}
function setFeedBack(pcode,ptxt){
	document.getElementById('feed_'+pcode).innerHTML = ptxt;
	if(document.getElementById(pcode) != null){
		document.getElementById(pcode).style.backgroundColor = '#FFCCCC';
	}
}
function clearFeedBack(pcode){
	document.getElementById('feed_'+pcode).innerHTML = '';
	if(document.getElementById(pcode) != null){
		document.getElementById(pcode).style.backgroundColor = '#FFFFFF';
	}
}
function getReturn(params,url,pfunc){	
	script      = document.createElement("script"); 
	script.type = "text/javascript"; 
	script.src  = url+'?'+params+'&callback='+pfunc; 
	document.getElementsByTagName("head")[0].appendChild(script);
}
function drawReturn(pjson){
	document.getElementById('form_inscr_eniouze').innerHTML =pjson.data;
}
function setLanguage(str){
	lg = str;	
}






