﻿getOpacityProperty = function() {
    if (typeof document.body.style.opacity == 'string') // CSS3 compliant (Moz 1.7+, Safari 1.2+, Opera 9)
        return 'opacity';
    else if (typeof document.body.style.MozOpacity == 'string') // Mozilla
        return 'MozOpacity';
    else if (typeof document.body.style.KhtmlOpacity == 'string') // Konqueror 3.1, Safari 1.1
        return 'KhtmlOpacity';
    else if (document.body.filters && navigator.appVersion.match(/MSIE ([\d.]+);/)[1] >= 5.5) // Internet Exploder 5.5+
        return 'filter';
    return false;
}
setOpacityProperty = function(aElem, nOpacity, aOpacity) {
    if (!aOpacity)
        aOpacity = getOpacityProperty();
    if (aOpacity == "filter") {
        var oAlpha = aElem.filters['DXImageTransform.Microsoft.alpha'] || aElem.filters.alpha;
        if (oAlpha)
            oAlpha.opacity = nOpacity;
        else
            aElem.style.filter += "progid:DXImageTransform.Microsoft.Alpha(opacity=" + nOpacity + ")";
    }
    else
        aElem.style[aOpacity] = nOpacity / 100;
}
showErrorMessageOnLoad = function(aMessage) {
	if (document.addEventListener)
		window.addEventListener("load", function() {
			setTimeout(function() {showErrorMessage(aMessage) }, 5)
		}, false);
	else
		window.attachEvent("onload", function() {
			showErrorMessage(aMessage)
		});
}
showErrorMessage = function(aMessage, aErrorText) {
	var er = window.frames && frames.hideErrorMessageFrame,
		is_ie = /MSIE (5\.5|6).+Win/.test(navigator.userAgent);
	if(er)
	{
		if(window.hideErrorMessageFrameTimeout)
		{
			clearTimeout(hideErrorMessageFrameTimeout)
			hideErrorMessageFrameTimeout= null
		};
		var np = er.location.href.split("=")[1]
		er.location.href = "content/hideErrorMessage.htm?id=" + (document.getElementById("hideErrorMessageFrame").np = (parseInt(er.location.href.split("=")[1] || 0, 10) + 1));
	}
	if (aErrorText) {
		var errorText = document.getElementById('Error_Message_Text_ID')
		if (errorText) errorText.innerHTML = aErrorText;
	}
	var a = document.getElementById(aMessage);
	if (a) {
		var d, w = document.getElementsByTagName("HTML")[0];
		if (!a.fixedPng) {
			a.fixedPng = true;
			if (is_ie) {
				var src = a.currentStyle.backgroundImage.match(/url\("(.+)"\)/i);

				if (src) {
					src = src[1];
					a.runtimeStyle.backgroundImage = "none";
				}
				if (src) {
					d = document.createElement("DIV");
					d.style.position = "absolute";
					d.style.zIndex = 9999;
					d.style.top = "-9999px";
					document.body.appendChild(d);

					d.id = aMessage
					d.fixedPng = true;
					d.appendChild(document.createElement("DIV"));
					d.appendChild(a);
					a.id = "";
					a.runtimeStyle.top = "0px";
					a.runtimeStyle.position = "relative";
					with (d.firstChild.runtimeStyle) {
						position = "absolute";
						zIndex = 1;
						filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + src + "',sizingMethod='scale')";
						width = a.offsetWidth;
						height = a.offsetHeight;
					}
				}
			}
			if (!d)
				document.body.appendChild(a);
		}
		a.style.visibility = "visible";
		a.style.zIndex = 9999;

		var o = document.createElement("DIV");
		document.body.appendChild(o);
		o.id = "ErrorMessageBg"
		o.ErrorMessageCotainer = aMessage;
		setOpacityProperty(o, 80);
		o.innerHTML = "<a href='javascript:void(0)' style='text-decoration:none;' onclick='return false'>&nbsp;</a>"
		var c = document.getElementById(o.ErrorMessageCotainer),
			w = document.getElementsByTagName("HTML")[0],
			t = Math.max(w.scrollTop, document.body.scrollTop),
			l = Math.max(w.scrollLeft, document.body.scrollLeft),
			bgx = w.clientWidth + "px",
			bgy = w.clientHeight + "px",
			ifrm;
		with (o.style) {
			position = "absolute";
			zIndex = 9998;
			backgroundColor = "#000000"
			width = bgx;
			height = bgy;
			left = l + "px";
			top = t + "px";
		};
		if(is_ie){
			ifrm = document.getElementById('ErrorMessageBgiframe');
			if(!ifrm){
				ifrm = document.createElement("<iframe src='javascript:false;'></iframe>");
				ifrm.id = 'ErrorMessageBgiframe';
				document.body.appendChild(ifrm);
			}
			with (ifrm.style) {
				width = bgx;
				height = bgy;
				left = l + "px";
				top = t + "px";
				visibility = "visible";
			}
		}
		if (c.offsetHeight > o.offsetHeight)
			c.style.top = t + "px";
		else
			c.style.top = Math.max(0, parseInt(t + (Math.min(o.clientHeight, document.body.offsetHeight) - c.clientHeight)*(c.getAttribute('higher')?.25:.5), 10)) + "px";
		if (c.offsetWidth > o.offsetWidth)
			c.style.left = l + "px";
		else
			c.style.left = Math.max(0, parseInt(l + (o.clientWidth - c.clientWidth) / 2, 10)) + "px";
		setTimeout("focusErrorMessage()", 500)
		if (document.addEventListener) {
			window.addEventListener("resize", resizeErrorMessage, true);
			window.addEventListener("scroll", scrollWinErrorMessage, true);
		}
		else {
			window.attachEvent("onresize", resizeErrorMessage);
			window.attachEvent("onscroll", scrollWinErrorMessage);
		}
	}
}
focusErrorMessage = function() {
    var o = document.getElementById("ErrorMessageBg");
    if (o && (o = o.firstChild)) {
        o.focus();
        o.blur();
    };
    if ((o = document.getElementById('btnCloseCompleteBox') || document.getElementById('btnCloseErrorBox')))
        o.focus();
}
closeErrorMessage = function() {
    if (document.addEventListener) {
        window.removeEventListener("resize", resizeErrorMessage, true);
        window.removeEventListener("scroll", scrollWinErrorMessage, true);
    } else {
        window.detachEvent("onresize", resizeErrorMessage);
        window.detachEvent("onscroll", scrollWinErrorMessage);
    }
    var o = document.getElementById("ErrorMessageBg");
    if (o) {
        var a = document.getElementById(o.ErrorMessageCotainer);
        if (a)
            a.parentNode.removeChild(a);
        o.parentNode.removeChild(o);
    };
	if((o = document.getElementById("ErrorMessageBgiframe")))
		with(o.style){
			visibility = "hidden";
			top = "-9999px";
			left = "0";
		}
    return false;
}
hideErrorMessage = function() {
    if (document.addEventListener) {
        window.removeEventListener("resize", resizeErrorMessage, true);
        window.removeEventListener("scroll", scrollWinErrorMessage, true);
    } else {
        window.detachEvent("onresize", resizeErrorMessage);
        window.detachEvent("onscroll", scrollWinErrorMessage);
    }
    var o = document.getElementById("ErrorMessageBg");
    if (o) {
        var a = document.getElementById(o.ErrorMessageCotainer);
        if (a)
		{
			a.style.top = "-9999px";
			a.style.left = "0px";
			a.style.visibility = "visible";
		}
        o.parentNode.removeChild(o);
    };
	if((o = document.getElementById("ErrorMessageBgiframe")))
		with(o.style){
			visibility = "hidden";
			top = "-9999px";
			left = "0";
		}
	if(window.frames && frames.hideErrorMessageFrame)
	{
		window.hideErrorMessageFrameTimeout = setTimeout(function(){
			var er = window.frames && frames.hideErrorMessageFrame;
			if(er)
			{
				var n = parseInt(er.location.href.split("=")[1] || 0, 10);
				if(n)
					er.history.go(-n)
			}
		}, 20)
	}
    return false;
}
scrollWinErrorMessage = function() {
	var b = document.getElementById("ErrorMessageBg");
	if (b) {
		var c = document.getElementById(b.ErrorMessageCotainer);
		if (c) {
			var ifrm = document.getElementById("ErrorMessageBgiframe"),
				w = document.getElementsByTagName("HTML")[0],
				t = Math.max(w.scrollTop, document.body.scrollTop),
				l = Math.max(w.scrollLeft, document.body.scrollLeft),
				higher = c.getAttribute('higher');
			b.style.left = l + "px";
			b.style.top = t + "px";
			if(ifrm){
				ifrm.style.left = l + "px";
				ifrm.style.top = t + "px";
			}
			if (c.offsetHeight > b.offsetHeight) {
				if (t < c.offsetTop)
					c.style.top = t + "px";
				else if (t + w.clientHeight > c.offsetTop + c.offsetHeight)
					c.style.top = t + w.clientHeight - c.offsetHeight + "px";
			}
			else
				c.style.top = Math.max(0, parseInt(t + (Math.min(b.clientHeight, document.body.offsetHeight) - c.clientHeight)*(higher?.25:.5), 10)) + "px";
			if (c.offsetWidth > b.offsetWidth) {
				if (l < c.offsetLeft)
					c.style.left = l + "px";
				else if (l + w.clientWidth > c.offsetLeft + c.offsetWidth)
					c.style.left = l + w.clientWidth - c.offsetWidth + "px";
			}
			else
				c.style.left = Math.max(0, parseInt(l + (b.clientWidth - c.clientWidth) / 2, 10)) + "px";
		}
	}
}
resizeErrorMessage = function() {
	var b = document.getElementById("ErrorMessageBg"),
		ifrm = document.getElementById("ErrorMessageBgiframe");
	if (b || ifrm) {
		var w = document.getElementsByTagName("HTML")[0],
			bgx = w.clientWidth + "px",
			bgy = w.clientHeight + "px";
		if (b) {
			b.style.width = bgx;
			b.style.height = bgy;
		}
		if (ifrm) {
			ifrm.style.width = bgx;
			ifrm.style.height = bgy;
		}
		scrollWinErrorMessage();
	}
}