var current_news_item = 0, current_featured_item = 0, max_featured_item, max_news_item, featured_item;
var image_background = [];

var hoverFlag = false;
var doingRotation = false;
var item_width = 50; 
var left_value = item_width * (-1); 

$(document).ready( function(){
  $("#helpful_links_tab").click( function(){
    var footer = $("#footer");
    if(footer.hasClass("expand")){
      $(".overlay").fadeOut();
      footer.slideUp(function(){
        footer.removeClass("expand");
        footer.show();
      });
    }else{
      $(".overlay").fadeTo('slow', 0.8);
      footer.hide();
      footer.addClass("expand");
      footer.slideDown();
    }
  });
  $("#news_callout .more").click( function(event){
    event.preventDefault();
    $("#news_overlay").slideDown();
    $("#header .logo").addClass("highlight");
  });
  $("#news_overlay .close").click( function(){
    $("#news_overlay").slideUp();
    $("#header .logo").removeClass("highlight");
  });
  $("#keywords").focus( function(){
    this.value = "";
  });
  $("#primary_nav li").hover( 
    function(){
      $(".sub_nav", this).show();
    },
    function(){
      $(".sub_nav", this).hide();
    }
  );
  
  max_news_item = $("#news_overlay > ul > li").length - 4;
  if(max_news_item > 0){
    $("#news_overlay").append('<div class="arrow right"></div>');
    $("#news_overlay").append('<div class="arrow left"></div>');
    $("#news_overlay .arrow.left").hide();
    $("#news_overlay .arrow").click( function(){
      direction = $(this).hasClass("right") ? -1 : 1;
      current_news_item += direction;
      $("#news_overlay ul").animate( { left: (current_news_item * $("#news_overlay > ul > li").eq(current_news_item).outerWidth(true)) } );
      $("#news_overlay .arrow").show();
      if(current_news_item == 0){ $("#news_overlay .arrow.left").hide(); }
      else if(0 - current_news_item >= max_news_item){ $("#news_overlay .arrow.right").hide(); }
    });
  }

  featured_item = -1; 
  var list = $("#item_holder > ul > li")
  list.each(function(index) {
	 $(this).attr('data-bg-img', image_background[index]); 
  });
  $("#item_holder > ul > li").live('click', function(event){	  
    event.preventDefault();
	var compArray = $.makeArray($("#item_holder > ul > li"));
	var tmpfeat = $("#item_holder > ul > li.active");
	var featured_item = $("#item_holder > ul > li").index(tmpfeat);
	var index = $("#item_holder > ul > li").index(this);

    var item = this;
    index = $.inArray(this, compArray);
	
    slide = $("#feature_slide");
    if(index == featured_item){ 
      return;
    }else if(index > featured_item) {
      slide.css( { left : $("#content").innerWidth() } );
    }else{
      slide.css( { left : $("#content").innerWidth() * -1 } );
    }
    $("#blocker").show();
    slide.css( { 'background' : "url("+$(this).attr('data-bg-img')+") no-repeat" } );
    slide.show();
    slide.animate( { left : 0 }, 1000, function(){
      $("#homepage #content").css( { 'background-image' : slide.css('background-image') } );
      
      var descrip = $("#feature_description");
      var link = $(".learn_more", descrip).clone();
      link.attr("href", $("a", item).eq(0).attr("href"));
      descrip.html($(item).html());
      $("a", descrip).remove();
      descrip.append(link);
	  
	  slide.hide();
      $("#blocker").hide();
    });
    $("#item_holder > ul > li").removeAttr('class');
    $(this).addClass("active");
    featured_item = index;
  });

  if($("#feature_description").length == 0){
    var item = list.eq(0);
    $("#feature").append('<div id="feature_description"><a class="learn_more"><div class="background"></div><span>Learn More</span></a></div>');
    $("#homepage #content").css( { 'background-image' : 'url('+image_background[0]+')' } );
    var descrip = $("#feature_description");
    var link = $(".learn_more", descrip).clone();
    link.attr("href", $("a", item).eq(0).attr("href"));
    descrip.html($(item).html());
    $("a", descrip).remove();
    descrip.append(link);
  }

  // console.log("locked is " + locked + "and " + (locked == "").toString());
  if ((typeof(locked) == "string") && (locked == "")) {
    var random_num = Math.floor(Math.random()*list.length);
	// console.log("random: " + random_num);
    var starter_item = list.eq(random_num);
    $("#homepage #content").css( { 'background-image' : "url("+image_background[random_num]+")" } );
    var descrip = $("#feature_description");
    var link = $(".learn_more", descrip).clone();
    link.attr("href", $("a", starter_item).eq(0).attr("href"));
    descrip.html($(starter_item).html());
    $("a", descrip).remove();
    descrip.append(link);
    starter_item.toggleClass("active");
    featured_item = random_num;
  }else{
    var index;
    background = $("#homepage #content").css( "background-image" ).match(/\("?([^)"]*)"?\)/)[1];
    loc = window.location.href.match(/http(s)?:\/\/([^/]*)/)[0];
    for(var i=0; i < image_background.length; i++){
      if( background == loc + image_background[i] ){
        index = i;
        i = image_background.length;
      }
    }
    list.eq(index).addClass("active");
    featured_item = index;
  }
  
    max_featured_item = $("#item_holder > ul > li").length - 10;
  if(max_featured_item > 0){
    $("#feature_container").append('<div class="arrow right"></div>');
    $("#feature_container").append('<div class="arrow left"></div>');
	$("#feature_container ul li:first-child").before($("#feature_container ul li:last-child"));
//	$("#feature_container ul li:last-child").after($("#feature_container ul li:first-child"));
	$("#feature_container ul").css('left', -50);
//    $("#feature_container .arrow.left").hide();
/*    $("#feature_container .arrow").click( function(){
      direction = $(this).hasClass("right") ? -1 : 1;
	  console.log(direction);
      current_featured_item += direction;
      $("#feature_container ul").animate( { left: (current_featured_item * $("#item_holder > ul > li").eq(current_featured_item).outerWidth(true)) } );
      $("#feature_container .arrow").show();
      if(current_featured_item == 0){ $("#feature_container .arrow.left").hide(); }
      else if(0 - current_featured_item >= max_featured_item){ $("#feature_container .arrow.right").hide(); }
    });*/
	$("#feature_container .arrow").hover(
		function () {
			// console.log('enter hover');
			direction = $(this).hasClass("right") ? -1 : 1;
			if (!hoverFlag) {
			//	console.log('run');
				hoverFlag = true;
				
				if (!doingRotation) { doRotate(direction); }
			}
		}, 
		function () {
			// console.log('leave hover');
			hoverFlag = false;
		}
  	);
  }else{
    $("#feature_container, #item_holder").width($("#feature_container ul li").length * $("#feature_container ul li").eq(0).outerWidth(true));
    $("#feature_container").css('margin', '0 5px');
  }
  
  function doRotate(dir) {  
	  
	// console.log('doing rotate');
    current_featured_item += dir;
	doingRotation = true;
	if (dir == 1) {
		// console.log('move right');
		var left_indent = parseInt($("#feature_container ul").css('left')) + item_width;
		// console.log(left_indent);		
		
		$("#feature_container ul").animate( { left: left_indent }, 1000, 'linear', function() {		
		
			var tmpclone = $("#feature_container ul li:last-child").clone();			
			$("#feature_container ul li:first-child").before(tmpclone);
			$("#feature_container ul li:last-child").remove();
		
		//	$("#feature_container ul li:first-child").before($("#feature_container ul li:last-child"));
			$('#feature_container ul').css({'left' : -50});
			
			doingRotation = false;
			
			if (hoverFlag) {
				doRotate(dir);	
			}			
			
		});	  
		
		image_background.unshift(image_background.pop());
	} else {	
		// console.log('move left');	
		var left_indent = parseInt($("#feature_container ul").css('left')) - item_width;
		// console.log(left_indent);
	
		$("#feature_container ul").animate( { left: left_indent }, 1000, 'linear', function() {
		
			var tmpclone = $("#feature_container ul li:first-child").clone();			
			$("#feature_container ul li:last-child").after(tmpclone);
			$("#feature_container ul li:first-child").remove();
			$('#feature_container ul').css({'left' : -50});
			
			doingRotation = false;
			
			if (hoverFlag) {
				doRotate(dir);	
			}
		});	
		
		image_background.push(image_background.shift());	
	}
	
	var compArray = $.makeArray($("#item_holder > ul > li"));
//	console.log(image_background.join());
	
  } 
  
});

var order_list = [];
var item_list = [];
var items = $('#news_overlay ul li');
for(var i = 0; i < items.length; i++){
  order_list[i] = parseInt($('div.overlay_time_tag', items.eq(i)).html().replace(/\D/gi, ''));
  item_list[i] = items.eq(i);
}

function sort_items(a, b){
  a_index = $.inArray(a, item_list);
  b_index = $.inArray(b, item_list);
  return order_list[a_index] - order_list[b_index];
}

item_list.sort(sort_items);

$('#news_overlay').append('<ul id="news_target"></ul>');
for(var i = item_list.length-1; i >= 0; i = i - 1){
  $("#news_target").append(item_list[i]);
}




