﻿function MakeUpperCase(element, forceZero) {
    element.value = element.value.toUpperCase();

    if (forceZero) {
        element.value = element.value.replace("O", "0");
    } 
}

function IsDTCOBD1(dtcValue) {
    var validationExpression = "^[0-9]{1,3}$";

    return dtcValue.match(validationExpression);
}

function IsDTCOBD2(dtcValue) {
    var validationExpression = "^[bcpuBCPU]{1}[0-9]{1}[0-9a-fA-F]{3}$";

    return dtcValue.match(validationExpression);
}

function IsDTCValid(dtcValue) {
    return (IsDTCOBD1(dtcValue) || IsDTCOBD2(dtcValue));
}


function FormatPhoneNumber(localEvent, textboxElement) {
    var keyCode = 0;

    if (navigator.appName == "Netscape" && parseInt(navigator.appVersion) >= 4) {
        if (localEvent.which) {
            keyCode = localEvent.which;
        }
    }
    else {
        if (!localEvent) {
            localEvent = window.event;
        }

        keyCode = localEvent.keyCode;
    }

    //textboxElement.value.length <= 11 && 
    if (keyCode >= 48 && keyCode <= 57) {
        if (textboxElement.value.length == 2) {
            textboxElement.value = textboxElement.value + String.fromCharCode(keyCode) + "-";
            localEvent.returnValue = false;
        }
        else if (textboxElement.value.length == 6) {
            textboxElement.value = textboxElement.value + String.fromCharCode(keyCode) + "-";
            localEvent.returnValue = false;
        }
        else {
            var regex = new RegExp(/\(?([0-9]{3})\)?[-. ]?([0-9]{3})[-. ]?([0-9]{4})/);

            var phoneNumber = textboxElement.value + String.fromCharCode(keyCode);
            var matches = phoneNumber.match(regex);

            if (matches && matches.length == 4) {
                textboxElement.value = matches[1] + "-" + matches[2] + "-" + matches[3];
                localEvent.returnValue = false;
            }
        }
    }
    else {
        localEvent.returnValue = false;
    }
}


function GetLeftPosition(obj) {
    var currentLeft = 0;

    if (obj.offsetParent) {
        while (obj.offsetParent) {
            currentLeft += obj.offsetLeft
            obj = obj.offsetParent;
        }
    }
    else if (obj.x) {
        currentLeft += obj.x;
    }

    return currentLeft;
}


function GetTopPosition(obj) {
    var currentTop = 0;

    if (obj.offsetParent) {
        while (obj.offsetParent) {
            currentTop += obj.offsetTop
            obj = obj.offsetParent;
        }
    }
    else if (obj.y) {
        currentTop += obj.y;
    }

    return currentTop;
}

