/*
var navArrowSlider = function(navWrap, navElementsArray, activeID, arrowY, leftOffset) {
	var youAreHere = new Fx.Tween($(navWrap), {
		duration: 1200,
		transition: Fx.Transitions.Elastic.easeOut  //adjust transition effect here
	});
	$$(navElementsArray).each(function(item){
		item.addEvent('mouseenter', function() {
			var thisPos = item.getPosition(navWrap).x  + (item.getSize().x/2) - leftOffset;
			youAreHere.cancel();
			youAreHere.start('background-position', thisPos + 'px ' + arrowY + 'px');
		});
	});
 
	if ($(activeID)==null) {
		var active = $('menu').getElement('li');
	} else { 
		var active = $(activeID) ;
	}
		var currentArrow = function() {
			youAreHere.cancel();
			var activePos = active.getPosition(navWrap).x  + (active.getSize().x/2) - leftOffset;
			youAreHere.start('background-position', activePos + 'px ' + arrowY + 'px');
		};
		//correct IE rendering problem (without this, it wont go to the active nav onload)
			var activePos = active.getPosition(navWrap).x + active.getSize().x - leftOffset;
			$(navWrap).setStyle('background-position', activePos + 'px ' + arrowY + 'px');
	 
		//works to set image to starting position in other browsers
		currentArrow(); 
		$(navWrap).addEvent('mouseleave', currentArrow);
}; 
*/
var tabslide = new Class({
	Implements: [Events],
	initialize: function(tabs, wrap){
		this.tabs = $$(tabs) ;
		var wrapin = $(wrap)
		this.pagesize = wrapin.getFirst().getFirst().getSize() ;
		wrapin.getFirst().setStyle('width', this.tabs.length * this.pagesize.x);
		var that = this;
		this.myScroller = new Fx.Scroll(wrapin, {
		    duration: 500,
		    link: 'cancel',
			transition: Fx.Transitions.Cubic.easeInOut
		});
		this.tabs.each(function(e,k){e.num = k;},this)
		this.tabs.addEvent('click', function(ev){
		    ev.stop();
			this.blur();
			that.setFocus(this);
			that.myScroller.start(that.pagesize.x*this.num, 0 );
		});
	},
	setFocus: function(el) {
		this.tabs.removeClass("selected");
		el.addClass("selected");
	}
});
var listAjax = new Class({
	Implements: [Events],
	initialize: function(list, tofill){
		this.buttons = $$(list) ;
		this.tofill = $(tofill) ;
		this.tofill.set('load', {
			onRequest: function() {
				this.tofill.addClass('loading')
			}.bind(this),
			onSuccess: function() {
				this.tofill.removeClass('loading')
			}.bind(this),
			onFailure: function() {
				this.tofill.removeClass('loading');
				this.tofill.set('text', 'Richiesta fallita.');
			}.bind(this)
		});
		
		var that = this;
		
		this.buttons.addEvent('click', function(ev){
			ev.stop();
			//links = this.getElements("a").get("href");
			this.getFirst().blur();
			that.setFocus(this);
			that.fillAjax(this.getElement('a'));
		});
	},
	setFocus: function(el) {
		this.buttons.removeClass("selected");
		el.addClass("selected");
	},
	fillAjax: function(el) {
		this.tofill.load(el.get("href")+'&ajax=1&pag=0');
	}
});

var Site = {
	
	start: function(){
		if($('agenda'))Site.setAgenda();
		if($$('.appuntamento').length!=0) {Site.setAppuntamento()};
		//if($$('#ric_lst .ric_row .add_new')) Site.parseLista();
	},
	setAgenda: function(){
		var colonne = $$('.colonna');
		var ora_inizio = 7, ore_giornata = 14 ;		
		colonne.each(function(colonna,k) {
			
			for (var i=0; i < ore_giornata; i++) {
				var ora_div = ora_inizio+i ;
				var ora = new Element('div', {
				    'styles': {
					'display': 'block'
				    },
				    'events': {
					'click': function(){
						SqueezeBox.fromElement(this, {url:"index.php?mode=agenda.age_new&col="+(k+1)+"&hh1="+this.getProperty('ora'),size:{x:550,y:480},sizeLoading:{x:550,y:480}});
					},
					'mouseenter': function(){
						this.setStyle("background-color", "#ddd");
					},
					'mouseleave': function(){
						this.setStyle("background-color", "#fff");
					}
				    },
				    'class': 'ora'
				})
				
				ora.setProperty('ora', ora_div);	
				ora.appendText(ora_div);
				colonna.adopt(ora);
			};
			
		});
	},
	myTips: function(){
		var Tips1 = new Tips($$('.appuntamento'), {
			offsets: { x:20, y:0},
			className: 'custom'
		});
	},
	setAppuntamento: function(){
		var appuntamenti = $$('.appuntamento');	
		var coef = 1; //pixel-minuti
		SqueezeBox.initialize({
						size: {x: 350, y: 480},sizeLoading:{x: 350, y: 480},
						ajaxOptions: {
							method: 'get'
						}
					});
		var max_app = 0;
		var posizione = 20;
		appuntamenti.each(function(appuntamento) {
				
				var ora_inizio = appuntamento.getProperty('inizio').toInt() - 700;
				ora_inizio= coef *(Math.floor(ora_inizio/100)*60+(ora_inizio%100));
				var ora_durata = coef*appuntamento.getProperty('durata').toInt() ;
				var ora_stato = appuntamento.getProperty('stato') ;
				var intervallo = appuntamento.getProperty('intervallo') ;
				var titolo = appuntamento.getProperty('titolo') ;
				var visto = appuntamento.getProperty('visto') ;
				var age = appuntamento.getProperty('age') ;
				var colore = ora_stato=="2"?"#FFCC66":ora_stato=="3"?"#ff3333":"#99CC66";
				var c_visto = visto=="0"?"5px solid #ffee00":"0px solid #ffffff";
				
				appuntamento.setStyles({
				   'top': ora_inizio,
				   'height': ora_durata,
				   'background-color': colore,
				   'border' :c_visto
				});
				if(max_app > ora_inizio) {
					appuntamento.setStyle('left', posizione);
					if(posizione==20) {
						colore = ora_stato=="1"?"#CCFF99":colore;
						appuntamento.setStyle('background-color', colore);
					} 
					posizione = posizione==20?0:20;
				}
				max_app = max_app>(ora_inizio+ora_durata)?max_app:ora_inizio+ora_durata ;
				appuntamento.addEvent('click', function(e) {
					new Event(e).stop();
					SqueezeBox.fromElement(appuntamento, {url:appuntamento.getProperty('url'), size:{x:550,y:480}});					
				});
				
				appuntamento.addEvent('mouseenter', function() {
					//appuntamento.firstChild.setHTML(intervallo);		
				});
				appuntamento.addEvent('mouseleave', function() {
					//appuntamento.firstChild.setHTML(titolo);	
				})	
		});
		this.myTips();			
	},
	parseLista: function(){
		var tmheight = 0;
		var lista = $$("#ric_lst .ric_row");
		lista.each(function(riga) {
			//alert("2");
			//element.setStyle('padding-bottom', '25px');
			tmheight = riga.getStyle('height').toInt();
			riga.setStyle('height', tmheight+25);
			//riga.style.background="#f0e";
		})
	}
};
window.addEvent('domready', function() {
	if($("blu-tabs")) {
		var t = new tabslide("#blu-tabs li a", "blu-frame");
	} ;
	if($('.knob')) {
		var t = new tabslide("#blu-tabs li a", "blu-frame");
	} ;
	if($$(".listAjax")) {
		$$(".listAjax").each(function(e,k){
			new listAjax(e.getChildren("li"), "targetAjax"+k);
		},this)
	} ;
	Site.start();
});



// leo
function swapdisplay(tag){
  elemento = document.getElementById(tag) ;
  if (elemento.style.visibility == "hidden")	{
    elemento.style.visibility = "visible";
  } else {
    elemento.style.visibility = "hidden";
  }
}
function swDisplay(tag, button){
  elemento = document.getElementById(tag) ;
  bottone = document.getElementById(button) ;
  if (elemento.style.display == "none")	{
    elemento.style.display = "";
	bottone.style.background= "url(img/icone/arrow_d.gif) 0 3px no-repeat";
  } else {
    elemento.style.display = "none";
	bottone.style.background = "url(img/icone/arrow_r.gif) 0 3px no-repeat";
  }
}
function displaynone(tag){
  elemento = document.getElementById(tag) ;
  elemento.style.visibility = "hidden";
}
function chcolor(tag, colore){
  elemento = document.getElementById(tag) ;
  elemento.style.backgroundColor = colore;
}
