// JavaScript Document
	var modifica;
	var alteredColor="";
	var alteredFontWeight="";
	var alteredBackgroundColor="";
	function setUnAlteredInput(obj) {
		obj.style.color="";
		if (obj.type!="radio") obj.style.backgroundColor="";
		if (obj.className=="priorita") obj.style.backgroundColor="";
		if(obj.parentNode.className=="radiogroup") {
			obj.parentNode.style.color="";
			obj.parentNode.style.fontWeight="";
		}
		if (obj.multiple)
			setUnAlteredInput(document.getElementById(obj.id + "omi"));
	}

	function setAlteredInput(obj) {
		modifica=true;
		if (document.getElementById("Submit")) document.getElementById("Submit").disabled=false;		
		obj.style.color=alteredColor;
		if (obj.type!="radio") obj.style.backgroundColor=alteredBackgroundColor;
		if (obj.className=="priorita") obj.style.backgroundColor="#C8FFC7";
		//obj.style.fontWeight="bold";
		if(obj.parentNode.className=="radiogroup") {
			obj.parentNode.style.color=alteredColor;
			obj.parentNode.style.fontWeight=alteredFontWeight;
		}
		if (obj.multiple)
			updateMultiOptLabel(obj);
		showPriorita(obj);
	}
	
	function checkKey() {
		if (!((window.event.keyCode>=("0").charCodeAt(0) && window.event.keyCode<=("9").charCodeAt(0)) ||
			 window.event.keyCode==(",").charCodeAt(0) || window.event.keyCode==(".").charCodeAt(0)
			 || window.event.keyCode==("+").charCodeAt(0) || window.event.keyCode==("-").charCodeAt(0)))
			window.event.returnValue=false;
		else {
			setAlteredInput(window.event.srcElement);
		}
	}
	
	function inputChange() {
		setAlteredInput(window.event.srcElement);
	}
	
	function showPriorita(obj) {
		var ar = obj.id.split("_")
		if (ar.length>2) {
			var id=ar[0] + "_" + ar[1] + "_P";
			if (document.getElementById(id))
				document.getElementById(id).style.display="inline";
		}
	}

	function checkUnload() {
		if (modifica) 
			if (confirm('Le ultime modifiche non sono state registrate. Premere OK per confermarle, Annulla per ignorarle.'))
				document.getElementById('Submit').click();
				
	}
	
	function show(id) {
		document.getElementById(id).style.display="block";
		document.getElementById(id).style.top=-document.getElementById(id).clientHeight + 5;
		document.getElementById(id).style.left=-document.getElementById(id).clientWidth + 5;
	}
	
	function hide(id) {
		document.getElementById(id).style.display="none";
	}
	
	function changeDynaSelect(myobj) {
		//alert(myobj);
		var obj=eval("DynOpt_" + myobj.id);
		if (myobj.selectedIndex!=-1)
			obj.defaultValue=myobj.value;
		else
			obj.defaultValue=null;
		var parentSel = document.getElementById(obj.parentID);
		var myKey;
		findKey: for (key in obj.opt)
			for (i=1;i<obj.opt[key].length;i++)
				if (obj.opt[key][i].split("|")[0]==obj.defaultValue) {
					myKey=key;
					break findKey;
				}
		for (i=1;i<parentSel.options.length;i++)
			if (parentSel.options[i].value==myKey) {
				if (!parentSel.options[i].selected) {
					parentSel.options[i].selected=true;
					setAlteredInput(parentSel);
					fillSelect(obj);
				}
				break;
			}
		
	}
	
	function fillSelect(obj) {
		var seleCont = document.getElementById(obj.myID).parentNode;
		var parSele = document.getElementById(obj.parentID);

		//sele.innerHTML="";
		var sele = document.createElement('select');
		sele.name = obj.myID;
		sele.id = obj.myID;
		sele.multiple = true;
		sele.options.length=0;
		
		seleCont.innerHTML='';
		seleCont.appendChild(sele);
		var keys, key;
		var p=0;
		if (parSele.tagName=='select') {
			if ((parSele.selectedIndex==-1) || (parSele.options[parSele.selectedIndex].value=="")) {
				keys=obj.opt;
			} else {
				keys = new Array();
				for (i=0;i<parSele.options.length;i++) {
					if (parSele.options[i].selected)
						keys[parSele.options[i].value]="";
				}
			} 
		} else {
			parSele = $("input[name="+obj.parentID+"[]]");
			keys = new Array();
			for (i=0;i<parSele.length;i++) {
				if (parSele[i].checked)
					keys[parSele[i].value]="";
			}
			if (keys.length==0)
				keys=obj.opt;
		}

		//obj.defaultValue=null;
		if (obj.initLabel) {
			new_opt = new Option(obj.initLabel,"");
			sele.options[p]=new_opt;
			p++;
		}
		
		for (key in keys) {
			new_opt = document.createElement('optgroup');
			if (parSele.tagName=='select') {
				for	(pi=0;pi<parSele.options.length;pi++)
					if (parSele.options[pi].value==key) {
						new_opt.label = parSele.options[pi].text;
						break;
					}
			} else {
				for (pi=0;pi<parSele.length;pi++) {
					if (parSele[pi].value==key) {
						new_opt.label = parSele[pi].title;
						break;
					}
				}				
			}
			sele.appendChild(new_opt);
			if (obj.defaultValue) 
				var dV = obj.defaultValue.split(", ");			
			if (obj.opt[key])
			for (i=0;i<obj.opt[key].length;i++) {
				ele = obj.opt[key][i].split("|");
				new_opt = new Option(ele[1],ele[0]);
				if (obj.defaultValue) 
					for (j=0;j<dV.length;j++)
						if (dV[j]==ele[0]) {
							new_opt.selected=true;
						}
				sele.options[p]=new_opt;
				p++;
			}
		}
		
		/*if (sele.multiple) {
			sele.size=p;
			updateMultiOptLabel(sele);
		}*/
		
		$("#"+obj.myID+"").multiSelect({ oneOrMoreSelected: '*', noneSelected: '(qualsiasi)', selectAll: false, optGroupSelectable: false });
	}

	function updateMultiOptLabel(obj) {
		if (obj==null)
			obj=window.event.srcElement;
		var text = "";
		for (i=0;i<obj.options.length;i++)
			if (obj.options[i].selected)
				text += ", " + obj.options[i].text;				
		if (text.length>0)
			text = text.substr(2);
		document.getElementById(obj.id + "omi").value=text;
		document.getElementById(obj.id + "omi").title=text;
		setAlteredInput(document.getElementById(obj.id + "omi"));
	}
	
  function addOnChange(obj,evthand) {
	  oldEvt = obj.onchange;
	  if (typeof obj.onchange != 'function') {
		obj.onchange = function() {
		  evthand(obj);
		}
	  } else {
		obj.onchange = function() {
		  oldEvt();
		  evthand(obj);
		}
	  }
  }
  

  function numericUpDown_Up(id,max_val){
	  obj=document.getElementById(id);
	  if (max_val==null || obj.value<max_val) {
	  	obj.value++; 
		setAlteredInput(obj);
	  }
  }
  
  function numericUpDown_Down(id,min_val){
	  obj=document.getElementById(id);
	  if (min_val==null || obj.value>min_val) {
	  	obj.value--;
		setAlteredInput(obj);
	  }
  }
  
  function numericUpDown_KeyDown(min_val,max_val) {
		if (window.event.keyCode==38)
			numericUpDown_Up(window.event.srcElement.id,max_val);
		else if (window.event.keyCode==40)
			numericUpDown_Down(window.event.srcElement.id,min_val);	  
  }
  
  function numericUpDown_checkKey(min_val,max_val) {
		if (!((window.event.keyCode>=("0").charCodeAt(0) && window.event.keyCode<=("9").charCodeAt(0)) ||
			 window.event.keyCode==("+").charCodeAt(0) || window.event.keyCode==("-").charCodeAt(0)))
			window.event.returnValue=false;
		else
			setAlteredInput(window.event.srcElement)
  }
  
  function radioVoid() {
		window.event.srcElement.checked=false;
  }
  
  function switchDisplay(id) {
	obj = document.getElementById(id);
	if (obj.style.display=="none")
	  	obj.style.display="block";
	else
		obj.style.display="none";
  }
  
//document.body.onunload = checkUnload;


// codice Dream Weaver per preload immagini

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}