var nullFunction = function(){};

jQuery(document).ready(function($) {
	var normhref=false;
	var getNormHref = function(href) {
		if (normhref === false) {
			normhref = "";
			var d = $('<div>');
			d.html("<a href='#catch' > link</a>");
			var h= d.find('a').attr('href');
			var r= h.indexOf('#catch');
			normhref = h.substr(0,r);
		}
		if (!href)
			return href;

		if (normhref.length == 0)
			return href;

		if (href.indexOf(normhref) != 0)
			return href;

		return href.substr(normhref.length);
	}

	var cacheLink = function(a) {
		var link = a.attr('href');
		var target = a.attr('target');
		a.mouseout(function() {
			a.attr('href',link);
		});
		return [link,target,a];
	}
	var invokeLink = function(linkObj) {
		var a = linkObj[2];
		var link = linkObj[0];
		var target = linkObj[1];
		var width = 957;
		if (!target || target=="" || target=="_self") {
			location.href = link;
		} else {
			if (target == "xwkintern") {
				a.attr('target','_blank');
				if (a.attr('rel')) {
					width = a.attr('rel');
				}
				a.nyroModalManual({
					'width': width,
					'height': 2000
				});
				a.attr('target','xwkintern');
			} else if (target == "xwkpopup") {
				$.nyroModalManual({
   					url: a.attr('href')+'#mainrow_main',
					width: 1000
    			});
			}else {
				window.open(link,target);
			}
		}
		a.attr('href','javascript:nullFunction()');
	}
	$('a[href]').each(
			function() {
				var url = getNormHref($(this).attr('href'));
				if (url.lastIndexOf('/--popup/') == -1)
					return;
				$(this).attr('target','xwkpopup');
			//	url = url.replace(/\/html\//,'/popup/');
			//	url = url.replace(/^html\//,'popup/');
			//	url = url.replace(/\/html.php\//,'/popup.php/');
			//	url = url.replace(/^html\.php\//,'popup.php/');
				$(this).attr('href',url);
				var link = cacheLink($(this));
				$(this).click(function() {
					invokeLink(link);
					return false;
				});
			}
	).each(
			function() {
				var tmp = $(this).attr('href');
				if (getNormHref(tmp).lastIndexOf('print.php/') == -1)
					return;
				$(this).click(function() {
					XWK.printUrl(tmp);
					return false;
				});
			}
	);
	$('.uebersichtblock, .navblock, .siteflow_block').each(
			function() {
				var block = $(this);
				var link = cacheLink(block.find('a:first'));
				var activeclass = !block.is('.siteflow_block') ? 'blockover' : 'siteflowover';
				block.css('cursor','pointer');
				block.hover(function() {
					block.addClass(activeclass);
				}, function() {
					block.removeClass(activeclass);
				}
				);
				block.click(function() {
					invokeLink(link);
				});
			}
	);
	$('.site_flow_block').each(
			function() {
				var block = $(this);
				var link = cacheLink(block.find('a:first'));
				block.css('cursor','pointer');
				block.hover(function() {
					block.addClass('siteflowover');
				}, function() {
					block.removeClass('siteflowover');
				}
				);
				block.click(function() {
					invokeLink(link);
				});
			}
	);

	var regex = new RegExp('\.(jp(e)?g|png|gif)\s*$', 'i');
	$('a').filter(function(i){
		return regex.test($(this).attr('href'))
	}).nyroModal();

});


jQuery(document).ready(function($) {

	if(jQuery.browser.safari) {
		return false;
	}

	var subs = new Array();
	var menueid = 0;
	var startcss = {
			top: -41,
			width: 930
	};
	var clip = false;

	var hideOthers = function(ex) {
		for(var i=0; i<subs.length; i++) {
			if (i == ex) continue;
			if (!subs[i].on) continue;
			hideSm(i);
		}
	}

	var showSm = function(id) {
		if (subs[id].on)
			return;
		//		subs[id].obj.slideDown(500);
		subs[id].obj.css({
			zIndex: 1
		});
		subs[id].obj.animate({
			top: 20
		},500);
		subs[id].on = true;
	}

	var hideSm = function(id) {
		if (!subs[id].on)
			return;
		//		subs[id].obj.slideUp(500);
		subs[id].obj.css({
			zIndex: 0
		});
		subs[id].obj.animate(startcss,500);
		subs[id].on = false;
	}

	var makeSM = function(id,src) {
		src.css({
			position: 'absolute',
			top: 20,
			left: 30
		});
		src.css(startcss);
		if (!clip) {
			clip = $('<div style="position:absolute; clip:rect(21px 1500px 1500px 0px">');
			$("#smholder").append(clip);
		}

		clip.append(src);
		subs[id].obj = src;
	}

	$("#gnnav li").each(function() {
		var id = menueid++;
		subs[id] = {
				on:false,
				obj:false
		};
		if (menueactive === id && menuedata[id] != "") {
			var o = $("#smholder .subnav");
			var x = o.clone();
			o.css({
				visibility: 'hidden'
			});
			makeSM(id,x);
			showSm(id);
		}

		$(this).find('a').hover(
				function() {
					hideOthers(id);
					if (menuedata[id] == "") {
						return;
					}

					if (!subs[id].obj) {
						var x = $(menuedata[id]);
						makeSM(id,x);
						subs[id].obj = x;
					}
					showSm(id);
				},
				function() {
				}
		);

	});



	var cacheLink = function(a) {
		var link = a.attr('href');
		var target = a.attr('target');
		a.mouseout(function() {
			a.attr('href',link);
		});
		return [link,target,a];
	}


	var invokeLink = function(linkObj) {
		var a = linkObj[2];
		var link = linkObj[0];
		var target = linkObj[1];
		var width = 800;
		if (!target || target=="" || target=="_self") {
			location.href = link;
		} else {
			if (target == "appintern") {
				a.attr('target','_blank');
				if (a.attr('rel')) {
					width = a.attr('rel');
				}
				a.nyroModalManual({
					'width': width,
					'height': 2000
				});
				a.attr('target','appintern');
			} else {
				window.open(link,target);
			}
		}

		a.attr('href','javascript:nullFunction()');
	}

	$(".rechtespalte,.angebote > li").each(function () {
		var link = cacheLink($(this).find("a"));
		//		$(this).shadow({offset: -3});
		//		$(this).shadowDisable();
		var isblack = $(this).hasClass('black');
		$(this).mouseover(function () {
			if (isblack) {
				$(this).addClass('orange');
				$(this).removeClass('black');
			} else {
				$(this).addClass('black');
			}
			$(this).css("cursor","pointer");
			//			$(this).shadowEnable();
			$(this).find("a").css("color","#274856");
		});

		$(this).mouseout(function () {
			//		$(this).shadowDisable();
			if (isblack) {
				$(this).removeClass('orange');
				$(this).addClass('black');
			} else {
				$(this).removeClass('black');
			}
			$(this).find("a").css("color","");
		});

		$(this).click(function () {
			invokeLink(link);
			return false;
		});

	});

	$(".reisemenue_h li,.reisemenue li").each(function () {
		$(this).css("cursor","pointer");
		var link = cacheLink($(this).find("a"));

		$(this).mouseover(function () {
			$(this).find("a").css("color","#000000");
		});

		$(this).mouseout(function () {
			$(this).find("a").css("color","");
		});

		$(this).click(function (e) {
			invokeLink(link);
			return false;
		});

	});

	$(window).load(function() {
		if ($.fn.dropShadow) {
			$(".overtext").each(function() {
				var shc = $(this).hasClass('blackfont') ? '#FFFFFF' : '#000000';
				$(this).dropShadow({
					left: 2,
					top: 2,
					blur: 3,
					opacity: .8,
					color: shc,
					swap: false
				});
			});
		}
	});

	/*
	//Hauptmenue
	$(".menue li").each(function () {
		$(this).mouseover(function () {
			$(this).addClass("orange");
//			$(this).find('*').css("cursor","pointer");
		});
		$(this).mouseout(function () {
			$(this).removeClass("orange");
		});

	});

	//Spaltenmenue
	$(".mmenue li").mouseover(function () {

	});
	 */

	$("a[target='appintern']").each(function () {
		var link = cacheLink($(this));

		$(this).click(function () {
			invokeLink(link);
			return false;
		});

	});
});
