var thumbnailSet;
var lastSelected = false;
var g_imPlayerPath = "/vailResorts/sites/global/assets/flash/immersive/";
var playerTimer;
var currLeftCaraousalIndex=1;

$(document).ready(function () {
   new imPlayer(document.getElementById("divImmersivePlayer"), rebindEvents);
   
   thumbnailSet = 1;
   bindPaginationActions();
   setSelectedThumbnail();
   $(".videoTabs a").each(function () {
      $(this).click(function (event) {	
         event.preventDefault();
		 var idx = $("#mycarousel li").index( $(this).closest("li") );
		 var right_CarouselClip=$('.jcarousel-clip').position().left + $('.jcarousel-clip').width() ;
		 var right_li = $(this).closest("li").width() + $(this).closest("li").position().left + 10;
		 var left_CarouselClip=$('.jcarousel-clip').position().left;
		 var left_li = $(this).closest("li").position().left + 10;
			if(right_CarouselClip<right_li){
			    tabCarousel.scroll(idx - 3);}
			else if(left_CarouselClip<left_li){
			    tabCarousel.scroll(idx+1);}
			$(".videoTabs a").parent().removeClass("tabs-selected");
			var activeClass = $(this).parent().attr("class");
			$(this).parent().addClass("tabs-selected");
         thumbnailSet = 1;
         display360ImmersiveVideoGallery();
         setSelectedThumbnail();
		 
      })
   });

   var carouselWidth = 0;
   $("ul#mycarousel li").each(function () {
      carouselWidth += $(this).outerWidth()
   });
   if (carouselWidth > 695) {
      $(".jcarousel-prev, .jcarousel-next").show()
   } else {
      $(".jcarousel-prev, .jcarousel-next").hide()
   }
   applyCssClassForListItem();

});

function bindPaginationActions() {
   var lastVideoNumber = parseInt($(".thumbnailContainer li:last span.videoNumber").html(), 10);
   var firstVideo = parseInt($(".thumbnailContainer li:first span.videoNumber").html(), 10);
   $("#divPaginationThumbnailArea a").unbind().bind("click", function (e) {
      e.preventDefault();
      var totalVideos = parseInt($(".totalCategoryVideos").html(), 10);
      if ($(this).hasClass("linkNext") && totalVideos > lastVideoNumber) {
         thumbnailSet = thumbnailSet + 1;
         display360ImmersiveVideoGallery()
      }
      if ($(this).hasClass("linkPrevioius") && firstVideo != 1) {
         thumbnailSet = thumbnailSet - 1;
         display360ImmersiveVideoGallery()
      }
   })
}
function selectLastThumbnail() {
   if (lastSelected = true) {
      $(".thumbnailContainer ul li.selected").removeClass("selected");
      $(".thumbnailContainer ul li:last").addClass("selected");
      setSelectedThumbnail()
   }
}
function rebindEvents() {
   var video = $(".thumbnailContainer ul li.selected a").attr("href");
   //setTimeout(function () {
      playImmersiveVideo(video, false);
   //},
   //4000);
   $("#thumbnailContainer a").click(function (event) {
      event.preventDefault();
      //$(this).parent().parent().parent().find('ul li').removeClass('selected')
//      $(this).parents("div.thumbnailContainer ul").find("li").removeClass("selected");
      $('div.thumbnailContainer ul li').removeClass('selected')
      $(this).parents("li").addClass("selected");
      setSelectedThumbnail();
      playImmersiveVideo(this.href, false);
      updateCaptions()
   });
   updateCaptions()
}
function updateCaptions() {

   var caption = $("ul.thumbnails li.selected h3").text();
   var description = $("ul.thumbnails li.selected p").text();
     
   if ($(".captions h3").length) {  
      $(".captions h3").text(caption);
      $('.captions p[class!="date"]').text(description)
    
   }
}
function setSelectedThumbnail() {
   var changedCaption = $(".thumbnailContainer ul li.selected div.videoInfoThumbnail").html();
   $(".videoCaption").html(changedCaption);
   $(".videoCaption h3").html($(".videoCaption h3 a").html());
   var immersiveVideoNumber = $(".thumbnailContainer ul li.selected div.videoInfoThumbnail span.videoNumber").html();
   var totalCategoryImmersiveVideo = $(".totalCategoryVideos");
   if (totalCategoryImmersiveVideo.length > 0) {
      totalCategoryImmersiveVideo = totalCategoryImmersiveVideo.html()
   } else {
      totalCategoryImmersiveVideo = 0
   }
   var firstVideoNumber = $(".thumbnailContainer ul li:first div.videoInfoThumbnail span.videoNumber");
   if (firstVideoNumber.length > 0) {
      firstVideoNumber = firstVideoNumber.html()
   } else {
      firstVideoNumber = 0
   }
   var lastVideoNumber = $(".thumbnailContainer ul li:last div.videoInfoThumbnail span.videoNumber");
   if (lastVideoNumber.length > 0) {
      lastVideoNumber = lastVideoNumber.html()
   } else {
      lastVideoNumber = 0
   }
   var categoryPagingNumber = firstVideoNumber + "-" + lastVideoNumber + " OF " + totalCategoryImmersiveVideo;
   $(".categoryPagingNumber").html(categoryPagingNumber);
   if (eval(totalCategoryImmersiveVideo) > eval(lastVideoNumber)) {
      $(".linkNext").show()
   } else {
      $(".linkNext").hide()
   }
   if (eval(firstVideoNumber) > 1) {
      $(".linkPrevioius").show()
   } else {
      $(".linkPrevioius").hide()
   }
}
function applyCssClassForListItem() {
   for (var iCounter = 0;
   iCounter < ($(".thumbnailContainer ul li").length);
   iCounter++) {
      iCounter = iCounter + 3;
      $(".thumbnailContainer ul li:eq(" + iCounter + ")").addClass("fourth")
   }
   //REMOVED THIS...WE'RE CREATING A NEW UL NOW. FIX FOR ARTF995668, FARROYO
   /*for (var iCounter = 0;
   iCounter < ($(".thumbnailContainer ul li").length);
   iCounter++) {
      iCounter = iCounter + 4;
      $(".thumbnailContainer ul li:eq(" + iCounter + ")").addClass("fifth")
   }*/
}
function display360ImmersiveVideoGallery() {
   var category = $(".videoTabs li.tabs-selected a").html();
   var firstVideoNumber;
   var immersiveVideoThumbnailURL = "/vailresorts/sites/Global/WebServices/VirtualToursService.svc/LoadThumbnails";
   $.ajax({
       type: "POST",
       url: immersiveVideoThumbnailURL,
       data: '{"guid" : "' + virtualTourPageElementGuid + '","category" : "' + category + '","thumbnailSet" : "' + thumbnailSet + '"}',
       contentType: "application/json; charset=utf-8",
       dataType: "json",
       success: function(msg) {
           $("[id=thumbnailContainer]").eq(0).html(msg.d);
           if (lastSelected == true) {
               selectLastThumbnail();
               lastSelected = false
           }
           setSelectedThumbnail();
           bindPaginationActions();
           rebindEvents();
           applyCssClassForListItem()
       },
       error: function(xhr, status, error) {
           handleGlobalVirtualToursError(xhr, status, error);
       }
   });
   return false
}

function handleGlobalVirtualToursError(xhr, status, error) {
    var errMsg = getErrorMessage(xhr, status, error);
    $("#pageCategoryContentHolder").html('<span class="errorMessage">' + errMsg + '</span>');
    $(".thumbnailPagination").hide();
}

function playImmersiveVideo(url, pauseOnLoad) {
   var embed_id = $("#divImmersivePlayer embed").attr("id");
   var object_id = $("#divImmersivePlayer object").attr("id");
   var id = embed_id || object_id;
   if (typeof id != "undefined") {
      getFlashMovie(id).loadVideo(url);
      if (pauseOnLoad) {
         getFlashMovie(id).pauseVideo()
      }
   }
};