var qualoo_opera_timer = null;
var qualoo_ad_closed = false;

var qualoo_browser = (function() {
    var ua = navigator.userAgent;
    var isOpera = (''+window.opera) == '[object Opera]';
    return {
      IE:             !!window.attachEvent && !isOpera,
      Opera:          isOpera,
      WebKit:         ua.indexOf('AppleWebKit/') > -1,
      Gecko:          ua.indexOf('Gecko') > -1 && ua.indexOf('KHTML') === -1,
      MobileSafari:   /Apple.*Mobile.*Safari/.test(ua)
    }
})();

function qualoo_set_wh() {
	if(qualoo_ad_closed)
		return;
	var w = 0;
	var h = 0;

	//IE
	if(!window.innerWidth) {
		if(!(document.documentElement.clientWidth == 0)) {
			//strict mode
			w = document.documentElement.clientWidth;
			h = document.documentElement.clientHeight;
		} else {
			//quirks mode
			w = document.body.clientWidth;
			h = document.body.clientHeight;
		}
	//W3C
	} else {
		w = window.innerWidth;
		h = window.innerHeight;
	}

	qualoo_ad.style.width = w+"px";
	qualoo_ad.style.height = h+"px";
	qualoo_ad_wrapper.style.width = w+"px";
	qualoo_ad_wrapper.style.height = h+"px";

	var tb_div = document.getElementById("qualoo_tb_div");
	var tb_h = parseInt(tb_div.style.height.replace('px', ''));
	var tb_top = (h-tb_h)/2;
	if(tb_top < 0)
		tb_top = 0;
	tb_div.style.marginTop = tb_top+'px';
}

function qualoo_close_ad() {
	qualoo_stop_listen_event("resize", qualoo_set_wh);
	qualoo_stop_listen_event("keydown", qualoo_stop_key_scroll);
	qualoo_stop_listen_event("mousewheel", qualoo_stop_event);
	qualoo_remove_class(document.getElementsByTagName("html")[0], "qualoo_tb_interstitial");
	qualoo_remove_class(document.body, "qualoo_tb_interstitial");
	qualoo_ad.style.display = "none";
	qualoo_ad_wrapper.style.display = "none";
	setTimeout("scroll(1,1)", 50);
	setTimeout("scroll(0,0)", 50);
	qualoo_ad.innerHTML = '';
	qualoo_ad_closed = true;
	return false;
}

function qualoo_create_cookie(name,value,seconds) {
	if (seconds) {
		var date = new Date();
		date.setTime(date.getTime()+(seconds*1000));
		var expires = "; expires="+date.toGMTString();
	}
	else var expires = "";
	document.cookie = name+"="+value+expires+"; path=/";
}

function qualoo_read_cookie(name) {
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++) {
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	}
	return null;
}

function qualoo_remove_class(ele,cls) {
	if (qualoo_has_class(ele,cls)) {
		var reg = new RegExp('(\\s|^)'+cls+'(\\s|$)');
		ele.className=ele.className.replace(reg,' ');
	}
}
function qualoo_has_class(ele,cls) {
	return ele.className.match(new RegExp('(\\s|^)'+cls+'(\\s|$)'));
}
function qualoo_add_class(ele,cls) {
	if (!this.qualoo_has_class(ele,cls)) ele.className += " "+cls;
}

function qualoo_listen_event(evt_name, func) {
	if(window.addEventListener)
		window.addEventListener(evt_name, func, false);
	else if(window.attachEvent)
		window.attachEvent("on"+evt_name, func);
}

function qualoo_stop_listen_event(evt_name, func) {
	if(window.addEventListener)
		window.removeEventListener(evt_name, func, false);
	else if(window.attachEvent)
		window.detachEvent("on"+evt_name, func);
}

function qualoo_stop_event(e) {
	if (!e)
		var e = window.event;
	e.cancelBubble = true;
	if (e.stopPropagation) {
		e.preventDefault();
		e.stopPropagation();
	}
	setTimeout("scroll(0,0)", 50);
	return false;
}

function qualoo_stop_key_scroll(e) {
	var k = null;
	try { k = e.keyCode; } catch(e) {};
	try { k = e.which; } catch(e) {};

	if(k >= 37 && k <= 40) {
		qualoo_stop_event(e);
		return false;
	}
}

function qualoo_opera_scroll() {
	if(qualoo_ad_closed)
		return;
	scroll(0,0);
	qualoo_opera_timer = setTimeout("qualoo_opera_scroll()", 150);
}

function qualoo_init() {
	scroll(0,0);
	qualoo_listen_event("mousewheel", qualoo_stop_event);
	qualoo_set_wh();
	qualoo_create_cookie("qualoo_tb_interstitial", "shown", 3600);
}

if((qualoo_read_cookie("qualoo_tb_interstitial") !== "shown") && (navigator.userAgent.indexOf('Build 13') == -1)) {
	document.write('\
		<style>\
			html.qualoo_tb_interstitial, body.qualoo_tb_interstitial {\
				overflow:hidden !important;\
			}\
			#qualoo_tb_interstitial {\
				position:absolute;\
				top:0px;\
				left:0px;\
				margin:0;\
				padding:0;\
				width:100%;\
				height:100%;\
				z-index: 8675308;\
				background-color: #4a4a4a;\
				opacity: 0.40;\
				*filter: alpha(opacity=15);\
			}\
			#qualoo_tb_interstitial_wrapper {\
				position:absolute;\
				top:0px;\
				left:0px;\
				margin:0;\
				padding:0;\
				width:100%;\
				height:100%;\
				z-index: 8675309;\
				text-align:center;\
				overflow-y:auto;\
			}\
			#qualoo_tb_div {\
				width: 750px;\
				position: relative;\
				margin-left: auto;\
				margin-right: auto;\
				text-align; center;\
			}\
		</style>\
		<div id="qualoo_tb_interstitial">\
		</div>\
		<div id="qualoo_tb_interstitial_wrapper">\
			<div id="qualoo_tb_div" style="height:645px" >\
				<div style="background-color:white;">\
					<img src="http://www.qualoo.net/now/interstitial/interstitial_top.gif" />\
					<a href="http://www.qualoo.net/now/" style="text-decoration:none;" >\
						<div style="cursor:pointer">\
							<img style="border:0px;cursor:pointer" src="http://www.qualoo.net/now/interstitial/interstitial_mid.jpg" />\
						</div>\
						<img style="border:0px;cursor:pointer;" src="http://www.qualoo.net/now/interstitial/arrow_left.gif" />\
						<img style="border:0px;cursor:pointer;" src="http://www.qualoo.net/now/interstitial/downloadnow.gif" />\
						<img style="border:0px;cursor:pointer;" src="http://www.qualoo.net/now/interstitial/arrow_right.gif" />\
						<div style="height:20px"></div>\
					</a>\
				</div>\
				<div style="position:absolute; bottom:0px; right:20px; text-decoration:underline;cursor:pointer;">\
					<a onclick="qualoo_close_ad()">[close]</a>\
				</div>\
			</div>\
		</div>\
	');
	var qualoo_ad = document.getElementById("qualoo_tb_interstitial");
	var qualoo_ad_wrapper = document.getElementById("qualoo_tb_interstitial_wrapper");

	qualoo_add_class(document.getElementsByTagName("html")[0], "qualoo_tb_interstitial");
	qualoo_add_class(document.body, "qualoo_tb_interstitial");
	qualoo_listen_event("load", qualoo_init);
	qualoo_listen_event("resize", qualoo_set_wh);
	qualoo_listen_event("keydown", qualoo_stop_key_scroll);

	if(qualoo_browser.Opera) {
		qualoo_opera_timer = setTimeout("qualoo_opera_scroll()", 150);
	}
}

