//--------------------------------------------------------------------
/*
PURPOSE 		:	- send the ajax request on the login check
CALLER			:	The subscribe page onload;
*/
function build_subscribe_vars(){
	// here we build a global var to make impossible the submit if the login/email already in base.
	_LOGIN_SINGLE = true;
	_EMAIL_SINGLE = true;
	_PASS_CHANGED = false;
	
	_EMAIL_FOUND_IN_DB = true;
	
}
// We launch this fucntion at load
build_subscribe_vars();


//--------------------------------------------------------------------
/* 
PURPOSE		:	check the captha validation
CALLER		:	the form submit
VAR				:	form_id:String
*/
function form_verif(form_id, action){
	
	form = document.getElementById(form_id);
	
	//debug("form_verif");
	var keAlerte = "";
	
	// first the login check 
	if (_LOGIN_SINGLE == false ) keAlerte+="\n"+_LANG_vplogin_login_not_availiable+"\n";
	if (_EMAIL_SINGLE == false ) keAlerte+="\n"+_LANG_vplogin_email_not_availiable+"\n";
	
	
	// then the captcha (only for ADD mode)
	if (action == "ADD"){
		// 110307 : Following line commented because of a captcha issue
		//if (form.captcha.value == "" || form.captcha.value == " ") keAlerte+="\n"+_LANG_captcha_note+"\n";
	}
	
	if (keAlerte!=""){
		alert(keAlerte);
		return false;
	}else{
		var endfunc;
	
		if (action == "MOD"){
			form_verif2_MOD(); 
		}else{  
		
		// line added 110307 because of a captcha error
			form_verif2_ADD(); 
		
		/*
		// commented 110307 because of a captcha error
		// We check the captcha only for ADD mode
			ajax_send_form(	"content_result_hidden",
										"lib/captcha/captcha_verif.php",
										"captcha_code="+form.captcha.value+"&form_id="+form_id+"&form_func=form_verif2_ADD",
										""
										);
			*/
			
		}
	}
}

function form_verif2_ADD(){
	form_user('ADD');
}
function form_verif2_MOD(){
	
	form_user('MOD');
}
//--------------------------------------------------------------------
/*
form_pages()
PURPOSE 		:	- verifies the fields
							- launch the form2php function
CALLER			:	the "choose a picture" button
*/
function form_user(action){
	
	var form_id = 'form_user';

	var form = document.getElementById(form_id);
	
	var keAlerte = "";
	
	if (form.accept_reglement.checked == false) { keAlerte+="\n"+_LANG_vplogin_accept_rules+"\n";}
	
	//if (trim(form.first_name.value) == "") keAlerte+="\n"+_LANG_vplogin_#Veuillez entrer votre prénom+"\n";
	//if (trim(form.last_name.value) == "") keAlerte+="\n"+_LANG_vplogin_#Veuillez entrer votre nom+"\n";
	
	if (trim(form.login.value) == "") keAlerte+="\n"+_LANG_vplogin_plz_fill_login+"\n";
	if (form.gender.value == 0) { keAlerte+="\n"+_LANG_vplogin_plz_fill_sex+"\n";}
	//if (form.age.value == 0) { keAlerte+="\n"+_LANG_vplogin_plz_fill_age+"\n";}
	
	if (form.birth_day.value == "") { keAlerte+="\n"+_LANG_vplogin_plz_fill_birth_day+"\n";}
	if (form.birth_month.value == "") { keAlerte+="\n"+_LANG_vplogin_plz_fill_birth_day+"\n";}
	if (form.birth_year.value == "") { keAlerte+="\n"+_LANG_vplogin_plz_fill_birth_day+"\n";}
	
	/* 110418 / vp : no more email confirmation
	if ( form.email.value != form.emailconfirm.value ){ //
				keAlerte += "\n"+_LANG_vplogin_email_confirmation_not_equal+"\n";
			}
	*/
	if (trim(form.zip.value) == "") keAlerte+="\n"+_LANG_vplogin_plz_fill_zip+"\n";
	
	if (action == "MOD"){
		if (_PASS_CHANGED){
			if (trim(form.pass.value) == ""){
				keAlerte+="\n"+_LANG_vplogin_plz_fill_pass+"\n";
			}else if ( form.pass.value != form.passconfirm.value ){ //
				keAlerte += "\n"+_LANG_vplogin_pass_confirmation_not_equal+"\n";
			}
		}
	}else{
		if (trim(form.pass.value) == "") keAlerte+="\n"+_LANG_vplogin_plz_fill_pass+"\n";
	}
	
	
	if (trim(form.email.value) == ""){
		keAlerte+="\n"+_LANG_plz_fill_email+"\n";
	}else{
		if (!verif_mail(form.email.value)) keAlerte+="\n"+_LANG_email_invalid+"\n";
	}
	
	//-----------------------------

	if (keAlerte!=""){
		alert(keAlerte);
		return false;
	}else{
		form.submit();
		/*
		wait_ajax();
		
		form2php(form_id, 
							"ajax", 
							"content_result_hidden",
							"plugins/vp_login/php_scripts/07_subscribe_action.php?action="+action,
							""); //
		*/
	}
}

//--------------------------------------------------------------------
/*
PURPOSE 		:	- 
CALLER			:	plugins/vp_login/php_scripts/07_subscribe_action.php if action = ADD
*/
function go_to_wait_mail(error){
	var get;
	if (error == "ERROR") get = "&error=1"; else get = "";
	go2page('index.php?page_id=58'+get);
}

function go_to_subscribe_end(error){
	var get;
	if (error == "ERROR") get = "&error=1"; else get = "";
	go2page('index.php?page_id=59'+get);
}
//--------------------------------------------------------------------
/*
PURPOSE 		:	- 
CALLER			:	plugins/vp_login/php_scripts/07_subscribe_action.php if action = MOD
*/
function go_to_user_mod_end(){
	go2page('07_10_user_mod_end.php');
}


function test_form(form_id){
	var form = document.getElementById(form_id);
	form.first_name.value = "admin";
	form.last_name.value = "Henry";
	form.login.value ="admin";
	form.pass.value = "123456";
	form.passconfirm.value = "123456";
	form.email.value = "lsmpascal@gmail.com";
	form.gender.selectedIndex = 1;
	form.age.selectedIndex = 4;
	form.zip.value = "13100";
	form.captcha.value = "ZZZZZZ";
	
}


//--------------------------------------------------------------------
/*
PURPOSE 		:	- send the ajax request on the login check
CALLER			:	the login textfield, onblur
*/
function f_check_login(tf){ 

	var login = trim(tf.value);
	
	// We forbid some chars
	var a_bad_chars =new Array("&",";",",","\"","\'","<",">");
	for (x in a_bad_chars){
		var reg = new RegExp("("+a_bad_chars[x]+")", "g");
		login = login.replace(reg,'');
		tf.value = login;
	}
	
	if (login == ""){
		alert_textfield(tf);
		var msg_nook = _LANG_vplogin_plz_fill_login;
		var div_result = document.getElementById('login_result');
		display_result(div_result, msg_nook,'alert'); 
	}else{
		
		
		ajax_send_form(	"content_result_hidden",
											"plugins/vp_login/php_scripts/07_login_check.php",
											"login="+login,
											""
											);
	
	}
}
//--------------------------------------------------------------------
/*
PURPOSE 		:	
CALLER			:	the script 'php_script/07_login_check.php'
*/
function f_double_login(result){

	var tf = document.getElementById('form_user').login;
	if( trim(tf.value) == "") return;
	var div_result = document.getElementById('login_result');
	var msg_ok = _LANG_vplogin_login_ok;
	var msg_nook = _LANG_vplogin_login_not_availiable;
	if (result > 0) result = "alert";
	if (result == 'alert'){ 
		_LOGIN_SINGLE = false;
		alert_textfield(tf);
		display_result(div_result, msg_nook,'alert'); 
	}else{ 
		_LOGIN_SINGLE = true;
		good_textfield(tf); 
		display_result(div_result, msg_ok,'good'); 
	};
}

//--------------------------------------------------------------------
/*
PURPOSE 		: 
CALLER			:	passconfirm onblur
*/
function f_display_pass_rules(){
	var div_result = document.getElementById('pass_result');
	var msg = _LANG_vplogin_pass_char_limits;
	display_result(div_result, msg,'norm'); 
}
//--------------------------------------------------------------------
/*
PURPOSE 		: 
CALLER			:	pass onblur
*/
function f_check_pass(){
	// The pass has been modified : (used for MOD process
	_PASS_CHANGED = true;
	var result;
	var tf = document.getElementById('form_user').pass;
	if( trim(tf.value) == "") return;
	var div_result = document.getElementById('pass_result');
	var msg_ok = "";
	var msg_nook = _LANG_vplogin_pass_too_short;
	if (trim(tf.value).length < 6) result = 'alert';
	if (result == 'alert'){ 
		alert_textfield(tf);
		display_result(div_result, msg_nook,'alert');
		document.getElementById('form_user').passconfirm.disabled=true;
	}else{ 
		good_textfield(tf); 
		display_result(div_result, msg_ok,'good');
		document.getElementById('form_user').passconfirm.disabled=false;
	};
	// if we change the pass, the passconfirm has to be reset
	var tf_passconfirm = document.getElementById('form_user').passconfirm;
	tf_passconfirm.value = "";
	alert_textfield(tf_passconfirm);
}
//--------------------------------------------------------------------
/*
PURPOSE 		: 
CALLER			:	passconfirm onblur
*/
function f_check_passconfirm(){
	var result;
	var tf1 = document.getElementById('form_user').pass;
	var tf2 = document.getElementById('form_user').passconfirm;
	if (tf1.value == tf2.value) { result = "ok"; }else{ result = "alert"; }
	
	if( trim(tf2.value) == "" || trim(tf1.value).length < 6) return;
	var div_result = document.getElementById('passconfirm_result');
	var msg_ok = "";
	var msg_nook = _LANG_vplogin_pass_confirmation_not_equal;
	
	if (result == 'alert'){ 
		alert_textfield(tf2);
		display_result(div_result, msg_nook,'alert'); 
	}else{ 
		good_textfield(tf2);
		display_result(div_result, msg_ok,'good'); 
		
		// 110418 / vp : we display the next bloc
		document.getElementById("bloc_you").style.display = "block";
	};
}

//--------------------------------------------------------------------
/*
PURPOSE 		:	
CALLER			:	mail onblur
*/
function f_check_mail_validity(){
	var result;
	var tf = document.getElementById('form_user').email;
	if( trim(tf.value) == "") return;
	var div_result = document.getElementById('email_result');
	var msg_ok = "";
	var msg_nook = _LANG_email_invalid;
	if (!verif_mail(tf.value)) result = 'alert';
	if (result == 'alert'){ 
		alert_textfield(tf);
		display_result(div_result, msg_nook,'alert');
		return false;
	}else{ 
		good_textfield(tf); 
		display_result(div_result, msg_ok,'good'); 
		return true;
	};
}
//--------------------------------------------------------------------
/*
PURPOSE 		:	- send the ajax request on the login check
CALLER			:	the email textfield, onblur
*/
function f_check_email(tf){ 
	var email = trim(tf.value);
	
	if (email == ""){
		alert_textfield(tf);
		var msg_nook = _LANG_vplogin_plz_fill_email;
		var div_result = document.getElementById('email_result');
		display_result(div_result, msg_nook,'alert'); 
	}else{
	
		if (f_check_mail_validity()){
			ajax_send_form(	"content_result_hidden",
												"plugins/vp_login/php_scripts/07_email_check.php",
												"email="+email,
												""
												);
		}
	}
	
}

//--------------------------------------------------------------------
/*
PURPOSE 		: - check the email confiramtion
CALLER			:	emailconfirm onblur
*/
function f_check_emailconfirm(){
	var result;
	var tf1 = document.getElementById('form_user').email;
	var tf2 = document.getElementById('form_user').emailconfirm;
	if (tf1.value == tf2.value) { result = "ok"; }else{ result = "alert"; }
	
	var div_result = document.getElementById('emailconfirm_result');
	var msg_ok = "";
	var msg_nook = _LANG_vplogin_email_confirmation_not_equal;
	
	if (result == 'alert'){ 
		alert_textfield(tf2);
		display_result(div_result, msg_nook,'alert'); 
	}else{ 
		good_textfield(tf2);
		display_result(div_result, msg_ok,'good'); 
	};
}


//--------------------------------------------------------------------
/*
PURPOSE 		:	
CALLER			:	the script 'php_script/07_email_check.php'
*/
function f_double_email(result){

	var tf = document.getElementById('form_user').email;
	if( trim(tf.value) == "") return;
	var div_result = document.getElementById('email_result');
	var msg_ok = "e-mail OK";
	var msg_nook = _LANG_vplogin_email_not_availiable;
	if (result > 0) result = "alert";
	if (result == 'alert'){ 
		_EMAIL_SINGLE = false;
		alert_textfield(tf);
		display_result(div_result, msg_nook,'alert'); 
	}else{ 
		_EMAIL_SINGLE = true;
		good_textfield(tf); 
		display_result(div_result, msg_ok,'good'); 
	};
}


//--------------------------------------------------------------------
/*
PURPOSE 		:	
CALLER			:	some field onblur
*/
function f_check_tf_empty(tf){
	var result;
	if (trim(tf.value) == "") var result = 'alert';
	if (result == 'alert'){ 
		alert_textfield(tf);
	}else{ 
		good_textfield(tf); 
	}
}

//--------------------------------------------------------------------
/*
PURPOSE 		:	- send the ajax request on the login check
CALLER			:	the login textfield, onblur
*/
function f_check_captcha(){ 
	var result;
	var tf = document.getElementById('form_user').captcha;
	ajax_send_form(	"content_result_hidden",
										"plugins/vp_login/php_scripts/07_captcha_check.php",
										"captcha="+tf.value,
										""
										);
}
//--------------------------------------------------------------------
/*
PURPOSE 		:	- change the style of the captcha code tf according to the var result.
CALLER			:	plugins/vp_login/php_scripts/07_captcha_check.php
*/
function f_check_captcha_result(result){
	var tf = document.getElementById('form_user').captcha;
	
	if (result) {good_textfield(tf); }else{ alert_textfield(tf) ;} 
	
}

//--------------------------------------------------------------------
/*
PURPOSE 		:	display an alert msg and 
CALLER			: plugins/vp_login/php_scripts/07_subscribe_action.php
*/
function f_login_no_good(){
	var tf = document.getElementById('form_user').login;
	alert_textfield(tf);
	alert(_LANG_vplogin_login_not_availiable);
}


//--------------------------------------------------------------------
/*
PURPOSE 		:	 
CALLER			:	
*/
function alert_textfield(tf){
	tf.style.borderColor = "#990000";
	tf.style.background = "#ffCCCC";
	tf.style.color = "#990000";
}
function good_textfield(tf){
	tf.style.borderColor = "#009900";
	tf.style.background = "#CCFFCC";
	tf.style.color = "#009900";
}

function display_result(div_result, msg, result){
	var result;
	div_result.innerHTML = msg;
	var col;
	if (result == "alert") {
		col = "#993333";
	}else if (result == "good"){
		col = "#aaa";
	}
	div_result.style.color = col;
	div_result.style.display = "block";
}


//--------------------------------------------------------------------
/*

FORM FORGOT

*/
//--------------------------------------------------------------------

//--------------------------------------------------------------------
/* 
PURPOSE		:	check the captha validation
CALLER		:	the form submit
VAR				:	form_id:String
*/
function form_forgot_verif(form_id){
	
	form = document.getElementById(form_id);
	//debug("form_verif");
	var keAlerte = "";
	// first the login check 
	if (_EMAIL_FOUND_IN_DB == false ) keAlerte+="\n"+_LANG_vplogin_email_not_found_in_base+"\n";
	if (form.captcha.value == "" || form.captcha.value == " ") keAlerte+="\n"+_LANG_captcha_note+"\n";
	if (keAlerte!=""){
		alert(keAlerte);
		return false;
	}else{
		
		
		ajax_send_form(	"content_result_hidden",
										"lib/captcha/captcha_verif.php",
										"captcha_code="+form.captcha.value+"&form_id="+form_id+"&form_func=form_forgot_verif2",
										""//"reload_page()"
										);
		/**/
		return false; // because we dont want the form to submit.
	}
	
	
}

function form_forgot_verif2(){
	form_forgot();
}
//--------------------------------------------------------------------
/*
form_pages()
PURPOSE 		:	- verifies the fields
							- launch the form2php function
CALLER			:	form_forgot_verif2()
*/
function form_forgot(){

	var form_id = 'form_user';

	var form = document.getElementById(form_id);
	form.action="plugins/vp_login/php_scripts/07_forgot_action.php";
	
	var keAlerte = "";
	
	if (trim(form.email.value) == ""){
		keAlerte+="\n"+_LANG_vplogin_plz_fill_email+"\n";
	}else{
		if (!verif_mail(form.email.value)) keAlerte+="\n"+_LANG_email_invalid+"\n";
	}
	//-----------------------------
	if (keAlerte!=""){
		alert(keAlerte);
		return false;
	}else{
		
		wait_ajax();
		form.submit();
		
	}
}

//--------------------------------------------------------------------
/*
PURPOSE 		:	- send the ajax request on the login check
CALLER			:	forgot form : the email textfield
*/
function f_check_email_exist(tf){ 
	var email = trim(tf.value);
	
	if (email == ""){
		alert_textfield(tf);
		var msg_nook = "L'e-mail doit être rempli.";
		var div_result = document.getElementById('email_result');
		display_result(div_result, msg_nook,'alert'); 
	}else{
	
		if (f_check_mail_validity()){
			ajax_send_form(	"content_result_hidden",
												"plugins/vp_login/php_scripts/07_email_check_exist.php",
												"email="+email,
												""
												);
		}
	}
	
}
//--------------------------------------------------------------------
/*
PURPOSE 		:	If the email exists in db we display good, else alert. 
CALLER			:	the script 'php_script/07_email_check_exist.php'
*/
function f_email_exist(result){

	var tf = document.getElementById('form_user').email;
	if( trim(tf.value) == "") return;
	var div_result = document.getElementById('email_result');
	var msg_ok = _LANG_vplogin_email_ok;
	var msg_nook = _LANG_vplogin_email_not_found_in_base;
	if (result > 0) result = "alert";
	if (result == 'alert'){ 
		_EMAIL_FOUND_IN_DB = false;
		alert_textfield(tf);
		display_result(div_result, msg_nook,'alert'); 
	}else{ 
		_EMAIL_FOUND_IN_DB = true;
		good_textfield(tf); 
		display_result(div_result, msg_ok,'good'); 
	};
}



function display_bloc_email(){
	// 110418 / vp : we display the next bloc
		document.getElementById("bloc_email").style.display = "block";	
}



//--------------------------------------------------------------------
/*

USERS MANAGEMENT

*/
//--------------------------------------------------------------------

//--------------------------------------------------------------------
/*
pages_erase()
PURPOSE 		:	- call a ajax php which will delete the selected item
							- reload the page
CALLER			:	
*/
function users_erase(id){
	
	if (confirm("Do you really want to erase this user ?")){
		wait_ajax();
		ajax_send_form(	"content_result",
										"plugins/vp_login/php_scripts/07_users_action.php?action=DEL",
										"id="+id,
										"reload_page()"
										);
	}
}


