// Firefox zeigt anfangs die Standardschrift bevor;
// der @font-face Type geladen wird, unschöner Fontwechsel. 
// Das script versteckt den Body und zeigt dann alles:
// http://paulirish.com/2009/fighting-the-font-face-fout/

(function(){
  // if firefox 3.5+, hide content till load (or 3 seconds) to prevent FOUT
  var d = document, e = d.documentElement, s = d.createElement('style');
  if (e.style.MozTransform === '' || e.style.BoxShadow !== undefined){ // gecko 1.9.1 inference
    s.textContent = 'body{visibility:hidden}';
    e.firstChild.appendChild(s);
    function f(){ s.parentNode && s.parentNode.removeChild(s); }
    addEventListener('load',f,false);
    setTimeout(f,3000); 
  }
})();

jQuery(document).ready(function($) {
	// Nachträglich einen Rollover in der Hauptnavigation realisieren
	$('#navigation li:not([class=active])').mouseover(function () {
		$(this).addClass("hover")
	});
	$('#navigation li:not([class=active])').mouseout(function () {
		$(this).removeClass("hover")
	});
	// Alle Elemente die einen Schatten erhalten sollen in einer Variable abspeichern
	var shadowElements = $('#header, #content_wrapper, #footer, .news-latest-item, #right_column .csc-header, #cloud1 div.csc-default, #cloud2 div.csc-default, #contact_box #info, h2.pinnwand-header, #bibliothek div.csc-textpic, #eyecatcher2 div.csc-textpic, #quartal div.csc-textpic, #eyecatcher1 div.csc-textpic');
	// fügt dem Body eine klasse an, so können wir Javascript Support abfragen
	$('body').addClass('js');
	
	// Die erste Navigationsebene auf die komplette Seitenbreite verteilen
	var navItems = $('#first ul').children();
	navItems.css('width', 99.5/navItems.length + "%");

	// Wir testen auf die jeweiligen CSS - Drop Shadow eigenschaften, 
	// für die modernen Browser mit CSS3, IE bekommt einen Filter über css
	// als Fallback falls keine Unterstützung vorhanden gibts noch jquery dropshadow
	// die proprietären CSS3 styles werden inline reingeschrieben, so haben wir einen 
	// validierenden Stylesheet
	
	// Volkers Ergänzung: der Shadowfilter im MSIE macht die Schrift total hässlich. Daher auskommentiert und Fallback auf Dropshadow
	// das führt dazu dass beim Ausklappen der Artikel (Pinnwand, Liste) der Schatten irgendwo rumhängt, Lösung wäre ein redraw, der nicht funktioniert. Grund hierfür scheint zu sein das, laut Patrick der IE das ganze DOM neu zusammenbasteln muss und daher die neue Höhe noch nicht berechnet hat und somit der Schatten wieder auf die alte Höhe gemacht wird. Somit warten wir jetzt 250 ms bevor wir den Scahtten neu zeichnen. Klappt das nicht sollte der Schatten einfach entfernt werden.
	
		var s = document.body.style;
		var shadowed = false;
		if (s.MozBoxShadow !== undefined) {
			shadowElements.css('-moz-box-shadow', '5px 5px 5px #9B9B9B');
			shadowed = true;
		} else if (s.WebkitBoxShadow !== undefined) {
			shadowElements.css('-webkit-box-shadow', '5px 5px 5px #9B9B9B')
			shadowed = true;
		} /*else if ($.browser.msie) {
			shadowElements.addClass("shadowed");
			shadowed = true;
		}*/ else if (s.BoxShadow !== undefined) {
			shadowElements.css('box-shadow', '5px 5px 5px #9b9b9b');
			shadowed = true;
		} else if (!shadowed) {
			shadowElements.dropShadow();
		};
		
		
		// tt_news zum aufklappen: 
		/*$('.news_text').hide();
		
		$('.news-list-morelink').click(function(event) {
			event.preventDefault();
			$(this).prev('.news_text').slideToggle('fast', function() {
				if (!shadowed) {
					shadowElements.redrawShadow();
				};
			});
			// alert($(this).prev('.news_text').html())
		});*/
				// pascal 
		$('.news-list-item .news-list-morelink').click(function() {
			$(this).parent().find('.news-list-content').slideToggle("fast");
			$(this).hide();
			$(this).next().show();
			if (!shadowed) {
					/*shadowElements.redrawShadow();*/
					shadowElements.removeShadow();
					setTimeout(function(){shadowElements.dropShadow();}, 250);
					
					
				};
			return false;
		});
		
	
		$('.news-list-item .news-list-lesslink').click(function() {
			$(this).parent().find('.news-list-content').slideToggle("fast");
			$(this).hide();
			$(this).prev().show();
			if (!shadowed) {
					/*shadowElements.redrawShadow();*/
					shadowElements.removeShadow();
					setTimeout(function(){shadowElements.dropShadow();}, 250);
					
					
				};
			return false;
		});
	
});

