function prepareHomepageSlideshow(){

 	document.getElementById('previousSlide1').onclick = function(){
		reverseHomepageSlide(1);
		clearTimeout(slideId);
		resumeButton();
		}
	document.getElementById('previousSlide2').onclick = function(){
		reverseHomepageSlide(2);
		clearTimeout(slideId);
		resumeButton();
		}
	document.getElementById('previousSlide3').onclick = function(){
		reverseHomepageSlide(3);
		clearTimeout(slideId);
		resumeButton();
		}
	document.getElementById('previousSlide4').onclick = function(){
		reverseHomepageSlide(4);
		clearTimeout(slideId);
		resumeButton();
		}
	document.getElementById('previousSlide5').onclick = function(){
		reverseHomepageSlide(5);
		clearTimeout(slideId);
		resumeButton();
		}
	document.getElementById('previousSlide6').onclick = function(){
		reverseHomepageSlide(6);
		clearTimeout(slideId);
		resumeButton();
		}
	document.getElementById('previousSlide7').onclick = function(){
		reverseHomepageSlide(7);
		clearTimeout(slideId);
		resumeButton();
		}
	document.getElementById('previousSlide8').onclick = function(){
		reverseHomepageSlide(8);
		clearTimeout(slideId);
		resumeButton();
		}
	document.getElementById('previousSlide9').onclick = function(){
		reverseHomepageSlide(9);
		clearTimeout(slideId);
		resumeButton();
		}
	document.getElementById('previousSlide10').onclick = function(){
		reverseHomepageSlide(10);
		clearTimeout(slideId);
		resumeButton();
		}
}

function prepareHomepageSlideshow2(){

 	document.getElementById('nextSlide1').onclick = function(){
		advanceHomepageSlide(1);
		clearTimeout(slideId);
		resumeButton();
		}
	document.getElementById('nextSlide2').onclick = function(){
		advanceHomepageSlide(2);
		clearTimeout(slideId);
		resumeButton();
		}
	document.getElementById('nextSlide3').onclick = function(){
		advanceHomepageSlide(3);
		clearTimeout(slideId);
		resumeButton();
		}
	document.getElementById('nextSlide4').onclick = function(){
		advanceHomepageSlide(4);
		clearTimeout(slideId);
		resumeButton();
		}
	document.getElementById('nextSlide5').onclick = function(){
		advanceHomepageSlide(5);
		clearTimeout(slideId);
		resumeButton();
		}
	document.getElementById('nextSlide6').onclick = function(){
		advanceHomepageSlide(6);
		clearTimeout(slideId);
		resumeButton();
		}
	document.getElementById('nextSlide7').onclick = function(){
		advanceHomepageSlide(7);
		clearTimeout(slideId);
		resumeButton();
		}
	document.getElementById('nextSlide8').onclick = function(){
		advanceHomepageSlide(8);
		clearTimeout(slideId);
		resumeButton();
		}
	document.getElementById('nextSlide9').onclick = function(){
		advanceHomepageSlide(9);
		clearTimeout(slideId);
		resumeButton();
		}
	document.getElementById('nextSlide10').onclick = function(){
		advanceHomepageSlide(10);
		clearTimeout(slideId);
		resumeButton();
		}
}

function prepareBreakingNewsTabs(){

 	document.getElementById('bnLink1').onclick = function(){
		toggleBreakingNewsTabs(1);
		}
	document.getElementById('bnLink2').onclick = function(){
		toggleBreakingNewsTabs(2);
		}
	document.getElementById('bnLink3').onclick = function(){
		toggleBreakingNewsTabs(3);
		}
	document.getElementById('bnLink4').onclick = function(){
		toggleBreakingNewsTabs(4);
		}
	document.getElementById('bnLink5').onclick = function(){
		toggleBreakingNewsTabs(5);
		}
	document.getElementById('bnLink6').onclick = function(){
		toggleBreakingNewsTabs(6);
		}
	document.getElementById('bnLink7').onclick = function(){
		toggleBreakingNewsTabs(7);
		}
	document.getElementById('bnLink8').onclick = function(){
		toggleBreakingNewsTabs(8);
		}
	document.getElementById('bnLink9').onclick = function(){
		toggleBreakingNewsTabs(9);
		}
	document.getElementById('bnLink10').onclick = function(){
		toggleBreakingNewsTabs(10);
		}
}

function preparePrintTabs(){

 	document.getElementById('printLink1').onclick = function(){
		togglePrintTabs(1);
		clearTimeout(rotationId);
		}
	document.getElementById('printLink2').onclick = function(){
		togglePrintTabs(2);
		clearTimeout(rotationId);
		}
	document.getElementById('printLink3').onclick = function(){
		togglePrintTabs(3);
		clearTimeout(rotationId);
		}
	document.getElementById('printLink4').onclick = function(){
		togglePrintTabs(4);
		clearTimeout(rotationId);
		}
	document.getElementById('printLink5').onclick = function(){
		togglePrintTabs(5);
		clearTimeout(rotationId);
		}
	document.getElementById('printLink6').onclick = function(){
		togglePrintTabs(6);
		clearTimeout(rotationId);
		}
	document.getElementById('printLink7').onclick = function(){
		togglePrintTabs(7);
		clearTimeout(rotationId);
		}
	document.getElementById('printLink8').onclick = function(){
		togglePrintTabs(8);
		clearTimeout(rotationId);
		}
	document.getElementById('printLink9').onclick = function(){
		togglePrintTabs(9);
		clearTimeout(rotationId);
		}
	document.getElementById('printLink10').onclick = function(){
		togglePrintTabs(10);
		clearTimeout(rotationId);
		}
}

function prepareCommunityTabs(){

 	document.getElementById('communityLink1').onclick = function(){
		toggleCommunityTabs(1);
		clearTimeout(rotationId);
		}
	document.getElementById('communityLink2').onclick = function(){
		toggleCommunityTabs(2);
		clearTimeout(rotationId);
		}
}

function advanceHomepageSlide(aSlideNum){

	var slideTotal = document.getElementById('topmedia_container').getElementsByTagName('ul').length;
	for (var k=1;k<=slideTotal;k++)
		{
		document.getElementById('topmedia' + k).style.display = 'none';
		}
	aSlideNum = aSlideNum + 1;
	if (aSlideNum > slideTotal) aSlideNum = 1;
	document.getElementById('topmedia' + aSlideNum).style.display = 'block';
	
}

function reverseHomepageSlide(rSlideNum){

	var slideTotal = document.getElementById('topmedia_container').getElementsByTagName('ul').length;
	for (var l=1;l<=slideTotal;l++)
		{
		document.getElementById('topmedia' + l).style.display = 'none';
		}
	rSlideNum = rSlideNum - 1;
	if (rSlideNum < 1) rSlideNum = slideTotal;
	document.getElementById('topmedia' + rSlideNum).style.display = 'block';
	
}

function toggleBreakingNewsTabs(bnObjNum){

	var bnObjTotal = document.getElementById('bnTabs').getElementsByTagName('li').length;
	for (var j=1;j<=bnObjTotal;j++)
		{
		document.getElementById('bnTab' + j).className = 'off';
		document.getElementById('bnSection' + j).style.display = 'none';
		}

	document.getElementById('bnTab' + bnObjNum).className = 'on';
	document.getElementById('bnSection' + bnObjNum).style.display = 'block';
	
}

function togglePrintTabs(objNum){

	var objTotal = document.getElementById('printTabs').getElementsByTagName('li').length;
	for (var i=1;i<=objTotal;i++)
		{
		document.getElementById('printTab' + i).className = 'off';
		document.getElementById('printSection' + i).style.display = 'none';
		}

	document.getElementById('printTab' + objNum).className = 'on';
	document.getElementById('printSection' + objNum).style.display = 'block';
	
}

function toggleCommunityTabs(objNum){

	var objTotal = document.getElementById('communityTabs').getElementsByTagName('li').length;
	for (var i=1;i<=objTotal;i++)
		{
		document.getElementById('communityTab' + i).className = 'off';
		document.getElementById('communitySection' + i).style.display = 'none';
		}

	document.getElementById('communityTab' + objNum).className = 'on';
	document.getElementById('communitySection' + objNum).style.display = 'block';
	
}

function rotateSpecialCoverage(item){

	var itemTotal = document.getElementById('speccov_list').getElementsByTagName('li').length;
	for (var p=1;p<=itemTotal;p++)
		{
		document.getElementById('specCov' + p).style.display = 'none';
		}
	item = item + 1;
	if (item > itemTotal) item = 1;
	document.getElementById('specCov' + item).style.display = 'block';
	specCovId = window.setTimeout("rotateSpecialCoverage("+item+")", 6000);
	
}

function rotateMiscButtons(item){

	for (var p=1;p<=3;p++)
		{
		document.getElementById('misc_button' + p).style.display = 'none';
		}
	document.getElementById('misc_button3a').style.display = 'none';
	item = item + 1;
	if (item > 3) item = 1;
	document.getElementById('misc_button' + item).style.display = 'block';
	if (item == 3) document.getElementById('misc_button3a').style.display = 'block';
	specCovId = window.setTimeout("rotateMiscButtons("+item+")", 6000);
	
}

function startRotations(){
	
	window.setTimeout("rotateSpecialCoverage(1)", 6000);
	window.setTimeout("rotateMiscButtons(1)", 6000);
	
}

function prepareSpotlightLinks() {
  if (!document.getElementById || !document.getElementsByTagName) {
    return;
  }
  if (!document.getElementById("slider_scroll")) {
    return;
  }
  var scroll = document.getElementById("slider_scroll");
  var links = scroll.getElementsByTagName("a");
  for (var i=0; i<links.length; i++) {
    if(i>0){
    links[i].onclick = function() {
      return grabNextSpotlight();
    };
    }else{
    links[i].onclick = function() {
      return grabPrevSpotlight();
    };
    }
  }
}

function grabNextSpotlight() {
  var list = document.getElementById("spotlight_list");
  var items = list.getElementsByTagName('li');
  var lastSpotlight = items[items.length-1];
  var lastSpotlightID = lastSpotlight.id;
  var file = "/templates/BS_Spotlight_Items?lastSpotlight="+lastSpotlightID;
  var request = getHTTPObject();
  if (request) {
    request.onreadystatechange = function() {
      parseNextSpotlightResponse(request);
    };
    request.open("GET", file, true);
    request.send(null);
    return false;
  } else {
    return true;
  }
}

function grabPrevSpotlight() {
  var list = document.getElementById("spotlight_list");
  var items = list.getElementsByTagName('li');
  var firstSpotlight = items[0];
  var firstSpotlightID = firstSpotlight.id;
  var file = "/templates/BS_Spotlight_Items?firstSpotlight="+firstSpotlightID;
  var request = getHTTPObject();
  if (request) {
    request.onreadystatechange = function() {
      parsePrevSpotlightResponse(request);
    };
    request.open("GET", file, true);
    request.send(null);
    return false;
  } else {
    return true;
  }
}

var i1 = 0;
var i2 = 0;
var item_width = 168;
function scrollSpotlightNext() {
	if (!document.getElementById("spotlight_list")) return false;
	var nav_images = document.getElementById("spotlight_list"); //images container
	var list_items = nav_images.getElementsByTagName("li").length; //images
	var total_distance = ((list_items - 4) * (item_width + 1)) * -1; //total distance for the images.  this does not include the original two images and should be a negative number for moving the pictures left
	
	var current_left = parseInt (nav_images.style.left); //get the current position of the images
	if (current_left <= total_distance) { //if the images are further than the total distance, exit
		i1 = 0;
		return true;
	} else {
		if (i1 < -2) { //call this function 3 times recursively to emulate a scrolling effect.
			i1 = 0;
			nav_images.style.left = (parseInt(nav_images.style.left) - 1) + "px"; //move the image
			return true;
		} else {		
			for (var j1 = 0; j1 < (item_width / 3); j1++) {
				current_left = current_left - 1;
				nav_images.style.left = current_left + "px"; //move the image
			}
		
			move = setTimeout("scrollSpotlightNext()", 10);
			i1--;
		}
	}
}
function scrollSpotlightBack() {
	if (!document.getElementById("spotlight_list")) return false;
	var nav_images = document.getElementById("spotlight_list"); //images container
	var list_items = nav_images.getElementsByTagName("li").length; //images
	var total_distance = ((list_items - 4) * (item_width + 1)) * -1; //total distance for the images.  this does not include the original two images and should be a negative number for moving the pictures left
	
	var current_left = parseInt (nav_images.style.left); //current location of the image
	if (current_left >= 0) { //if the images are further than the total distance, exit
		i2 = 0;
		return true;
	} else {
		if (i2 > 2) { //call this function 3 times recursively to emulate a scrolling effect.
			i2 = 0;
			nav_images.style.left = (parseInt(nav_images.style.left) + 1) + "px"; //move the image
			return true;
		} else {
			for (var j2 = 0; j2 < (item_width / 3); j2++) {
				current_left = current_left + 1;
				nav_images.style.left = current_left + "px";
			}
		
			move = setTimeout("scrollSpotlightBack()", 10);
			i2++;
		}
	}
}
function parseNextSpotlightResponse(request) {
  if (request.readyState == 4) {
    if (request.status == 200 || request.status == 304) {
      var spotlight = document.getElementById("spotlight_list");
      var next = document.createElement("div");
      next.innerHTML = request.responseText;
      var fragment = document.createDocumentFragment();
	while(next.firstChild) {
 	   fragment.appendChild(next.firstChild);
}
      spotlight.appendChild(fragment);
      setTimeout("scrollSpotlightNext()", 10);
	var list = document.getElementById("spotlight_list");
	var items = list.getElementsByTagName('li');
	var firstSpotlight = items[0];
	list.removeChild(firstSpotlight);
	var nav_images = document.getElementById("spotlight_list");
	var current_left = parseInt (nav_images.style.left);
	current_left = current_left + 169;
	nav_images.style.left = current_left + "px"; 
    }
  }
}

function parsePrevSpotlightResponse(request) {
  if (request.readyState == 4) {
    if (request.status == 200 || request.status == 304) {
      var spotlight = document.getElementById("spotlight_list");
      var prev = document.createElement("div");
      prev.innerHTML = request.responseText;
      var fragment = document.createDocumentFragment();
	while(prev.firstChild) {
 	   fragment.appendChild(prev.firstChild);
}
      spotlight.insertBefore(fragment, spotlight.firstChild);
	var nav_images = document.getElementById("spotlight_list");
	var current_left = parseInt (nav_images.style.left);
	current_left = current_left - 169;
	nav_images.style.left = current_left + "px"; 
      setTimeout("scrollSpotlightBack()", 10);
	var list = document.getElementById("spotlight_list");
	var items = list.getElementsByTagName('li');
	var lastSpotlight = items[items.length-1];
	list.removeChild(lastSpotlight);
    }
  }
}

function getHTTPObject() {
  var xhr = false;
  if (window.XMLHttpRequest) {
    xhr = new XMLHttpRequest();
  } else if (window.ActiveXObject) {
    try {
      xhr = new ActiveXObject("Msxml2.XMLHTTP");
    } catch(e) {
      try {
        xhr = new ActiveXObject("Microsoft.XMLHTTP");
      } catch(e) {
        xhr = false;
      }
    }
  }
  return xhr;
}

addLoadEvent(prepareSpotlightLinks);
addLoadEvent(prepareHomepageSlideshow);
addLoadEvent(prepareHomepageSlideshow2);
addLoadEvent(prepareBreakingNewsTabs);
addLoadEvent(preparePrintTabs);
addLoadEvent(prepareCommunityTabs);
addLoadEvent(startRotations);

