// COSMO TRANSLATIONS JavaScript Document by MateConMenta

function cnt(w,x){ //From Stephen Chapman, http://javascripts.about.com/mbiopage.htm
	var y=w.value;
	var r = 0;
	a=y.replace(/\s/g,' ');
	a=a.split(' ');
	
	for (z=0; z<a.length; z++) {if (a[z].length > 0) r++;}
	x.value=r;
	standardDelivery(r);
	expressDelivery(r);
}

var standard = 0.089; // standard word value in €
var express  = 0.116; // express word value in €

function standardDelivery(words){
	document.getElementById('standard').innerHTML = words * standard;
}

function expressDelivery(words){
	document.getElementById('express').innerHTML = words * express;
}

function ve(id, sColor, eColor) {
	$(id).visualEffect(
	  'highlight',{
		duration:1, 
		startcolor:sColor, 
		endcolor:eColor, 
		restorecolor:eColor
	  }
	);//Fin del efecto visual (oj1)//Efecto visual
}
function isMail(email){
  var s = email;
  var filter=/^[A-Za-z][A-Za-z0-9_.]*@[A-Za-z0-9_]+\.[A-Za-z0-9_.]+[A-za-z]$/;
	
  if (s.length == 0) 
    return true;

  if (filter.test(s)) 
    return true;
  else
    return false;
}

function validateForm(formId,mail){
	clearErrors();
	var errorCount = 0;
	var filled = new Array(3);
	filled[0] = $('nombre').present();
	filled[1] = $('email').present();
	filled[2] = $('mensaje').present();
	if(filled[0] && (filled[1] && isMail(mail)) && filled[2]){
		clearErrors();
		return true;
	} else {
		if(!filled[0]){
			errorCount++;
			$('nameMissingError').className = '';
		}
		if(!filled[1]){
			errorCount++;
			$('emailMissingError').className = '';
		} else {
			if(!isMail(mail)){
				errorCount++;
				$('emailFormatError').className = '';
			}	
		}
		if(!filled[2]){
			errorCount++;
			$('messageMissingError').className = '';
		}
		if(errorCount == 1) errorCount += ' error'; else errorCount += ' errores';
		$('formErrors').innerHTML = errorCount;
		$('errors').className = '';
		ve('errors', '#BB0000', '#FFDFDF');
		return false;
	} //fin ELSE del 1er IF
	
}

function sendForm(formId,name){
	if($('messageSent')){ $('messageSent').className = 'hiddenContent'; } //oculto el mensaje "se envió"
	$(formId).onsubmit = function(){
		return false; // hago que el formulario html devuelva FALSO on submit, así no refresca la página
	}
	//var serie = $(formId).serialize();
	if(formId == 'formForContact'){ 
	if(validateForm(formId,$('email').value)){
	var newProductAjax = new Ajax.Request("setup/"+name+".php" , {  
						encoding: 'UTF-8',
						method: 'post', 
						contentType: 'application/x-www-form-urlencoded',
						postBody: $(formId).serialize(),
						onLoading: function() { 
							//$('loading').show(); 
						},
						// Fin de onLoading
						onSuccess: function(trans) {
							$('messageSent').className = '';
							ve('messageSent', '#006600', '#C8EBBE');
						}//Fin de onSuccess
			});//Fin de Ajax.Request // AJÁX DEBERÍA SER MJMX (oj1)
		}
	} else {
		//alert($('email').value);
		if(isMail($('emailStandardQuote').value) || isMail($('emailExpressQuote').value)){
			alert($('email').value);
			$('mailError').className = 'hiddenContent';
			
		var newProductAjax = new Ajax.Request("setup/"+name+".php" , {  
						method: 'post', 
						contentType: 'application/x-www-form-urlencoded',
						postBody: $(formId).serialize(),
						onLoading: function() { 
							//$('loading').show(); 
						},
						// Fin de onLoading
						onSuccess: function(trans) {
							$('quoteSent').className = '';
							ve('quoteSent', '#006600', '#C8EBBE');
						}//Fin de onSuccess
			});//Fin de Ajax.Request // AJAX
		} else {
			$('quoteSent').className = 'hiddenContent'; 
			$('mailError').className = '';
			ve('mailError', '#BB0000', '#FFDFDF');
		}
	}
}
function validateQuote(quoteFormId){
	clearErrors();
	var errorCount = 0;
	var mail = $('email').value;
	var filled = new Array(5);
		filled[0] = $('name').present();
		filled[1] = $('email').present();
		filled[2] = $('textType').value;
		filled[3] = $('translateFrom').value;
		filled[4] = $('comments').present();
	if(filled[0] && (filled[1] && isMail(mail)) && (filled[2] != '0') && (filled[3] != '0') && filled[4]){
		return true;
	} else {
	if(!filled[0]){
			errorCount++;
			$('nameMissingError').className = '';
		}
		if(!filled[1]){
			errorCount++;
			$('emailMissingError').className = '';
		} else {
			if(!isMail(mail)){
				errorCount++;
				$('emailFormatError').className = '';
			}	
		}
		if(filled[2] == '0'){
			errorCount++;
			$('tipoTextoMissingError').className = '';
		}
		if(filled[3] == '0'){
			errorCount++;
			$('traducirDeMissingError').className = '';
		}
		if(!filled[4]){
			errorCount++;
			$('messageMissingError').className = '';
		}
		if(errorCount == 1) errorCount += ' error'; else errorCount += ' errors';
		$('formErrors').innerHTML = errorCount;
		$('errors').className = '';
		ve('errors', '#BB0000', '#FFDFDF');
		return false;
	} //fin ELSE del 1er IF
}
function sendQuote(formId,phpFileName){
	if($('messageSent')){ $('messageSent').className = 'hiddenContent'; } //oculto el mensaje "se envió"
	$(formId).onsubmit = function(){
		return false; // hago que el formulario html devuelva FALSO on submit, así no refresca la página
	}
	if(!validateQuote(formId)){ return false; } //salimos de la función si los datos del Form son inválidos
	var quoteAjax = new Ajax.Request("setup/"+phpFileName+".php" , {  
						encoding: 'UTF-8',
						method: 'post', 
						contentType: 'application/x-www-form-urlencoded',
						postBody: $(formId).serialize(),
						onLoading: function() { 
							//$('loading').show(); 
						},
						// Fin de onLoading
						onSuccess: function(trans) {
							$('quoteSent').className = '';
							ve('quoteSent', '#006600', '#C8EBBE');
						}//Fin de onSuccess
			});//Fin de Ajax.Request // AJÁX DEBERÍA SER MJMX (oj1)	
}

function clearErrors(){
	$('errors').className = 'hiddenContent';
	$('emailMissingError').className = 'hiddenContent';
	$('nameMissingError').className = 'hiddenContent';
	$('messageMissingError').className = 'hiddenContent';
	$('emailFormatError').className = 'hiddenContent';
	$('tipoTextoMissingError').className = 'hiddenContent';
	$('traducirDeMissingError').className = 'hiddenContent';
}


// strong id: formErrors

/*
li's ids:
	emailMissingError
	nameMissingError
	messageMissingError
	emailFormatError
*/

function printResult(id, hideId) {
	document.getElementById(hideId).style.display = 'none';
	var todo = document.getElementById(id).innerHTML;
	todo = escape(todo);
	url = "quickQuoteResultPrint.php?contents="+todo;
	window.open(url, '" + id + "', 'toolbar=0,scrollbars=0,location=0,statusbar=0,menubar=0,resizable=1,width=720,height=400');
	document.getElementById(hideId).style.display = 'block';
}
