﻿//var isIE4 = document.all;
//var isIE = document.all && document.getElementById;
//var isNN = !document.all && document.getElementById;
//var currentUserAccountLink;

var hideTextTimeout;

function displayText(evt, txt, w) {
    clearTimeout(hideTextTimeout);
    var adiv = $get("txtDiv");
    if (adiv == null) {
        adiv = document.createElement("div");
        adiv.setAttribute("id", "txtDiv");
        adiv.setAttribute("style", "visibility:hidden;top:0px;left:0px;overflow:hidden;");
        document.body.insertBefore(adiv, null);
    }
    adiv.style.width = w + "px";
    adiv.style.visibility = "visible";
    adiv.innerHTML = txt;
}
function moveText(evt, w) {
    if ($get('txtDiv') != null) {
        clearTimeout(hideTextTimeout);
        var cursor = getPosition(evt);
        var curXPos = cursor.x + 10;
        var curYPos = cursor.y + 10;
        if (document.body) {
            if ((eval(curXPos) + eval(w)) > document.body.clientWidth) {
                curXPos = curXPos - w - 20;
            }
        }
        $get("txtDiv").style.left = curXPos + "px";
        $get("txtDiv").style.top = curYPos + "px";
    }
}
function hideText() {
    if ($get("txtDiv") != null) {
        hideTextTimeout = setTimeout("$get('txtDiv').style.visibility = 'hidden';", 200);
    }
}

function toggleVisible(elementId) {
    var element = $get(elementId);
    if (element.style.display == 'none')
        element.style.display = 'block';
    else
        element.style.display = 'none';
}

function getPosition(e) {
    e = e || window.event;
    var cursor = { x: 0, y: 0 };
    if (e.pageX || e.pageY) {
        cursor.x = e.pageX;
        cursor.y = e.pageY;
    }
    else {
        cursor.x = e.clientX + (document.documentElement.scrollLeft || document.body.scrollLeft) - document.documentElement.clientLeft;
        cursor.y = e.clientY + (document.documentElement.scrollTop || document.body.scrollTop) - document.documentElement.clientTop;
    }
    return cursor;
}

function setElementPositionInRelationToMouseClick(evt, elementID, elementWidth, elementHeight) {
    // This function will position an element on the screen properly
    // based on the current position of the mouse.  This is especially
    // useful for placing a "popup" window next to the point where a 
    // mouse click takes place.
    //var curXPos = getCurrentXPosition(evt);
    //var curYPos = getCurrentYPosition(evt);
    var cursor = getPosition(evt);
    var curXPos = cursor.x;
    var curYPos = cursor.y;
    var winW;
    var winH;
    var styleTop;
    var styleLeft;
    if (window.innerWidth != undefined) {
        winW = window.innerWidth;
        winH = window.innerHeight;
    }
    else {
        winW = document.body.offsetWidth;
        winH = document.body.offsetHeight;
    }
    if (elementHeight == null || elementHeight == '') {
        elementHeight = document.getElementById(elementID).style.height.toString().replace('px', '');
        if (elementHeight == null || elementHeight == '') {
            elementHeight = 100;
        }
    }
    document.getElementById(elementID).style.width = elementWidth + 'px';
    document.getElementById(elementID).style.height = elementHeight + 'px';
    if (isNaN(curXPos) && isNaN(curYPos)) {
        setElementPositionInCenterOfScreen(elementID, elementWidth, elementHeight);
    }
    else {
        if ((eval(curXPos) + eval(elementWidth)) > winW) {
            styleLeft = (eval(curXPos) - eval(elementWidth));
            if (styleLeft < 0) {
                styleLeft = 0;
            }
            document.getElementById(elementID).style.left = styleLeft + 'px';
        }
        else {
            styleLeft = eval(curXPos);
            document.getElementById(elementID).style.left = styleLeft + 'px';
        }
        if ((eval(curYPos) + eval(elementHeight)) > winH) {
            styleTop = (eval(curYPos) - eval(elementHeight));
            if (styleTop < 0) {
                styleTop = 0;
            }
            document.getElementById(elementID).style.top = styleTop + 'px';
        }
        else {
            styleTop = eval(curYPos);
            document.getElementById(elementID).style.top = styleTop + 'px';
        }
    }
}

function setElementPositionInCenterOfScreen(elementID, elementWidth, elementHeight) {
    // This function will position an element on the screen properly
    // based on the current position of the mouse.  This is especially
    // useful for placing a "popup" window next to the point where a 
    // mouse click takes place.
    var curXPos = 0;
    var curYPos = 0;
    var winW;
    var winH;
    var styleTop;
    var styleLeft;
    if (window.innerWidth != undefined) {
        winW = window.innerWidth;
        winH = window.innerHeight;
    }
    else {
        winW = document.body.offsetWidth;
        winH = document.body.offsetHeight;
    }
    if (elementHeight == null || elementHeight == '') {
        elementHeight = document.getElementById(elementID).style.height.toString().replace('px', '');
        if (elementHeight == null || elementHeight == '') {
            elementHeight = 100;
        }
    }
    document.getElementById(elementID).style.width = elementWidth + 'px';
    document.getElementById(elementID).style.height = elementHeight + 'px';
    document.getElementById(elementID).style.left = (winW / 2) - (elementWidth / 2) + 'px';
    document.getElementById(elementID).style.top = ((winH / 2) + document.documentElement.scrollTop) - (elementHeight / 2) + 'px';

}

function fieldMask(maskType) {
    if (navigator.appName != 'Microsoft Internet Explorer') {
        event = arguments.callee.caller.arguments[0].target;
        event.onkeypress = function(event) {
            var KeyTyped = event.which;
            if (KeyTyped == 0 || KeyTyped == 8) {
                return true;
            } else {
                var srcObject = event.target;
                if (!subKeyMask(maskType, KeyTyped, srcObject)) {
                    return false;
                }
            }
        }
    } else {
        var KeyTyped = window.event.keyCode;
        var srcObject = window.event.srcElement;
        if (!subKeyMask(maskType, KeyTyped, srcObject)) {
            window.event.keyCode = 0;
        }
    }
}
function subKeyMask(maskType, KeyTyped, srcObject) {
    KeyTyped = String.fromCharCode(KeyTyped);
    var sMask = "01234567890";
    if (sMask.indexOf(KeyTyped) == -1) {
        return false;
    } else {
        keyCount = srcObject.value.length;
        var tmpStr = "";
        switch (maskType) {
            case "date":
                switch (keyCount) {
                    case 1:
                        tmpStr += srcObject.value;
                        srcObject.value = tmpStr;
                        break;
                    case 2:
                        srcObject.value += "/";
                        break;
                    case 5:
                        srcObject.value += "/";
                        break;
                }
                break;
            case "phone":
                keyEntered = KeyTyped;
                keyCount++;
                switch (keyCount) {
                    case 2:
                        tmpStr += srcObject.value;
                        srcObject.value = tmpStr;
                        break;
                    case 4:
                        srcObject.value += "-";
                        break;
                    case 8:
                        srcObject.value += "-";
                        break;
                }
                break;
            case "SSN":
                keyEntered = KeyTyped;
                keyCount++;
                switch (keyCount) {
                    case 2:
                        tmpStr += srcObject.value;
                        srcObject.value = tmpStr;
                        break;
                    case 4:
                        srcObject.value += "-";
                        break;
                    case 7:
                        srcObject.value += "-";
                        break;
                }
                break;
        }
        return true;
    }
}

function IsNumeric(sText) {
    var ValidChars = "0123456789.-";
    var IsNumber = true;
    var Char;
    for (v = 0; v <= sText.length && IsNumber == true; v++) {
        Char = sText.charAt(v);
        if (ValidChars.indexOf(Char) == -1) {
            IsNumber = false;
        }
    }
    if (sText.indexOf('-') != -1 && sText.indexOf('--') != -1) {
        IsNumber = false;
    }
    return IsNumber;
}

function checkNumeric(evt) {
    var KeyTyped;
    if (evt) {
        KeyTyped = String.fromCharCode(evt.charCode);
        if (!IsNumeric(KeyTyped)) {
            return false;
        }
    }
    else {
        KeyTyped = String.fromCharCode(window.event.keyCode);
        if (!IsNumeric(KeyTyped)) {
            return false;
        }
    }
}

function openWindow(e) {
    var popupWin = window.open(e, 'popupWin', 'left=150,top=150,width=500,height=350,resizable=yes,menubar=no,scrolling=yes');
    popupWin.focus();
}

function openWindow(e, width, height) {
    var popupWin = window.open(e, 'popupWin', 'left=150,top=150,width=' + width + ',height=' + height + ',resizable=yes,menubar=no,scrolling=yes');
    popupWin.focus();
}