﻿//v1.0
//Copyright 2009 Bracchi Enzo, Inc. All rights reserved.
//Funzione per muoversi con le frecce della tastiera all'inteno delle datagrid e per selezionare il testo
//del campo che prende il focus, colorandone il bordo della testbox corrente

//Tratta il textbox selezionato evidenziando il testo e colorando il bordo
function Sel(currentElement) {
    var nomeElemento = currentElement.id
    document.getElementById(nomeElemento).select();
    document.getElementById(nomeElemento).style.borderColor = "#FF0000";
}

//Tratta il textbox deselezionato decolorando il bordo 
function Des(currentElement) {
    var nomeElemento = currentElement.id;
    document.getElementById(nomeElemento).style.borderColor = "#FFFFFF";
}

//Esegue un controllo sul tasto premuto per eseguire il passaggio del focus alla testbox precedente o successiva (direzione verticale)
function MoveCursor(currentElement) {
    var nomeElementoCorrente = currentElement.id;
    var inizioNumeroRiga = nomeElementoCorrente.indexOf("ctl") + 3;
    var lunghezzaNumeroRiga = 2;
    var strValoreNumeroRigaCorrente = nomeElementoCorrente.substr(inizioNumeroRiga, lunghezzaNumeroRiga);
    var nomeElementoPrimaParte = nomeElementoCorrente.substr(0, nomeElementoCorrente.indexOf("ctl") + 3)
    var nomeElementoSecondaParte = nomeElementoCorrente.substr(nomeElementoCorrente.indexOf("ctl") + 5)

    if (window.event.keyCode == 38) { //UP
        if (parseFloat(strValoreNumeroRigaCorrente) - 1 > 9) {
            var valoreNumeroRigaPrecedente = (parseFloat(strValoreNumeroRigaCorrente) - 1);
        }
        else {
            var valoreNumeroRigaPrecedente = '0' + (parseFloat(strValoreNumeroRigaCorrente) - 1);
        }
        if (document.getElementById(nomeElementoPrimaParte + valoreNumeroRigaPrecedente + nomeElementoSecondaParte) != null)
            document.getElementById(nomeElementoPrimaParte + valoreNumeroRigaPrecedente + nomeElementoSecondaParte).focus();
    }
    else if (window.event.keyCode == 40) { //DOWN

        if (parseFloat(strValoreNumeroRigaCorrente) + 1 <= 9) {
            var valoreNumeroRigaSuccessivo = '0' + (parseFloat(strValoreNumeroRigaCorrente) + 1);
        }
        else {
            var valoreNumeroRigaSuccessivo = (parseFloat(strValoreNumeroRigaCorrente) + 1);
        }
        if (document.getElementById(nomeElementoPrimaParte + valoreNumeroRigaSuccessivo + nomeElementoSecondaParte) != null)
            document.getElementById(nomeElementoPrimaParte + valoreNumeroRigaSuccessivo + nomeElementoSecondaParte).focus();
    }
    //else if (window.event.keyCode == 37){ //LEFT
    //istruzioni
    //}
    //else if (window.event.keyCode == 39){ //RIGHT
    //istruzioni
    //}
}

//Esegue il controllo sul massimo numero di caratteri che si possono inserire in una textarea
function MaxCaratteriTextarea(Field, MaxLen) {
    if (Field.value.length > MaxLen) {
        while (Field.value.length > MaxLen) {
            Field.value = Field.value.replace(/.$/, '');
        }
        window.alert('Consentito un numero massimo di ' + MaxLen + ' caratteri.');
    }
}

function clickButton(e, buttonid) {
    var evt = e ? e : window.event;
    var bt = document.getElementById(buttonid);
    if (bt) {
        if (evt.keyCode == 13) {
            bt.click();
            return false;
        }
    }
}