$(document).ready(function(){  
	
	loader();
	
	  // Click the media sub navigation
    $('#media_nav li a').live('click', function() { 
		var nav_item = $(this);
		var page_type = $(nav_item).parent().attr('id').split('_');
      	$.get('/updates/_'+page_type[0]+'_listing/', '', function(data) { 
		  	$('#secondary_listing').removeClass();
		  	$('#secondary_listing').addClass(page_type[0]);
        	$('#media_listing').html(data); 
      }); 
      return false; 
    });
	
	$('p.backtoupdates a').live('click', function() {
		$.ajax({
			url: '/updates/_update_listing/',
			method: 'GET',
			success:function(data) {  
	        	$('#media_focus').html(data); 
				$('#secondary_listing li').removeClass('cur');
            }
		})
      	return false;
	})
	
 	  // Click the inidividual media items
    $('#secondary_listing li.media_item a').live('click', function() { 
	  	var the_link = $(this);
      	var link_id = $(the_link).attr('id').split('_');
	  	$.ajax({
			url: '/updates/_'+link_id[0]+'_focus/'+link_id[1],
			method: 'GET',
			global: true,
			success:function(data) {  
                $('#media_focus').html(data); 
				$('#secondary_listing li').removeClass('cur');
				$(the_link).parents('li').addClass('cur');
            }
		})
      	return false; 
    });
	
    /**********************************************************************
    Fading headlines
    **********************************************************************/
    recent_headlines( 7000 );

    /**********************************************************************
    Blah
    **********************************************************************/
	
	$('#sitewide_toggle a').removeClass('right');
	
    $('#sitewide_toggle a').toggle(  
        function () {  
			$(this).html('Loading...'); 
            if($('#ajax_updates').text() == '') {  
                $.get('/updates/_inner', '', function(data) { 
                    $('#ajax_updates').html(data).hide().slideDown(1000);  
                    $('#sitewide_toggle a').html('Close updates').removeClass('down').addClass('up');  
                    loader();
                });        
            } else {  
                $('#ajax_updates').slideDown(1000);  
                $(this).html('Close updates').removeClass('down').addClass('up');  
            }  
        },  
        function () {  
            $('#ajax_updates').slideUp(1000);  
            $(this).html('More updates').removeClass('up').addClass('down');  
        }  
    );

});

function loader()
{
	$('<div id="loading"><img src="/assets/images/site/ajax-loader.gif" alt="Loading..." /></div>') 
    .insertBefore('#secondary_listing') 
    .ajaxStart(function() { 
      $(this).show(); 
   	}).ajaxStop(function() { 
      $(this).hide(); 
    });
}

function recent_headlines( rate )
{
    $('#ticker').each(function() {
        
        var $container = $(this);
        $container.empty();

        $.ajax({  
            url:'/feeds/recent_headlines_xml',  
            method:'GET', 
			global: false,
            success:function(data) {  
	            $(data).find('entry').each(function() { 

	                var $entry = $(this); 
	                html = '';
	                html += '<a href="/news/story/'+ $entry.find('url_title').text() +'">'+ $entry.find('title').text() +'</a>';
	                $('<em></em>').addClass('ticker_entry').append($(html)).appendTo($container); 

	            }); // end .each()

	            var currentEntry = 0, oldEntry = 0; 
	            $('em.ticker_entry').eq(currentEntry).css("display", "block");
	            var entryCount = $('em.ticker_entry').length; 
	            var pause;
	            var entryRotate = function() { 
	                    currentEntry = (oldEntry + 1) % entryCount; 
	                    $('em.ticker_entry').eq(oldEntry).fadeOut('slow');
	                     $('em.ticker_entry').eq(currentEntry).fadeIn('slow', function() { 
	                        pause = setTimeout(entryRotate, rate);
	                      });

	                    oldEntry = currentEntry; 
	                  }; 
	                  pause = setTimeout(entryRotate, rate);
            }
        });

        
    }); // end .each()
}
