
function newsSearch(type){
  var searchStr = buildNewsSearchString(type);
//alert(searchStr);

  //Send the Ajax request
  $.ajax({ 
	method: "get", 
	url: searchEngine,    //Should be a config option
	data: searchStr,
	success: function(xml){
      outputNewsRecords(xml);
    }
  });  
}
function buildNewsSearchString(type){
  var searchStr = "searchStr=news<:>search<::>";
  
  if(type == "news"){
    searchStr += "type<:>news";
  }else if(type == "jobs"){
    searchStr += "type<:>jobs";
  }
  
  return(searchStr);
}

function getNewsRecords(xml){
  var output = "";
  var i=0;
  //var results = Array();
  
  $("record",xml).each(function() {
    results[i] = Array();
	results[i]["ID"]=$(this).find("ID").text();
	longDate = $(this).find("STORYDATE").text().split(" ");
//Need to filter out older that X months from the results	
	shortDate = longDate[0].split("-");
	results[i]["date"]=new Date();
	results[i]["date"].setYear(shortDate[0]);
	results[i]["date"].setMonth(shortDate[1]);
	results[i]["date"].setDate(shortDate[2]);
	results[i]["headline"] = $(this).find("HEADLINE").text();
	results[i]["summary"] = $(this).find("SUMMARY").text();
	results[i]["story"] = $(this).find("STORY").text();
	results[i]["link"] = $(this).find("LINK").text();
	results[i]["type"] = $(this).find("Type").text();
	i++;
  });

  results.sort(function (a,b){
    if(a["date"].getTime() == b["date"].getTime()){
	  return 0;
	}
	if(a["date"].getTime() > b["date"].getTime()){
	  return -1;
	}
	if(a["date"].getTime() < b["date"].getTime()){
	  return 1;
	}
  });
}

function createNewsHTML(){
  var page = "";
  var totalPages = (results.length)/newsItemsPerPage;
  var roundTotalPages = Math.round(totalPages);
  if((totalPages-roundTotalPages)>0){
    roundTotalPages++;
  }
  for(i=0;i<roundTotalPages;i++){
    var startNum = i * newsItemsPerPage;
    var stopNum = startNum + newsItemsPerPage;
	if(stopNum > results.length)stopNum = results.length;
	for(j=startNum;j<stopNum;j++){
	  page += "<div>";
	  //page += "hi";
	  year = results[j]["date"].getFullYear();
      month = results[j]["date"].getMonth();
      day = results[j]["date"].getDate();
	  page += "<span class=\"homeNewsDate\">&raquo;"+ month + "/" + day + "/" + year + "</span><br /><span class=\"homeNewsDate\">&raquo;"+ results[j]["type"] + "</span><h3 class=\"homeNewsTitle\">" + results[j]["headline"] + "</h3><p class=\"homeNewsStory\"><span id=\"" + results[j]["ID"] + "_SUM\">" + results[j]["summary"];
	  if(results[j]["story"]!= "" && results[j]["story"]!= "NA"){
	    page += "</span><br /><span onClick=\"expandStory("+ results[j]["ID"] +")\"><img src=\"images/icon-next-arrow.gif\" /> Click For More</span><br /><span id=\"" + results[j]["ID"] + "\" class=\"homeNewsStory hide\">"+ results[j]["story"] + "</span>";
	  }else{
	    page += "</span>";
	  }
	  
	  if(results[j]["link"]!= "" && results[j]["link"]!= "NA"){
	    page += "<br /><span><a href=\"" + results[j]["link"] + "\">Link</a></span>";
	  }
	  page += "</p>";
	}
    resultsPages[i]=page;
	page = "";
  }
}

/* DELETE THIS FUNCTION 
function createNewsHTML_org(){

  var page = "";
  var tmpNewsPage = "";
  var leftCol = "<div class=\"newsItemLeft\">";
  var rightCol = "<div class=\"newsItemRight\">";
  
  var totalPages = (results.length)/newsItemsPerPage;
  var roundTotalPages = Math.round(totalPages);
  if((totalPages-roundTotalPages)>0){
    roundTotalPages++;
  }
  for(i=0;i<roundTotalPages;i++){
    var startNum = i * newsItemsPerPage;
    var stopNum = startNum + newsItemsPerPage;
	if(stopNum > results.length)stopNum = results.length;
	for(j=startNum;j<stopNum;j++){
	  year = results[j]["date"].getFullYear();
      month = results[j]["date"].getMonth();
      day = results[j]["date"].getDate();
	  tmpNewsPage += "<span class=\"homeNewsDate\">&raquo;"+ month + "/" + day + "/" + year + "</span><br /><span class=\"homeNewsDate\">&raquo;"+ results[j]["type"] + "</span><h3 class=\"homeNewsTitle\">" + results[j]["headline"] + "</h3><p class=\"homeNewsStory\"><span id=\"" + results[j]["ID"] + "_SUM\">" + results[j]["summary"];
	  if(results[j]["story"]!= "" && results[j]["story"]!= "NA"){
	    tmpNewsPage += "</span><br /><span onClick=\"expandStory("+ results[j]["ID"] +")\"><img src=\"images/icon-next-arrow.gif\" /> Click For More</span><br /><span id=\"" + results[j]["ID"] + "\" class=\"homeNewsStory hide\">"+ results[j]["story"] + "</span>";
	  }else{
	    tmpNewsPage += "</span>";
	  }
	  
	  if(results[j]["link"]!= "" && results[j]["link"]!= "NA"){
	    tmpNewsPage += "<br /><span><a href=\"" + results[j]["link"] + "\">Link</a></span>";
	  }
	  tmpNewsPage += "</p>";
	
      if(j%2==0){
	    //Column left
	    leftCol+=tmpNewsPage;
	  }else{
	    //Column right
	    rightCol+=tmpNewsPage;
	  }
	  tmpNewsPage = "";
	}
	leftCol += "</div>";
	rightCol += "</div>";
	
	//Assign to the list of pages
	//page = leftCol + rightCol;
	page = leftCol + rightCol;
	resultsPages[i]=page;
	
	//Reset the variables
	page = "";
	leftCol = "<div class=\"newsItemLeft\">";
	rightCol = "<div class=\"newsItemRight\">";
  }
}
*/

function outputNewsRecords(xml){

    getNewsRecords(xml);
	createNewsHTML();
	displayNews(displayPage);
}

function expandStory(id){
    var showID = "#"+id;
	var showIDSum = showID + "_SUM";
    $(showID).toggleClass("hide");
}

function displayNews(pageNum){
  //Make sure pageNum is a valid number
  if((pageNum == undefined)||(pageNum == ""))pageNum = 0;
  if(pageNum > resultsPages.length)pageNum = 0;
  if(pageNum < 0)pageNum = resultsPages.length-1;
  
  //Make the news page display and the page controls reflect new page number
  $("#newsResults").html(resultsPages[pageNum]);
  updateNextPrevNums(pageNum);
}

function updateNextPrevNums(currentNum){

//$("#pageControls").html("<h1>"+currentNum+"</h1>");
  var pageControlsHTML = "";
  
  //Figure out how many pages of results there are... always round up
  var totalPages = (results.length)/newsItemsPerPage;
  var roundTotalPages = Math.round(totalPages);
  if((totalPages-roundTotalPages)>0){
    roundTotalPages++;
  }

  var prevNum = currentNum-1;
  var nextNum = currentNum+1;
  
  if(prevNum>-1){
    //pageControlsHTML += "<span onClick=\"displayNews(0)\"><a href=\"#\" class=\"prev\"><< First </a></span>";
    pageControlsHTML += "<span onClick=\"displayNews("+prevNum+")\"><a href=\"#\" class=\"prev\">&laquo; Previous </a></span>";
  }else{
    //pageControlsHTML += "<< First ";
    //pageControlsHTML = "<img src=\"images/icon-prev-arrow.gif\" alt=\"Previous News\" alt=\"Previous\" title=\"Previous\" env=\"images\"  />Previous ";
	pageControlsHTML += "&laquo; Previous ";
  }
  
  pageControlsHTML += " - " + (currentNum+1) + " of " + roundTotalPages + " - ";
  
  if(nextNum<roundTotalPages){
    var endNum = roundTotalPages-1;
    pageControlsHTML += " <span onClick=\"displayNews("+nextNum+")\"><a href=\"#\" class=\"next\">Next &raquo;</a></span> ";
	//pageControlsHTML += " <span onClick=\"displayNews("+endNum+")\"><a href=\"#\" class=\"next\">Last >></a></span> ";
  }else{
    pageControlsHTML += " Next &raquo;"; 
    //pageControlsHTML += " Last >>";	
  }
  
  $("#pageControls").html(pageControlsHTML);
}
