var initB = munky.init;

munkyExt = {

	init : function(){
	
		initB();
	
		/*----- Filter venues -----*/
		$('#filter').show();
		
		munky.filterDefault = $('#inputFilter').attr('value');
		
		$('#filter a').click(function(){
												$(this).blur();
												if($(this).hasClass('active')){
													return false;
												}
												
												$('#inputFilter').removeClass('active');
												$('#inputFilter').attr('value', munky.filterDefault);
												
												$('#filter a').removeClass('active');
												$(this).addClass('active');
												
												var letter = $(this).attr('href').substring(1, 2);
												var filt = new RegExp('^(the )?'+letter, 'i');
												munky.filterListItems(filt);
												return false;
											});
											
		$('#inputFilter').focus(function(){
													$(this).addClass('active');
													var val = $(this).attr('value');
													if(val==munky.filterDefault){
														$(this).attr('value', '');
													}
												});
												
		$('#inputFilter').blur(function(){
													var val = $(this).attr('value');
													if(val==""){
														$(this).attr('value', munky.filterDefault);
														$(this).removeClass('active');
													}
												});
												
		$('#inputFilter').keyup(function(){
													var val = $(this).attr('value');
													if(val==""){
														var filt = /(.*)/;
													}
													else {
														var filt = new RegExp(val, 'i');
														$('#filter a').removeClass('active');
													}
													munky.filterListItems(filt);
												});
												
	},
	
	filterListItems : function(filter){
		var shown = 0;
		var alt = false;
		try {
			munky.closeVenues();
		}
		catch(e){} //doesn't exist on some pages
		$('.listItems .item .label').each(function(){
															if($(this).html().match(filter)){
																$(this).parent().show();
																$(this).parent().addClass('visible');
																shown++;
																if(alt){
																	$(this).addClass('alt');
																}
																else {
																	$(this).removeClass('alt');
																}
																alt = !alt;
															}
															else {
																$(this).parent().hide();
																$(this).parent().removeClass('visible');
															}
														});
		if(shown==0){
			$('#noListItems').show();
		}
		else {
			$('#noListItems').hide();
			if(shown==1){
				try {
					munky.openVenue($('#photos .venue.visible'));
				}
				catch(e){} //doesn't exist on some pages
			}
		}
	}
}

$.extend(munky, munkyExt);
