
function floorInteri(el){ if (!el.value.test(/^[-+]?[0-9]+$/)) { el.errors.push("Inserire un numero intero (positivo o negativo)");   return false; } else {return true;}}
function floorInteriP(el){ if (!el.value.test(/^[+]?[0-9]+$/)) { el.errors.push("Interire un numero intero positivo o zero");   return false; } else {return true;}}
function floorInteriPP(el){ if (!el.value.test(/^[1-9]{1}[0-9]*$/)) { el.errors.push("Inserire un numero intero maggiore di zero");   return false; } else {return true;}}
function floorFloat(el){ if (!el.value.test(/^[-+]?[0-9]*\.?[0-9]+$/)) { el.errors.push("Inserire un numero (positivo o negativo) (usare il carattere punto per i decimali)");   return false; } else {return true;}}
function floorFloatP(el){ if (!el.value.test(/^[+]?[0-9]*\.?[0-9]+$/)) { el.errors.push("Inserire un numero positivo o zero (usare il carattere punto per i decimali)");   return false; } else {return true;}}
function floorFloatPP(el){ if (!el.value.test(/^[+]?(([1-9]{1}[0-9]*\.?[0-9]+)|([0]{1}\.{1}[0-9]+)|([1-9]{1,}))$/)) { el.errors.push("Inserire un numero maggiore di zero (usare il carattere punto per i decimali)");   return false; } else {return true;}}
function floorBool(el){ if (!el.value.test(/^[01]{0,1}$/)) { el.errors.push("Specificare sì o no");   return false; } else {return true;}}
function floorStringhe(el){ if (!el.value.test(/^[a-z0-9èéòàùì.,;:-_\s]+$/)) { el.errors.push("Inserire un testo composto da lettere, numeri, spazi e/o caratteri di punteggiatura");   return false; } else {return true;}}
function floorConferma(el){ if (!el.checked) { el.errors.push("E' necessario spuntare la casella di conferma");   return false; } else {return true;}}
function floorCategoria(el){ if (!el.value.test(/^[2-9]{1}[0-9]*$/)) { el.errors.push("E' necessario selezionare una categoria");   return false; } else {return true;}}
	

function redirect(url) { 
	location.href = url;
} 
function preferiti(){
	if (window.sidebar) window.sidebar.addPanel(document.title, location.href,'');
	else if( window.external )   window.external.AddFavorite( location.href, document.title);
	return false;
}

window.addEvent('domready', function() {

    
	//CALENDARI
    var date=new Array();
    $$('.data_init').each(function(data) {
        var id=data.get('id');
        //se il value dell'input non è vuoto inizializza la data
        if($(id).get('value')) var inizia=[$(id).get('value').substr(6,4),$(id).get('value').substr(3,2)-1,$(id).get('value').substr(0,2)];
        else {
            var ora= new Date();
            var inizia=false;
        }
        //se l'imput ha la classe da_ora o a_ora cambia le date minime e massime
        var adesso= new Date();
        var ora=[adesso.getFullYear(),adesso.getMonth(),adesso.getDate()]
        if($(id).hasClass('a_ora')) var d_to=ora;
        if($(id).hasClass('da_ora')) var d_from=ora;
        var hoy = new Date();
        var salidaFrom = new Date(hoy.getFullYear(),hoy.getMonth(),hoy.getDate()+7);
        salidaFrom = [salidaFrom.getFullYear(),salidaFrom.getMonth(),salidaFrom.getDate()];
        date[id]=$(id).datePicker({
            klass: "datePicker",
            format: '%d-%m-%Y',
            from: d_from,
            to:d_to,
            setInitial: true,
            initial: inizia,
            days: ["Domenica","Lunedì","Martedì","Mercoledì","Giovedì","Venerdì","Sabato"],
            draggable: true,
            position: {x:"right",y:"top"},
            offset: {x:22,y:0},
            updateElement:true,
            firstday: 1,
            onUpdate: function(){
                if($(id).get('rel')) {
                    var legato=$(id).get('rel');
                    //$(legato).set('value')
                    //recupera la prima data
                    var valore=$(id).get('value');
                    var data_1= new Date();
                    data_1.set('date',valore.substr(0,2));
                    data_1.set('month',valore.substr(3,2)-1);
                    data_1.set('year',valore.substr(6,4));
                    //recupera la seconda data
                    var valore=$(legato).get('value');
                    var data_2= new Date();
                    data_2.set('date',valore.substr(0,2));
                    data_2.set('month',valore.substr(3,2)-1);
                    data_2.set('year',valore.substr(6,4));
                    //alert(data_1.diff(data_2));
                    var giorno_dopo=data_1.clone();
                    giorno_dopo.increment('day',1);
                    if(data_1.diff(data_2)<=0) {
                        //se il datepicker del giorno dopo è gia stato inizializzato lo modifica
                        if(date[legato]){
                            date[legato].options.from=[giorno_dopo.get('year'),giorno_dopo.get('month'),giorno_dopo.get('date')];
                            date[legato].setFullDate(giorno_dopo.get('year'),giorno_dopo.get('month'),giorno_dopo.get('date'));
                            date[legato].update();
                        }
                        //altrimenti aggiorna semplicemente il value dell'input in attesa che il datepicker venga creato
                        else {
                            var risultato=giorno_dopo.format("%d-%m-%Y");
                            $(legato).set('value',risultato);
                        }
                    }
                    //aggiorna la data minima della seconda data
                    if(date[legato]){
                        date[legato].options.from=[giorno_dopo.get('year'),giorno_dopo.get('month'),giorno_dopo.get('date')];
                        date[legato].update();
                    }
                }
            }
        },"click");
        if( $(id).getNext('img'))$(id).getNext('img .ico_calendario').addEvent('click',function(evento) {date[id].show();});
       
    });


	//rollover sui bottoni di submit
	var bottoni_submit=$$('.buttonSubmit');
	bottoni_submit.each(function (item, index) {
		item.addEvent('mouseover', function() {
			item.setProperty('class','buttonSubmitHovered');
		});		
		item.addEvent('mouseout', function() {
			item.setProperty('class','buttonSubmit');
		});		
	});
	
	//XXMOD START
	$$('.menu').addEvent('mouseover', function() {
		if(!this.hasClass('menu_sel')) {
			//var myFx = new Fx.Tween(this);
			//myFx.start('background-color', '#05447e');
			//this.fade(0.9);
		}
	}); 
	
	
	//XXMOD END
	
	



	
	$$('.tooltip').each(function (item, index) {
		var content = item.get('title').split('::');  
		item.store('tip:title', content[0]);  
		item.store('tip:text', content[1]);  
	}); 
	var tipz = new Tips('.tooltip');
	
	
	//sezione gestione account
	var account_check_user=true;
	//richiesta ajax sull'username
	if($('f_user') && $('accountGestisci')) {
		account_check_user=false;
		$('f_user').addEvent('blur',function () {
			if(this.get('value')!="") {
				var req = new Request.HTML({url:'http://www.ciics.it/ajax/account_check.html', 
					onSuccess: function(tree,elements,html) {
						if(html=="1") {account_check_user=true; $('f_user_span').set('class','testo_verde'); $('f_user_span').set("html","&nbsp;&nbsp;<img src='http://www.ciics.it/sito/img/account_check_si.png' title='' alt='' style='vertical-align:middle' />&nbsp;nome utente utilizzabile");}
						if(html=="2") {account_check_user=false; $('f_user_span').set('class','testo_rosso'); $('f_user_span').set("html","&nbsp;&nbsp;<img src='http://www.ciics.it/sito/img/account_check_no.png' title='' alt='' style='vertical-align:middle' />&nbsp;nome utente già utilizzato!");}
						
					},
					onFailure: function(error) {}
				}).get({'user':this.get('value')});	
				
			}
		});
	}
	//richiesta ajax sulla email
	var account_check_email=true;
	if($('f_email') && $('accountGestisci')) {
		account_check_email=false;
		$('f_email').addEvent('blur',function () {
			if(this.get('value')!="") {
				var req = new Request.HTML({url:'http://www.ciics.it/ajax/account_check.html', 
					onSuccess: function(tree,elements,html) {
						if(html=="1") {account_check_email=true; $('f_email_span').set('class','testo_verde'); $('f_email_span').set("html","&nbsp;&nbsp;<img src='http://www.ciics.it/sito/img/account_check_si.png' title='' alt='' style='vertical-align:middle' />&nbsp;email valida ed utilizzabile");}
						if(html=="2") {account_check_email=false; $('f_email_span').set('class','testo_rosso'); $('f_email_span').set("html","&nbsp;&nbsp;<img src='http://www.ciics.it/sito/img/account_check_no.png' title='' alt='' style='vertical-align:middle' />&nbsp;email già associata ad un account!");}
						
					},
					onFailure: function(error) {}
				}).get({'email':this.get('value')});	
				
			}
		});
	}
	
	//fa sparire i box di suggerimento quando si invia il modulo
	if($('accountGestisci')) {
		$('accountGestisci').addEvent('submit',function (e) {
			if(!account_check_user) {alert("Attenzione, hai inserito un username già utilizzato da un altro account. Ti preghiamo di sceglierne un altro.");e.stop();}
			if(!account_check_email) {alert("Attenzione, hai inserito una email già utilizzata da un altro account. Ti preghiamo di sceglierne un'altra.");e.stop();}
			$$('.suggerimento').setStyle('display','none');
		});
	}
});



function form_radio(form,name,valore,base) {
	var trovato=false;
	$(form).getElements('input').each(function(item, index){
		if(item.getProperty('name')==name) {
			if(item.getProperty('value')==base) radio_base=item;
			if(item.getProperty('value')==valore) {item.setProperty('checked','checked');trovato=true;}
		}
	});
	if(!trovato) {
		radio_base.setProperty('checked','checked');
	}
}
function form_select(id,valore) {
	if($(id)) {
		$(id).getElements('option').each(function(item, index){
			if(item.getProperty('value')==valore) {
				item.setProperty('selected','selected');
			}
			
		});
	}
}

function form_check(id,valore) {
	if($(id) && valore!="") $(id).setProperty('checked','checked');
}

function form_select_multiple(id,valore) {
	if($(id) && valore!='') {
		valori=valore.split(",");
		$(id).getElements('option').each(function(item, index){
			if(valori.indexOf(item.getProperty('value'))!=-1) {
				item.setProperty('selected','selected');
			}
		});
	}
}