var toRound = new Array();
var primopiano = 0;
var ie = (navigator.appName == 'Microsoft Internet Explorer');



// QUI VIENE RIPORTATO IL BORDO ARROTONDATO PER IE
// 
// USO: creare un div con le proprietà che vogliamo. 
// onresize="oncontentready(this,'v08vnSVo78t4JfjH')" (il secondo paramentro deve essere diverso dal nome della classe del DIV)
// border-color e border-width colore e spessore. 
// border-radius: incidenza curva
// background-color: il colore dello sfondo. Okkio: transparent funziona!!!
// 


// findPos() borrowed from http://www.quirksmode.org/js/findpos.html
function findPos(obj) {
	var curleft = curtop = 0;

	if (obj.offsetParent) {
		do {
			curleft += obj.offsetLeft;
			curtop += obj.offsetTop;
		} while (obj = obj.offsetParent);
	}

	return({
		'x': curleft,
		'y': curtop
	});
}

var alreadyCSSinserted= false;
function oncontentready(obj, classID) {
	if (obj == null){return;}  //nothing to do
	if (obj.parentElement.style.display=='none'){return;}  //nothing to do
	var objShadow = obj.childNodes[0];
	if (!document.namespaces.v) {document.namespaces.add("v", "urn:schemas-microsoft-com:vml"); } //add shapes;

	obj.className = obj.className.concat(' ', classID);
	var arcSize = Math.min(parseInt(obj.currentStyle['-moz-border-radius'] ||
	                                obj.currentStyle['-webkit-border-radius'] ||
	                                obj.currentStyle['border-radius'] ||
	                                obj.currentStyle['-khtml-border-radius']) /
	                       Math.min(obj.offsetWidth, obj.offsetHeight), 1);
	if (arcSize == 0){arcSize = 20}
	var fillColor = objShadow.currentStyle.backgroundColor;
	var fillSrc = objShadow.currentStyle.backgroundImage.replace(/^url\("(.+)"\)$/, '$1');
	var strokeColor = objShadow.currentStyle.borderColor;
	var strokeWeight = parseInt(objShadow.currentStyle.borderWidth);
	var stroked = 'true';
	if (isNaN(strokeWeight)) {
		strokeWeight = 0;
		strokeColor = fillColor;
		stroked = 'false';
	}

	obj.style.background = 'transparent'; // transparent
	obj.style.borderColor = 'transparent'; // transparent
	// Find which element provides position:relative for the target element (default to BODY). That element MUST have a z-index
/*	var el = obj;
	var limit = 100, i = 0;
	while ((typeof(el) != 'unknown') && (el.currentStyle.position != 'relative') && (el.tagName != 'BODY')) {
		el = el.parentElement;
		i++;
		if (i >= limit) { return(false); }
	}
*/
	el = obj.parentElement;
	var el_zindex = parseInt(el.currentStyle.zIndex);
	if (isNaN(el_zindex)) {el.style.zIndex = '0';el_zindex = 0; } //if no zIndex given, set it to 0
	var rect_size = {
		'width': obj.offsetWidth - strokeWeight,
		'height': obj.offsetHeight - strokeWeight 
	};
 
 	
	el.style.float='left'; 
	var el_pos = findPos(el); // obj
	var this_pos = findPos(obj);

	//alert (obj.currentStyle.marginLeft);
	//alert('Parent: ' + el_pos.x + ":" + el_pos.y + '\n' + 'Child: ' + this_pos.x + ":" + this_pos.y + '\nstrokeWeight: ' +strokeWeight  );

	var rect_pos_y = this_pos.y + (0.5 * strokeWeight) - el_pos.y;
	var rect_pos_x = this_pos.x + (0.5 * strokeWeight) - el_pos.x;

	//alert('Rect: ' + rect_pos_x + ":" + rect_pos_y)
	var rect = document.createElement('v:roundrect');
	rect.arcsize = arcSize +'px';
	rect.strokecolor = strokeColor;
	rect.strokeWeight = strokeWeight +'px';
	rect.stroked = stroked;
	rect.style.display = 'block';
	rect.style.position = 'absolute';
	rect.style.top = rect_pos_y +'px';
	rect.style.left = rect_pos_x +'px';
	rect.style.width = rect_size.width +'px';
	rect.style.height = rect_size.height +'px';
	rect.style.antialias = true;
	//document.title = 'Rect: Left: ' + rect.style.left + " Top: " + rect.style.top+ " Height: " + rect.style.height +" Width: " + rect.style.width

	var fill = document.createElement('v:fill');
	fill.opacity= 1.0;	
	fill.color = fillColor;
	if ((fillColor == 'transparent' || fillColor == '') && fillSrc == '' ){
		fill.opacity= 0.0;	
	}
	fill.type = 'tile';
	if (fillSrc != ''  && fillSrc != 'none'){
		fill.type = 'frame';
		fill.src = fillSrc;
	}

	rect.appendChild(fill);
	el.appendChild(rect);
	//obj.appendChild(rect);

	// IMPOSTO LO ZINDEX.
	
	for (var i=0; i< obj.children.length; i++){
		obj.children[i].style.zIndex = el_zindex;
	}
	rect.style.zIndex = el_zindex - 1;
	
	
	if (!alreadyCSSinserted){
		//var css = el.document.createStyleSheet();
		var css = document.createElement('STYLE');
		css = document.documentElement.firstChild.appendChild(css)
		css.type="text/css";
		css.styleSheet.addRule("v\\:roundrect", "behavior: url(#default#VML)");
		css.styleSheet.addRule("v\\:fill", "behavior: url(#default#VML)");
		alreadyCSSinserted = true;
	}
/*
	isIE6 = /msie|MSIE 6/.test(navigator.userAgent);
	// IE6 doesn't support transparent borders, use padding to offset original element
	if (isIE6 && (strokeWeight > 0)) {
		obj.style.borderStyle = 'none';
		obj.style.paddingTop = parseInt(obj.currentStyle.paddingTop || 0) + strokeWeight;
		obj.style.paddingBottom = parseInt(obj.currentStyle.paddingBottom || 0) + strokeWeight;
	}
*/
}

 
 
function resize(){
	if (ie){
		// FACCIO UN PO' DI PULIZIA
		
		for (var i=document.getElementsByTagName('roundrect').length -1; i>=0; i--){
			var tmp = document.getElementsByTagName('roundrect')[i];
			tmp.parentNode.removeChild(tmp);
		}
		toRound = new Array();
		for (var i= document.all.length -1; i>=0 ; i--){
			if (document.all[i].className != ''){
				if (document.all[i].className.replace(' rounded','') != document.all[i].className) {
					var classID = 'v08vnSVo78t4JfjHall' + i;
					var regexp = new RegExp(' ?'+ classID); 
	  			document.all[i].className = document.all[i].className.replace(regexp,'');
					toRound.push(new Array(document.all[i],classID));
				}
			}		
		}
		
	
		for (var i = toRound.length -1; i>=0; i--) {
			var elem = toRound[i];
			oncontentready(elem[0],elem[1]);
		}
	}
	//cambia_copertina (copertina)
}

function scroll(elem,scroll,verso){
	if (verso == undefined || 'NSWE'.indexOf(verso) == 0 ) {alert('Errore nell\'indicazione del verso.\nValori ammessi: N S W E '); return;}
	var speed = 10; // e' espressa in valori da 1 a 100. 100 = piano 1 = veloce
	var cicli = speed;
	for (i=1; i<= (scroll/ speed); i++) {
		pause(speed);
		if (verso == 'N'){
			document.getElementById(elem).scrollTop += -1 *( speed)
		} else if (verso == 'S'){
			document.getElementById(elem).scrollTop += +1 *( speed)
		} else if (verso == 'W'){
			document.getElementById(elem).scrollLeft += -1 *( speed)
		} else if (verso == 'E'){
			document.getElementById(elem).scrollLeft += +1 *( speed)
		}
	}
}
	 
function pause(millis){
	var date = new Date();
	var curDate = null;
	do { curDate = new Date(); }
	while(curDate-date < millis);
} 

function cambia_primopiano_init(){
	for (var i=0; i< document.getElementById('mod_primopiano_esterno_scrollable').children.length; i++) {
		var elem = document.getElementById('mod_primopiano_esterno_scrollable').children[i];
		elem.style.display='none';
	}
}
function cambia_primopiano(selezionato){
	
	//aggiorna colore box per titoli primo piano
	document.getElementById('ppmenu_box_'+primopiano).className="";
	document.getElementById('ppmenu_box_'+selezionato).className="mod_primopiano_selected";
	
	//aggiorna il primo piano
	document.getElementById('mod_primopiano_esterno_scrollable').children[primopiano].style.display='none';
	document.getElementById('mod_primopiano_esterno_scrollable').children[selezionato].style.display='block';
	document.getElementById('mod_primopiano_esterno_scrollable').style.height=document.getElementById('mod_primopiano_esterno_scrollable').children[selezionato].style.height;
	primopiano = selezionato;
}
 



//setInterval("cambia_copertina((copertina + 1) % 6)", 10000);
/*
if (!window.getComputedStyle) {
	window.getComputedStyle = function(el, pseudo) {
		this.el = el;
		this.getPropertyValue = function(prop) {
		var re = /(\-([a-z]){1})/g;
		if (prop == 'float') prop = 'styleFloat';
			if (re.test(prop)) {
				prop = prop.replace(re, function () {
					return arguments[2].toUpperCase();
				});
			}
			return el.currentStyle[prop] ? el.currentStyle[prop] : null;
		}
		return this;
	}
}*/


function mostraNascondi(elem, evento){
	if (evento){
		if (window.event){
			window.event.cancelBubble = true;
		} else {
			evento.stopPropagation()
		}
	}
	if(elem){
		mostra(elem,(elem.parentNode.children[2].style.display == 'none'));
	}
}

function mostra(elem, mostra) {
	if (mostra){
		elem.parentNode.children[2].style.display = '';
		if (!document.all){elem.textContent = '[-] '}else{elem.innerText = '[-] '}
	}else{
		elem.parentNode.children[2].style.display = 'none';
		if (!document.all){elem.textContent = '[+] '}else{elem.innerText = '[+] '}
	}
}		

function getStyle(elem,stile){
  if (window.getComputedStyle)
                 return window.getComputedStyle(elem).getPropertyValue(stile);
  else if (elem.currentStyle)
                 if (stile == 'font-size'){stile='fontSize';}
                 return elem.currentStyle[stile];
}

