//Function definita vuota: da riscrivere in un js incluso in pagina per fare qualcosa 
//di specifico all'apertura della pagina (per ora serve in Homepage)
var esitoSFQ;

function checkForm(campo1, campo2) {
	resetCampi(campo1, campo2);
	
	var totErrori = 0;
	
	if (campo1 != 'capcasa' && $(campo1).get('value') != '' && checkTarga(campo1)) {
		totErrori++;
	}
	
	if (campo2 != 'metricasa' && $(campo2).get('value') != '' && checkDate(campo2)) {
		totErrori++;
	}
	
	if (totErrori == 0) {
		if (campo1 == 'targaauto' || campo1 == 'targamoto') {
			if ($(campo1).get('value') != '' && $(campo2).get('value') != '') {
				MOOdalBox.open('../../error/sfq.jsp', '', 'moodalbox 594 306');
				// delay
				(function() { 
					var funcSubmit = $(campo1).getParent().getParent().submit();
				}).delay(1000);
			} else {
				if ($(campo2).get('value') != '' && campo1 == 'targaauto') {
					openPopupSFQTarga();
				} else if ($(campo2).get('value') != '' && campo1 == 'targamoto') {
					openPopupSFQTargaMoto();
				} else {
					return true;
				}
			}
		} else if (campo1 == 'targaVeicolo') {
			if ($(campo1).get('value') != '' && $(campo2).get('value') != '') {
				callSFQService($(campo1).get('value'), $(campo2).get('value'), '');
				return false;
			} else {
				if ($(campo1).get('value') == '') {
					$(campo1).value = "AA123BB";
					$(campo1).addClass('disabled');
					$(campo1).style.color = 'red';
				}
				if ($(campo2).get('value') == '') {
					$(campo2).value = "GGMMAAAA";
					$(campo2).addClass('disabled');
					$(campo2).style.color = 'red';
				}
				return false;
			}
		} else {		// Altrimenti campo1 != 'capcasa' ==> Casa e Famiglia
			return true;
		}
	}
	if ($('step1')) {
		$$('#step1').setStyle('display','block');
	}
	if ($('step3')) {
		$$('#step3').setStyle('display','none')
	}
	return false;
}

function resetCampi(campo1, campo2) {
	if($(campo1).get('value').toUpperCase()==$(campo1).get('title').toUpperCase()) {
		$(campo1).value = '';
	}
	
	if($(campo2).get('value').toUpperCase()==$(campo2).get('title').toUpperCase()) {
		$(campo2).value = '';
	}
}

function openPopupSFQTarga() {
	campo1 = 'targaauto';
	campo2 = 'dataauto';
	resetCampi(campo1, campo2);
	MOOdalBox.open('../../error/superFastquoteTarga.jsp', '', 'moodalbox 594 306');
}

function openPopupSFQTargaMoto() {
	campo1 = 'targamoto';
	campo2 = 'datamoto';
	resetCampi(campo1, campo2);
	MOOdalBox.open('../../error/superFastquoteTargaMoto.jsp', '', 'moodalbox 594 306');
}

function checkDate(dataid) {
	var date =  $(dataid).get('value').trim();
	var year = date.substr(6);
	if (year.length == 2) {
		year = "19" + year;
		date = date.substr(0, 6) + year;
		$(dataid).value = date;
	}
	
	var espressione = /^[0-9]{2}\/[0-9]{2}\/[0-9]{4}$/;
	if (!espressione.test(date)) {
		$(dataid).style.textTransform = 'none';
		$(dataid).addClass('error_msg');
		return true;
	} else {		
		anno = parseInt(date.substr(6),10);
		mese = parseInt(date.substr(3, 2),10);
		giorno = parseInt(date.substr(0, 2),10);
		var data = new Date(anno, mese-1, giorno);
		if ((date.substr(6).substr(0,2) == "19" || date.substr(6).substr(0,2) == "20") &&
				data.getFullYear() == anno && data.getMonth() + 1 == mese && data.getDate() == giorno) {
			$(dataid).removeClass('error_msg');
			return false;
		} else {
			function clear_input_data () {
				this.value = "";
				this.onfocus = null;
				this.removeClass('error_msg');
	       		this.style.textTransform = 'uppercase';
			}
			$(dataid).style.textTransform = 'none';
			//$(dataid).value = "errore data";
			$(dataid).addClass('error_msg');
			$(dataid).style.color = f20WarningColor;
			$(dataid).onfocus = clear_input_data;
			return true;
		}
	}
}

function checkTarga(targaid) {
		
	var targa = $(targaid).value;
	var targa = targa.toLowerCase();
			
	if (targa.slice(0,3) == "rsm") {
		var targa = "RSM" + targa.substr(3);
		//$('error_msg').style.display = 'none';
		$(targaid).value = targa;
		$(targaid).disabled = false;
		return true;
	} else if (targa.slice(0,3) == "scv") {
		var targa = "SCV" + targa.substr(3);
		//$('error_msg').style.display = 'none';
		$(targaid).value = targa;
		$(targaid).disabled = false;
		return true;
	} else if (targa.slice(0,4) == "roma") {
		var targa = "RM" + targa.substr(4);
		//$('error_msg').style.display = 'none';
		$(targaid).value = targa;
		$(targaid).disabled = false;
		return true;
	}
	
	var testPattern;
	var patternAuto = /[a-zA-Z]{2} *\d{6}|[a-zA-Z]{2} *\d{3} *[a-zA-Z]{2}|[a-zA-Z]{2}[a-zA-Z]{2}[0-9]{6}|[a-zA-Z]{2}[0-9]{1}[a-zA-Z]{5}|[a-zA-Z]{2}[a-zA-Z]{1}[0-9]{5}|[a-zA-Z]{2}[0-9]{1}[a-zA-Z]{1}[0-9]{4}|[a-zA-Z]{2}[0-9]{5}[a-zA-Z]{1}|[a-zA-Z]{2}[0-9]{2}[a-zA-Z]{1}[0-9]{3}/;
	var patternMoto =  /[a-zA-Z]{2} *\d{6}|[a-zA-Z]{2} *\d{5}/;
	if (targaid == 'targaauto' || targaid == 'targamoto') {
		if (targaid == 'targaauto') {
			var pattern = patternAuto;
		} else if (targaid == 'targamoto') {
			var pattern = patternMoto;
		}
		testPattern = pattern.test(targa);
	} else {
		//Innanzitutto resetto il colore del testo a grigio
		$(targaid).style.color = '#aaa';
		
		//Pattern veicolo generico: testo prima se è auto e poi moto
		var pattern = patternAuto;
		testPattern = pattern.test(targa);
		if (testPattern == false) {
			var pattern = patternMoto;
			testPattern = pattern.test(targa);
		}
	}
	
	if (testPattern == false) {
		
		function clear_input () {
			this.value = "";
			this.onfocus = null;
			this.removeClass('error_msg');
       		this.style.textTransform = 'uppercase';
		}
      	$(targaid).style.textTransform = 'none';
		$(targaid).value = "errore targa";
		$(targaid).addClass('error_msg');
		$(targaid).onfocus = clear_input;
		return true;
	} else {
		$(targaid).value = targa;
		$(targaid).disabled = false;
	}
}

function formatTarga(x) {

	if (x.value.length <= 2) {
		x.value = x.value.replace(/\d/,'');
	}
	
	var pattern = /[a-zA-Z0-9]/;
	var carattere = x.value.substr(x.value.length-1);	//Prendo sempre l'ultimo carattere inserito per capire se scartarlo
	if (!pattern.test(carattere)) {
		x.value = x.value.substr(0, x.value.length-1);
	}

}


/********************************
 * 
 * NUOVA HP
 * 
 ********************************/

//JavaScript Document

var usedPolizza = 'Auto';
var usedFast = 'autoFast';

window.addEvent("domready", function() {
				
	$$('#polizzaTab li a').each(function(a) {
		
		a.addEvent('click', function() {
			
			var prp = $(this).getProperty('rel');
			//var img = $('immagine' + prp).getProperty('src');
			
			$('polizza' + usedPolizza).setStyle('display','none');
			$('immagine' + usedPolizza +'_on').setStyle('display','none');
			$('immagine' + usedPolizza +'_off').setStyle('display','inline-block');
			//.setProperty('src', $('immagine' + usedPolizza).getProperty('src').replace("_1","_0"));
			
			$('polizza' + prp).setStyle('display','block')
			$('immagine' + prp +'_on').setStyle('display','inline-block');
			$('immagine' + prp +'_off').setStyle('display','none');
			
			//.setProperty('src', $('immagine' + prp).getProperty('src').replace("_0","_1"));
			
			usedPolizza = prp;
		
		});
		
	});

// spostato in common.js
//	$$('.areaPersonaleBtn').addEvent('click', function(){
//		$$('#datiAreaPersonale').tween('visibility', ['hidden', 'visible']);
//	});
//	$$('.btn_login_close').addEvent('click', function(){
//		$$('#datiAreaPersonale').tween('visibility', ['visible', 'hidden']);
//	});
	
  $$('.fastMenuCnt li a.btn_veicoli').addClass("selected");
  $$('#selectorFast').addClass("veicoliFast");
  $$('.fastMenuCnt li a').addEvent('click', function(){
		if(!this.hasClass("selected")){
      var cat=this.get('id').split("Btn")[0];
      $$('.fastMenuCnt li a.selected').removeClass("selected");
			this.addClass("selected");
			$$('.fastItem').setStyle('display','none');
			$$('#'+cat).setStyle('display','block');
      $('selectorFast').erase('class');
      $('selectorFast').addClass(cat);
		}
	});
	
});

/** FUNZIONI GIA' ONLINE **/

function isNumberKey(b){
  var a=(b.which) ? b.which : b.keyCode;
  return isNumberKeyBase(a);
}
function isNumberKeyBase(a){
  if(a>31 && (a<48 || a>57) && a!=46 && a!=37 && a!=39){
    return false;
  }
  return true;
}


function Explorer(){ return(self.navigator.appName.contains("Explorer"," ")); }

function disableControls(b){
	var a=($(document.body).getElement("div.container")||document.body).offsetHeight;
	if(!a||a==""||a==0){
		a="200%";
	} else{
		a=a+"px";
	}
	var d=new Element("div",{"styles":{"position":"absolute","top":"0px","left":"0px","background":"#ffffff","z-index":"99999","height":a,"width":"100%"},id:"mod"}).injectInside($(document.body));
	if(Explorer()){
		d.setStyle("opacity",0.1);
	} else{
		d.setStyle("background-color","transparent");
	}
}

function callSFQService(plate, date, sessionid) {
	sessionid = "eWCKxG-MS162A0AJcC8dAdW";
	var call = "jsonFactory.callSFQService";
    // Richiesta Ajax ad-hoc per JSON , info -> http://docs.mootools.net/Request/Request.JSON
	var jsonRequest = new Request.JSON({url: host, 
		data: JSON.encode({"id":1,"method":call,"params":[plate,date,sessionid]}),
		
		onRequest: function() {
			$$('#step1').setStyle('display','none');
			$$('#step3').setStyle('display','block');
	    },
	    
		onLoading: function() {
		},
		
		onComplete: function(jsonItem) {
			if ( ! jsonItem ) return this;
			objson = JSON.decode(jsonItem.result.esitoSFQ);
			if ( objson ) {
				if ( objson.esito ) {
					esitoSFQ = objson.esito;
				} else {
					esitoSFQ = "";
				}
			}
			
			if (esitoSFQ && (esitoSFQ == "0056" || esitoSFQ == "0057")) {
				$$('#step3').setStyle('display','none');
				$$('#step4').setStyle('display','block');
			} else {
				document.forms['formVeicolo'].submit();
			}
			
	}}).send();

}
