function getObjNN4(obj,name) {
    var x = obj.layers;
    var foundLayer;
    for (var i=0;i<x.length;i++) {
        if (x[i].id == name)
            foundLayer = x[i];
        else if (x[i].layers.length)
            var tmp = getObjNN4(x[i],name);
        if (tmp) foundLayer = tmp;
    }
    return foundLayer;
}

function getElement(id) {
    var elem = null;
    if(document.getElementById) {
        elem = document.getElementById(id);
    } else if (document.all){
        elem = document.all[id];
    }
    return elem;
}
function getElementTop(id) {
    var elem = getElement(id);
    var yPos = 0;
    while( elem != null ) {
        yPos += elem.offsetTop;
        if (elem.style.position == "absolute") {
            elem = null;
        } else {
            elem = elem.offsetParent;
        }
    }
    return yPos;
}
function getElementHeight(id) {
    var elem = getElement(id);
    yPos = elem.offsetHeight;
    return yPos;
}

function setElementHeight(id, value) {
    var elem = getElement(id);
    elem.style.height = value;
}

function getElementLeft(id) {
    var elem = getElement(id);
    var xPos = 0;
    while( elem != null ) {
        xPos += elem.offsetLeft;
        if (elem.style.position == "absolute") {
            elem = null;
        } else {
            elem = elem.offsetParent;
        }
    }
    return xPos;
}

function getElementWidth(id){
    var elem = getElement(id);
    xPos = elem.offsetWidth;
    return xPos;
}

function setElementHeightToContainer(id) {
    var container = getElement("rmsoContent");
    //var footer = getElement("rmsoFooter");
    var element = getElement(id);
    
    if (container == null || (container == "undefined" && !container)) {
        element.style.height = "100%";
    } else {
        var browserHeight = getBrowserSize().height;
        var headerTop = getElementTop("templateContentCol");
        var elementHeight = browserHeight - headerTop - 200;
        
        element.style.height = elementHeight + "px";
    }
}

function getBrowserSize() {
    var intH = 0;
    var intW = 0;

    if (typeof window.innerWidth == 'number' ) {
        intH = window.innerHeight;
        intW = window.innerWidth;
    } else if(document.documentElement && (document.documentElement.clientWidth || document.documentElement.clientHeight)) {
        intH = document.documentElement.clientHeight;
        intW = document.documentElement.clientWidth;
    } else if(document.body && (document.body.clientWidth || document.body.clientHeight)) {
        intH = document.body.clientHeight;
        intW = document.body.clientWidth;
    }
    return {
        width: parseInt(intW),
        height: parseInt(intH)
    };
}

function positionDropDown(divID, anchorID) {
    //ALL STUFF WITH RESPECT TO TAB, AT 0,0
    //get the offset for the button from the TAB
    var ancx = getElement(anchorID).offsetParent.offsetLeft; 
    var ancy = getElement(anchorID).offsetParent.offsetParent.offsetTop;
    //get the offset for the calender DIV from the TAB, initially 10,10
    var divx = getElementLeft(divID);
    var divy = getElementTop(divID);

    //alert("div:" + divx + "," + divy);
    //alert("button:" + ancx + "," + ancy);
    
    //reposition calender div, do it only when the cal DIV coordinate is less than the button coordinate
    if(divx < ancx && divy < ancy){
        //alert('1');
        var newx = ancx + getElementWidth(anchorID)/2; //getElementWidth(anchorID)/2: get the middle coordinate for the button
        var newy = ancy + getElementHeight(anchorID)/2;

        var divElem = getElement(divID);
        divElem.style.position = "absolute";
        divElem.style.zorder = "1";
        divElem.style.left = newx + "px";
        divElem.style.top = newy + "px";
    //alert("new: " + newx + "," + newy);
    }
}

