var slideInUse = new Array();
var xmlhttp = false;

if (!xmlhttp && typeof XMLHttpRequest!='undefined')  {
	xmlhttp = new XMLHttpRequest();
}

function minimiseAd() {
	Slide('ads', {duration:0.5}).up();
	minimiseAdAjax();
	/* document.getElementById('buttonAd').innerHTML = "<a href='javascript:maximiseAd()'><img src='images/content/img_bannerbtn_plus.gif' border='0' /></a>"; */
}

function maximiseAd() {
	Slide('ads', {duration:0.5}).down();
	maximiseAdAjax();
	/* document.getElementById('buttonAd').innerHTML = "<a href='javascript:minimiseAd()'><img src='images/content/img_bannerbtn_minus.gif' border='0' /></a>"; */
}


function minimiseAdAjax() {
	xmlhttp=GetXmlHttpObject();
	if (xmlhttp==null) {
		alert ("Browser does not support HTTP Request");
		return;
	} 

	var url = "bannerAd_lib.asp";
	url = url + "?ref=close";
	xmlhttp.open("GET", url, true);

	xmlhttp.onreadystatechange=function() {
		if (xmlhttp.readyState==4 || xmlhttp.readyState=="complete") {
			document.getElementById('buttonAd').innerHTML = "<a href='javascript:maximiseAd()'><img src='images/content/img_bannerbtn_plus.gif' border='0' /></a>" ;
		}
	}

	xmlhttp.send(null);
	return false;
}

function maximiseAdAjax() {
	xmlhttp=GetXmlHttpObject();
	if (xmlhttp==null) {
		alert ("Browser does not support HTTP Request");
		return;
	} 

	var url = "bannerAd_lib.asp";
	url = url + "?ref=open";
	xmlhttp.open("GET", url, true);

	xmlhttp.onreadystatechange=function() {
		if (xmlhttp.readyState==4 || xmlhttp.readyState=="complete") {
			document.getElementById('buttonAd').innerHTML = "<a href='javascript:minimiseAd()'><img src='images/content/img_bannerbtn_minus.gif' border='0' /></a>";
		}
	}

	xmlhttp.send(null);
	return false;
}

function GetXmlHttpObject() {
	var objXMLHttp=null;
	if (window.XMLHttpRequest) {
		objXMLHttp=new XMLHttpRequest();
	}
	else if (window.ActiveXObject) {
		objXMLHttp=new ActiveXObject("Microsoft.XMLHTTP");
	}
	return objXMLHttp;
}


function Slide(objId, options) {
	this.obj = document.getElementById(objId);
	this.duration = 1;
	this.height = parseInt(this.obj.style.height);

	if(typeof options != 'undefined') { this.options = options; } else { this.options = {}; }
	if(this.options.duration) { this.duration = this.options.duration; }
		
	this.up = function() {
		this.curHeight = this.height;
		this.newHeight = '1';
		if(slideInUse[objId] != true) {
			var finishTime = this.slide();
			window.setTimeout("Slide('"+objId+"').finishup("+this.height+");",finishTime);
		}
	}
	
	this.down = function() {
		this.newHeight = this.height;
		this.curHeight = '1';
		if(slideInUse[objId] != true) {
			this.obj.style.height = '1px';
			this.obj.style.display = 'block';
			this.slide();
		}
	}
	
	this.slide = function() {
		slideInUse[objId] = true;
		var frames = 30 * duration; // Running at 30 fps

		var tIncrement = (duration*1000) / frames;
		tIncrement = Math.round(tIncrement);
		var sIncrement = (this.curHeight-this.newHeight) / frames;

		var frameSizes = new Array();
		for(var i=0; i < frames; i++) {
			if(i < frames/2) {
				frameSizes[i] = (sIncrement * (i/frames))*4;
			} else {
				frameSizes[i] = (sIncrement * (1-(i/frames)))*4;
			}
		}
		
		for(var i=0; i < frames; i++) {
			this.curHeight = this.curHeight - frameSizes[i];
			window.setTimeout("document.getElementById('"+objId+"').style.height='"+Math.round(this.curHeight)+"px';",tIncrement * i);
		}
		
		window.setTimeout("delete(slideInUse['"+objId+"']);",tIncrement * i);
		
		if(this.options.onComplete) {
			window.setTimeout(this.options.onComplete, tIncrement * (i-2));
		}
		
		return tIncrement * i;
	}
	
	this.finishup = function(height) {
		this.obj.style.display = 'none';
		this.obj.style.height = height + 'px';
	}

	return this;
}