
// this function generates the actual toolbar buttons with localized text
// we use it to avoid creating the toolbar where javascript is not enabled
function addButton(imageFile, speedTip, tagOpen, tagClose, sampleText) {
    speedTip=escapeQuotes(speedTip);
    tagOpen=escapeQuotes(tagOpen);
    tagClose=escapeQuotes(tagClose);
    sampleText=escapeQuotes(sampleText);
    document.write("<a href=\"javascript:insertTags");
    document.write("('"+tagOpen+"','"+tagClose+"','"+sampleText+"');\">");
    document.write("<img width=\"24\"  src=\""+imageFile+"\" border=\"0\" ALT=\""+speedTip+"\" TITLE=\""+speedTip+"\">");
    document.write("</a>");
    return;
}

function escapeQuotes(text) {
    var re=new RegExp("'","g");
    text=text.replace(re,"\\'");
    re=new RegExp('"',"g");
    text=text.replace(re,'&quot;');
    re=new RegExp("\\n","g");
    text=text.replace(re,"\\n");
    return text;
}

function escapeQuotesHTML(text) {
    var re=new RegExp('"',"g");
    text=text.replace(re,"&quot;");
    return text;
}

// apply tagOpen/tagClose to selection in textarea,
// use sampleText instead of selection if there is none
// copied and adapted from phpBB

var modval;
function insertTags(tagOpen, tagClose, sampleText, a) {
    var pippo = leggielemento(modval) ;
    // var txtarea = document.modval.valore;
    var txtarea = document.getElementById(pippo);
    // IE
    if(document.selection) {
	var theSelection = document.selection.createRange().text;
	if(!theSelection) { theSelection=sampleText;}
	txtarea.focus();
	if(theSelection.charAt(theSelection.length - 1) == " "){// exclude ending space char, if any
	    theSelection = theSelection.substring(0, theSelection.length - 1);
	    document.selection.createRange().text = tagOpen + theSelection + tagClose + " ";
	} else {
	    document.selection.createRange().text = tagOpen + theSelection + tagClose;
	}
	// Mozilla -- disabled because it induces a scrolling bug which makes it virtually unusable
    } else if(txtarea.selectionStart || txtarea.selectionStart == '0') {
 	var startPos = txtarea.selectionStart;
	var endPos = txtarea.selectionEnd;
	var scrollTop=txtarea.scrollTop;
	var myText = (txtarea.value).substring(startPos, endPos);
	if(!myText) { myText=sampleText;}
	if(myText.charAt(myText.length - 1) == " "){ // exclude ending space char, if any
	    subst = tagOpen + myText.substring(0, (myText.length - 1)) + tagClose + " "; 
	} else {
	    subst = tagOpen + myText + tagClose; 
	}
	txtarea.value = txtarea.value.substring(0, startPos) + subst + txtarea.value.substring(endPos, txtarea.value.length);
	txtarea.focus();
	var cPos=startPos+(tagOpen.length+myText.length+tagClose.length);
	txtarea.selectionStart=cPos;
	txtarea.selectionEnd=cPos;
	txtarea.scrollTop=scrollTop;
	// All others
    } else {
	// Append at the end: Some people find that annoying
	//txtarea.value += tagOpen + sampleText + tagClose;
	//txtarea.focus();
	var re=new RegExp("\\n","g");
	tagOpen=tagOpen.replace(re,"");
	tagClose=tagClose.replace(re,"");
	document.infoform.infobox.value=tagOpen+sampleText+tagClose;
	txtarea.focus();
    }
    // reposition cursor if possible
    if (txtarea.createTextRange) txtarea.caretPos = document.selection.createRange().duplicate();
}

// Conta i caratteri e le parole
function contachar(lmax,focus) {
    var conteggio = document.getElementById('conteggio');
    var testo = document.getElementById(focus);
    modval = settaelemento(focus);
    var nc = testo.value.length;
    var nome = testo.name;
    conteggio.style.display = 'block' ;
    if ( nc > lmax) {
	conteggio.innerHTML = "ERRORE: Superato il massino numero di caratteri <b>"+lmax+"</b>";
    }
    else {
	// conteggio.innerHTML = "<b>CONTEGGIO</b>: "+nc+" / "+lmax+"." + focus + " - " + nome;
	conteggio.innerHTML = "Conteggio <b class='campo'>" + nome.substring(4) + "</b>: "+nc+" / "+lmax+".";
    }
}
// Conta i caratteri e le parole
function contachar1(e,lmax,focus,gerarchia) {
    // console.debug("hello world");
    var myForm = document.getElementById('DB');
    // var myDiv = myForm.getElementsByTagName('div');
    // console.debug(myDiv[0]);
    //console.debug(myDiv);
    var idfocus = document.getElementById(focus);
    var nome = idfocus.name;
    console.debug("NAME="+nome);
    var nc = focus.length;
    console.debug("NAME="+nc);
    var id = focus.substring(nc-1);
    console.debug("IDE="+id);
    var conteggio = document.getElementById('conteggio_'+gerarchia+'_'+id);
    console.debug("conteggio="+'conteggio_'+gerarchia+'_'+id);
    conteggio.style.display = 'block';
    if ( nc > lmax) {
	conteggio.innerHTML = "ERRORE: Superato il massino numero di caratteri <b>"+lmax+"</b>";
    }
    else {
	// conteggio.innerHTML = "<b>CONTEGGIO</b>: "+nc+" / "+lmax+"." + focus + " - " + nome;
	conteggio.innerHTML = "Conteggio <b class='campo'>" + nome.substring(4) + "</b>: "+nc+" / "+lmax+".";
    }
}

function settaelemento(variabile) {
    var testo = document.getElementById(variabile);
    return {elemme : testo};
}


function leggielemento(mess) {
    // alert(mess.elemme.id);
    return mess.elemme.id;
}

function nascondiTabellacaratteri() {
    if ( document.getElementById('greek').style.display == 'block' ) {
	document.getElementById('greek').style.display='none';
	document.getElementById('tabcar').title='Mostra Tabella Caratteri Speciali';
    }
    else {
	document.getElementById('greek').style.display='block';
	document.getElementById('tabcar').title='Nascondi Tabella Caratteri Speciali';
    }
}


function overlay() {
	el = document.getElementById("formns");
	el.style.visibility = (el.style.visibility == "visible") ? "hidden" : "visible";
}



function verificaid(event) {
    var id = document.getElementById('idceck');
    var idverifica  = document.getElementById('idverifica');
    var maxnum =  id.getAttribute('ciro');
    var numero = parseInt(id.value);
    var myForm = document.forms[0]; 
    var num1 = '';
    var keynum = "..";
    // var e = window.event;
    // id.submit.disabled = false;
    if(window.event) {        
	keynum = e.which;
    }
    element = " '"+ event.which; //document.getElementById("onkeypress"+ "_which");
    if ( isNaN(id.value) ) {
	txt = "<b>Non è un Numero</b>.";
	if ( event.which == 13) {
	    event.which != 13;
	}
    }
    else {
	if (numero >=1 && numero <= maxnum ){
	    txt = "OK in intervallo " +  id.value;
	    txt = "OK";
	    if ( event.which == 13) {
		id.submit();
	    }
	    // print( txt);
	}
	else {
	    txt = "FUORI intervallo "+  id.value + " (1..." + maxnum+")";
	}

    }
    idverifica.innerHTML = txt + element +"";
}


function mostra(elemento) {
    if ( elemento == 'osservazioni' ) {
	if ( document.getElementById('ideosser').style.display == 'block' ) {
	    document.getElementById('ideosser').style.display='none';
	    document.getElementById('idetic').style.display='none';
	    document.getElementById('buttonosser').title='Visualizza il Campo Osservazioni';
	}
    else { 
	    document.getElementById('ideosser').style.display='block';
	    document.getElementById('idetic').style.display='none';
	    document.getElementById('buttonosser').title='Nascondi il Campo Osservazioni';
	}
    } if ( elemento == 'etichette' ) {
	if ( document.getElementById('idetic').style.display == 'block' ) {
	    document.getElementById('idetic').style.display='none';
	    document.getElementById('ideosser').style.display='none';
	    document.getElementById('buttonetic').title='Visualizza il Campo Etichette';
	}
    else { 
	    document.getElementById('idetic').style.display='block';
	    document.getElementById('ideosser').style.display='none';
	    document.getElementById('buttonetic').title='Nascondi il Campo Etichette';
	}
    }

}

function validateText1(elementsInputs, intCounter, strErrorMessage)
{
	if (elementsInputs[intCounter].value == "")
	{
		return true;
	}
}


 function validateForm1(formObj) {
     
   //  if (!document.getElementsByTagName) return false;
     elementsForms = document.getElementsByTagName("FormNuovaScheda"); 
     elementsForms = document.getElementsByTagName("form"); 
     console.debug( "LUN= " +  elementsForms.length);
     for (var intCounter = 0; intCounter < elementsForms.length; intCounter++) 
     { 
	 console.debug("n:"+ intCounter +" " );
	 console.debug(elementsForms[intCounter]);
	 //	return validateForm(elementsForms[intCounter]);
     } 
     elementsInputs = formObj.getElementsByTagName("input");
 
	for (var intCounter = 0; intCounter < elementsInputs.length; intCounter++)
	{
	    console.debug("INPUT: "+ intCounter +" " );
	    console.debug(elementsInputs[intCounter]);
	    if (validateText(elementsInputs, intCounter))
	    {
		blnvalidate = false;
 		alert(intCounter +" " +elementsInputs[intCounter].name.substring(4)  + " Mancante");
	    }
	    
	} 


     console.debug(formObj);
  //   console.debug(getForm());
       //  formObj.Aggiungi.disabled = true;
     valid = true;

     console.debug( formObj.Aggiungi);
     console.debug( formObj.Aggiungi.disabled);
     formObj.Aggiungi.disabled = true;
     console.debug( formObj.Aggiungi.disabled);
        if (formObj.rec_LDCS.value=='') {
            alert('Inserire una localizzazione  LDCS');
	    formObj.rec_LDCS.focus();            
	    valid = false;
        }
        if (formObj.rec_OGTD.value=='') {
	    // no spazi bianchi
            alert('Inserire una descrizione.');     
	    formObj.rec_LDCS.focus();            
            valid = false;
        }
     console.debug('CTP 0');
     console.debug("INDICE "+formObj.selCTP.selectedIndex );


        if (formObj.selCTP.selectedIndex == 0 ) {
	    // no spazi bianchi
	    console.debug('CTP');
            alert('Inserire la categoria pricipale');
            valid = false;
        }
     console.debug("dopo INDICE "+formObj.selCTP.selectedIndex );
     alert("CONTINUA");
     formObj.Aggiungi.disabled = true;
     formObj.Aggiungi.value = 'Please Wait...';
     return valid;

    }

