var w=window.XMLHttpRequest,use=-1,rel=false;

function x(){return (w)?new XMLHttpRequest():new ActiveXObject("Microsoft.XMLHTTP");}
function get(s){
	var a=new x(),b=s;
	a.onreadystatechange=h;
	a.open("GET",b,true);
	(w)?a.send(null):a.send();

	function h(){
		if(a.readyState==4 && a.status==200){
			set_advert(a.responseText);
		}
	}
}
/** 
 * [0] success | error
 * [1] main_colour
 * [2] block_colour
 * [3] hyphenated advert_title
 * [4] advert_title
 * [5] phone
 * [6] description
 * [7] website
 *
 *		<div class="advert-block" style="background:#{main_colour};" id="rotator_{rotator_id}">
 *			<div class="advert-inner" style="background:#{block_colour};">
 *				<h1><span><a href="{baseurl}member/{hyphenated_name}/" style="color:#{main_colour};">{company_name}</a></span></h1>
 *				<h2>Phone: {phone}</h2>
 *				<p>{description}</p>
 *				<div><span><a href="{baseurl}member/{hyphenated_name}/" style="color:#{main_colour};">{url}</a></span></div>
 *			</div>
 *		</div>
 */
function set_advert(txt) {
	var parts = txt.split('||');
	//alert(txt);
	// set {main_colour}
	//alert(parts[1]);
	document.getElementById('rotator_'+use).style.background='#'+parts[1];

	// set {block_colour}
	//alert(parts[2]);
	document.getElementById('rotator_'+use).getElementsByTagName('div')[0].style.background='#'+parts[2];

	// set href by replace
	//alert(parts[3]);
	var old_href = document.getElementById('rotator_'+use).getElementsByTagName('a')[0].href.split('/');
		old_href[old_href.length-2] = parts[3];
	var new_href = old_href.join('/');		
	document.getElementById('rotator_'+use).getElementsByTagName('a')[0].href=new_href;
	document.getElementById('rotator_'+use).getElementsByTagName('a')[1].href=new_href;

	// set {main_colour}
	//alert(parts[1]);
	document.getElementById('rotator_'+use).getElementsByTagName('a')[0].style.color='#'+parts[1];
	document.getElementById('rotator_'+use).getElementsByTagName('a')[1].style.color='#'+parts[1];

	// set {company_name}
	//alert(parts[4]);
	document.getElementById('rotator_'+use).getElementsByTagName('a')[0].innerHTML=parts[4];

	// set {phone}
	//alert(parts[5]);
	document.getElementById('rotator_'+use).getElementsByTagName('h2')[0].innerHTML='Phone: '+parts[5];

	// set {description}
	//alert(parts[6]);
	document.getElementById('rotator_'+use).getElementsByTagName('p')[0].innerHTML=parts[6];

	// set {url}
	//alert(parts[7]);
	document.getElementById('rotator_'+use).getElementsByTagName('a')[1].innerHTML=parts[7];

	var t = setTimeout("init_rotations()",5000);
}

function init_rotations () {
	use++;
	if(use==4) {	use=0;	}
	var current_date = new Date();
	if(baseurl && baseurl!=undefined && baseurl!=null) {
		get(baseurl + 'api.php?x=' + current_date.getTime());
	}
	if(!rel) {
		var a_tags = document.getElementsByTagName('a');
		for(var i=a_tags.length-1; i >= 0; i--) {
			if (a_tags[i].getAttribute("href") && (a_tags[i].getAttribute("rel") == "out" || a_tags[i].getAttribute("rel") == "link-out")) {
				a_tags[i].onclick=function () {
					openPopUp(this.getAttribute("href"));
					return false;
				}
			}
		}
		rel=true;
	}
}
function openPopUp(linkURL) {
	window.open(linkURL,'popup');
}
window.onload = init_rotations;