﻿var CssUtil = { TopWindow: Common.TopWindow, BrowserInfo: Common.BrowserInfo };

CssUtil.isStrictMode = function (getTop) {
    var document = getTop ? this.TopWindow.document : window.document;
    return ('CSS1Compat' == (document.compatMode || (this.BrowserInfo.IsSafari ? 'CSS1Compat' : null)));
}

CssUtil.getWindowSize = function (getTop) {
    var document = getTop ? this.TopWindow.document : window.document;
    var relElement = this.isStrictMode(getTop) ? document.documentElement : document.body;
    return { width: Math.max(relElement.scrollWidth, relElement.clientWidth, document.scrollWidth || 0),
        height: Math.max(relElement.scrollHeight, relElement.clientHeight, document.scrollHeight || 0)
    }
}

CssUtil.setOpacity = function (element, opacity) {
    if (this.BrowserInfo.IsIE) {
        opacity = Math.round(opacity * 100);
        element.style.filter = (opacity > 100 ? '' : 'progid:DXImageTransform.Microsoft.Alpha(opacity=' + opacity + ')');
    }
    else {
        element.style.opacity = opacity;
    }
}

CssUtil.getCss = function (getTop) {
    var document = getTop ? this.TopWindow.document : window.document;
    return element.currentStyle ? element.currentStyle[key] : document.defaultView.getComputedStyle(element, false)[key];
}

CssUtil.getTop = function (element){
    var offset = element.offsetTop;
    if(element.offsetParent) 
        offset += CssUtil.getTop(element.offsetParent);
    return offset;
}

CssUtil.getLeft = function (element){
    var offset = element.offsetLeft;
    if(element.offsetParent) 
        offset += CssUtil.getLeft(element.offsetParent);
    return offset;
}

