var calendar = {
	setGlobals: function() {
		calendar.contentBody = jQuery('div#content-body');
		calendar.events = jQuery('div.event-container');
		calendar.calendarPhotos = jQuery('div#calendar-photos');
		calendar.calendarTitle = jQuery('h1#calendar-title');
		calendar.calendarLinks = jQuery('div#calendar-photos a');
		calendar.eventLinks = jQuery('ul.event-links a.show-details');
		calendar.backLinkHTML = '<a href="#" rel="back" class="back-link">back</a>';
		calendar.eventDetails = jQuery('div.event-details');
		calendar.closeLink = jQuery('div.close-event a');
	},
	
	setBackLink: function() {
		campaignActive = 0;		
		jQuery('div#wrapper').append(calendar.backLinkHTML);
		backLink = jQuery('a[rel="back"]');
		backLink.css({ opacity: 0 });
		backLink.bind('click', function(){
			calendar.slideOut();
			brizo.hideBackLink();
			return false;
		});
	},
	
	slideIn: function(elm) {
		setTimeout(function(){
			elm.addClass('showing');
			elm.animate({ right: '148px', opacity: 1 }, 500, 'easeOutExpo');
		}, 250);		
	},
	
	slideOut: function() {
		jQuery('div.showing').animate({ right: '-754px', opacity: 0 }, 300, 'easeInBack', function(){			
			jQuery('div.showing').removeClass('showing');
		});
		brizo.contentBody.css({ left: '-525px' }).animate({ left: brizo.contentBodyLeft, opacity: 1 }, 300, 'easeInBack');
		calendar.hideDetails();
		brizo.hideBackLink();
	},
	
	showDetails: function(elm) {
		var details = jQuery(elm).parents().find('div.event-details');
		details.animate({ left: '0px', opacity: 1 }, 200, brizo.easing);
		calendar.eventLinks.addClass('selected');
	},
	
	hideDetails: function() {
		var details = jQuery('div.event-details');
		details.animate({ left: '-400px', opacity: 0 }, 200, brizo.easing);
		calendar.eventLinks.removeClass('selected');
	},
	
	setShowDetails: function() {
		calendar.eventLinks.bind('click', function(){
			calendar.showDetails(this);
			return false;
		});
	},
	
	setHideDetails: function() {
		calendar.closeLink.bind('click', function(){
			calendar.hideDetails();
			return false;
		});
	},
	
	setcalendarLinks: function() {
		calendar.calendarLinks.bind('click', function(){
			brizo.contentBody.animate({ left: '-525px', opacity: 0 }, 300, 'easeInBack', function(){
				brizo.contentBody.css({ left: '-788px' });
			});
			calendar.slideIn(jQuery(this.hash));
			calendar.setBackLink();
			brizo.showBackLink();
			return false;
		});
	},
	
	initPage: function() {
		calendar.eventDetails.css({
			position: 'absolute'
			,left: '-400px'
			,opacity: 0
		});
		calendar.events.css({
			position: 'absolute'
			,top: '60px'
		});
		calendar.setcalendarLinks();
		calendar.setShowDetails();
		calendar.setHideDetails();
	},
	
	setVideo: function() {
		video.init();		
	}
};

jQuery(document).ready(function(){
	calendar.setGlobals();
	calendar.initPage();
	calendar.setVideo();
});
