(function($){
	
	$.extend({
			 
		smoothAnchors : function(speed, easing, redirect){
				
			speed = speed || "fast";
			easing = easing || null;
			redirect = (redirect === true || redirect == null) ? true : false;
			
			$("a").each(function(i){
							
				var url = $(this).attr("href");
				
				if(url){
					if(url.indexOf("#") != -1 && url.indexOf("#") == 0){
		
						var aParts = url.split("#",2);
						var anchor = $("a[name='"+aParts[1]+"']");
						
						if(anchor){
																					
							$(this).click(function(){
												   
								if (anchor.offset() != null) {
                                    if($(document).height()-anchor.offset().top >= $(window).height()
                                     || anchor.offset().top > $(window).height()
                                     || $(document).width()-anchor.offset().left >= $(window).width()
                                     || anchor.offset().left > $(window).width()){

                                        $('html, body').animate({
                                            scrollTop: anchor.offset().top,
                                            scrollLeft: anchor.offset().left
                                        }, speed, easing, function(){
                                            if(redirect){
                                                window.location = url
                                            }
                                        });

                                    }
                                }
								
								return false;
																
							});
						}
					
					}
					
				}
				
			});
			
		}
	
	});
	
})(jQuery);
