// Hintergrundbild
$(window).load(function(){$("#background").fullBg();});

// Schriften ersetzen
Cufon.replace('.mainHeadline, .subHeadline, h1.portal, h3, h1, .mainHeadlineBundesland', { fontFamily: 'SketchBlock' });
Cufon.replace('#mainNavi ul li a', { 
	fontFamily: 'SketchBlock' ,
	hover: true
});


// Deutschlandkarten Hover
var initDeutschlandkartenOverlay = function(){
	// Gibt es die Deutschlandkarte?
	if($(".deutschlandKarte").length > 0){
		// Alle Overlays verstecken
		$(".deutschlandKarte div").hide();
		// Overlay des jeweiligen Bundeslandes anzeigen
		$("#DeutschlandkarteMap area").hover(function(){
			var getBundesland = $(this).attr("rel");
			$("div." + getBundesland).show();
			// Nötig um Ruckeln zu vermeiden (Zustand $("#DeutschlandkarteMap area") wird verloren)
			$("div." + getBundesland).mouseover(function(){$(this).show();});
		},function(){
			var getBundesland = $(this).attr("rel");
			// Nötig um Ruckeln zu vermeiden --> Overlay verstecken
			$("div." + getBundesland).mouseout(function(){$(this).hide();});
			$("div." + getBundesland).hide();
		});		
	}
}

// Einzelseiten
var triggerFancybox = function(){
	// Soll die Fancybox getriggert werden?
	if($(".fancybox").length > 0){
		// Fancybox triggern
  		$(".fancybox").click(function() { 
        	$.fancybox({
				'padding'               : 10,
				'autoScale'             : false,
				'width'					: 820,
				'height'				: 620,
				'transitionIn'  		: 'none',
				'transitionOut' 		: 'none',
				'href'					: $(this).attr("rel"), 
				'type'					: 'iframe'             
            });
        	return false;
		}); 		
	}
}

// Bildergalerie
var triggerImageFancybox = function(){
	// Soll die Fancybox getriggert werden?
	if($(".imgGallery").length > 0){
		$("a.imgGallery").fancybox({
			'transitionIn'		:	'elastic',
			'transitionOut'		:	'elastic',
			'speedIn'			:	600, 
			'speedOut'			:	200,
			'overlayShow'		:	false
		});
	}
}

// VideoPlayer
var triggerVideoFancybox = function(){
	// Soll die Fancybox getriggert werden?
	if($("a.showVideo").length > 0){
  		$("a.showVideo").click(function() {  			
        	$.fancybox({
                        'padding'               : 10,
                        'autoScale'             : false,
                        'transitionIn'  											: 'none',
                        'transitionOut' 											: 'none',
                        'href'														: this.href, 
                        'type'															: 'ajax',
                        'title'														: this.title  
            });
        	return false;
		}); 
	}
}

// Alle Images mit der Klasse "imageHover" werden durch einen mouseover Zustand ersetzt
var imageHover = function(){
	if($("img.imageHover").length > 0){
		$("img.imageHover").hover(function(){
			var pfad 			= $(this).attr("src");
			var plain 			= pfad.substring(0,pfad.length-4);
			var highlightPfad 	= plain + "_h.png";
			$(this).attr("src",highlightPfad);			
		},function(){$(this).attr("src",$(this).attr("src").replace("_h",""));});
	}
}

// Selectboxen Stylen
var selectBoxFake = function(){
	if($("#ideenpoolPLZ,#form,#klasse,#jahr,#schulformen_id,#schulklassendifferenzierung_id").length > 0){
		$('#ideenpoolPLZ,#form,#klasse,#jahr,#schulformen_id,#schulklassendifferenzierung_id').selectbox({
			 inputClass: 'selectbox'
		});
	}
}

// Ideenpool Table Hover
var tableHover = function(){
	if($("table#ergebnisse").length > 0){
		$("table#ergebnisse tr").hover(function(){	
			if( $(this).hasClass('noHover') ) return;
			bg = $(this).css("background-color");
			$(this).css("background-color","#fef9f4");			
		}, function(){
			if( $(this).hasClass('noHover') ) return;
			$(this).css("background-color",bg);			
		});
	}
}

// Alle anderen Tables
var tableHoverNoAjax = function(){
	if($(".table table").length > 0){
		$(".table table tr").hover(function(){	
			if( $(this).hasClass('noHover') ) return;
			tableBG = $(this).css("background-color");
			$(this).css("background-color","#fef9f4");			
		}, function(){
			if( $(this).hasClass('noHover') ) return;
			$(this).css("background-color",tableBG);			
		});
	}
}

// Alternierende Tabellen Zeilen
var alternateTableRow = function(){
	if($(".table table tr").length > 0){		
		$(".table table tr:odd").css("background-color","#f1f6fa");
		$(".table table tr:even").css("background-color","#f9fbfd");
		$(".table table thead tr").css("background-color","transparent");
	}
}

// Trigger Flyout
var initFlyout = function() {
	if($("#bundeslandNavi ul li ul.flyoutNavi li").length > 0){
		$("#bundeslandNavi ul li").hover(
			function() { $(this).find("ul").slideDown(); },
			function() { $(this).find("ul").slideUp(); }
		);
	}
}

// Link zur Startseite da
//var bundeslandStartseitenLink = function() {
//	if($(".mainHeadlineBundesland").length > 0){
//		$(".mainHeadlineBundesland").click(function(){
//			var bundesland = $(this).attr("rel");
//			window.location = "/"+bundesland+"/Ministerpraesident.php";
//		});
//	}
//}

// Subnavigations Container nicht anzeigen wenn es keine Subnavigation gibt
var showSubnaviContainer = function() {
	if($("ul#subNavi li").eq(1).length > 0) $(".showSubnaviContainer").show();
	else $(".showSubnaviContainer").hide();
}

// Trigger Accordion
var triggerAccordion = function(){
	if($(".accordion").length > 0){
		$(".accordion").accordion({autoHeight: false});
	}
}

//--Liefert asynchron die Ergebnisse zu einer Ideenpool Suche
var getSearchResultIdeenpool = function(){
var ergebnissuche = function(){

     $.ajax({
        url : "/_inc/ideenpoolSearchResultAjax.php",
        type : "POST",
        data : { action: 'search',
                 freitext: $('#freitext').val(),
                 plz: $("#ideenpoolPLZ").val(),
                 form:$('#form').val(),
                 klasse:$('#klasse').val(),
                 jahr:$('#jahr').val(),
                 typ: 'ajax',
                 aktuelle_seite: $('#paging_aktuelle_seite').val()
               },
        dataType : "text",
        success : function(msg){
            $('#ergebnisse tbody').empty().html(msg);
        },
        error: function(e) {

        }
    });

   }//ergebnissuche

    $("#ideenpoolPLZ").change(function(event) {
      $('#paging_aktuelle_seite').val('');
      ergebnissuche();
      event.stopImmediatePropagation();
    });

    $('#freitext').keyup(function(event) {
        $('#paging_aktuelle_seite').val('');
        ergebnissuche();
        event.stopImmediatePropagation();

    });

    $('#form').change(function(event) {
        $('#paging_aktuelle_seite').val('');
        ergebnissuche();

    });

    $('#jahr').change(function(event) {
        $('#paging_aktuelle_seite').val('');
        ergebnissuche();
    });


    $('#klasse').change(function(event) {
        $('#paging_aktuelle_seite').val('');
        ergebnissuche();
    });

    /*** Klick - Event ***/
    $('body').click(function(event) {

       if($(event.target).hasClass('seitenlink')){
          //--Aktuelle Seitenauswahl speichern
          $('#paging_aktuelle_seite').val($(event.target).attr('name'));
          ergebnissuche();
          return;
       }

       //--Klick auf den Detailseiten-Link eines Treffers abfangen
       if($(event.target).attr('class') == 'detaillink'){

         $.ajax({
            url : "/Ideenpool-Detail.php",
            type : "POST",
            data : { action: 'projektDetail',
                     linkid: $(event.target).attr('name')
                   },
            dataType : "text",
            success : function(msg){
               $('#ideenpoolUebersicht').fadeOut('slow');
               $('#hideIdeenpoolContent').hide();
               $('#hideIdeenpooleHeadline').hide();  
               $('#inhalt_best_practice_details').html(msg).fadeIn('slow');

            },
            error: function(e) {
            }
         });
        
       }//if

       //--Klick auf den Link "Zurück zur Trefferliste" abfangen
       if($(event.target).attr('id') == 'zurTrefferliste'){

          $('#inhalt_best_practice_details').fadeOut('fast');
          $('#hideIdeenpoolContent').show();
          $('#hideIdeenpooleHeadline').show();          
          $('#ideenpoolUebersicht').fadeIn('slow');
       }	

    });
}

// Dokumenten Upload Feld
var fakeFileInput = function() {
	$.fn.filestyle = function(options) {                
        /* TODO: This should not override CSS. */
        var settings = {
            width : 250
        };                
        if(options) {
            $.extend(settings, options);
        };                        
        return this.each(function() {            
            var self = this;
            var wrapper = $("<div>").addClass("uploadButton");                            
            var filename = $('<input class="file">')
                             .addClass($(self).attr("class"))
                             .css({
                                 "display": "inline",
                                 "width": settings.width + "px"
                             });
            $(self).before(filename);
            $(self).wrap(wrapper);
            $(self).css({
                        "position": "relative",
                        "height": settings.imageheight + "px",
                        "width": settings.width + "px",
                        "display": "inline",
                        "cursor": "pointer",
                        "opacity": "0.0"
                    });
            if ($.browser.mozilla) {
                if (/Win/.test(navigator.platform)) {
                    $(self).css("margin-left", "-142px");                    
                } else {
                    $(self).css("margin-left", "-168px");                    
                };
            } else {
                $(self).css("margin-left", settings.imagewidth - settings.width + "px");                
            };
            $(self).bind("change", function() {
                filename.val($(self).val());
            });      
        });
    };
}

// Aufrufe
$(document).ready(function(){
	initDeutschlandkartenOverlay();
	triggerFancybox();
	triggerImageFancybox();
	triggerVideoFancybox();
	imageHover();
	selectBoxFake();
	tableHoverNoAjax();
	getSearchResultIdeenpool();
	alternateTableRow();
	initFlyout();
//	bundeslandStartseitenLink();
	showSubnaviContainer();
	triggerAccordion();
	fakeFileInput();
});
