var	url_trigger = "index_trigger_ajax.php?";

function iniciaPagina(destino, patch, lang){
	querystring = "showOn=div_contenido&patch="+patch+"&accion=presentacion&destino="+destino+"&lang="+lang;
	makeAjaxRequest(url_trigger, querystring, "showAjaxResponse");
}

function ejecutaaccion(accion, querystring, showOn_div){
	querystring = "showOn="+showOn_div+"&accion="+accion+"&"+querystring;
	makeAjaxRequest(url_trigger, querystring, "showAjaxResponse");
}

function enviaCorreo(lang){/**/
	var querystring=sendDataForm('ajax_form', lang);
	if (querystring != ''){
			querystring = "patch=contacto"+querystring;
			ejecutaaccion("enviaCorreo", querystring, "div_contenido");
		}/**/
}



function validateEmail(email){
	//if(email.length <= 0){return true;}
	var splitted = email.match("^(.+)@(.+)$");
	if(splitted == null){
		return false;
	}
	if(splitted[1] != null ){
		var regexp_user=/^\"?[\w-_\.]*\"?$/;
		if(splitted[1].match(regexp_user) == null){
			return false;
		}
	}
	if(splitted[2] != null){
		var regexp_domain=/^[\w-\.]*\.[A-Za-z]{2,4}$/;
		if(splitted[2].match(regexp_domain) == null){
			var regexp_ip =/^\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\]$/;
			if(splitted[2].match(regexp_ip) == null){
				return false;
			}
		}
		return true;
	}
	return false;
}


function RTrim(VALUE){
	var w_space = String.fromCharCode(32);
	var v_length = VALUE.length;
	var strTemp = "";
	if(v_length < 0){
		return"";
	}
	var iTemp = v_length -1;
	while(iTemp > -1){
		if(VALUE.charAt(iTemp) == w_space){
		}
		else{
			strTemp = VALUE.substring(0,iTemp +1);
			break;
		}
		iTemp = iTemp-1;
	} //End While
	return strTemp;
} //End Function

function LTrim(VALUE){
	var w_space = String.fromCharCode(32);
	if(v_length < 1){
		return"";
	}
	var v_length = VALUE.length;
	var strTemp = "";
	var iTemp = 0;
	while(iTemp < v_length){
		if(VALUE.charAt(iTemp) == w_space){
		}
		else{
			strTemp = VALUE.substring(iTemp,v_length);
			break;
		}
		iTemp = iTemp + 1;
	} //End While
	return strTemp;
} //End Function


function Trim(TRIM_VALUE){
	if(TRIM_VALUE.length < 1){
		return"";
	}
	TRIM_VALUE = RTrim(TRIM_VALUE);
	TRIM_VALUE = LTrim(TRIM_VALUE);
	if(TRIM_VALUE==""){
		return "";
	}
	else{
		return TRIM_VALUE;
	}
}

function validateData(lang){
	if(lang == 'es'){
		var lang1= new Array(7)
					lang1["alertanombre"]= "Por favor ingrese su nombre";
					lang1["alertaemail"]= "Por favor ingrese un correo electrónico válido";
					lang1["alertapais"]= "Por favor ingrese una clave de país correcta";
					lang1["alertalocalidad"]= "Por favor ingrese una clave de localidad correcta";
					lang1["alertatelefono"]= "Por favor ingrese un teléfono correcto";
					lang1["alertaasunto"]= "Por favor ingrese el asunto";
					lang1["alertacomentarios"]= "Por favor ingrese su comentario";
	}		
	if(lang == 'en'){						
		var lang1= new Array(7)
					lang1["alertanombre"]= "Please enter your name";
					lang1["alertaemail"]= "Please enter a valid e-mail";
					lang1["alertapais"]= "Please enter a valid country key";
					lang1["alertalocalidad"]= "Please enter a valid region key";
					lang1["alertatelefono"]= "Please enter a correct phone number";
					lang1["alertaasunto"]= "Please enter the subject";
					lang1["alertacomentarios"]= "Please enter your comment";
	}		
	var form = document.ajax_form;
	if (Trim(form.nombre.value)==""){alert(lang1["alertanombre"]);	form.nombre.focus();	return false;}
	else if (Trim(form.email.value)=='' || !validateEmail(form.email.value)){	alert(lang1["alertaemail"]);	form.email.focus();	return "";}
	else if (Trim(form.pais.value)=='' || isNaN(form.pais.value)){alert(lang1["alertapais"]); form.pais.focus();	return false;}
	else if (Trim(form.localidad.value)=='' || isNaN(form.localidad.value)){alert(lang1["alertalocalidad"]); form.localidad.focus();	return false;}
	else if (Trim(form.telefono.value)=='' || isNaN(form.telefono.value)){alert(lang1["alertatelefono"]); form.telefono.focus();	return false;}
	else if (Trim(form.asunto.value)==""){alert(lang1["alertaasunto"]);	form.asunto.focus();	return false;}
	else if (Trim(form.comentarios.value)==""){	alert(lang1["alertacomentarios"]);	 form.comentarios.focus();	return false;}
	else{return true;}
}

function sendDataForm(id_form, lang ){
	var querystring = '';
	if (validateData(lang)){
		var form_elements = document.getElementById(id_form);
		if (form_elements.elements.length>0){
			for (i=0; i<form_elements.length; i++){
				querystring += "&" + complementQueryString(form_elements.elements[i]);
			}
		}
	}
	return querystring;
}


function complementQueryString(form_element){
	element_url = '';
	/**/
	switch(form_element.type){
		case "text":
		case "textarea":
		case "hidden":
		case "textarea":
			element_url = form_element.name+'='+encodeSpecialCharsAJAX(form_element.value);
			break;
		case "checkbox":
			element_url = (form_element.checked)?form_element.name+'='+encodeSpecialCharsAJAX(form_element.value):'';
			break;
		case "select-multiple":
			for(j=0; j<form_element.options.length; j++){
				element_url += (form_element.options[j].selected)?form_element.name+'[]='+encodeSpecialCharsAJAX(form_element.options[j].value):'';
			}
			break;
		case "select-one":
			element_url = form_element.name+'='+encodeSpecialCharsAJAX(form_element.options[form_element.selectedIndex].value);
			break;
		case "radio":
			element_url =(form_element.checked==true)?form_element.name+'='+encodeSpecialCharsAJAX(form_element.value):'';
			break;
	}
	return element_url;
}

function ereg_replace(tx,rg,ch) {
   var regEx = new RegExp(rg,"g")
   return tx.replace(regEx,ch)
}

function encodeSpecialCharsAJAX(str){
	/**/
	//ÁÉÍÓÚáéíóúÄËÏÖÜäëïöüÑñ
	//QUITA ACENTOS MAYUSCULAS
	str = str.replace(/Á/g,'._aA_.');	str = str.replace(/É/g,'._aE_.');	str = str.replace(/Í/g,'._aI_.');	str = str.replace(/Ó/g,'._aO_.');	str = str.replace(/Ú/g,'._aU_.');
	//QUITA PUNTOS MAYUSCULAS
	str = str.replace(/Ä/g,'._pA_.');	str = str.replace(/Ë/g,'._pE_.');	str = str.replace(/Ï/g,'._pI_.');	str = str.replace(/Ö/g,'._pO_.');	str = str.replace(/Ü/g,'._pU_.');
	//QUITA ACENTOS MINUSCULAS
	str = str.replace(/á/g,'._aa_.');	str = str.replace(/é/g,'._ae_.');	str = str.replace(/í/g,'._ai_.');	str = str.replace(/ó/g,'._ao_.');	str = str.replace(/ú/g,'._au_.');
	//QUITA PUNTOS MINUSCULAS
	str = str.replace(/ä/g,'._pa_.');	str = str.replace(/ë/g,'._pe_.');	str = str.replace(/ï/g,'._pi_.');	str = str.replace(/ö/g,'._po_.');	str = str.replace(/ü/g,'._pu_.');
	//QUITA EÑES
	str = str.replace(/Ñ/g,'._nN_.');	str = str.replace(/ñ/g,'._nn_.');
	//QUITA #
	str = str.replace(/#/g,'._cNuM_.');
	/**/
	return str;
}
