// ----------------------------------------------
// Author: (c) Andreas 'decoman' Fay
// ----------------------------------------------
// Version:    1.2.1
// ----------------------------------------------
// Functionindex
// ----------------------------------------------
// v0.1 - setElementNumberAuto
// v0.2 - update
// ----------------------------------------------


function lengthControl(strElement, intMaxLength, strDisplayElement, intElementNumber)
{
    // Attributes -------------------------------
    var displayElement                           =  strDisplayElement;
    var element                                  =  strElement;
    var elementNumber                            =  intElementNumber ? intElementNumber : 0;
    var maxLength                                =  intMaxLength;


    // ------------------------------------------
    // Method (privileged)
    // ------------------------------------------
    // Name:        setElementNumberAuto
    // Description:
    // Input:
    // Output:
    // ------------------------------------------
    // Version:     0.1
    // ------------------------------------------
    // ChangeLog
    // ------------------------------------------
    // v0.1 (03.03.2007)
    // ------------------------------------------
    this.setElementNumberAuto                    =  function()
    {
        elementNumber                            =  document.getElementsByName(element).length-1;
        this.update();
    }


    // ------------------------------------------
    // Method (privileged)
    // ------------------------------------------
    // Name:        update
    // Description:
    // Input:
    // Output:
    // ------------------------------------------
    // Version:     0.2
    // ------------------------------------------
    // ChangeLog
    // ------------------------------------------
    // v0.1 (07.01.2007)
    // v0.2 (03.03.2007)
    // ------------------------------------------
    this.update                                  =  function()
    {
        intLength                                =  maxLength - document.getElementsByName(element)[elementNumber].value.length;

        if (intLength >= 0)
        {
            document.getElementById(displayElement).innerHTML
                                                 =  intLength;
        }
        else
        {
            document.getElementsByName(element)[0].value
                                                 =  document.getElementsByName(element)[elementNumber].value.slice(0, maxLength);
            this.update();
        }
    }

    this.update();
}
