var menumap = {
	'bezirkid' :'bezirk',
	'clickttid' :'clicktt',
	'newsid' :'news',
	'internid' :'intern'
};

function handleMenu() {

	var displayDom = menumap[$(this).attr('id')];
	var jquerydisplayDom=$('#' + displayDom);
	// / CALCULATE POSITION FOR DISPLAY
	var tmpPos = $(this).offset();
	// alert($(this).outerWidth())
	var arrowHeight = 0;
	var tmpLeft=80;
	var tmpTop=15;
	if ('news' == displayDom){
		tmpLeft=250;
		tmpTop=5;
	}
	var thPositionHeight = tmpPos['top'] + $(this).height()-tmpTop;
	tmpPos['top'] = thPositionHeight + arrowHeight;
	
	
	
	tmpPos['left'] = tmpPos['left'] - tmpLeft;
	if (displayDom!=undefined)
		jquerydisplayDom.css(tmpPos);
	// this ist der Button der geclickt wurde
	
	
	if (!jQuery(this).hasClass("active")) {

		// FADE OUT OTHER ACTIVE ELEMENTS
		var tmpList = $(".active");
	
		if (tmpList.length > 0) {
			tmpList.each( function() {
				// die geöffnete ID
				var displayActiveDom = $(this).attr('id');
				var jqueryElement=$(this);
				// Zuklappen aller offenen Elemente
				jqueryElement.slideUp("fast",function(){
				var opendisplayDom = menumap[jqueryElement.attr('id')];
				
				var openjquerydisplayDom=$('#' + opendisplayDom);
				openjquerydisplayDom.removeClass("active");
				jqueryElement.removeClass("active");
					
			});
				
			})
		}
		
		// FADE IN
	}
	if (!isMenuOpen(jQuery(this)))
		fadeInMenuItem(jQuery(this))
	return false;
};
function isMenuOpen(aQueryMenuButton){
	var displayDom = menumap[aQueryMenuButton.attr('id')];
	if (displayDom==undefined)
		return true
	var popup=jQuery('#' + displayDom);
	if (popup.is (':visible'))
		return true;
	return false;
}
function fadeInMenuItem(aQueryMenuButton) {
	
	var displayDom = menumap[aQueryMenuButton.attr('id')];
	if (displayDom==undefined)
		return
	var popup=jQuery('#' + displayDom);
	popup.slideDown("fast", function() {
		popup.addClass("active");
		
		popup.css("display", "block");
	
		// Wenn ein Link a href im Menucontent gedrückt wird soll das zuklappen
		jQuery('#' + displayDom +' a').bind("click", function() {
			popup.slideUp("slow", function() {
				aQueryMenuButton.removeClass("active");
				popup.removeClass("active");
			});

		})
	});
	

}
function closeElement(id) {
	document.getElementById(id).style.display = "none";
}

function openElement(id) {
	document.getElementById(id).style.display = "block";
}


function prepare_tooltip(jqForm){
	$('.tooltip',jqForm).each(function (i) {
		$(this).append('<div class=\"tooltip_head\"></div>');
		$(this).append('<div class=\"tooltip_message\"></div>');
		$(this).append('<div class=\"tooltip_bottom\"></div>');
	});
}
function prepare_Forms(){
	$('.form').each(function (i) {
		
		var form =$(this);
		prepare_tooltip(form);
		$(this).jForms({listSize:20,imagePath:'css/images/jform/'});
			
		var messagebox=$('.formalert',$(this));
		$(this).submit(submit_form)
		$('.required',$(this)).addClass("mandatorystyle");
		form.validate(
		{
     	errorPlacement: function(error, element) {
     		
    	    var elementname=element.attr('name')+'_alert';
	        $('#'+elementname).addClass("error");
	       	var tmpmessageDiv=$('.tooltip_message',$('#'+elementname));
	     
        	error.prependTo( tmpmessageDiv );
        
        	var pos
        	if (element.attr('tagName').toLowerCase()=='select'){
        		pos=$('input',element.parent()).position()
        	}
        	else
        		pos = element.position();
			
        	$('#'+elementname).css({ position: "absolute",
	            marginLeft: 0, marginTop: 0,
	            top: pos.top-10, left: 0
            });
            $('#'+elementname).show(500); 
	      },
	      errorClass: "message",
	      errorElement: "strong",
	      
	      onkeyup: false, // deaktivieren - notwendig wegen
							// errorHandlerContainer
	      onclick: false // deaktivieren - notwendig wegen
							// errorHandlerContainer
	    });
		
		var errorHandlerContainer = function(){
	      $(this).valid(); 
	      
	     var elementname =$(this).attr('name')+'_alert';
	     var $cont =  $('#'+elementname)// Hole message feld
	     var haserror = $("strong.message:visible", $cont).size(); 
	      
	      if (haserror<1) {
	        $cont.removeClass("error"); 
	        $cont .hide(500); 
	      } else {
	        $cont.addClass("error");   
	        $cont .show(500); 
	      }
	    }
	     
	    // Prüfe wenn Ereignis blur (gegenteil von focus)
	    $(":input:not(.date_input)", form).blur(errorHandlerContainer);
	   $(".date_input", form).change(errorHandlerContainer);
	    // Prüfe wenn Ereignis keyup
	    $("input, textarea", form).keyup(errorHandlerContainer);
	    // Prüfe wenn Ereignis change (selectbox)
	    $("select", form).change(errorHandlerContainer); 
    });
    

}

function submit_form()  {
	if( $(this).valid( ))
		return true
		
	var validator = $(this).validate();
	validator.showErrors();
	
	return false; 

	
}


