//the set ads interval is now called 2 x a second for the first 10 seconds

var cynTotalAds = 8;
var cynAdsMoved = 0;

var cynSecondCheck = false;
var cynExtraMoves = 0;
var cynTotalExtraMoves = 20;

var cynUpdateAllAds = false;

function getPosition(e){
	var offset = {x:0,y:0};
	while (e)
	{
	    offset.x += e.offsetLeft;
	    offset.y += e.offsetTop;
	    e = e.offsetParent;
	}

	alert(offset.x + ' ' + offset.y)

	if (document.documentElement && (document.documentElement.scrollTop || document.documentElement.scrollLeft))
	{
	    offset.x -= document.documentElement.scrollLeft;
	    offset.y -= document.documentElement.scrollTop;
	}
	else if (document.body && (document.body.scrollTop || document.body.scrollLeft))
	{
	    offset.x -= document.body.scrollLeft;
	    offset.y -= document.bodt.scrollTop;
	}
	else if (window.pageXOffset || window.pageYOffset)
	{
	    offset.x -= window.pageXOffset;
	    offset.y -= window.pageYOffset;
	}

	return [ offset.x, offset.y ]
}

function checkAndMove(adName,contSuffix) {

	var cont = null;
	var item = null;
	var cName = adName+contSuffix;
	var hName = adName+'Hide';
	
	cont = document.getElementById(cName);
	item = document.getElementById(adName);
	
	if((cont && item) && this[hName] !== true) {
		item.style.left = (cont.offsetLeft + cont.offsetParent.offsetLeft) + "px";			
		item.style.top = (cont.offsetTop + cont.offsetParent.offsetTop + cont.offsetParent.offsetParent.offsetTop) + "px";
		
		item.style.visibility = 'visible';
		if(cynUpdateAllAds === false)
			cynAdsMoved++;
	}

}

function hideAds() {	
	document.getElementById('mpu').style.visibility = 'hidden';
	for(var i=1;i < cynTotalAds;i++) {
		document.getElementById('minibanner'+i).style.visibility = 'hidden';
	}
}

function setAds() {	
	 
	//alert("set ads"+cynExtraMoves+cynTotalExtraMoves);
	
	if((tabbedBoxPresent === true && tabbedBoxCreated === true) || (tabbedBoxPresent === false && tabbedBoxCreated === false)) {
		if(cynUpdateAllAds === true || cynSecondCheck === true) {
			
			checkAndMove('mpu','_container');
			
			for(var i=1;i < cynTotalAds;i++) {
				checkAndMove('minibanner'+i,'_container');
			}
			
			cynUpdateAllAds = false;
			
			if(cynSecondCheck === true && cynExtraMoves < cynTotalExtraMoves) {
				cynExtraMoves++
			} else if(cynSecondCheck === true && cynExtraMoves >= cynTotalExtraMoves) {
				//alert("cleareds");
				clearInterval(moveAdsInt);
			}
			
		} else {	
			if(document.getElementById('mpu') && cynAdsMoved == 0)
			checkAndMove('mpu','_container');

			if(document.getElementById('minibanner'+cynAdsMoved))
			checkAndMove('minibanner'+cynAdsMoved,'_container');
		
			if(cynTotalAds == cynAdsMoved) {
				cynSecondCheck = true;
			}
		}
	}
}

//used in panel-wait.js
//call only after the dom has loaded therefore tabbed box vars will always be present when called
function updateAds() {
	hideAds()
	cynUpdateAllAds = true;
	//set timeout makes it happen post slidedown
	showAgain = setTimeout(setAds, 2010)
	
}

moveAdsInt = setInterval('setAds()',500);

//hide empty ad slots containers - empty ads requires a span with a child within it e.g.: <span class="cynNoAd" style="display:none"><em>No Ad</em></span>
$(document).ready(function(){
	//setAds always on dom

	cynUpdateAllAds = true;
	setAds()

	var updateAfterHide = false;
	
	if($('#mpu > span.cynNoAd').children().length) {
		$('#mpu').hide()
		$('#mpu_container').hide()
		mpuHide = true
		updateAfterHide = true
	} else {
		mpuHide = false
	}
	for(var i=1;i < cynTotalAds;i++) {
		if($('#minibanner'+i+' > span.cynNoAd').children().length) {
			$('#minibanner'+i).hide();
			$('#minibanner'+i+'_container').hide()
			updateAfterHide = true
			this['minibanner'+i+'Hide'] = true;
		} else {
			this['minibanner'+i+'Hide'] = false;
		}
	}
	if(updateAfterHide === true) {
		cynUpdateAllAds = true;
		setAds()
	}
});


function showTakeover() {
	try {
		enable_takeover();
		clearInterval(updatebg);
	} catch (e) {
	}
}

$(document).ready(function(){
    try {
        enable_takeover();
    } catch (e) {
        updatebg = setInterval('showTakeover()',5000);
    }
});
