// JavaScript Document

var nomeCheck="text_scroller_slider";
//var nomeCheck="text_scroller_container";
var spaceToScroll = new Array();
var quanteRigheSlide = new Array();

function numeroSlider(tutto, togli) {
	num = tutto.slice(togli.length,tutto.length);
	return num;
}

azioniTextScroller = function(ref, cosa){
	if(cosa=='id')
		idBOX  = ref;
	else
		idBOX  = ref.attr('id');

	numero = numeroSlider(idBOX, nomeCheck);
	//alert(ref.attr('quanteRighe'))
	spazioSX = parseInt($('#'+idBOX).attr('spazioSX'));
	quanteRigheSlide[numero] = parseInt($('#'+idBOX).attr('quanteRigheOver'));
	
	ocontainer = $('#text_scroller_container'+numero);
	testo = ocontainer.html();
	ocontainer.html('<div id="text_scroller_content'+numero+'" style="position:absolute; top:0px;" class="text_scroller_contenuto">'+testo+'</div>')
	
	ocontent = $('#text_scroller_content'+numero);
	
	containerSize = jQuery.iUtil.getSize(ocontainer.get(0));
	containerInner = jQuery.iUtil.getClient(ocontainer.get(0));
	contentSize = jQuery.iUtil.getSize(ocontent.get(0));

	spaceToScroll[numero] = contentSize.hb - containerInner.h;
	if(spaceToScroll[numero]<0)
	{
		//cancello le robe e scrivo solo il testo;
		$("#text_scroller_big"+numero).html(testo);
	}
	else
	{
		$('#'+idBOX).append('<div class="ui-slider-handle"></div>');				
		cursore = $(".ui-slider-handle");
		
		cursoreH = $(cursore).css('height').replace("px","");
		$('#'+idBOX).css("border-top", cursoreH+"px solid "+$('#'+idBOX).css("background-color"))
		
		$('#'+idBOX).before('<div id="text_scroller_su'+numero+'" class="text_scroller_su"></div>');
		$('#'+idBOX).before('<div id="text_scroller_giu'+numero+'" class="text_scroller_giu"></div>');
		
		giu=$('#text_scroller_giu'+numero);
		su=$('#text_scroller_su'+numero);
		
		suH = parseInt($(su).css('height').replace("px",""));
		giuH = parseInt($(giu).css('height').replace("px",""));
		
		
		$('#'+idBOX)
			.css('top', (suH) + 'px')
			.css('left', (containerSize.wb + spazioSX) + 'px')
			.css('height', (containerSize.hb - suH - giuH - cursoreH)  + 'px');
	
		$(su)
			.css('top', '0px')
			.css('left', (containerSize.wb + spazioSX) +'px');
	
		$(giu)
			.css('top', (containerSize.hb - giuH) + 'px')
			.css('left', (containerSize.wb + spazioSX) +'px');
	
		val = (1-spaceToScroll[numero]/contentSize.hb) *containerInner.h;
		//alert(val);
		/*$(".ui-slider-handle")
			.css('height', (1-spaceToScroll[numero]/contentSize.hb) *containerInner.h  + 'px');*/
		//alert(1-spaceToScroll[numero]/contentSize.hb)
		
		attivascroller(idBOX); 
		
		$(giu).mouseover( function(){
			NUMTHIS = numeroSlider($(this).attr('id'), 'text_scroller_giu')
			valATT = $("#text_scroller_slider"+NUMTHIS).slider('option', 'value');
			$("#text_scroller_slider"+NUMTHIS).slider('option', 'value', (valATT-quanteRigheSlide[NUMTHIS]));
			scrollTesto('#text_scroller_content'+NUMTHIS, spaceToScroll[NUMTHIS],(valATT-quanteRigheSlide[NUMTHIS]));
			
			interval = setInterval(function() {
				valATT = $("#text_scroller_slider"+NUMTHIS).slider('option', 'value');
				$("#text_scroller_slider"+NUMTHIS).slider('option', 'value', (valATT-quanteRigheSlide[NUMTHIS]));
				scrollTesto('#text_scroller_content'+NUMTHIS, spaceToScroll[NUMTHIS],(valATT-quanteRigheSlide[NUMTHIS]));
			}, 60);		
		});
		
		$(giu).mouseout( function(){
			clearInterval(interval); 
			interval = 0;
		});
		
		$(su).mouseover( function(){
			NUMTHIS = numeroSlider($(this).attr('id'), 'text_scroller_su')

			valATT = $("#text_scroller_slider"+NUMTHIS).slider('option', 'value');
			$("#text_scroller_slider"+NUMTHIS).slider('option', 'value', (valATT+quanteRigheSlide[NUMTHIS]));
			scrollTesto('#text_scroller_content'+NUMTHIS, spaceToScroll[NUMTHIS],(valATT+quanteRigheSlide[NUMTHIS]));
			
			interval = setInterval(function() {
				valATT = $("#text_scroller_slider"+NUMTHIS).slider('option', 'value');
				$("#text_scroller_slider"+NUMTHIS).slider('option', 'value', (valATT+quanteRigheSlide[NUMTHIS]));
				scrollTesto('#text_scroller_content'+NUMTHIS, spaceToScroll[NUMTHIS],(valATT+quanteRigheSlide[NUMTHIS]));
			}, 60);		
		});
		
		$(su).mouseout( function(){
			clearInterval(interval); 
			interval = 0;
		});
	}
}

attivascroller = function(idBOX) {
	$('#'+idBOX).slider( {
			orientation: 'vertical',
			min:0,
			max:100,
			value:100,
			slide : function(event, ui)
			{
				NUMTHIS = numeroSlider(idBOX, nomeCheck);			
				scrollTesto('#text_scroller_content'+NUMTHIS, spaceToScroll[NUMTHIS], ui.value);
			}
		}
	);
}

scrollTesto = function(idElemento, valoreScroll, perc) {
	if(perc<2)
		valore = - valoreScroll;
	else if(perc>99)
		valore = 0;
	else
		valore = - valoreScroll * (100-perc) / 100;
	$(idElemento).css('top', valore + 'px');
}


$(document).ready(function() {
	cerca = $("* [id^='"+nomeCheck+"']");
	if(cerca!=null)
	{
		$("* [id^='"+nomeCheck+"']").each(function(i){
			azioniTextScroller($(this),'ref');
		})
	}
});
