$(function() {
    setImg(startImg);

    //setup keyboard controls
    window.document.onkeydown = function(e){if (e == null) {keycode = event.keyCode} else {keycode = e.which} if($("#tab_endGallery").css("display") != "block"){if(keycode == 37){prevImg()}else if(keycode == 39 || keycode == 32){nextImg()}}else if (keycode == 27){$(".gallerylightBox").hide()}}

    //Setup image arrows
    $("#prevImage").click(function(){if($("#tab_endGallery").css("display") != "block"){prevImg()}});
    $("#nextImage").click(function(){if(startImg == FDGalleryImages.length-1){$("#tab_endGallery").show()}if($("#tab_endGallery").css("display") != "block"){nextImg()}});
    $("#image").mouseout(function() {$(".moveImg").addClass("hidden")}).mouseover(function() {if(startImg > 0){$("#prevImage").removeClass("hidden")}$("#nextImage").removeClass("hidden")});
            
    //thumbnails            
    for(var i=0;i<FDGalleryImages.length;i++){$("<img />").attr({src : FDGalleryImages[i], alt: FDGalleryDesc[i], width: ThumbWidth[i], height: ThumbHeight[i] }).appendTo($("<a></a>").attr("href","javascript:void(0);").addClass("loading").click(function(){$(".gallerylightBox").hide();setImg($("#galNavScroll > li > a").index(this))})).parent().appendTo($("<li></li>").attr("id","thumbs_"+i)).parent().appendTo("#galNavScroll");}
    $("#galNavScroll li a").removeClass("selected");
    $("#galNavScroll li a:eq("+startImg+")").addClass("selected");
    $("#scrollPrev").click(function(){if(parseInt($("#galNavScroll").css("left")+600) < 0){$("#galNavScroll").animate({left:"+=600"}, 100, function(){animateCallback()});}});
    $("#scrollNext").click(function(){if(1+Math.ceil(parseFloat($("#galNavScroll").css("left"))/-600) < Math.ceil((FDGalleryImages.length-1)/6)){$("#galNavScroll").animate({left:"-=600"}, 100, function(){animateCallback()});}});
    $("#thumbnails").click(function(){if($("#galNav").css("top") != "420px"){$("#thumbnails").text("Hide Thumbs");$("#galNav").animate({top:"420px"}, 350)}else {$("#thumbnails").text("Show Thumbs");$("#galNav").animate({top:"508px"}, 350)}});
             
    //sidebar functions                    
    $("#prevMostlyViewed").data('event.data', {container: 'mostlyViewed'}).bind("click", scrollLeft);
    $("#nextMostlyViewed").data('event.data', {container: 'mostlyViewed'}).bind("click", scrollRight);
    $("#prevMostRecent").data('event.data', {container: 'mostRecent'}).bind("click", scrollLeft);
    $("#nextMostRecent").data('event.data', {container: 'mostRecent'}).bind("click", scrollRight);

    //endgallery popup
    $("#lnkReplay").click(function() {setImg(0); $("#tab_endGallery").hide();});
    $("#closeEndGallery").click(function(event){$("#tab_endGallery").hide();event.stopPropagation()});
   
    //email
    $("#lnkEmail").click( function() { $("#email").show()});
    $("#btnCancel").click(function() { $("#email").hide()});    /*$("#email").click(function(event){ $("#email").show();event.stopPropagation()});*/
    $("#closeEmail").click(function() { $("#email").hide()});
}); 
        
function swapImage() {
    $("#galNavScroll li a").removeClass("selected");
    $("#galNavScroll li a:eq("+startImg+")").addClass("selected");
    $("#mImgDesc").text(FDGalleryDesc[startImg]);
    $("#imgLink img").remove();            
    $("#imgLink").append('<img id=""mImg"" src="'+FDGalleryImages[startImg]+'" alt="'+FDGalleryDesc[startImg]+'" height="'+FDGalleryHeight[startImg]+'" width="'+FDGalleryWidth[startImg]+'"></img>');
    
    //Refresh ads
    runAds();
    
    //Update tracking
    $("#trackImage").attr("src", _nnRecordFactory(document.location.href));
}
        
function animateCallback()
{
    if(Math.ceil(parseFloat($("#galNavScroll").css("left"))/-600) >= Math.floor(FDGalleryImages.length/6)){var l_offset = parseInt(Math.floor(FDGalleryImages.length/6)) * -600;$("#galNavScroll").css("left",l_offset+"px")}    
    if(parseInt($("#galNavScroll").css("left")) >= 0){$("#galNavScroll").css("left","0px"); $("#scrollPrev").addClass("hidden")} else {$("#scrollPrev").removeClass("hidden")}
    if(1+Math.ceil(parseFloat($("#galNavScroll").css("left"))/-600) < Math.ceil((FDGalleryImages.length-1)/6)){$("#scrollNext").removeClass("hidden")} else {$("#scrollNext").addClass("hidden")}
}

function setImg(x){
    startImg = x;
    swapImage();
}

function nextImg(){
    if(startImg == FDGalleryImages.length-1){$("#tab_endGallery").show()}
    if(startImg < FDGalleryImages.length-1){startImg++;swapImage()}
}

function prevImg(){
    if(startImg > 0){startImg--;swapImage()}
}

function getTinyURL(longURL, success) {
    var API = 'http://json-tinyurl.appspot.com/?url=',URL = API + encodeURIComponent(longURL) + '&callback=?';
	$.getJSON(URL, function(data){success && success(data.tinyurl);});
}

function scrollLeft(){
    var x = $(this).data('event.data').container;
    $("#"+x+" > div.relatedItem:last").insertAfter("#"+x+" > div.relatedItem:first");
    $("#"+x).css("left",parseInt($("#"+x).position().left)-101);
    $("#"+x).animate({left:"+=101"}, 350);
}
function scrollRight(){
    var x = $(this).data('event.data').container;
    $("#"+x+" > div.relatedItem:first").insertAfter("#"+x+" > div.relatedItem:last");
    $("#"+x).css("left",parseInt($("#"+x).position().left)+101);
    $("#"+x).animate({left:"-=101"}, 350);
}