function externalLinks() {
    // open external links in a new window
    $("a[rel='external']").click(function(){
        window.open(this.href);
        return false;
    });
}

function fancyBoxFormatTitle(title, currentArray, currentIndex, currentOpts) {
    var ret = '';
    
    ret+='<div id="fancybox-title-over">';
        ret+='<a href="#" id="fancy-left-nav">&lt;</a>';
        ret+='<div id="fancy-title">' + title + '</div>';
        ret+='<a href="#" id="fancy-right-nav">&gt;</a>';
    ret+='</div>';
    return ret;
}

function fancyBoxOnComplete() {
    var fancy_wrap = $('#fancybox-wrap');
    var fancybox_title = $('#fancybox-title');
    var fancy_left_nav = $('#fancy-left-nav');
    var fancy_title = $('#fancy-title');
    var fancy_right_nav = $('#fancy-right-nav');
    //var fancy_title_over = $('#fancybox-title-over');
        
    // get the wrapper width
    var fancy_wrap_width = fancy_wrap.width();
    // extract its padding
    var fancy_wrap_padding_left = fancy_wrap.css('padding-left');
    var fancy_wrap_padding_left_value = fancy_wrap_padding_left.replace("px", "");
    
    // size the title div so it fits the whole width of the wrapper
    fancybox_title.width(fancy_wrap_width + (2 * fancy_wrap_padding_left_value));
    fancybox_title.css('left', 0);
    
    // size the left/right nav divs : same size as padding
    fancy_left_nav.width(fancy_wrap_padding_left_value);
    fancy_right_nav.width(fancy_wrap_padding_left_value);
    
    // size the actual title div
    fancy_title.width(fancy_wrap_width);

    // make custom nav clickable
	$('#fancy-left-nav').click(function() {
	    $.fancybox.prev();
	});
	$('#fancy-right-nav').click(function() {
	    $.fancybox.next();
	});	
}

function fancyBoxInit() {
    // init fancybox
    $("a.fancybox").fancybox({
        'cyclic'            : true,
        'showNavArrows'     : false,
        'padding'           : 0,
        'overlayColor'      : '#FFF',
        'overlayOpacity'    : 0.87,
        'showCloseButton'   : false,
		'transitionIn'	    : 'elastic',
		'transitionOut'	    : 'elastic',
		'speedIn'		    : 600, 
		'speedOut'		    : 200, 
		'overlayShow'	    : true,
		'titleFormat'       : fancyBoxFormatTitle,
		'onComplete'        : fancyBoxOnComplete
	});	
}

function yearNavigationLinks() {
    if ($(".year-list").length) {
        $(".year-link").click(function() {
            // remove previously selected year
            $(".year-link").each(function() {
                $(this).removeClass("selected");
            })
            
            // select clicked link
            $(this).addClass("selected");
        })
    }
}

function observe_submit_btn() {
    var btn = $('#submit-btn');
    
    if (btn.length) {
        $("#the-form").validate({
           errorPlacement: function(error, element) {
               error.remove();
           },
        })
        btn.click(function() {
            $("#the-form").submit();
        })
    }
}

// -- not used anymore
/*
function observe_home_msg() {
    // get the frame width
    var section = $("section#current-exhibition");
    var sectionWidth = section.width() - 5;
    
    // get the msg1 width
    var msg1 = $("#home-msg-1");
    var msg1Width = msg1.width();
    var msg1MaxWidthBeforeBreak = 690;
    
    console.log(sectionWidth);
    
    if (msg1Width > msg1MaxWidthBeforeBreak && msg1Width < sectionWidth) {
        msg1.after('<br>');
        console.log("width : " + msg1.width());
    }
}
*/

$(document).ready(function(){	
    externalLinks();
    if ($("a.fancybox").length) {
        fancyBoxInit();
    }
    yearNavigationLinks();
    
    observe_submit_btn();
});
