jQuery.fn.exists=function(){return jQuery(this).length>0;}
var mouse_is_inside=false;
$(document).ready(function() {
	var current = new String(window.location);
	var currentArray = current.split("/");
	
	$("#login-bar > div > a").click(function(){
		if ($("#login-bar form").css("display")=="none"){
		  $("#login-bar form").slideDown(200).css("display","inline-block");
			$(this).addClass("active");
			$("#login-bar form input[name=username]").focus();
		} else {
			$("#login-bar form").slideUp(150);
			$("#login-bar form input[name=name], #login-bar form input[name=password]").val("");
			$("#login-bar form #status").hide();
			$(this).removeClass("active");
		}
		return false;
	});
	
	$("#login-bar form").hover(function(){
		mouse_is_inside=true;
	}, function(){
		mouse_is_inside=false;
	});
	
	$("body").mouseup(function(){
		if (!mouse_is_inside) {
			$("#login-bar form").slideUp(150);
			$("#login-bar > div > a").removeClass("active");
		}
	});
	
	$("#login-bar form").submit(function(){
		$("#login-bar form #status").hide();
		var formData=$("#login-bar form").serialize();
		$.ajax({
			type: "POST",
			url: "/imember/login/",
			data: formData+"&method=AJAX",
			cache: false,
			success: function(resp){
				var json=$.parseJSON(resp);
				//$("#login-bar form label[for=username]").before(json["return"]);
				$("#login-bar form #status").html(json["return"]);
				if (json["return"].indexOf("status")>8){
					$("#login-bar form #status").show();
				}
			}
		});
		return false;
	});
	
  $("p.sitemap a").click(function(){
    if ($("#sitemap").css("display")=="none"){$("#sitemap").slideDown("500");
      } else {$("#sitemap").slideUp("100");}
		return false;
  });
	
	$("#nav li > a[href=/search/]").click(function(){
		if ($("#nav li form").is(":hidden")){
			$("#nav li > a[href=/search/]").addClass("current");
			$("#nav > li:last-child > a").attr("style","-moz-border-radius-bottomright: 0px; -webkit-border-bottom-right-radius: 0px; -khtml-border-bottom-right-radius: 0px; border-bottom-right-radius: 0px;");
			$("#nav li form").slideDown("200",function(){
				$("#nav li form input[type=text]").focus();
			});
		} else {
			$("#nav li form input").blur();
			$("#nav li form").slideUp("100",function() {
				$("#nav > li:last-child > a").attr("style","-moz-border-radius-bottomright: 5px; -webkit-border-bottom-right-radius: 5px; -khtml-border-bottom-right-radius: 5px; border-bottom-right-radius: 5px;").removeClass("current");
			});
		}
		return false;
	});
	
	$("#nav li form").css("right",($(window).width()-950)/2);
	$(window).resize(function(){
		$("#nav li form").css("right",($(window).width()-950)/2);
	});
	
	sidebarLock();
	
	if (currentArray.length==7&&currentArray[5].length>2&&(currentArray[5]!="password")) {
		$(".sidebar ul ul li > a[href='/"+currentArray[3]+"/"+currentArray[4]+"/"+currentArray[5]+"/']").attr("class","current");
		$(".sidebar ul li.current > a").css("background-position","200px -205px");
	}
	
	$("a[href=#top]").click(function(){
		scrollTop();
		return false;
	});
});

function scrollTop(){
	$("html,body").animate({scrollTop:0},300);
}

function scrollTo(y){
	$("html,body").animate({scrollTop:y},300);
}

function sidebarLock(){
	if ($(".sidebar ul").length!=0){
		var offset = $(".sidebar ul").position();
		
		if ($("#content-header").exists()){
			var offsettop = 118;
			var breakpoint = $("#content").height()+118;
		} else {
			var offsettop = 153;
			var breakpoint = $("#content").height()+150;
		}
		if ($("#content-header").length>0) {
			//offsettop = offsettop + $("#content-header").height() + 15;
			offsettop = offsettop + $("#content-header").height() + 50;
			//breakpoint = breakpoint + $("#content-header").height() + 15;
			breakpoint = breakpoint + $("#content-header").height() + 45;
		}
		if ($(this).scrollTop() < offsettop) {
			$(".sidebar > ul").css({ "position": "inherit" });
		} else {
			if ( breakpoint-20-$(".sidebar ul").height() > $(this).scrollTop() ) {
				$(".sidebar > ul").css({ "position": "fixed", "top": 0 });
			} else {
				$(".sidebar > ul").css({ "position": "fixed", "top": (breakpoint-$(".sidebar ul").height())-$(this).scrollTop()-20 });
			}
		}
	}
}

$(window).scroll(function() {
  sidebarLock();
});
