$(document).ready(function(){
	
	$("#search_go").click( function() {
		$("#searchForm").submit();
		return false;
	})
	
	$('#home #tabs a:first').addClass('active').click(function(){
			$('#tabs a.active').removeClass('active');
			$(this).addClass('active');
			$('#content-one').show();
			$('#content-two').hide();
			return false;
		});

		$('#home #tabs a:last').click(function(){
			$('#tabs a.active').removeClass('active');
			$(this).addClass('active');
			$('#content-one').hide();
			$('#content-two').show();	

			sIFR.replace(vhand, {
				selector:'#welcome h2',
				wmode:'transparent',
				css:'.sIFR-root { font-size:44px; color:#483726; }'
			});		

			return false;
		});
	
	$('#service-times a img').click(function(){
			$('#shelf').slideToggle();
			if($(this).hasClass('down')){
				$(this).removeClass('down');
				$(this).attr('src','/images/contact-button.gif');			
			} else {
				$(this).addClass('down').attr('src','/images/contact_up_btn.gif');		
			}
			return false;
		});	
	
	sermonSort();
	embedVideo();
	
	$('.sl_video a, #mb_video a, a.video').live('click', playVideo);	
	$('.sl_listen a, #mb_jukebox a, a.play').live('click', playAudio);		
   
   	$('.external').attr('target', '_blank');
   	$('#caltabs li a').bind('click', switchCalTabs);
	$('#months').bind('change', switchCalMonth);
	$('#events-calendar caption a').live('click', switchCalendar);
	$('#list-content li a').live('click', switchEventList);
	$('#calendar caption a').live('click', miniCalSwitch);
	
	
	
	var month_year = getCookie('calendar');
	var body		= $('body').attr('id');
	
	if( (body == 'home' || 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){
				$('#calendar').html(data);
			});
		} 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);
      };
   });
$('#searchForm input').focus(function() {
      startText = $(this).val();
      $(this).val('');
   });
   $('#searchForm input').blur(function() {
      blurText = $(this).val();
      if (blurText == '') {
         $(this).val(startText);
      };
   });
});

// 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=640,height=320,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')+'-content';

	if ( $(this).attr('rel') == 'cal' ) {
		$("#cal-content").css({'display':'block'});
		$("#list-content").css({'display':'none'});
		$("#filters select").css({'display':'block'});
	} else if ( $(this).attr('rel') == 'list' ) {
		$("#cal-content").css({'display':'none'});
		$("#list-content").css({'display':'block'});
		$("#filters select").css({'display':'none'});
	}
	
	//$('#events-container').hide();
	//$(div).show();
	$('#caltabs li').removeClass('active');
	$(this).parent().addClass('active');
	return false;
}

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

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);
	});
	return false;
}

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

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){
		$('#calendar').html(data);
	});
	setCookie('calendar', month+'-'+year);
	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';
}
