function prepareBreakingNewsLinks() {
  if (!document.getElementById || !document.getElementsByTagName) {
    return;
  }
  if (!document.getElementById("AJAX-Breaking-News-Nav")) {
    return;
  }
  var list = document.getElementById("AJAX-Breaking-News-Nav");
  var links = list.getElementsByTagName("a");
  for (var i=0; i<links.length; i++) {
    links[i].onclick = function() {
      var queryTemp = this.getAttribute("href").split("?")[1];
      var query = queryTemp.split("#")[0];
      return grabBreakingNewsFile(query);
    };
  }
}

function preparePrintSectionLinks() {
  if (!document.getElementById || !document.getElementsByTagName) {
    return;
  }
  if (!document.getElementById("AJAX-Print-Nav")) {
    return;
  }
  var list = document.getElementById("AJAX-Print-Nav");
  var links = list.getElementsByTagName("a");
  for (var i=0; i<links.length; i++) {
    links[i].onclick = function() {
      var queryTemp = this.getAttribute("href").split("?")[1];
      var query = queryTemp.split("#")[0];
      return grabPrintSectionFile(query);
    };
  }
}

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 prepareSlideshowLinks() {
  if (!document.getElementById || !document.getElementsByTagName) {
    return;
  }
  if (!document.getElementById("AJAX-Slideshow-Nav")) {
    return;
  }
  var slidenav = document.getElementById("AJAX-Slideshow-Nav");
 var links = slidenav.getElementsByTagName("a");
  for (var i=0; i<links.length; i++) {
    links[i].onclick = function() {
      var queryTemp = this.getAttribute("href").split("?")[1];
      var query = queryTemp.split("#")[0];
      return grabSlideshowFile(query);
    };
  }
}

function grabSlideshowFile(query) {
  var file = "/templates/FP-AJAX-Homepage-Slideshow.html?"+query;
  var request = getHTTPObject();
  if (request) {
    displayLoading(document.getElementById("topmedia"));
    request.onreadystatechange = function() {
      parseSlideshowResponse(request);
    };
    request.open("GET", file, true);
    request.send(null);
    return false;
  } else {
    return true;
  } 
}

function grabBreakingNewsFile(query) {
  var file = "/templates/FP-AJAX-Breaking-News.html?"+query;
  var request = getHTTPObject();
  if (request) {
    displayLoading(document.getElementById("AjaxBreakingNews"));
    request.onreadystatechange = function() {
      parseBreakingNewsResponse(request);
    };
    request.open("GET", file, true);
    request.send(null);
    return false;
  } else {
    return true;
  }
}

function grabPrintSectionFile(query) {
  var file = "/templates/FP-AJAX-Homepage-Print-Sections.html?"+query;
  var request = getHTTPObject();
  if (request) {
    displayLoading(document.getElementById("AjaxPrintSections"));
    request.onreadystatechange = function() {
      parsePrintSectionResponse(request);
    };
    request.open("GET", file, true);
    request.send(null);
    return false;
  } else {
    return true;
  }
}


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/FP_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/FP_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;
  }
}

function parseSlideshowResponse(request) {
  if (request.readyState == 4) {
    if (request.status == 200 || request.status == 304) {
      var details = document.getElementById("topmedia_container");
      details.innerHTML = request.responseText;
      if ( typeof jQuery.Lightbox === 'undefined' ) {
		setTimeout(function(){jQuery.Lightbox.relify();},1000);
	} else {
		jQuery.Lightbox.relify();
	}
    }
  }
}

function parseBreakingNewsResponse(request) {
  if (request.readyState == 4) {
    if (request.status == 200 || request.status == 304) {
      var details = document.getElementById("AjaxBreakingNews");
      details.innerHTML = request.responseText;
    }
  }
}

function parsePrintSectionResponse(request) {
  if (request.readyState == 4) {
    if (request.status == 200 || request.status == 304) {
      var details = document.getElementById("AjaxPrintSections");
      details.innerHTML = request.responseText;
      if ( typeof jQuery.Lightbox === 'undefined' ) {
		setTimeout(function(){jQuery.Lightbox.relify();},1000);
	} else {
		jQuery.Lightbox.relify();
	}
    }
  }
}

var i1 = 0;
var i2 = 0;
var item_width = 198;
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 - 5) * (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 - 5) * (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 + 199;
	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 - 199;
	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 electionResultsSlide() { 
	jQuery('#election_results h4').click(
	    function () {
	            jQuery(this).toggleClass('close');
	            if(jQuery(this).hasClass('close')){
	            jQuery(this).next('ul.canidates').slideUp();
	        }else{
	        	jQuery(this).next('ul.canidates').slideDown();
	        }
	    }
	); 
}

function grabAutoUpdateNews() {
	jQuery.ajax({
		type: "GET",
		url: "/templates/FP-AJAX-homepage-top-story.html",
		cache: false,
		success: function(result){
			var rc = result;
			var rc = rc.replace(/"(\s)\/>/gi, "\">");
			var rc = rc.replace(/&mdash;/gi, "—");
			var rc = rc.replace(/&ldquo;/gi, "“");
			var rc = rc.replace(/&rdquo;/gi, "”");
			var rc = rc.replace(/&rsquo;/gi, "’");
			var rc = rc.replace(/&quot;/gi, "\"");
			var rc = rc.replace(/&#39;/gi, "'");
			var rc = rc.replace(/(width="|border="|height=")[0-9]*/gi, "");
			var rc = rc.replace(/<\/p>/gi, "");
			var rc = rc.toLowerCase();
			var rc = rc.replace(/\s/g, "");
			var rc = rc.replace(/\t/g, "");
			var oh = jQuery("#topstory").html();
			var oh = oh.replace(/(width="|border="|height=")[0-9]*/gi, "");
			var oh = oh.replace(/"(\s)\/>/gi, "\">");
			var oh = oh.replace(/<\/p>/gi, "");
			var oh = oh.toLowerCase();
			var oh = oh.replace(/\s/g, "");
			var oh = oh.replace(/\t/g, "");
			if(oh != rc){
				jQuery("#topstory").hide();
				jQuery("#topstory").html(result);
				jQuery("#topstory").fadeIn("slow");
				grabAutoUpdateNextFour();
			}else{
				grabAutoUpdateNextFour();
			}
		}
	});

}
function grabAutoUpdateSecond() {
	jQuery.ajax({
		type: "GET",
		url: "/templates/FP-AJAX-second-topstory.html",
		cache: false,
		success: function(result){
			var rc = result;
			var rc = rc.replace(/"(\s)\/>/gi, "\">");
			var rc = rc.replace(/&mdash;/gi, "—");
			var rc = rc.replace(/&ldquo;/gi, "“");
			var rc = rc.replace(/&rdquo;/gi, "”");
			var rc = rc.replace(/&rsquo;/gi, "’");
			var rc = rc.replace(/&quot;/gi, "\"");
			var rc = rc.replace(/&#39;/gi, "'");
			var rc = rc.replace(/(width="|border="|height=")[0-9]*/gi, "");
			var rc = rc.replace(/<\/p>/gi, "");
			var rc = rc.toLowerCase();
			var rc = rc.replace(/\s/g, "");
			var rc = rc.replace(/\t/g, "");
			var oh = jQuery("#ajax-news li:first").html();
			var oh = oh.replace(/(width="|border="|height=")[0-9]*/gi, "");
			var oh = oh.replace(/"(\s)\/>/gi, "\">");
			var oh = oh.replace(/<\/p>/gi, "");
			var oh = oh.toLowerCase();
			var oh = oh.replace(/\s/g, "");
			var oh = oh.replace(/\t/g, "");
			if(oh != rc){
				jQuery("#ajax-news").prepend("<li></li>");
				jQuery("#ajax-news li:first").hide();
				jQuery("#ajax-news li:first").html(result);
				jQuery("#ajax-news li:last").remove();
				jQuery("#ajax-news li:first").slideDown("slow");
				grabAutoUpdateNextFour();
			}else{
				grabAutoUpdateNextFour();
			}
		}
	});

}
function grabAutoUpdateNextFour() {
	jQuery.ajax({
		type: "GET",
		url: "/templates/FP-AJAX-next4-topstories.html",
		cache: false,
		success: function(result){
			var rc = result;
			var rc = rc.replace(/"(\s)\/>/gi, "\">");
			var rc = rc.replace(/&mdash;/gi, "—");
			var rc = rc.replace(/&ldquo;/gi, "“");
			var rc = rc.replace(/&rdquo;/gi, "”");
			var rc = rc.replace(/&rsquo;/gi, "’");
			var rc = rc.replace(/&quot;/gi, "\"");
			var rc = rc.replace(/&#39;/gi, "'");
			var rc = rc.replace(/(width="|border="|height=")[0-9]*"/gi, "");
			var rc = rc.replace(/<\/p>/gi, "");
			var rc = rc.toLowerCase();
			var rc = rc.replace(/\s/g, "");
			var rc = rc.replace(/\t/g, "");
			var oh = jQuery("#ajax-news").html();
			var oh = oh.replace(/(width="|border="|height=")[0-9]*"/gi, "");
			var oh = oh.replace(/"(\s)\/>/gi, "\">");
			var oh = oh.replace(/<\/p>/gi, "");
			var oh = oh.toLowerCase();
			var oh = oh.replace(/\s/g, "");
			var oh = oh.replace(/\t/g, "");
			if(oh != rc){
				jQuery("#ajax-news").hide();
				jQuery("#ajax-news").html(result);
				jQuery("#ajax-news").fadeIn("slow");
				submitPluckBatch();
			}else{
				submitPluckBatch();
			}
		}
	});

}

function runAutoUpdateNews() {
	setInterval(grabAutoUpdateNews, 60000);
}
function loadBXslider() {
jQuery('#sliderWidget').bxSlider({
	displaySlideQty: 1,
	moveSlideQty: 1             
});
jQuery('#jetsScoresSlider').bxSlider({
	hideControlOnEnd: true,
	infiniteLoop: false,
	speed: 1000,
	pager: true,
	displaySlideQty: 4,
	moveSlideQty: 4
});
}

function grabAutoUpdateScoreJets() {
  if (!document.getElementById("jetsScoresSlider")) {
    clearInterval(jetsInt);
  }else{	
	jQuery.ajax({
		type: "GET",
		url: "/templates/FP-AJAX-nhl-score",
		cache: false,
		success: function(result){
			var rc = result;
			var rcArray = rc.split("-split-");
			for (var i=0; i < rcArray.length; i++){
			var rcItem = rcArray[i];
			var selector = "#jetsScoresSlider .liveGame" + i;
			var oh = jQuery("#jetsScoresSlider .liveGame" + i).html();
				if(oh != rcItem){
					jQuery("#jetsScoresSlider .liveGame" + i).hide();
					jQuery("#jetsScoresSlider .liveGame" + i).html(rcItem);
					jQuery("#jetsScoresSlider .liveGame" + i).fadeIn("slow");
				}
			}  
			
		}
	});
  }
}

function runAutoUpdateScoreJets() {
	jetsInt = setInterval(grabAutoUpdateScoreJets, 31000);
}

addLoadEvent(runAutoUpdateScoreJets);
addLoadEvent(loadBXslider);
addLoadEvent(runAutoUpdateNews);
addLoadEvent(prepareBreakingNewsLinks);
addLoadEvent(preparePrintSectionLinks);
addLoadEvent(prepareSlideshowLinks);
addLoadEvent(prepareSpotlightLinks);
addLoadEvent(electionResultsSlide);

