var is = new ottosniff();
function ottosniff(){
	var ua = navigator.userAgent.toLowerCase();
	var b = navigator.appName;
	if (b=="Netscape") this.b = "ns";
	else this.b = b;
	this.version = navigator.appVersion;
	this.v = parseInt(this.version);
	this.gecko = (ua.match(/\bgecko\/(20\d\d)(\d\d)(\d\d)\b/)) ? true : false;
	this.ns = (this.b=="ns" && this.v>=5);
	this.op = (ua.indexOf('opera')>-1);
	this.safari = (ua.indexOf('safari')>-1 && this.v < 5);
	this.safariAll = (ua.indexOf('safari')>-1);
	this.op7 = (this.op && this.v>=7 && this.v<8);
	this.op78 = (this.op && this.v>=7 || this.op && this.v>=8);
	this.ie5 = (this.version.indexOf('MSIE 5')>-1);
	this.ie6 = (this.version.indexOf('MSIE 6')>-1);
	this.ie7 = (this.version.indexOf('MSIE 7')>-1);
	this.ie56 = (this.ie5||this.ie6);
	this.ie567 = (this.ie5||this.ie6||this.ie7);
	this.iewin = (this.ie56 && ua.indexOf('windows')>-1 || this.ie7 && ua.indexOf('windows')>-1);
	this.iemac = (this.ie56 && ua.indexOf('mac')>-1);
	this.moz = (ua.indexOf('mozilla')>-1);
	this.ff = (ua.indexOf('firefox')>-1);
    this.ff3 = (ua.indexOf('firefox')>-1 && ua.indexOf('3.0')>-1);
	this.moz13 = (ua.indexOf('mozilla')>-1 && ua.indexOf('1.3')>-1);
	this.oldmoz = (ua.indexOf('sunos')>-1 || this.moz13 && !this.ff || this.moz && ua.indexOf('1.4')>-1 && !this.ff || this.moz && ua.indexOf('1.5')>-1 && !this.ff || this.moz && ua.indexOf('1.6')>-1 && !this.ff);
	this.anymoz = this.gecko;
	this.ns6 = (ua.indexOf('netscape6')>-1);
}

/*************************************************\
* popup process for loading/processing window
\*************************************************/
function showLoading(){
    var overlay = document.getElementById('docweboverlay');
    var box = document.getElementById('loadingbox');
    if(is.ie56) {
        overlay.style.position = "absolute";
        document.body.style.overflow = "hidden";
        document.documentElement.style.overflow = "hidden";
    }
    overlay.style.display='block';
    box.style.display='block'
    overlayReload(overlay);
    centerbox(box);
}

function hideLoading(){
    var overlay = document.getElementById('docweboverlay');
    var box = document.getElementById('loadingbox');
    overlay.style.display='none';
    box.style.display='none'
    if(is.ie56) {
        document.body.style.overflow = "auto";
        document.documentElement.style.overflow = "auto";
    }
}

function showProcessing(){
    var overlay = document.getElementById('docweboverlay');
    var box = document.getElementById('processingbox');
    if(is.ie56) {
        overlay.style.position = "absolute";
        document.body.style.overflow = "hidden";
        document.documentElement.style.overflow = "hidden";
    }
    overlay.style.display='block';
    box.style.display='block'
    overlayReload(overlay);
    centerbox(box);
}

function hideProcessing(){
    var overlay = document.getElementById('docweboverlay');
    var box = document.getElementById('processingbox');
    overlay.style.display='none';
    box.style.display='none'
    if(is.ie56) {
        document.body.style.overflow = "auto";
        document.documentElement.style.overflow = "auto";
    }
}
/****************************************\
* Adjust overlay to new window size
\****************************************/
function overlayReload(overlay){
    if (window.innerHeight && window.scrollMaxY || window.innerWidth && window.scrollMaxX) {
        yScroll = window.innerHeight + window.scrollMaxY;
        xScroll = window.innerWidth + window.scrollMaxX;
        var deff = document.documentElement;
        var wff = (deff&&deff.clientWidth) || document.body.clientWidth || window.innerWidth || self.innerWidth;
        var hff = (deff&&deff.clientHeight) || document.body.clientHeight || window.innerHeight || self.innerHeight;
        xScroll -= (window.innerWidth - wff);
        yScroll -= (window.innerHeight - hff);
    } else if (document.body.scrollHeight > document.body.offsetHeight || document.body.scrollWidth > document.body.offsetWidth){ // all but Explorer Mac
        yScroll = document.body.scrollHeight;
        xScroll = document.body.scrollWidth;
    } else if(document.body.offsetHeight && document.body.offsetWidth) { // Explorer Mac...would also work in Explorer 6 Strict, Mozilla and Safari
        yScroll = document.body.offsetHeight;
        xScroll = document.body.offsetWidth;
    } else if (document.documentElement && ( document.documentElement.clientWidth || document.documentElement.clientHeight ) ) {
        yScroll = document.documentElement.clientHeight;
        xScroll = document.documentElement.clientWidth;
    } else if (document.body && ( document.body.clientWidth || document.body.clientHeight ) ) {
        yScroll = document.body.clientHeight;
        xScroll = document.body.clientWidth;
    }

    overlay.style.height = (yScroll + 20) + 'px';
    overlay.style.width = (xScroll) + 'px';
}
/****************************************\
* Actually center box
\****************************************/
function centerbox(box) {
    var pagesize = getPageSize();
    var arrayPageScroll = getPageScrollTop();
    box.style.left = (arrayPageScroll[0] + (pagesize[0] - box.offsetWidth)/2) + 'px';
    box.style.top = (arrayPageScroll[1] + (pagesize[1] - box.offsetHeight)*(2/5)) + 'px';
}
/****************************************\
*
\****************************************/
function getPageSize(){
    var de = document.documentElement;
    var w = window.innerWidth || self.innerWidth || (de&&de.clientWidth) || document.body.clientWidth;
    var h = window.innerHeight || self.innerHeight || (de&&de.clientHeight) || document.body.clientHeight
    arrayPageSize = new Array(w,h)
    return arrayPageSize;
}
/****************************************\
*
\****************************************/
function getPageScrollTop(){
    var yScrolltop;
    var xScrollleft;
    if (self.pageYOffset || self.pageXOffset) {
        yScrolltop = self.pageYOffset;
        xScrollleft = self.pageXOffset;
    } else if (document.documentElement && document.documentElement.scrollTop || document.documentElement.scrollLeft ){     // Explorer 6 Strict
        yScrolltop = document.documentElement.scrollTop;
        xScrollleft = document.documentElement.scrollLeft;
    } else if (document.body) {// all other Explorers
        yScrolltop = document.body.scrollTop;
        xScrollleft = document.body.scrollLeft;
    }
    arrayPageScroll = new Array(xScrollleft,yScrolltop)
    return arrayPageScroll;
}