$(document).ready(function() {
	GC.init();
});

var GC = function() {
	function setMoreResultsCookies()
	{		
		$("a.v_more_results").click(function(){ 
			GC.setCookie('tea_results_tab', '#re_varsity', 365, '/');
			GC.setCookie('tea_results', '#results_varsity', 365, '/');
		});
		
		$("a.jv_more_results").click(function(){ 
			GC.setCookie('tea_results_tab', '#re_jv', 365, '/');
			GC.setCookie('tea_results', '#results_jv', 365, '/');
		});
					
		$("a.fr_more_results").click(function(){ 
			GC.setCookie('tea_results_tab', '#re_freshman', 365, '/');
			GC.setCookie('tea_results', '#results_freshman', 365, '/');
		});
		
	}
	
	function setRememberTabCookies()
	{
		$("div#tabs a.schedule_varsity").click(function(){ 
			GC.setCookie('tea_schedule_tab', $(this).attr('href'), 365, '/');
			GC.setCookie('tea_schedule', '#schedule_varsity', 365, '/');
		});
		
		$("div#tabs a.schedule_jv").click(function(){ 
			GC.setCookie('tea_schedule_tab', $(this).attr('href'), 365, '/');
			GC.setCookie('tea_schedule', '#schedule_jv', 365, '/');
		});
					
		$("div#tabs a.schedule_freshman").click(function(){ 
			GC.setCookie('tea_schedule_tab', $(this).attr('href'), 365, '/');
			GC.setCookie('tea_schedule', '#schedule_freshman', 365, '/');	
		});
		
		$("div#tabs a.results_varsity").click(function(){ 
			GC.setCookie('tea_results_tab', $(this).attr('href'), 365, '/');
			GC.setCookie('tea_results', '#results_varsity', 365, '/');
		});
		
		$("div#tabs a.results_jv").click(function(){ 
			GC.setCookie('tea_results_tab', $(this).attr('href'), 365, '/');
			GC.setCookie('tea_results', '#results_jv', 365, '/');	
		});
					
		$("div#tabs a.results_freshman").click(function(){ 
			GC.setCookie('tea_results_tab', $(this).attr('href'), 365, '/');
			GC.setCookie('tea_results', '#results_freshman', 365, '/');	
		});
		
		$("div#tabs a.rosters_varsity").click(function(){ 
			GC.setCookie('tea_rosters_tab', $(this).attr('href'), 365, '/');
			GC.setCookie('tea_rosters', '#rosters_varsity', 365, '/');
		});
		
		$("div#tabs a.rosters_jv").click(function(){ 
			GC.setCookie('tea_rosters_tab', $(this).attr('href'), 365, '/');
			GC.setCookie('tea_rosters', '#rosters_jv', 365, '/');	
		});
					
		$("div#tabs a.rosters_freshman").click(function(){ 
			GC.setCookie('tea_rosters_tab', $(this).attr('href'), 365, '/');
			GC.setCookie('tea_rosters', '#rosters_freshman', 365, '/');	
		});	
	}
	
	function adjustTabs(curPage) {
		if(curPage == 'schedules')
		{
			var schedules = GC.getCookie('tea_schedule');
			var schedules_tab = GC.getCookie('tea_schedule_tab');
			if(schedules)
			{
				$('div#tabs ' + schedules).addClass('tabs-selected');
				$('#tabs li:not(' + schedules + ')').removeClass('tabs-selected');
				
				$("#tabs div[@id^=sc_]").addClass('tabs-hide');
				$('div' + schedules_tab).removeClass('tabs-hide');
			}
		}
		else if(curPage == 'rosters')
		{
		
			var rosters = GC.getCookie('tea_rosters');
			var rosters_tab = GC.getCookie('tea_rosters_tab');
			if(rosters) 
			{
				$('div#tabs ' + rosters).addClass('tabs-selected');
				$('#tabs li:not(' + rosters + ')').removeClass('tabs-selected');
				
				$("div#tabs div[@id^=ro_]").addClass('tabs-hide');
				$('div' + rosters_tab).removeClass('tabs-hide');
			}
		}
		else if(curPage == 'results')
		{
		
			var results = GC.getCookie('tea_results');
			var results_tab = GC.getCookie('tea_results_tab');
			if(results) 
			{
				$('div#tabs ' + results).addClass('tabs-selected');
				$('#tabs li:not(' + results + ')').removeClass('tabs-selected');
				
				$("div#tabs div[@id^=re_]").addClass('tabs-hide');
				$('div' + results_tab).removeClass('tabs-hide');
			}
		}
	}
	
   return {
      init : function() 
		{
			
			$("#caption-bg").fadeTo("slow", 0.7);
			
			var curPage = $("div#maincontent2col").attr('class');
			
			//only load tabs javascript file if it is necessary
			if(curPage == 'schedules' || curPage == 'rosters' || curPage == 'results' || curPage == 'coaches') {
				$.getScript("/javascripts/jquery.tabs.pack.js", function(){
					$('#tabs').tabs({ fxFade: true, fxSpeed: 'slow' });
					setRememberTabCookies();
					adjustTabs(curPage);
				});
			}
			
			setMoreResultsCookies();			
		},
		
		/***
		Thank you Dustin Diaz for these cookie functions
		***/
		getCookie : function ( name ) {
			var start = document.cookie.indexOf( name + "=" );
			var len = start + name.length + 1;
			if ( ( !start ) && ( name != document.cookie.substring( 0, name.length ) ) ) {
				return null;
			}
			if ( start == -1 ) return null;
			var end = document.cookie.indexOf( ';', len );
			if ( end == -1 ) end = document.cookie.length;
			return unescape( document.cookie.substring( len, end ) );
		},
	
		setCookie : function ( name, value, expires, path, domain, secure ) {
			
			var today = new Date();
			today.setTime( today.getTime() );
			if ( expires ) {
				expires = expires * 1000 * 60 * 60 * 24;
			}
			var expires_date = new Date( today.getTime() + (expires) );
			document.cookie = name+'='+escape( value ) +
				( ( expires ) ? ';expires='+expires_date.toGMTString() : '' ) + //expires.toGMTString()
				( ( path ) ? ';path=' + path : '' ) +
				( ( domain ) ? ';domain=' + domain : '' ) +
				( ( secure ) ? ';secure' : '' );
		},
	
		deleteCookie : function ( name, path, domain ) {
			if ( BAI.getCookie( name ) ) document.cookie = name + '=' +
					( ( path ) ? ';path=' + path : '') +
					( ( domain ) ? ';domain=' + domain : '' ) +
					';expires=Thu, 01-Jan-1970 00:00:01 GMT';
		}
				
   };
	
}();