﻿var maxLengthText = 200
var maxLengthTextarea = 5000

function limitLengths() {
    try 
    {
        var resetTextLength = 'while (this.value.length > ' + maxLengthText + '){this.value = this.value.substring(0,this.value.length-1)}';
        var resetTextareaLength = 'while (this.value.length > ' + maxLengthTextarea + '){this.value = this.value.substring(0,this.value.length-1)}';
        var arAllTextInputs = document.getElementsByTagName('input');
        var arAllTextareaInputs = document.getElementsByTagName('textarea');
        
        var allAttributes = new Array;
        allAttributes.push('onkeyup');
        allAttributes.push('onkeydown');
        allAttributes.push('onmouseup');
        allAttributes.push('onmousedown');
        allAttributes.push('onblur');

        for (var i = 0; i < arAllTextInputs.length; i++) {
            
            var theInput = arAllTextInputs[i];
            if (theInput.getAttribute('type') == 'text') {
                if (theInput.getAttribute('maxlength') == null && theInput.getAttribute('DontLimitLength') == null) {
                    
                    theInput.setAttribute('maxlength', maxLengthText)
                    
                    /*for (var a = 0; a < allAttributes.length; a++) {
                        if (theInput.getAttribute(allAttributes[a]) == null) {theInput.setAttribute(allAttributes[a], resetTextLength);}
                        else {theInput.setAttribute(allAttributes[a], theInput.getAttribute(allAttributes[a]) + ';' + resetTextLength);}
                    }*/
                    
                }
            }
        }
        
        for (var i = 0; i < arAllTextareaInputs.length; i++) {
            
            var theInput = arAllTextareaInputs[i];
            
            if (theInput.getAttribute('DontLimitLength') == null) {
                for (var a = 0; a < allAttributes.length; a++) {
                    if (theInput.getAttribute(allAttributes[a]) == null) {theInput.setAttribute(allAttributes[a], resetTextareaLength);}
                    else {theInput.setAttribute(allAttributes[a], theInput.getAttribute(allAttributes[a]) + ';' + resetTextareaLength);}
                }
            }
        }
    }
    catch(err)
    {
        alert(err);
        window.status=err;
    }
}
addLoadEvent(limitLengths);