function getTopPos (inputObj) {
    var offsetTop = inputObj.offsetTop;

    /*if (document.all)*/ {
        var offsetParent = inputObj.offsetParent;

        while (typeof offsetParent == 'object' && offsetParent != document.body && offsetParent != document.documentElement) {
            var offsetParentTop = 0;
            try {
                offsetParentTop = offsetParent.offsetTop;
                offsetParent = offsetParent.offsetParent;
            }
            catch (e) { }

            offsetTop += offsetParentTop;
        }
    }

    return offsetTop;
}

function getLeftPos (inputObj) {
    var offsetLeft = inputObj.offsetLeft;

    /*if (document.all)*/ {
    var offsetParent = inputObj.offsetParent;
        while (typeof offsetParent == 'object' && offsetParent != document.body && offsetParent != document.documentElement) {
            var offsetParentLeft = 0;
            try {
                offsetParentLeft = offsetParent.offsetLeft;
                offsetParent = offsetParent.offsetParent;
            }
            catch (e) { }

            offsetLeft += offsetParentLeft;
        }
    }

    return offsetLeft;
}

function getScrollX () {
    var ret = 0;

    try {
        var val;
        val = window.pageXOffset ? window.pageXOffset : 0;
        ret = (val > ret) ? val : ret;
        val = document.body.scrollLeft ? document.body.scrollLeft : 0;
        ret = (val > ret) ? val : ret;
        val = document.documentElement.scrollLeft ? document.documentElement.scrollLeft : 0;
        ret = (val > ret) ? val : ret;
    }
    catch (e) {}

    return ret;
}

function getScrollY () {
    var ret = 0;

    try {
        var val;
        val = window.pageYOffset ? window.pageYOffset : 0;
        ret = (val > ret) ? val : ret;
        val = document.body.scrollTop ? document.body.scrollTop : 0;
        ret = (val > ret) ? val : ret;
        val = document.documentElement.scrollTop ? document.documentElement.scrollTop : 0;
        ret = (val > ret) ? val : ret;
    }
    catch (e) { }

    return ret;
}

function getWindowHeight () {
    var ret = 0;

    try {
        var val = 0;
        var h = 0;

        if (document.documentElement.clientHeight) {
            h = document.documentElement.clientHeight;
            if (val == 0 || (h > 0 && h < val))
                val = h;
        }
        if (window.innerHeight) {
            h = window.innerHeight;
            if (val == 0 || (h > 0 && h < val))
                val = h;
        }
        if (document.body.clientHeight) {
            h = document.body.clientHeight;
            if (val == 0 || (h > 0 && h < val))
                val = h;
        }

        ret = val;
    }
    catch (e) { }

    return ret;
}

function getWindowWidth ()  {
    var ret = 0;

    try {
        var val = 0;
        var h = 0;

        if (document.documentElement.clientWidth) {
            h = document.documentElement.clientWidth;
            if (val == 0 || (h > 0 && h < val))
                val = h;
        }
        if (window.innerWidth) {
            h = window.innerWidth;
            if (val == 0 || (h > 0 && h < val))
                val = h;
        }
        if (document.body.clientWidth) {
            h = document.body.clientWidth;
            if (val == 0 || (h > 0 && h < val))
                val = h;
        }
        
        ret = val;
    }
    catch (e) { }

    return ret;
}

function loadContent (url, data) {
    var resObjekt = null;

    if (typeof url == undefined || typeof url == null)
        return null;

    try {
        resObjekt = new ActiveXObject ("Microsoft.XMLHTTP");
    }
    catch (e) {
        try {
            resObjekt = new ActiveXObject ("MSXML2.XMLHTTP");
        }
        catch (e) {
            try {
                resObjekt = new XMLHttpRequest ();
            }
            catch (e) {
                return null;
            }
        }
    }

    if (data) {
        resObjekt.open ("post", url, false);
        resObjekt.send (data);
    }
    else {
        resObjekt.open ("get", url, false);
        resObjekt.send (null);
    }

    return resObjekt.responseText;
}
