﻿
var	AreaID			= "cgHomepageBanner";
var	CPHName			= "ctl00_ContentPlaceHolder1_";
var	Num				= 0;
var	CellNum			= 0;
var	Interval		= 5000;
var	BCnt			= 0;
var	Container		= null;
var	ResetInterval	= false;
var	Table			= null;
var	Padding			= 12;

if(window.attachEvent)
	window.attachEvent("onload", initializeRotator);
else
	window.addEventListener("load", initializeRotator, false);
	
function initializeRotator(){

	Container	= document.getElementById(CPHName + AreaID);
	BCnt		= Container.childNodes.length;

	CreatePager();
	ArrangeLayout();

	setTimeout(RotateBanner, 5000);
	
	if(window.attachEvent)
		window.attachEvent("onresize", ArrangeLayout);
	else
		window.addEventListener("resize", ArrangeLayout, false);
}

function RotateBanner(){

	if(!ResetInterval)
	{
		if(Num < BCnt){
		
			Container.childNodes[Num].style.display				= "none";
			Table.rows[0].cells[Num*2].style.backgroundColor	= "#999999";
		}
		
		Num++;
		
		if(Num >= BCnt)
			Num	= 0;
		
		Container.childNodes[Num].style.display				= "";
		Table.rows[0].cells[Num*2].style.backgroundColor	= "#FF4902";
	}
	else
		ResetInterval	= false;
	
	setTimeout(RotateBanner, 5000);
}

function ShowBPager(){

	Table.style.filter		= "progid:DXImageTransform.Microsoft.Alpha(Opacity=100, Style=0)";
	Table.style.MozOpacity	= "1";
}

function HideBPager(){

	Table.style.filter		= "progid:DXImageTransform.Microsoft.Alpha(Opacity=50, Style=0)";
	Table.style.MozOpacity	= "0.5";
}

function CreatePager(){

	var	Row		= null;
	var	Cell	= null;
	
	Table					= document.createElement("table");
	Table.cellPadding		= "0";
	Table.cellSpacing		= "0";
	Table.border			= "0";
	Table.style.position	= "absolute";
	Table.style.left		= "0px";
	Table.style.top			= "0px";
	Table.style.zIndex		= "60000";
	Table.style.filter		= "progid:DXImageTransform.Microsoft.Alpha(Opacity=50, Style=0)";
	Table.style.MozOpacity	= "0.5";
	
	if(window.attachEvent){
	
		Table.attachEvent("onmouseover", ShowBPager);
		Table.attachEvent("onmouseout", HideBPager);
	}
	else{
	
		Table.addEventListener("mouseover", ShowBPager, false);
		Table.addEventListener("mouseout", HideBPager, false);
	}
	
	Row		= Table.insertRow(0);
	
	for(var i=0; i<BCnt; i++){
	
		Cell						= Row.insertCell(Table.rows[0].cells.length);
		Cell.innerHTML				= (i+1).toString();
		Cell.style.cursor			= "pointer";
		Cell.style.width			= "16px";
		Cell.style.height			= "16px";
		Cell.style.fontSize			= "11px";
		Cell.style.textAlign		= "center";
		Cell.style.fontFamily		= "Tahoma";
		Cell.style.border			= "#ffffff 1px solid";
		Cell.style.color			= "#ffffff";
		
		if(i == 0)
			Cell.style.backgroundColor	= "#FF4902";
		else
			Cell.style.backgroundColor	= "#999999";
		
		Cell.setAttribute("index", i.toString());
				
		if(window.attachEvent){
			
			Cell.attachEvent("onclick", SwapBanner);
			Cell.attachEvent("onmouseover", PagerMouseOver);
			Cell.attachEvent("onmouseout", PagerMouseOut);
		}
		else{
		
			Cell.addEventListener("click", SwapBanner, false);
			Cell.addEventListener("mouseover", PagerMouseOver, false);
			Cell.addEventListener("mouseout", PagerMouseOut, false);
		}
			
		Cell						= Row.insertCell(Table.rows[0].cells.length);
		Cell.innerHTML				= "&nbsp;"
		Cell.style.cursor			= "pointer";
		Cell.style.width			= "4px";
		Cell.style.height			= "16px";
		Cell.style.fontSize			= "1px";
	}
	
	document.body.appendChild(Table);
}

function ArrangeLayout(){

	Table.style.left	= (FindOffsetLeft(Container) + Padding).toString() + "px";
	Table.style.top		= (FindOffsetTop(Container) + Container.clientHeight - Table.clientHeight - Padding).toString() + "px";
}

function SwapBanner(e){

	var	Selected	= null;

	if(e && e.target)
		Selected	= e.target;
	else
		Selected	= event.srcElement;
	
	Container.childNodes[Num].style.display				= "none";
	Table.rows[0].cells[Num*2].style.backgroundColor	= "#999999";
	
	Num	= Number(Selected.attributes["index"].value);
	
	Container.childNodes[Num].style.display				= "";
	Table.rows[0].cells[Num*2].style.backgroundColor	= "#FF4902";
	
	Num				= Number(Selected.attributes["index"].value);
	ResetInterval	= true;
}

function FindOffsetLeft(Sender){

	var	CurrentLeft	= 0;
	
	if(Sender.offsetParent){
	
		CurrentLeft	= Sender.offsetLeft;
		
		while(Sender = Sender.offsetParent){
		
			CurrentLeft	+= Sender.offsetLeft;
		}
	}
		
	return CurrentLeft;
}

function FindOffsetTop(Sender){

	var	CurrentTop	= 0;
	
	if(Sender.offsetParent){
	
		CurrentTop	= Sender.offsetTop;
		
		while(Sender = Sender.offsetParent){
		
			CurrentTop	+= Sender.offsetTop;
		}
	}
		
	return CurrentTop;
}

function PagerMouseOver(e){

	var	Selected	= null;

	if(e && e.target)
		Selected	= e.target;
	else
		Selected	= event.srcElement;

	if(Number(Selected.cellIndex) != Num*2)
		Selected.style.backgroundColor	= "#FF4902";
}

function PagerMouseOut(e){

	var	Selected	= null;

	if(e && e.target)
		Selected	= e.target;
	else
		Selected	= event.srcElement;
			
	if(Number(Selected.cellIndex) != Num*2)
		Selected.style.backgroundColor	= "#999999";
}
