// JavaScript Document
var ext = "jpg"; //estensione dei files nelle cartelle di template
var scrollbar_fit = 0; //Settare a 0 se la scrollbar deve scomparire se non necessaria. Settare a 1 se la scrollbar è sempre visibile.


//NON MODIFICARE OLTRE QUESTO PUNTO
var name = "javagraphscroll.5.6.js";
var punt;
var mtop = new Array();
var y;
var yrem;
var flag = 0;
var maxmar = new Array();
var index;
var height = new Array()
var javagraphscroll_template_dir;
$(window).load(function(){
	javagraphscroll_load();
	javagraphscroll_check();
});
function javagraphscroll_set(i) {

		if (parseInt($(".javagraphscroll:eq("+i+") .javagraphscroll_testo").height()) < parseInt($(".javagraphscroll:eq("+i+") .javagraphscroll_contenitore").height())) {
			if (scrollbar_fit == 0) { return false; }
			$(".javagraphscroll:eq("+i+") .javagraphscroll_testo").css("height",$(".javagraphscroll:eq("+i+") .javagraphscroll_contenitore").height());
		}
		$(".javagraphscroll:eq("+i+") .javagraphscroll_su").css("width",$(".javagraphscroll:eq("+i+") .javagraphscroll_su > img").width());
		$(".javagraphscroll:eq("+i+") .javagraphscroll_bar").css("width",$(".javagraphscroll:eq("+i+") .javagraphscroll_su").width());
		$(".javagraphscroll:eq("+i+") .javagraphscroll_barcontenitor").css("width",$(".javagraphscroll:eq("+i+") .javagraphscroll_su").width());
		$(".javagraphscroll:eq("+i+") .javagraphscroll_barcontenitor").css("background",$(".javagraphscroll:eq("+i+")").css("background"));
		$(".javagraphscroll:eq("+i+") .javagraphscroll_scroller").css("width",$(".javagraphscroll:eq("+i+") .javagraphscroll_su").width());
		if ($(".javagraphscroll:eq("+i+") .javagraphscroll_su").css("width").replace("px","") < 60) {
			$(".javagraphscroll:eq("+i+") .javagraphscroll_contenitore").css("width",(parseInt($(".javagraphscroll:eq("+i+") .javagraphscroll_contenitore").css("width")) - parseInt($(".javagraphscroll:eq("+i+") .javagraphscroll_su").width())+"px"));
		}
		$(".javagraphscroll:eq("+i+") .javagraphscroll_testo").css("width",$(".javagraphscroll:eq("+i+") .javagraphscroll_contenitore").css("width"));
		$(".javagraphscroll:eq("+i+") .javagraphscroll_bar").css("height",(parseInt($(".javagraphscroll:eq("+i+") .javagraphscroll_barcontenitor").height()) - parseInt($(".javagraphscroll:eq("+i+") .javagraphscroll_su").height()) - parseInt($(".javagraphscroll:eq("+i+") .javagraphscroll_giu").height())));
		perc = parseInt((100*parseInt($(".javagraphscroll:eq("+i+") .javagraphscroll_contenitore").height()))/ parseInt($(".javagraphscroll:eq("+i+") .javagraphscroll_testo").height()));
		height[i] = parseInt((perc * parseInt($(".javagraphscroll:eq("+i+") .javagraphscroll_bar").height()))/100);
		$(".javagraphscroll:eq("+i+") .javagraphscroll_bartop").css("height",height[i]+"px");
		$(".javagraphscroll:eq("+i+") .javagraphscroll_barbottom").css("height",height[i]+"px");
		$(".javagraphscroll:eq("+i+") .javagraphscroll_scroller").css("height",height[i]+"px");
		maxmar[i] = parseInt($(".javagraphscroll:eq("+i+") .javagraphscroll_bar").height()) - height[i];	
}
function javagraphscroll_load() {
	numeroscroll = $(".javagraphscroll").size();
	var i;
	for(i=0;i<numeroscroll;i++) {
		$(".javagraphscroll:eq("+i+")").css("overflow","hidden");
		var template = ($(".javagraphscroll:eq("+i+")").attr("class")).replace("javagraphscroll","").replace("javagraphscroll_template","").replace(" ","");
		if (template) {
			javagraphscroll_template_dir = 	"javagraphscroll/template/"+template+"/";
		}
		else { javagraphscroll_template_dir = "javagraphscroll/template/1/"; }
		mtop[i] = 0;
		var content = "<div class=\"javagraphscroll_contenitore\" id=\"javagraphscroll"+i+"\" style=\"height:"+$(".javagraphscroll:eq("+i+")").css("height")+"; width:"+parseInt($(".javagraphscroll:eq("+i+")").css("width"))+"px; overflow:hidden; float:left;\"><div class=\"javagraphscroll_testo\">";
		content += $(".javagraphscroll:eq("+i+")").html();
		content += "</div></div>";
		content += "<div style=\"float:left; height:"+$(".javagraphscroll:eq("+i+")").css("height")+";\" id=\"javagraphscroll"+i+"\" class=\"javagraphscroll_barcontenitor\"><div class=\"javagraphscroll_su\"><img src='"+javagraphscroll_template_dir+"up."+ext+"'></div><div class=\"javagraphscroll_bar\" style=\"background:url("+javagraphscroll_template_dir+"barbackground."+ext+") repeat-y;\"><div class=\"javagraphscroll_spacer\" style=\"height:0px; font-size:0px;\"></div><div class=\"javagraphscroll_scroller\" style=\"overflow:hidden; background:url("+javagraphscroll_template_dir+"barpattern."+ext+") repeat-y;\"><div style=\"background:url("+javagraphscroll_template_dir+"bartop."+ext+") no-repeat top; height:auto; font-size:0px;\" class=\"javagraphscroll_bartop\"><div style=\"background:url("+javagraphscroll_template_dir+"barbottom."+ext+") no-repeat bottom; height:0px; font-size:0px;\" class=\"javagraphscroll_barbottom\"></div></div></div></div><div class=\"javagraphscroll_giu\" ><img src='"+javagraphscroll_template_dir+"down."+ext+"'></div><div style=\"clear:both\"><!-- --></div>";
		$(".javagraphscroll:eq("+i+")").html(content); 
		javagraphscroll_set(i);
	}
	$(".javagraphscroll_su").mousedown(function () {
		index = $(this).parent().get(0).id.replace("javagraphscroll",""); //trovo l'index del javagraphscroll_testo cliccato
		partetimeout(1,index); return false;
	});
	$(".javagraphscroll_su").mouseup(function () {
		if(punt) { clearInterval(punt); }
		if (flag) { stopscroll(); }
		return false;
	});	
	$(".javagraphscroll_su").mouseout(function () {
		if(punt) { clearInterval(punt); }
		return false;
	});	
	$(".javagraphscroll_giu").mousedown(function () {
		index = $(this).parent().get(0).id.replace("javagraphscroll",""); //trovo l'index del javagraphscroll_testo cliccato
		partetimeout(2); return false;
	});
	$(".javagraphscroll_giu").mouseup(function () {
		if(punt) { clearInterval(punt); }
		if (flag) { stopscroll(); }
		return false;
	});	
	$(".javagraphscroll_giu").mouseout(function () {
		if(punt) { clearInterval(punt); }
		return false;
	});	
	$(".javagraphscroll_scroller").mousedown(function () { index = $(this).parent().parent().get(0).id.replace("javagraphscroll",""); yrem=y; flag=1; return false;});
	$(".javagraphscroll_scroller").mouseup(function () { stopscroll(); return false; });
	
	$(".javagraphscroll_testo").mouseover(function () { if (!flag) { index = $(this).parent().get(0).id.replace("javagraphscroll",""); } });
	$(".javagraphscroll_testo").click(function () { if (!flag) { index = $(this).parent().get(0).id.replace("javagraphscroll",""); } });
	$(".javagraphscroll_testo").bind("mouseenter", function(e){ if (!flag) { index = $(this).parent().get(0).id.replace("javagraphscroll",""); } });
	
	$("html").mouseup(function () { if (flag) { stopscroll(); }});

	$('.javagraphscroll_testo').mousewheel(function(event, delta) {
		if (delta > 0)
			sposta(1);
		else if (delta < 0)
			sposta(2)
		return false; // prevent default
	});


	
	$("html").mousemove(function(e) {
		spost = (mtop[index]+y-yrem);
		y = e.pageY;
		if(flag) {
			if (spost > maxmar[index]) { spost = maxmar[index]; }
			if (spost < 0) { spost = 0; }
			if((spost <= maxmar[index]) && (spost >= 0)) { 
				$(".javagraphscroll:eq("+index+") .javagraphscroll_spacer").css("height",spost+"px");
				spostajavagraphscroll_testo();
			}
		}
	});
};
function sposta(verso) {
	var unperc = parseInt(parseInt($(".javagraphscroll:eq("+index+") .javagraphscroll_bar").height())/50);
	if(verso == 1) { newmartop = parseInt($(".javagraphscroll:eq("+index+") .javagraphscroll_spacer").css("height")) - unperc; }
	else { newmartop = parseInt($(".javagraphscroll:eq("+index+") .javagraphscroll_spacer").css("height")) + unperc;  }
	if (newmartop > maxmar[index]) { newmartop = maxmar[index]; clearInterval(punt); }
	if (newmartop < 0) { newmartop = 0; clearInterval(punt); }
	if ((newmartop >= 0) && (newmartop <= maxmar[index])) {
		$(".javagraphscroll:eq("+index+") .javagraphscroll_spacer").css("height",newmartop+"px");
		mtop[index] = newmartop;
		spostajavagraphscroll_testo();
	}
	else { if(punt) { clearInterval(punt); }  }
}
function partetimeout(verso) {
	sposta(verso);
	if(punt) { clearInterval(punt); }
	punt = setInterval("sposta("+verso+");", 50);
}
function stopscroll() {
	flag=0;
	mtop[index] = parseInt($(".javagraphscroll:eq("+index+") .javagraphscroll_spacer").css("height"));
}
function spostajavagraphscroll_testo() {
	test = parseInt(((parseInt($(".javagraphscroll:eq("+index+") .javagraphscroll_spacer").css("height")) * 100) / (parseInt($(".javagraphscroll:eq("+index+") .javagraphscroll_bar").height())-height[index])));
	meno = parseInt((test * (parseInt($(".javagraphscroll:eq("+index+") .javagraphscroll_testo").height()) - parseInt($(".javagraphscroll:eq("+index+")").height())))/100);
	//meno = parseInt((test * parseInt($(".javagraphscroll:eq("+index+") .javagraphscroll_contenitore").height()))/100);
	$(".javagraphscroll:eq("+index+") .javagraphscroll_testo").css("marginTop","-"+meno+"px");

}
function javagraphscroll_check() {
	numeroscroll = $(".javagraphscroll").size();
	var i;
	var flag1 = 0;
	for(i=0;i<numeroscroll;i++) {
		if(($(".javagraphscroll:eq("+i+") .javagraphscroll_su").css("width").replace("pt","").replace("px","") == "0") || ($(".javagraphscroll:eq("+i+") .javagraphscroll_su").css("width").replace("pt","").replace("px","") > 50)) {
			javagraphscroll_set(i);
			flag1 = 1;
		}
	}
	if (flag1) {
		setTimeout("javagraphscroll_check()",200);
	}
}	