﻿jQuery.fn.submitOnKey = function(nKeyCode, sFormID) {
	$(this).keypress( function(e) {
		var key = e.which ? e.which : e.keyCode;
		if(key == nKeyCode) {
			$("#"+sFormID).trigger("submit");
			e.preventDefault();
			e.cancelBubble = false;
		}
	});
};

jQuery.fn.infoPopup = function(oParams) {
	var text 	= $(this).attr("title");
	
	if(oParams.pos == "L"){
		var div		= $("div.popup_infoL[@rel="+oParams.type+"]");
	} else {
		var div		= $("div.popup_info[@rel="+oParams.type+"]");
	}
	
	var cDiv	= div.find("div");
	var item	= $(this);
	var typeID	= oParams.typeID;
	
	item.removeAttr("title");
	
	item.hover(function() {
		cDiv.html(text);
		div.appendTo(item.parent());
		div.show();
	}, function() {
		div.hide();
		div.insertBefore($("#"+typeID));
	});
};

jQuery.fn.extend({
	
	initInfoPopups: function(pos) {
		if(!pos){
			pos="";
		}
		
		var thumbs 	= $(this).find("label.error img");
		var type	= $(this).attr("id")+"Display";
		var typeID	= $(this).attr("id");
		thumbs.each( function(i) {
			if($(this).attr("title")){
				$(this).infoPopup({"type":type,"typeID":typeID,"pos":pos});
			}
		});
	}
	
});

jQuery.fn.toggleDefault = function(text) {
	$(this).focus( function() {
		if ( $(this).val() == text ) {
			$(this).val("");
			$(this).removeClass("inputinactive");
		}
	});
	$(this).blur( function() {
		if ( $(this).val() == "" ) {
			$(this).val(text);
			$(this).addClass("inputinactive");
		}
	});
};

function detectMacXFF() {
	var userAgent = navigator.userAgent.toLowerCase();
	if (userAgent.indexOf("mac") != -1 && userAgent.indexOf("firefox")!=-1) {
		return true;
	}
}

//homepage div autosizing
function flashOpen(){
	$("div#flashpannel").css("width", 894);
	$("div#flashpannel").css("height", 623);
	//$(window).scrollTop(220);
	$("div#whiteflag").css("display", "block");
	
	//hack the system opacity @ mac + firefox
	var d = detectMacXFF();
	if (d) {
		//osx ff css opacity + flash wmode transparent doesn't work
		$("div#container_fade").css("backgroundImage","url(/site/si/design/graphics/opaque.png)");
		$("div#container_fade").css("backgroundRepeat","repeat");
	} else {
		$("div#container_fade").css("backgroundColor","#2A4200");
		$("div#container_fade").css("MozOpacity",".80");
		$("div#container_fade").css("opacity",".80");
		$("div#container_fade").css("filter","alpha(opacity=80)");
	}
	
	$("div#container_fade").css("height", $(document).height());
	$("div#container_fade").css("display", "block");
}

function flashClose(){
	$("div#flashpannel").css("width", 523);
	$("div#flashpannel").css("height", 431);
	$("div#whiteflag").css("display", "none");
	$("div#container_fade").css("display", "none");
}

function jumpLocation(sUrl){
	window.location.href=sUrl;
}

var menuActivating;
var subTimer;

function showSubmenu(subItem){
	//animate submenu
	$("div.submenucontainerSlide", subItem).animate({
		height: $("div.submenucontainer", subItem).height()
	}, 350);
}

function hideSubmenu(subItem){
	
	var container = $(subItem);
	
	//animate submenucontainer
	$("div.submenucontainerSlide", subItem).animate({
		height: 0
	}, 350, function(){
		//button change when submenu is present
		$("img.button_selected2", container).attr("class","button_selected");
		$("a[@rel=deselected] img.button_selected", container).attr("class","button_deselected");
	});
	
	//button hide when no submenu is present
	$("a[@rel=deselected] img.button_selected", subItem).attr("class","button_deselected");
}

$(function() {
	//maakt van een div met class knop een submit button form
	$("div.knop").click( function() {
		$(this).parents("form").trigger("submit");
	});
	
	//maakt van een div met class knop_small een submit button form
	$("div.knop_small").click( function() {
		$(this).parents("form").trigger("submit");
	});
	
	//maakt van een div met class knop_small een submit button form
	$("div.knop_small_quick").click( function() {
		$(this).parents("form").trigger("submit");
	});
	
	//maakt van een div met class knop_small een submit button form
	$("div.knop_large").click( function() {
		$(this).parents("form").trigger("submit");
	});
	
	//submit quicksearch check
	$("form#quicksearch").submit( function() {
		if($("input#trefwoord").val() == YM_trans("Zoeken") || $("input#trefwoord").val() == ""){
			alert(YM_trans("Geen trefwoord ingevuld"));
			$("input#trefwoord").focus();
			return false;
		}
	});
	
	//on enter key submit form
	$("form#user_login").submitOnKey(13, "user_login");
	$("form#lost_pw").submitOnKey(13, "lost_pw");
	$("form#new_user").submitOnKey(13, "new_user");
	$("form#step1").submitOnKey(13, "step1");
	$("form#step2").submitOnKey(13, "step2");
	$("form#step3").submitOnKey(13, "step3");
	$("form#step4").submitOnKey(13, "step4");
	$("form#friend").submitOnKey(13, "friend");
	$("form#quicksearch").submitOnKey(13, "quicksearch");
	
	$("input#trefwoord").toggleDefault(YM_trans("Zoeken"));
	
	//IE6 hack for submenu flow above pulldowns
	if($("div.submenucontainerSlide").length > 0){
		$("div.submenucontainerSlide").bgiframe();
	}
	
	//start menu animation
	$("div.menucontainer").bind("mouseenter", function(){
		
		var subItem = this;
		
		if(menuActivating && menuActivating != $(subItem).attr("rel")){
			//hide all
			var prevSubmenuItem = $("div.menucontainer[@rel="+menuActivating+"]");
			hideSubmenu(prevSubmenuItem);
		}
		
		menuActivating = $(subItem).attr("rel");
		
		clearTimeout(subTimer);
		
		//topmenu button change
		$("img.button_deselected", this).attr("class","button_selected");
		
		showSubmenu(subItem);
		
		//alleen als submenu aanwezig is
		if($("div.submenucontainerSlide", this).length > 0){
			$("img.button_selected", this).attr("class","button_selected2");
		}
		
	}).bind("mouseleave", function(){
		var subItem = this;
		
		//als submenu er is dan hide met delay anders button deselected
		if($("div.submenucontainerSlide", this).length > 0){
			subTimer = setTimeout(function(){hideSubmenu(subItem)}, 800);
		} else {
			//button hide when no submenu is present
			$("a[@rel=deselected] img.button_selected", subItem).attr("class","button_deselected");
		}
	});
	
	//taalkeuzebutton animatie
	$("div.taalkeuzeButton").bind("mouseenter", function(){
		$("img.taalkeuzeButton_deselected", this).attr("class","taalkeuzeButton_selected");
	}).bind("mouseleave", function(){
		$("img.taalkeuzeButton_selected", this).attr("class","taalkeuzeButton_deselected");
	});
	
	//sIfr fonts
	$("h1").not(".white").jmedia(
		{
			version:"6,0",
			mode:"sifr"
		},
		{
			src:"/java/font/UniversCondensedLight.swf",
			quality:"best",
			wmode:"transparent",
			flashVars:"&textcolor=#CD0303&linkcolor=#CD0303"
		}
	);
	
	$("h1.white").jmedia(
		{
			version:"6,0",
			mode:"sifr"
		},
		{
			src:"/java/font/UniversCondensedLight.swf",
			quality:"best",
			wmode:"transparent",
			flashVars:"&textcolor=#FFFFFF&linkcolor=#FFFFFF"
		}
	);
	
	/*$("h2").jmedia(
		{
			version:"6,0",
			mode:"sifr"
		},
		{
			src:"/java/font/vandenkeere.swf",
			quality:"best",
			wmode:"transparent",
			flashVars:"&textcolor=#000000&linkcolor=#000000"
		}
	);*/
	
	
	//login java blok deactivate
	$("#layerLoginCookie").css("display", "none");
	
});