$(function () {
	
	$("body").addClass("js");

	// External Link
	$("a[href*='http://']:not([href*='"+location.hostname+"']),.external").click( function() {
    	window.open(this.href);
    	$(this).addClass("external");
    	return false;
    });
	
	// Input Clear Default
	$('input[rel],textarea[rel]').each(function() {
		if($(this).val() === '') {
			$(this).val($(this).attr('rel'));	
		}
		$(this).focus(function() {
			if($(this).val() == $(this).attr('rel')) {
				$(this).val('');	
			}
		});
		$(this).blur(function() {
			if($(this).val() === '') {
				$(this).val($(this).attr('rel'));	
			}
		});
	});
	
    $("a.fancybox, a[rel=fancybox]").fancybox({
        'opacity' : true,
        'titlePosition'	: 'over'
    });
    
    $('#feature').anythingFader({
        autoPlay: true,
        delay: 5000,
        startStopped: false,
        animationTime: 500,
        hashTags: false,
        buildNavigation: true,
        pauseOnHover: true,
        startText: "",
        stopText: "",
    });
    
    function filterPath(string) {
        return string
        .replace(/^\//,'')
        .replace(/(index|default).[a-zA-Z]{3,4}$/,'')
        .replace(/\/$/,'');
		}
		
		var locationPath = filterPath(location.pathname);
		var scrollElem = scrollableElement('html', 'body');
		
		// Any links with hash tags in them (can't do ^= because of fully qualified URL potential)
		$('a[href*=#]').each(function() {
		
		// Ensure it's a same-page link
		var thisPath = filterPath(this.pathname) || locationPath;
			if (locationPath == thisPath && (location.hostname == this.hostname || !this.hostname) && this.hash.replace(/#/,'') ) {
			
			// Ensure target exists
			var $target = $(this.hash), target = this.hash;
			if (target) {
				
				// Find location of target
				var targetOffset = $target.offset().top;
				$(this).click(function(event) {
					
					// Prevent jump-down
					event.preventDefault();
					
					// Animate to target
					$(scrollElem).animate({
						scrollTop: targetOffset
					}, 400, function() {
				        // Set hash in URL after animation successful
				        location.hash = target;
					});
				});
			}
			}
		
		});

		// Use the first element that is "scrollable"  (cross-browser fix?)
		function scrollableElement(els) {
		        for (var i = 0, argLength = arguments.length; i <argLength; i++) {
		                var el = arguments[i],
		                $scrollElement = $(el);
		                if ($scrollElement.scrollTop()> 0) {
		                        return el;
		                } else {
		                        $scrollElement.scrollTop(1);
		                        var isScrollable = $scrollElement.scrollTop()> 0;
		                        $scrollElement.scrollTop(0);
		                        if (isScrollable) {
		                                return el;
		                        }
		                }
		        }
		        return [];
		}



});




