$(document).ready(function() {
	
	//if(!$.browser.msie){
		$('#nav li a').each(function(){
			if($(this).parent().parent().attr('id') == 'nav'){
				$(this).wrap('<div></div>');
			}
		});		
	//}
		
	$(".welcome-buttons a").click(
		function() {
			
			var toggleIn = $(this).attr("class");
			var isCurrent = $(this).hasClass("current");
			
			if ( !isCurrent ) {
						
				$("#welcome p.show").addClass("hide");
				$("#welcome p.show").removeClass("show");
			
				$("#welcome p." + toggleIn).removeClass("hide");
				$("#welcome p." + toggleIn).addClass("show");

				$(this).addClass("current");
			
				if ( toggleIn == 'toggle1' ) {
					$('.toggle2').removeClass("current");
				} else {
					$('.toggle1').removeClass("current");
				}
				
			}
			
			return false;
			
		}
	);
	
	$('#quick-info a').click(function(){
		$('#shelf').slideToggle();
		if($(this).hasClass('current')){
			$(this).removeClass('current');
		} else {
			$(this).addClass('current');		
		}
		return false;
	});
	
	sermonSort();
	embedVideo();
	miniCalHover();
	
	$('.sl_video a, #mb_video a, a.video').live('click', playVideo);	
	$('.sl_listen a, .listen a, #mb_jukebox a, a.play').live('click', playAudio);		
   
   	$('.external').attr('target', '_blank');
   	$('#tabs li a').bind('click', switchCalTabs);
	$('#months, #years').bind('change', switchCalMonth);
	$('#events-calendar caption a').live('click', switchCalendar);
	$('#mini-cal caption a').live('click', miniCalSwitch);
	$('#list-view li a').live('click', switchEventList);
	
	// set calendar month
	var month_year = getCookie('calendar');
	var body		= $('body').attr('id');
	
	if( (body == 'events') && month_year){
		var parts = month_year.split('-');
		var month = parts[0];
		var year = parts[1];		
		
		if(body == 'home'){
			$.get('/ajax/events.php', { month:month, year:year, mini:true}, function(data){
				$('#mini-cal').html(data);
				miniCalHover();
			});
		} else {
		
			$.get('/ajax/events.php', { month:month, year:year }, function(data){
				$('#events-calendar').html(data);
			});
		}
	}
	
	// clear and restore search input
   $('input.clickClear').focus(function() {
      startText = $(this).val();
      $(this).val('');
   });
   $('input.clickClear').blur(function() {
      blurText = $(this).val();
      if (blurText == '') {
         $(this).val(startText);
      };
   });  
   
   
   //$('div.sidebar-block-header').bind('click', headerAccordion);
   
   //checkCookieValues();
   
});

// launch audio player
function playAudio(){

	window.open('http://cpmassets.com/audio-player.php?audio='+$(this).attr('href'), 'audioPlayer', 'width=210,height=30,status=0,toolbar=0'); 
	return false;
}

// launch video player
function playVideo(){
	var $self = $(this);

	if($self.attr('nodeName') !== 'A'){
		if($self.parent().attr('nodeName') == 'A'){
			var $self = $self.parent();
		} else {
			return;
		}
	}
	
	if($self.attr('rel').length > 1){
		var place = $self.attr('href');
	} else {
		var place = 'http://cpmassets.com/video.php?video='+$self.attr('href');
	}
	window.open(place, 'videoPlayer', 'width=590,height=330,scrollbars=0,statusbar=0,address=0');
	return false;
}

// embed video player in page
function embedVideo(){
	// Video Embedding
	var vid = 1;
	$('.video').each(function(){
		var vurl = $(this).attr('onclick').toString();
		vurl = vurl.split('waspPopup')[1];
		vurl = vurl.split('\',')[0].replace('\'', '').replace('(', '');
		$(this).before('<div id="video'+vid+'">'+vurl+'</div>');		
		$(this).remove();
		
		var flashvars = { 
			file: vurl,
			autostart:'false',
			frontcolor: 'ffffff',
			lightcolor: 'cc9900',
			skin: 'http://www.longtailvideo.com/jw/upload/overlay.swf',
			controlbar: 'over'
		};
		
		var params = { wmode:'transparent' };
		var attributes = {  };
		
		if($(this).find('img').attr('src')){
			flashvars.image = $(this).find('img').attr('src');
		}
		swfobject.embedSWF("/file/media/player.swf", "video"+vid, "620", "440", "9.0.0", "/file/media/expressInstall.swf", flashvars, params, attributes);		
		$(this).remove();								
		vid++;			
	});
}

// sermon sorting functions
function sermonSort(){
/* SERMON SORTING */		
	// see if there is something in the query string to initially load
	var sort = window.location.hash;
	
	if(sort){
		var parts = sort.split('_');
		var key	= parts[0].replace('#', '');
		var val = parts[1];			
	
		
		$('#sermon-content').html('').css({height:'300px', background:'url(/img/ajax-loader.gif) no-repeat center center'});
		$.get('/ajax/sermons.php', {		
			key:key,
			val:val
		},
		function(o){			
			$('#sermon-content').html(o).css({height:'auto', background:'none'});			
			$('#current').hide();
			$('#all-messages').focus();
			Logos.ReferenceTagging.lbsBibleVersion = "NIV";
		    Logos.ReferenceTagging.lbsLinksOpenNewWindow = true;
		    Logos.ReferenceTagging.lbsLibronixLinkIcon = "dark";
		    Logos.ReferenceTagging.lbsNoSearchTagNames = [ "h1", "h2", "h3" ];
		    Logos.ReferenceTagging.tag();
		}
		);		
	}	
	
	$('.sorter').change(function(){
		window.location.hash = this.id+'_'+this.value;
		$('#sermon-content').html('').css({height:'300px', background:'url(/img/ajax-loader.gif) no-repeat center center'});
		if(this.selectedIndex !== 0){
			$.get('/ajax/sermons.php', { 
				'key':this.id,
				'val':this.value			
				}, 
				function(o){				

					//$('#primaryContent > h2').html(response[0]);
					$('#sermon-content').html(o).css({height:'auto', background:'none'});			
					$('#current').hide();					
					
					// reset sorter selects to first value
					$('.sorter').attr({ selectedIndex:0 })		
					$('#all-messages').focus().css('outline', 'none');
				    Logos.ReferenceTagging.lbsBibleVersion = "NIV";
				    Logos.ReferenceTagging.lbsLinksOpenNewWindow = true;
				    Logos.ReferenceTagging.lbsLibronixLinkIcon = "dark";
				    Logos.ReferenceTagging.lbsNoSearchTagNames = [ "h1", "h2", "h3" ];
				    Logos.ReferenceTagging.tag();					
				}
			);
		}
	});		
	/* END SERMON SORTING */
}

function switchCalTabs(){
	var div = '#'+$(this).attr('rel');
	$('#events-container div').hide();
	$(div).show();
	$('#tabs li').removeClass('current');
	$(this).parent().addClass('current');
	return false;
}

function switchCalMonth(){
	var month = $('#months').val();
	var year = $('#years').val();
	setCookie('calendar', month+'-'+year);
	$.get('/ajax/events.php', { month:month, year:year }, function(data){
		$('#events-calendar').html(data);
	});
}

function miniCalSwitch(){	
	var parts = $(this).attr('href').split('/');
	var month	= parts.pop();
	var year = parts.pop();
	$.get('/ajax/events.php', { month: month, year:year, mini:true}, function(data){
		$('#mini-cal').html(data);
		miniCalHover();
	});
	setCookie('calendar', month+'-'+year);
	return false;
}


function switchCalendar(){
	var parts = $(this).attr('href').split('/');
	var month = parts.pop();
	var year  = parts.pop();
	$.get('/ajax/events.php', { month:month, year:year }, function(data){
		$('#events-calendar').html(data);
	});
	setCookie('calendar', month+'-'+year);
	return false;
}

function switchEventList(){
	var parts = $(this).attr('href').split('/');
	var month = parts.pop();
	var year  = parts.pop();
	$.get('/ajax/events.php', { month:month, year:year, view:'list'}, function(data){
		$('#list-view').html(data);
	});
	return false;
}

function getCookie( 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 ) );
}

function setCookie( 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' : '' );
}

function deleteCookie( name, path, domain ) {
	if ( getCookie( name ) ) document.cookie = name + '=' +
			( ( path ) ? ';path=' + path : '') +
			( ( domain ) ? ';domain=' + domain : '' ) +
			';expires=Thu, 01-Jan-1970 00:00:01 GMT';
}

function headerAccordion(e){
	var e 			= e||event;
	var targ 		= e.srcElement||e.target;
	var item		= $(targ).parent();
	var cook_name	= item.find('.sIFR-alternate>h3').text().toLowerCase().replace(' ', '_');
	
	if(item.hasClass('closed')){
		item.removeClass('closed').addClass('open');
		var cook_value = 'open';
	} else {
		item.removeClass('open').addClass('closed');
		var cook_value = 'closed';
	}
	item.parent().find('.sidebar-sub-block').slideToggle();
	
	setCookie(cook_name, cook_value, 7);
	

	if(window.console){
		console.log();
	}
	
	return false;
}

function checkCookieValues(){
	var obj = { latest_sermons: 'Latest Sermons', upcoming_events: 'Upcoming Events', sermon_sorting: 'Sermon Sorting', recent_posts:'Recent Posts', media_links: 'Media Links' };
	
	for(var i in obj){
		var status = getCookie(i);
		if(status){
			var $item = $('#sidebar h3:contains('+obj[i]+')').parent();			
			if(status == 'open'){
				$item.removeClass('closed').addClass('open');
				$item.parent().find('.sidebar-sub-block').slideDown();
			}
		}
	}
}

function miniCalHover(){
	$('#mini-cal table').delegate('td', 'mouseover mouseleave', function(e){		
		e = $.event.fix(e);	
		
		if(e.type == 'mouseover'){			
			/*
			var posX = $.browser.msie ? e.currentTarget.clientWidth : ($(this).position().left + e.currentTarget.clientWidth);
			var posY = $.browser.msie ? 2 : $(this).position().top;
			*/
			var posX = $(this).position().left + e.currentTarget.clientWidth;
			var posY = $(this).position().top;
			
			$(this).find('ul').css({
				top: posY+'px',
				left:(posX-2)+'px'
			});
		
		} else {
			$(this).find('ul').css({ left:'-999em'});
		}
	});
}