var init = munky.init;

munkyExt = {

	init : function(){
		init();
		
		/*----- Tabs -----*/
		
		$('#crewState a').click(function(){
			$(this).blur();
			munky.showState($(this).attr('rel'));
			return false;
		});
		
		/*----- Profiles -----*/
		
		munky.scrollMessages();
		
		var member = location.href.match(/#(\d+)$/);
		if(member){
			member = member[1];

			var link = $('a[rel='+member+']');
			if(link.length>0 && member!=$('#crewMessages').attr('rel')){			
				munky.loadCrew(member, "./"+member);
				$('#crew a').removeClass('selected');
				$('#crew a[rel='+member+']').addClass('selected');
			}
		}
		
		$('#crew a').click(function(){
			return true;
			$(this).blur();
			var id = $(this).attr('rel');
			
			$('#crew a').removeClass('selected');
			$(this).addClass('selected');
			
			var url = $(this).attr('href');
			
			$('html,body').animate({scrollTop: $('#main').offset().top-5});
			
			munky.loadCrew(id, url);			
			
			return false;
		});
	},
	
	showState : function(state){
		$('#crew div[rel=state]').hide();
		$('#'+state).show();
		$('#crewState a').removeClass('selected');
		$('#crewState a[rel='+state+']').addClass('selected');
	},
	
	loadCrew : function(id, failUrl){
	
		var icon = $('a.profileIcon[rel='+id+']');
		munky.showState(icon.parent().attr('id'));

		$('#display').html('');
		var color = $('#display').css('background-color');
		$('#display').css('background', color+" url('images/ajax.gif') 50% 150px no-repeat");
		
		$.getJSON(	"./ajax",
						{'member' : id},
						function(json){
							if(json[0]=="fail"){
								location.href = failUrl;
							}
							else {
								$('#display').css('background', color);
								$('#display').html(json[0]);
								location.href = '#'+id;
								munky.scrollMessages();
							}
						});
	
	},
	
	minScroll : null,
	
	messageHolder : null,
	
	scrollers : null,
	
	scrollMessages : function(){
		var msg = $('#crewMessages');
		
		if(!msg.length){
			return;
		}
		
		munky.messageHolder = $('#messageHolder');
		
		var msgHeight = munky.noPx(msg.css('height'));
		var holderHeight = munky.noPx(munky.messageHolder.css('height'));
		
		if(holderHeight>msgHeight){
			munky.scrollers = $('a.messageScroll');
						
			munky.scrollers.show();
			
			munky.minScroll = msgHeight - holderHeight;
			
			munky.activateScroll();
			
			munky.scrollers.click(function(){
				$(this).blur();
				
				var dir = $(this).attr('rel');
				var top = munky.noPx(munky.messageHolder.css('top'));
				var newTop = Math.max(munky.minScroll, Math.min(0, top + dir*msgHeight))+'px';

				munky.messageHolder.animate({'top' : newTop}, "slow", function(){ munky.activateScroll(); });

				return false;
			});

		}
	},
	
	activateScroll : function(){
		var msg = $('#crewMessages');
		
		if(!msg.length){
			return;
		}
	
		var top = munky.noPx(munky.messageHolder.css('top'));
		
		if(top==0){
			munky.scrollers.eq(0).addClass('inactive');
			munky.scrollers.eq(1).removeClass('inactive');
		}
		else if(top==munky.minScroll){
			munky.scrollers.eq(0).removeClass('inactive');
			munky.scrollers.eq(1).addClass('inactive');
		}
	}

}

$.extend(munky, munkyExt);
