var capslock = {
		topMin : 350,
		leftMin : -320,
    init: function() {
        if (!document.getElementsByTagName) {
            return
        }
        var a = document.getElementsByTagName("input");
        for (var i = 0, l = a.length; i < l; i++) {
            if (a[i].type == "password") {
                capslock.addEvent(a[i], "keypress", capslock.keypress)
            }
        }
    },
    addEvent: function(d, e, f) {
        if (document.addEventListener) {
            capslock.addEvent = function(a, b, c) {
                a.addEventListener(b, c, false)
            };
            capslock.addEvent(d, e, f)
        } else if (document.attachEvent) {
            capslock.addEvent = function(a, b, c) {
                a.attachEvent('on' + b, c)
            };
            capslock.addEvent(d, e, f)
        } else {}
    },
    keypress: function(e) {
        var a = e ? e: window.event;
        if (!a) {
            return
        }
        var b = a.target ? a.target: a.srcElement;
        var c = -1;
        if (a.which) {
            c = a.which
        } else if (a.keyCode) {
            c = a.keyCode
        }
        var d = false;
        if (a.shiftKey) {
            d = a.shiftKey
        } else if (a.modifiers) {
            d = !!(a.modifiers & 4)
        }
        if (((c >= 65 && c <= 90) && !d) || ((c >= 97 && c <= 122) && d)) {
            capslock.show_warning(b)
        } else {
            capslock.hide_warning(b)
        }
    },
    getPosition: function(obj){    
	    var curleft = 0;
      var curtop = 0;
      if (obj.offsetParent) {
        do {
          curleft += obj.offsetLeft;
          curtop += obj.offsetTop;
        }while (obj = obj.offsetParent);
      }
      return [curleft,curtop];
		},
    show_warning: function(a) {
        if (!a.warning) {
        		var postn = this.getPosition(a);
        
            a.warning = document.createElement('img');
            a.warning.src = "images/oops_capslock.png";
            a.warning.style.position = "absolute";
            a.warning.style.top = (postn[0] - this.topMin) + "px";
            a.warning.style.left = (postn[1] + a.offsetWidth - (this.leftMin)) + "px";
            a.warning.style.zIndex = "999";
            a.warning.setAttribute("alt", "Warning: Caps Lock is on");
            if (a.warning.runtimeStyle) {
                a.warning.runtimeStyle.filter += "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/oops_capslock.png',sizingMethod='scale')"
            }
            document.body.appendChild(a.warning)
        }
    },
    hide_warning: function(a) {
        if (a.warning) {
            a.warning.parentNode.removeChild(a.warning);
            a.warning = null
        }
    }
};
(function(i) {
    var u = navigator.userAgent;
    var e
    false;
    var b = setTimeout;
    if (/webkit/i.test(u)) {
        b(function() {
            var a = document.readyState;
            if (a == "loaded" || a == "complete") {
                i()
            } else {
                b(arguments.callee, 10)
            }
        },
        10)
    } else if ((/mozilla/i.test(u) && !/(compati)/.test(u)) || (/opera/i.test(u))) {
        document.addEventListener("DOMContentLoaded", i, false)
    } else if (e) { (function() {
            var t = document.createElement('doc:rdy');
            try {
                t.doScroll('left');
                i();
                t = null
            } catch(e) {
                b(arguments.callee, 0)
            }
        })()
    } else {
        window.onload = i
    }
})(capslock.init);

