var globalTimer;
var doRandom;
addLoadEvent(initExternalLinks);
addLoadEvent(initScroller);
addLoadEvent(initImagePopups);
addLoadEvent(initRotatorBanner);
addLoadEvent(initToggleBoxes);
addLoadEvent(initQuickfind);

function initQuickfind() {
	var quickfind = document.getElementById("quickfind");
	quickfind.onchange = function() {
		window.location = this.value;
	}
}

function initToggleBoxes() {
	var toggleButtons = getElementsByClassName("toggleButton");
	for(var i = 0; i < toggleButtons.length; i++) {
		var parentBox = toggleButtons[i].parentNode;
		parentBox.style.height = "35px";
		parentBox.style.overflow = "hidden";

		toggleButtons[i].onclick = function() {
			var parentBox = this.parentNode;
			if(parentBox.style.height == "35px") {
				parentBox.style.height = "auto";
				parentBox.style.overflow = "auto";
			} else {
				parentBox.style.height = "35px";
				parentBox.style.overflow = "hidden";
			}
		}
	}
}

function initImagePopups() {
	var clickableImages = getElementsByClassName("popup");
	for(var i = 0; i < clickableImages.length; i++) {
		clickableImages[i].onclick = function() {
			var imagePopup = document.getElementById("popupImage");
			var scrolledY;

			if(self.pageYOffset) {
				scrolledY = self.pageYOffset;
			} else if(document.documentElement && document.documentElement.scrollTop) {
				scrolledY = document.documentElement.scrollTop;
			} else if(document.body) {
				scrolledY = document.body.scrollTop;
			}
		
			var centerY;
			if(self.innerHeight) {
				centerY = self.innerHeight;
			} else if(document.documentElement && document.documentElement.clientHeight) {
				centerY = document.documentElement.clientHeight;
			} else if(document.body) {
				centerY = document.body.clientHeight;
			}
		
			var y = scrolledY + (centerY - 325) / 2;
		
			imagePopup.firstChild.src = this.src;		
			imagePopup.style.top = y + "px";
			imagePopup.style.display = "block";
		
			imagePopup.firstChild.onclick = function() { this.parentNode.style.display = "none"; }
			return false;
		}
	}
}

function initExternalLinks() {
	var hyperlinks = getElementsByRelName("external");
	for(var i = 0; i < hyperlinks.length; i++) {
		hyperlinks[i].target = "_blank";
	}
}

function randomScroller() {
	doRandom = true;
	var scrollerPics = getElementsByRelName("scrollerPic");
	var scrollerRand = Math.floor(Math.random() * 9);
	
	var headerGirl = document.getElementById("headerGirl");
	var headerImage = document.getElementById("headerImage");
	var headerLink = document.getElementById("headerLink");

	for(var i = 0; i < scrollerPics.length; i++) {
		scrollerPics[i].className = "";
		if(i == scrollerRand) {
			scrollerPics[i].className = "active";
			headerImage.src = scrollerPics[i].firstChild.src;
			headerLink.href = scrollerPics[i].href;
		}
	}
}
		
function initScroller() {
	if(doRandom != true) {
		var scrollerPics = getElementsByRelName("scrollerPic");
		scrollerPics[5].className = "active";
		for(var i = 0; i < scrollerPics.length; i++) {
			scrollerPics[i].onclick = function() {
				var popupImage = document.getElementById("popupImage");
				var headerGirl = document.getElementById("headerGirl");
				var headerImage = document.getElementById("headerImage");
				var headerLink = document.getElementById("headerLink");
	
				headerImage.src = "";
				theSRC = this.firstChild.src;
				theHREF = this.href;
	
				setTimeout(function() { headerImage.src = theSRC; headerLink.href = theHREF; }, 10);
	
				headerGirl.style.display = "block";
				if(popupImage) { popupImage.style.display = "none"; }
	
				var allScrollerPics = getElementsByRelName("scrollerPic");
				for(var j = 0; j < allScrollerPics.length; j++) { allScrollerPics[j].className = ""; }
				this.className = "active";
				return false;
			}
		}
	}
}

function initScroller() {
	//if(doRandom != true) {
		var scrollerPics = getElementsByRelName("scrollerPic");
		var headerLink = document.getElementById("headerLink");

		// Prevent go through to link
		if(headerLink) {
			headerLink.style.cursor = "default";
			headerLink.onclick = function() { return false; }
		}

		//alert(".");
		//scrollerPics[5].className = "active";
		for(var i = 0; i < scrollerPics.length; i++) {
			scrollerPics[i].onclick = function() {
				var popupImage = document.getElementById("popupImage");
				var headerGirl = document.getElementById("headerGirl");
				var headerImage = document.getElementById("headerImage");
				var headerLink = document.getElementById("headerLink");
	
				headerImage.src = "";
				theSRC = this.firstChild.src;
				theHREF = this.href;
	
				setTimeout(function() { headerImage.src = theSRC; headerLink.href = theHREF; }, 10);
	
				headerGirl.style.display = "block";
				if(popupImage) { popupImage.style.display = "none"; }
	
				var allScrollerPics = getElementsByRelName("scrollerPic");
				for(var j = 0; j < allScrollerPics.length; j++) { allScrollerPics[j].className = ""; }
				this.className = "active";
				return false;
			}
		}
	//}
}

// Helper functions...
function setOpacity(element, opacity) {
	element.style.opacity = opacity / 10;
	element.style.filter = 'alpha(opacity=' + opacity * 10 + ')';
}

function addLoadEvent(func) {
	var oldonload = window.onload;
	if(typeof window.onload != 'function') { window.onload = func; } else {
		window.onload = function() {
			if(oldonload) { oldonload(); }
			func();
		}
	}
}

function getElementsByClassName(classname) {
	var node = document.getElementsByTagName("body")[0];
	var a = [];
	var re = new RegExp('\\b' + classname + '\\b');
	var els = node.getElementsByTagName("*");
	for(var i = 0, j = els.length; i < j; i++) if(re.test(els[i].className)) a.push(els[i]);
	return a;
}

function getElementsByRelName(relname) {
	var node = document.getElementsByTagName("body")[0];
	var a = [];
	var re = new RegExp('\\b' + relname + '\\b');
	var els = node.getElementsByTagName("*");
	for(var i = 0, j = els.length; i < j; i++) if(re.test(els[i].getAttribute("rel"))) a.push(els[i]);
	return a;
}

/* Link Rotator Banner to New Code */
function initRotatorBanner() {
	banners = new Array();
	banners[0] = new banner("http://www.bellesescorts.co.uk/uploaded_files/banner_main/48fb884543819et-banner_6a.gif",
					"http://www.escortstonight.com/php-bin/top100/in.php?id=bellesuk",
					"Escorts Tonight", 10);
	banners[1] = new banner("http://www.bellesescorts.co.uk/uploaded_files/banner_main/48dc019bcb918huke-468x60.gif",
					"http://www.hottestukescorts.co.uk/in.php?id=bellesuk",
					"Hottest UK Escorts", 10);
	banners[2] = new banner("http://www.bellesescorts.co.uk/uploaded_files/banner_main/48dc025394a704718671754d81punting100.gif",
					"http://www.punting100.co.uk/escorts/in.php?id=bellesuk",
					"Punting 100", 10);
	banners[3] = new banner("http://www.bellesescorts.co.uk/uploaded_files/banner_main/48dc0305d8b5947dad943ca85bbabes-escorts468x60.gif",
					"http://www.babes-escorts.co.uk/in.php?id=bellesuk",
					"Babes Escorts", 10);
	banners[4] = new banner("http://www.bellesescorts.co.uk/uploaded_files/banner_main/48dc039363e84471641ac05adfreal-uk-escort-468x60.gif",
					"http://www.real-uk-escorts.co.uk/top-escorts/in.php?id=bellesuk",
					"Real UK Escorts", 10);
	banners[5] = new banner("http://www.bellesescorts.co.uk/uploaded_files/banner_main/48dc04542eff4471868c911170vote_image1.jpg",
					"http://www.uk-escorttop.com/in.php?site=1222378674",
					"UK Escort Top", 10);
	banners[6] = new banner("http://www.bellesescorts.co.uk/uploaded_files/banner_main/48dc04d995b1d47967849988f8rae-468x60.jpg",
					"http://rateanescort.co.uk/in.php?id=bellesuk",
					"Rate An Escort", 10);
	banners[7] = new banner("http://www.bellesescorts.co.uk/uploaded_files/banner_main/48dc056fcb6baukesc-468x60.jpg",
					"http://www.uk-escorts-100.co.uk/uk/in.php?id=bellesuk",
					"UK Escorts 100", 10);
	banners[8] = new banner("http://www.bellesescorts.co.uk/uploaded_files/banner_main/48dc060d72375esc-468x60.gif",
					"http://www.amateur-station.com/Escorts/in.php?id=bellesuk",
					"Amateur Station", 10);
	banners[9] = new banner("http://www.bellesescorts.co.uk/uploaded_files/banner_main/48def6c7c656awwe3.gif",
					"http://www.worldwide-escorts.com/cgi-bin/topescort/rankem.cgi?id=bellesuk",
					"Worldwide Escorts", 10);
	banners[10] = new banner("http://www.bellesescorts.co.uk/uploaded_files/banner_main/48def79443ed2escortplay1.jpg",
					"http://www.escortplayground.com/cgi-bin/top-escorts/rankem.cgi?id=bellesuk",
					"Escort Playground", 10);
	banners[11] = new banner("http://www.bellesescorts.co.uk/uploaded_files/banner_main/490934194edbeblondeanimban8.gif",
					"http://www.blonde-escorts-uk.co.uk/cgi-bin/topscripts/rankem.cgi?action=in&id=bellesuk",
					"Blonde Escorts", 10);
	banners[12] = new banner("http://www.bellesescorts.co.uk/uploaded_files/banner_main/4903648086fef4sex_ban.gif",
					"http://www.amust4sex.com/links/in.php?site=1224960104",
					"A Must 4 Sex", 10);
	banners[13] = new banner("http://www.bellesescorts.co.uk/uploaded_files/banner_main/4946e964ead07banner1.gif",
					"http://www.escortsselection.com/top100/in.php?id=bellesuk",
					"Escort Selection", 10);
	banners[14] = new banner("http://www.bellesescorts.co.uk/uploaded_files/banner_main/4949348742bc6marbellaescorts.jpg",
					"http://www.marbella-escort.com/top100/in.php?id=bellesuk",
					"Marbella Escort", 10);
	banners[15] = new banner("http://www.bellesescorts.co.uk/uploaded_files/banner_main/494bdd0badd7eps5_top100.gif",
					"http://www.petitesweets.com/cgi-bin/top100/rankem.cgi?id=bellesuk",
					"Petite Sweets", 10);
	banners[16] = new banner("http://www.bellesescorts.co.uk/uploaded_files/banner_main/494937295c053eurosecrets.gif",
					"http://www.eurosecrets.com/cgi/top-escorts/rankem.cgi?id=bellesuk",
					"Euro Secrets", 10);
	banners[17] = new banner("http://www.bellesescorts.co.uk/uploaded_files/banner_main/494bdec228688outcall6.gif",
					"http://www.outcall.net/toplist/rankem.cgi?id=bellesuk",
					"Outcall Net", 10);
	banners[18] = new banner("http://www.bellesescorts.co.uk/uploaded_files/banner_main/494c5b9073e9aEyes2.gif",
					"http://www.internationalescort.com/cgi-bin/arp/rankem.cgi?id=bellesuk",
					"International Escort", 10);
	banners[19] = new banner("http://www.bellesescorts.co.uk/uploaded_files/banner_main/495d2575b188bvcharts12.jpg",
					"http://www.venuscharts.com/cgi-bin/rankem.cgi?id=bellesuk",
					"Venua Charts", 10);
	banners[20] = new banner("http://www.bellesescorts.co.uk/uploaded_files/banner_main/495d2628e5e30kelly2.gif",
					"http://www.scandinavian-beauty.com/cgi-bin/top100/rankem.cgi?id=bellesuk",
					"Scandinavian Beauty", 10);
	banners[21] = new banner("http://www.bellesescorts.co.uk/uploaded_files/banner_main/495d2938cd63fbanner-1a.jpg",
					"http://www.escort-locator.com/cgi-bin/toplist/rankem.cgi?id=bellesuk",
					"Escort Locator", 10);
	banners[22] = new banner("http://www.bellesescorts.co.uk/uploaded_files/banner_main/495d2a1cd1534top100_banner_60x468.jpg",
					"http://www.exoticelite.com/cgi/top100/rankem.cgi?id=bellesuk",
					"Exotic Elite", 10);

	var rotatorBanner = document.getElementById("rotatorBanner");
	if(rotatorBanner) {
		var i = Math.floor(Math.random() * banners.length);
		var output = "<a target=\"_blank\" href=\"" + banners[i].url + "\"><img src=\"" + banners[i].img_source + "\" alt=\"" + banners[i].alt + "\"/></a>";
		rotatorBanner.innerHTML = output;
	}
}

function banner(img_source,url,alt,chance) {
   this.img_source = img_source;
   this.url = url;
   this.alt = alt;
   this.chance = chance;
}
