FO = true;
//onLoad="";
//window.onload = new Function("eval(onLoad)");

bWinIE = navigator.platform.indexOf("Mac")==-1 && navigator.userAgent.toLowerCase().indexOf("msie") != -1;

onLoad+="inizControlli();";
function inizControlli() {
  domanda = new Object();
  domande = new Array();
  for (var i=0; i<document.forms[0].elements.length; i++) {
  	var elem = document.forms[0].elements[i];
	if (elem.type == "radio" && bWinIE) {
	  if (!elem.onmousedown) elem.onmousedown = new Function("this.checked = !this.checked");
	  elem.onclick = new Function("return false");
	}
	if (elem.type == "text" || elem.type == "textarea") {
	  var gruppo = elem.name.split("R")[0], numRiga = elem.name.split("R")[1];
	  elem2 = document.forms[0][gruppo];
	  if (elem2) {
		if (elem2.length) for (var j=0; j<elem2.length; j++) elem2[j].onmousedown = new Function("altro(this,"+ numRiga +");");
		else elem2.onmousedown = new Function("altro(this,"+ numRiga +");");
		for (var j=0; j<=numRiga; j++) if (document.forms[0][gruppo+"R"+j]) document.forms[0][gruppo+"R"+j].onmousedown = new Function("altro(this,"+ numRiga +");");
	  }
	}
	if (elem.name.split("R")[0].indexOf("C")==-1) {
	  elem.onmousedown = new Function("domandaDoppia(this);");
	  domandaDoppiaEl(elem.type == "radio"? elem.name.split("R")[0]+elem.value: elem.name.split("R")[0]+"C"+elem.name.split("C")[1], elem.checked);
	}
	if (elem.formula) {
	  if (elem.formula.indexOf("disColonna;")!=-1) {
	    if (elem.checked) disabilitaCol(elem.name);
	    elem.onclick = new Function("disabilitaCol('"+ elem.name +"')");
	  }
	  if ((elem.type=="textarea" || elem.type=="text") && elem.maxLength) {
	    if(elem.formula.indexOf("carMaxCasella;")!=-1) carMax(elem.name, elem.maxLength);
	    elem.onkeypress = elem.onkeydown = elem.onkeyup = elem.onmouseover = elem.onfocus = new Function("carMax('"+ elem.name +"', "+elem.maxLength+")");
	  }
	}
  }
}

function altro(elem, num) {
  var gruppo = elem.name.split("R")[0];
  var elem2 = document.forms[0][gruppo];
  if (elem2.length) {for (var j=0; j<elem2.length; j++) if (elem2[j]!=elem) elem2[j].checked = false;}
  else if (elem2!=elem) elem2.checked = false;
  for (var j=0; j<=num; j++) if (document.forms[0][gruppo+"R"+j]) document.forms[0][gruppo+"R"+j].value="";
  if (elem.type == "radio") elem.checked = !elem.checked;
}

function domandaDoppia (elem) {
  if (elem.type == "radio") {
    elem.checked = !elem.checked;
	elemDD = document.forms[0][elem.name];
	var gruppo = elem.name.split("R")[0];
	for (var i=0; i<elemDD.length; i++) domandaDoppiaEl(gruppo + elemDD[i].value, elemDD[i].checked);
  }
  else domandaDoppiaEl(elem.name.split("R")[0]+"C"+elem.name.split("C")[1], !elem.checked);
}

function domandaDoppiaEl(gruppo, abilita) {
  elem2 = document.forms[0][gruppo];
  var i=0;
  if (elem2) for (; i<elem2.length; i++) elem2[i].disabled = !abilita;
  for (var j=0; j<=i+10 || document.forms[0][gruppo+"R"+(i=j)]; j++) if (document.forms[0][gruppo+"R"+j]) document.forms[0][gruppo+"R"+j].disabled = !abilita;
}

function disabilitaCol(elemName) {
  if (elemName.indexOf('$')==-1) var gruppo = elemName.split("R")[0] +"R";
  else {
    var gruppo = elemName.split("C")[0] +"C";
    var dcDoppia = true;
  }
  for (var j=1; document.forms[0][gruppo+j]; j++) if (gruppo+j != elemName) {
    document.forms[0][gruppo+j].disabled = document.forms[0][elemName].checked;
    if (dcDoppia) domandaDoppiaEl(elemName.split("R")[0]+"C"+j, document.forms[0][gruppo+j].checked && !document.forms[0][elemName].checked);
  }
}

function disabilitaColMR(gruppo,nRisposte) {
  var nRispC = 0, elem;
  for (var j=1; elem = document.forms[0][gruppo+"R"+j]; j++) if ((elem.type == "checkbox" && elem.checked) || (elem.type.substr(0,4) == "text" && elem.value!="")) nRispC++;
  for (var j=1; elem = document.forms[0][gruppo+"R"+j]; j++) if ((elem.type == "checkbox" && !elem.checked) || (elem.type.substr(0,4) == "text" && elem.value=="")) document.forms[0][gruppo+"R"+j].disabled = (nRispC >= nRisposte);
}

function maxRisposte(gruppo, nRisposte) {
  var elem;
  for (var j=1; elem = document.forms[0][gruppo+"R"+j]; j++) {
    if (elem.type == "checkbox") {
      disabilitaColMR(gruppo,nRisposte);
      elem.onclick = new Function("disabilitaColMR('"+ gruppo +"',"+ nRisposte +")");
    }
    if (elem.type.substr(0,4) == "text") {
      disabilitaColMR(gruppo,nRisposte);
      elem.onchange = new Function("disabilitaColMR('"+ gruppo +"',"+ nRisposte +")");
    }
  }  
}

function carMax(elemName, nMax) {
  var x = document.forms[0][elemName].value.length
  if (document.forms[0]["carMax"+elemName]) document.forms[0]["carMax"+elemName].value = nMax - x;
  if (x>nMax) {
    alert("Attenzione: puoi inserire al massimo "+ nMax +" caratteri!");
    document.forms[0][elemName].value = document.forms[0][elemName].value.substring(0, nMax);
    if (document.forms[0]["carMax"+elemName]) document.forms[0]["carMax"+elemName].value = 0;
  }
}
