$(document).ready(function(){ 
	$(document).pngFix(); 
}); 

$(function() {
    $('#slide1').cycle({ 
	    fx:     'scrollVert', 
    	prev:   '#prev1', 
    	next:   '#next1', 
	    speed:    700, 
    	timeout:  3000
	});
});

$(function() {
	$('ul.hover_block li').hover(function()
	{
		$(this).find('img').animate({top:'50px'},{queue:false,duration:500});
	}, 
	function()
	{
		$(this).find('img').animate({top:'0px'},{queue:false,duration:500});
	});
	
});

$(function() {
	$('ul.hover_block2 li').find('img').css({top:'50px'});
});

$(document).ready(function() {
	$("a.g01").fancybox({ 'zoomSpeedIn': 300, 'zoomSpeedOut': 300, 'overlayShow': true, 'overlayOpacity': 0.85 });
});

function initActions() {
	//memberlogin
	var loginContainer=$("#login-container");
	if (loginContainer.size()>0) {
		var loginBox=loginContainer.find(".login-box");
		var toggleBox=loginContainer.find(".login-toggle");
		var toggleLink=toggleBox.find("a");
		
		toggleLink.click(function() {
			if (loginBox.css("marginTop")=="-26px") {
				loginBox.animate({"marginTop":"0px"},500,null,function() {
					toggleLink.removeClass("closed");
					toggleLink.addClass("opened");
				}); 
			} else {
				loginBox.animate({"marginTop":"-26px"},500,null,function() {
					toggleLink.removeClass("opened");
					toggleLink.addClass("closed");
				});
			}
		});
	}
	
	//search field
	var searchField=$("input.search");
	if (searchField.size()>0) {
		searchField.focus(function() {
			searchField.addClass("isearch");
		});
		searchField.blur(function() {
			if (searchField.val()=="") {
				searchField.removeClass("isearch");
			}
		});
		var taghints=$("#taghints");
		var running=false;
		var keyUpAction=function() {
			if (running) return;
			running=true;
			$.get("/taghint.jsp",{"search":searchField.val()},function(data) {
				if (running) {
					var result=$(data);
					result.find("a.taghint").click(function() {
						searchField.val($(this).text());
						taghints.hide();
						searchField.focus();
						searchField.get(0).form.submit();
					});
					taghints.html(result);
					taghints.show();
					if (result.height() > 300) {
						taghints.find(".taghints").css("height","300px");
					}
				}
				running=false;
			});
		};
		searchField.keyup(function(e) {
			if (e.keyCode==13) return;
			if (searchField.val().length==0) {
				taghints.hide();
				clearTimeout(searchField.timer);
				return;
			}
			clearTimeout(searchField.timer);
			searchField.timer = setTimeout(keyUpAction, 500);	
		});
		
	}
	
	//berufsgruppen uebersichtsseite
	var bgContainer=$("#bgtoggle");
	if (bgContainer.size()>0) {
		var bgpart1=bgContainer.find("#bgpart1");
		var bgpart2=bgContainer.find("#bgpart2");
		var bgtoggle1=bgpart1.find("a.toggle");
		var bgtoggle2=$("<a href=\"#\" class=\"bg_back\">&raquo; zurück zur Einleitung</a>");
		
		if (bgpart1.size()>0 && bgtoggle1.size()>0) {
			bgtoggle1.click(function() {
				bgpart1.fadeOut(500,function() {
					bgpart2.fadeIn(500);
				});
			});
			bgtoggle2.click(function() {
				bgpart2.fadeOut(500,function() {
					bgpart1.fadeIn(500);
				});
			});
			bgpart2.append(bgtoggle2);
		} else {
			bgpart2.css("display","block");
		}
	}
	
	//service/tags
	var tagContainer=$("#tags");
	if (tagContainer.size()>0) {
		var nav1=tagContainer.find(".nav1");
		var nav2=tagContainer.find(".nav2");
		var nav3=tagContainer.find(".nav3");
		var box1=tagContainer.find("#tags1");
		var box2=tagContainer.find("#tags2");
		var box3=tagContainer.find("#tags3");
		
		nav1.click(function() {
			nav1.addClass("selnav");
			nav2.removeClass("selnav");
			nav3.removeClass("selnav");
			box1.css("display","block");
			box2.css("display","none");
			box3.css("display","none");
		});
		nav2.click(function() {
			nav1.removeClass("selnav");
			nav2.addClass("selnav");
			nav3.removeClass("selnav");
			box1.css("display","none");
			box2.css("display","block");
			box3.css("display","none");
		});
		nav3.click(function() {
			nav1.removeClass("selnav");
			nav2.removeClass("selnav");
			nav3.addClass("selnav");
			box1.css("display","none");
			box2.css("display","none");
			box3.css("display","block");
		});
		
		//tag clouds
		var minFontSize=9;
		var maxFontSize=18;
		
		var minWeight=999999;
		var maxWeight=0;
		box1.find(".tag").each(function() {
			var weight=Number($(this).attr("weight"));
			if (weight>maxWeight) maxWeight=weight;
			if (weight<minWeight) minWeight=weight;
		});		
		box1.find(".tag").each(function() {
			var weight=$(this).attr("weight");
			if (weight>minWeight) {
				var fontSize=minFontSize+Math.round(((maxFontSize-minFontSize)*(weight-minWeight))/(maxWeight-minWeight));
			} else {
				var fontSize=minFontSize;
			}
			$(this).css("font-size",fontSize+"px");
		});
		
		var minWeight=999999;
		var maxWeight=0;
		box3.find(".tag").each(function() {
			var weight=Number($(this).attr("weight"));
			if (weight>maxWeight) maxWeight=weight;
			if (weight<minWeight) minWeight=weight;
		});		
		box3.find(".tag").each(function() {
			var weight=$(this).attr("weight");
			if (weight>minWeight) {
				var fontSize=minFontSize+Math.round(((maxFontSize-minFontSize)*(weight-minWeight))/(maxWeight-minWeight));
			} else {
				var fontSize=minFontSize;
			}
			$(this).css("font-size",fontSize+"px");
		});
	}
	
	//calendar
	if ($("#calendar").size()>0) {
		var calContainer=$("#calendar");
		var calData=calContainer.find(".calendar-data");
		var currentMonth=null;
		
		var onSelect=function(calendar,date) {
			var month=date.substr(3);
			if (currentMonth!=month) {
				currentMonth=month;
				var m=Number(month.substring(0,2));
				var y=Number(month.substring(3));
				
				//get calendar data via ajax
				$.get("/calendar.jsp","year="+y+"&month="+m,function(data) {
					calData.html(data);
					
					//mark all days with dates
					var days=calContainer.find("tr.daysrow>td.day:not(td.wn)");
					days.removeClass("content");
					calData.find("div.cal").each(function() {
						var cl=$(this).attr("className");
						var cmonth=cl.substr(11).replace(/-/g,".");
						var duration=Number($(this).attr("_days"));
						if (cmonth==month) {
							var day=Number(cl.substr(8,2))-1;
							for (var i=0;i<=duration;i++) {
								days.eq(day+i).addClass("content");
								var d2=""+(day+1+i);
								var m2=""+m;
								$(this).addClass("cal-"+(d2.length==1 ? "0"+d2 : d2)+"-"+(m2.length==1 ? "0"+m2 : m2)+"-"+y); 
							}
						}
					});
					//display selected day
					calData.find("div.cal").css("display","none");
					calData.find("div.cal-"+date.replace(/\./g,"-")).css("display","block");
				});
			}
			else
			{
				//display selected day
				calData.find("div.cal").css("display","none");
				calData.find("div.cal-"+date.replace(/\./g,"-")).css("display","block");
			}
		}
		
		//create basic calendar
		var calendar=new Calendar(1,null,onSelect);
		calendar.create(calContainer.get(0));
		
		//some layout modifications 
		calContainer.find("td:first").css("visibility","hidden"); //hide info button
		var month=calContainer.find("td:eq(1)");
		month.attr("colSpan","5");
		month.before(calContainer.find(".headrow").find("td:eq(1)")); //move back button to headline
		month.after(calContainer.find(".headrow").find("td:eq(2)")); //move next button to headline
		calendar.setFirstDayOfWeek=function() {}; //disable fdow selection, when clicking on weekday
		calendar.show();
		calendar.callHandler();
	}
	
	//promo box
	if ($("#promo").size()>0) {
		var promoContainer=$("#promo");
		var promoLinks=promoContainer.find(".close");
		var promoActivator=$("#promo-activator");
		
		promoLinks.click(function() {
			promoContainer.hide();
		})
		
		if (promoActivator.size()>0) {
			promoContainer.show();
		}
	}
 }


