var Pitmans	= {
	
	UI: {}
	
};

Pitmans.UI.Navigation = function() {
	
	var init	= function() {
		jQuery('#nav ul li').not($('.cur')).hover(function(){
			$(this).addClass('cur');
			$(this).prev().addClass('pre');
		},function(){
			$(this).removeClass('cur');
			$(this).prev().removeClass('pre');
		});
		
		jQuery('#fKeys').focus(function(){
			if (this.value == this.defaultValue) this.value = '';
		}).blur(function(){
			if (this.value == '') this.value = this.defaultValue;
		}).keyup(function(e){
			e.preventDefault();
			var val	= $(this).val()
			if (val.length>3) search(val);
		});
		
		
		
		enhanceCSS();
		addPrintOption();
		replaceSubmits();
		initMiniSignup();
	}

	var timeout 	= null;
	var resultbox	= false;
	
	
	var getResultBox	= function(val) {
		if (resultbox){
			resultbox.find('p.viewall a').attr('href', '/search/'+val);
			return resultbox;
		}else{
			var html = '<div id="ajax-search-result"><iframe width="100" height="100" frameborder="0"></iframe><div class="inner"><ol></ol><p class="viewall"><a href="">View all Search Results</a></p></div></div>';
			$('#main > .wrapper').append(html);
			$('#graduates > .wrapper').append(html);
			resultbox	= $('#ajax-search-result');
			if($.browser.safari) {
				resultbox.css('top', '-57px');
			}
			resultbox.find('p.viewall a').attr('href', '/search/'+val);
			resultbox.hide();
			return resultbox;
		}
	}
	
	var search	= function(val) {
		if (timeout) clearTimeout(timeout);
	
		timeout = setTimeout(function() {
			
			var ajax_search_REQ = $.getJSON('/ajax/search/'+val, {}, function(json){
				if (ajax_search_REQ) ajax_search_REQ.abort();
				
				if (json && json.length>0) {
					
					var resultbox	= getResultBox(val);
					var resultlist	= resultbox.find('ol');
					resultlist.empty();
					resultbox.show();
					$('body').bind('click', function(){
						resultbox.slideUp("fast");
						$(this).unbind();
					});
					$.each(json, function(i, item){
						resultlist.append('<li><a href="'+item.url+'">' + item.title + '</a><p>'+item.excerpt+'</p></li>');
					})
					
				}
			
			});
			
		}, 400);
	}
	
	var enhanceCSS	= function() {
		if ($.browser.msie) {
			$('#main .content h1 + p').addClass("intro");
			$('#main .content h2 + p').addClass("firstpara");
			//$('#main .nav li:last-child').css('border-bottom', '1px solid #fff');
		}
	}
	
	var addPrintOption	= function() {
		$('#content-footer').append('<div class="util-button"><a href="#" class="print">Print this page</a></div>').find('a.print').click(function(e){
			e.preventDefault();
			window.print();
		});
	}
	
	var replaceSubmits	= function() {
		$('form input.replace').each(function(i, obj) {
			obj = $(obj);
			obj.hide()
			if (obj.hasClass('go')) {
				obj.after($('<button type="submit" class="replaced go"><img src="/img/trustees/button-go.gif" /></button>'));
			}else{
				obj.after($('<button type="submit" class="replaced submit"><img src="/img/trustees/button-submit.gif" /></button>'));
			}
		});
		
		
	}
	
	
	var initMiniSignup	= function() {
		var form	= jQuery('#mini-signup');
		
		if (form) {
			jQuery('#newsEmail').focus(function(){
				if (this.value == this.defaultValue) this.value = '';
			}).blur(function(){
				if (this.value == '') this.value = this.defaultValue;
			});
			
			form.submit(function(e){
				var filter  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
				if (filter.test(jQuery('#newsEmail').val())){
					return true;
				}else{
					jQuery('#mini-signup-msg').addClass('error').text('Please enter a valid email address.');
				}
				
				return false;
			});

		}
		
	}















	return {
		init: init
	}

}();

jQuery(function($) { Pitmans.UI.Navigation.init(); });