

$(document).ready(function(){



// ##################

// ##  Funktionen  ##

// ##################



var urldaten_wert= "";

var urldaten_von= "";

var urldaten_bis= "";



/**

 * Eine Box im ZylinderFinder aufklappen

 */



// Beim Laden der Seite die volle Anzahl laden

if ($("#produktAnzahl").val() != undefined)

{

	$("#showbutton").html($("#showbutton").html()+" ("+$("#produktAnzahl").val()+")");

}



function auf(boxname)

{

	// Alle anderne Boxen zuklappen

	$("div.werteblock").each(function(){

		if(this.id != boxname){

			zu(this.id);

		}

	});



	// die aktuelle Box aufklappen

	$("#"+boxname).stop().animate({height:"98px"}, 500);



	// und (rot) markieren

	$("#"+boxname+" div.ueberschrift a").removeClass("geschlossen").addClass("offen");



	// Beim Laden der Seite die volle Anzahl laden

	if ($("#produktAnzahl").val() != undefined)

	{

		$("#showbutton").html($("#showbutton").html()+" ("+$("#produktAnzahl").val()+")");

	}

	

}



/**

 * Eine Box im ZylinderFinder zuklappen

 */

function zu(boxname)

{

	// die aktuelle Box zuklappen

    $("#"+boxname).stop().animate({height:"32px"}, 500);



	// alle anderen sind wieder Status: geschlossen

    $("#"+boxname+" div.ueberschrift a").removeClass("offen");

	$("#"+boxname+" div.ueberschrift a").addClass("geschlossen");



	// Sichtbarkeit der Produkte wieder zurücksetzen

	sichtbareProdukte = new Array();

	switch(boxname){

		case "kraft":{

			$("#slider_"+boxname).slider('values',0,minKraft); // sets first handle (index 0) to 50

			$("#slider_"+boxname).slider('values',1,maxKraft);

			$("#kraft_von").html(minKraft);

			$("#kraft_bis").html(maxKraft);

			break;

		}

		case "hub":{

			$("#slider_"+boxname).slider('values',0,minHub); // sets first handle (index 0) to 50

			$("#slider_"+boxname).slider('values',1,maxHub);

			$("#hub_von").html(minHub);

			$("#hub_bis").html(maxHub);



		break;

		}

		case "einbauhoehe":{

			$("#slider_"+boxname).slider('values',0,minHoehe); // sets first handle (index 0) to 50

			$("#slider_"+boxname).slider('values',1,maxHoehe);

			$("#einbauhoehe_von").html(minHoehe);

			$("#einbauhoehe_bis").html(maxHoehe);



		break;

		}

	}



	$("#showbutton").html($("#auswahl_anzeigen").html());

	markProducts();

}



function getItemIds(minWert,maxWert,eigenschaft){



	//var ajaxlink;

	var result;



	sichtbareProdukte = new Array();



	/**

	 * Produkte abfragen

	 */

	$.ajax({

		type: "POST",

		url: "-p-1-site-"+$("#site_name").html()+"-lang-"+$("#site_language").html()+"-ajax-getZylinderFinderData",

		async : false,	// => Ergebnis ist sofort verfügbar

		data:

			{

				minValue: minWert,

				maxValue: maxWert,

				bereich: eigenschaft

			},

		success: function(data){

			result = data;

		}

	});



	var obj = jQuery.parseJSON(result);

	if (obj && obj.length != 0)

	{

		$.each(obj.items, function(i,item){

			sichtbareProdukte[i]=""+item;

		});



		//Ausgabe der Ergebnisanzahl im button

		$("#showbutton").html($("#auswahl_anzeigen").html()+" ("+sichtbareProdukte.length +")");

	}

	else

	{

		// Keine Ergebnisse

		$("#showbutton").html($("#auswahl_anzeigen").html());

	}

	

}



/**

 * Ausgrauen der Artikel die nicht im Filter liegen

 **/

function markProducts()

{

	var wert;



	$("div.produktblock").each(function(){



		wert = $(this).attr("id").replace("p","");

		if(jQuery.inArray(wert,sichtbareProdukte)>-1 || sichtbareProdukte.length==0)

		{

			$(this).removeAttr("style");

		}

		else

		{

			$(this).attr("style","opacity:0.35;filter: alpha(opacity = 35);");

		}

	});



}



function markProductsURL(){

	/*Ausgrauen der Artikel die nicht im Filter liegen */



	var wert;

	alert("Gehe zur Filter-Seite\nEigenschaft:"+urldaten_wert+"\nMin-Wert:"+urldaten_von+"\nMax-Wert:"+urldaten_bis);

	$("div.produktblock").each(function(){

		wert = this.id;

		wert=wert.replace("p","");

		if(jQuery.inArray(wert,sichtbareProdukte)>-1 || sichtbareProdukte.length==0)

			$(this).removeAttr("style");

		else

			$(this).attr("style","opacity:0.35;filter: alpha(opacity = 35);");

	});



}



var sichtbareProdukte=new Array();



/*Eckdaten von den vorhandenen Produkten

neu:  urldaten_*  sammelt Parameter für spätere Übergabe an eigentliche Filterseite

*/



// Min/Max Werte des Sliders

var minKraft =	parseInt($("#minKraft").html());

var maxKraft =	parseInt($("#maxKraft").html());

var minHub =	parseInt($("#minHub").html());

var maxHub =	parseInt($("#maxHub").html());

var minHoehe =	parseInt($("#minHoehe").html());

var maxHoehe =	parseInt($("#maxHoehe").html());



$(function(){

	/*Slider -Konfig */

	$('#slider_kraft').slider({

		range: true,

		values: [minKraft, maxKraft],/*aktuelle Werte */

		min:minKraft, /*Slider-minWert*/

		max:maxKraft,/*Slider-maxWert*/

		stop: function( event, ui ) {

			getItemIds(ui.values[0],ui.values[1],"kraft");

			urldaten_wert="kraft";

			urldaten_von=ui.values[0];

			urldaten_bis=ui.values[1];

		},

		slide: function( event, ui ) {

			$("#kraft_von").html(ui.values[0]);

			$("#kraft_bis").html(ui.values[1]);



		}

	});

	/*Textfelder unter dem Slider */

	$("#kraft_von").html(minKraft);

	$("#kraft_bis").html(maxKraft);



	$('#slider_hub').slider({

		range: true,

		values: [minHub, maxHub], /*aktuelle Werte */

		min:minHub,/*Slider-minWert*/

		max:maxHub,/*Slider-maxWert*/

		stop: function( event, ui ) {

			getItemIds(ui.values[0],ui.values[1],"hub");

			urldaten_wert="hub";

			urldaten_von=ui.values[0];

			urldaten_bis=ui.values[1];

		},

		slide: function( event, ui ) {

			$("#hub_von").html(ui.values[0]);

			$("#hub_bis").html(ui.values[1]);



		}

	});

	$("#hub_von").html(minHub);

	$("#hub_bis").html(maxHub);

	$('#slider_einbauhoehe').slider({

		range: true,

		values: [minHoehe, maxHoehe],/*aktuelle Werte */

		min:minHoehe,/*Slider-minWert*/

		max:maxHoehe,/*Slider-maxWert*/

		stop: function( event, ui ) {

			getItemIds(ui.values[0],ui.values[1],"einbauhoehe");

			urldaten_wert="einbauhoehe";

			urldaten_von=ui.values[0];

			urldaten_bis=ui.values[1];

		},

		slide: function( event, ui ) {

			$("#einbauhoehe_von").html(ui.values[0]);

			$("#einbauhoehe_bis").html(ui.values[1]);



		}

	});

	$("#einbauhoehe_von").html(minHoehe);

	$("#einbauhoehe_bis").html(maxHoehe);



});



// ##############

// ##  Egotec  ##

// ##############



	// ###################################

	// ##  Auf/Zuklappen von Bereichen  ##

	// ###################################



	$("#right_content .ueberschrift a, #finder_einklinker .ueberschrift a").click(function(){

		// Der aktuelle Bereich

		var bereich = $(this).parent().parent().attr("id");

		auf(bereich);

	});



	// ########################

	// ##  Auswahl anzeigen  ##

	// ########################



	$("#showbutton").click(function(){



		// Wenn ich auf der Startseite bin, dann weiterleiten

		if ( $("#this_pageid").html() == "1")

		{

			if (urldaten_wert != '' && urldaten_von != '' && urldaten_bis != '')

			{

				my_url = $("#pStartseiteURL").val();

				my_url+="?bereich="+urldaten_wert+"&minValue="+urldaten_von+"&maxValue="+urldaten_bis+"&xurl=1";

				location.href=my_url;

			}

			else

			{

				location.href = $("#pStartseiteURL").val();

			}

		}

		else

		{

			markProducts();

		}

	});



	// ################################

	// ##  Umschalten der Ansichten  ##

	// ################################



	$("#productView").click(function(){



		// Ansicht: Kategorie => Wechsel

		if ( $("#nach_kategorien").is(":visible") )

		{

			// => Wechseln zu "Eigenschaften"

			$("#m_kategorien").removeClass("hidden");

			$("#m_eigenschaften").addClass("hidden");

			$("#zylinderFinder").hide();

			$("#nach_kategorien").fadeOut(function(){

				$("#nach_eigenschaften").fadeIn("fast");

			});

		}

		else

		{

			// => Wechseln zu "Kategorien"

			$("#m_eigenschaften").removeClass("hidden");

			$("#m_kategorien").addClass("hidden");

			$("#zylinderFinder").show();

			$("#nach_eigenschaften").fadeOut(function(){

				$("#nach_kategorien").fadeIn("fast");

			});

		}

		

	});



	//var pos = $("#datentabelle").position();

	//$("#headers").css("top",parseInt(pos.top)-18+"px");



	// Chrome

	if($.browser.safari)

	{

		$("#datentabelle").css("margin-top","100px");

		$("#headers").css("top","191px");

		//alert('safari!');

	}

	// Firefox

	if($.browser.mozilla)

	{

		$("#datentabelle").css("margin-top","100px");

		$("#headers").css("top","201px");

	}



	// MSIE

	if($.browser.msie)

	{

		//alert($.browser.version);



		if ($.browser.version == "7.0" || $.browser.version == "8.0")

		{

			$("#headers").css({

				'display':'none'

			});



			$("#datentabelle").css("margin-top","10px");

			$("#datentabelle .ueberschriften").css("display","block");

			$("#datentabelle").css("border","0px");

			$("#datentabelle .ueberschriften td").css({

				'height': '50px'

			});

			$("#datentabelle .ueberschriften td div").css({

				//'filter': 'progid:DXImageTransform.Microsoft.BasicImage(rotation=3)'

			});

		}

		else

		{

			$("#datentabelle").css("margin-top","100px");

			$("#headers").css("top","191px");

			$("#headers").css("margin-left","3px");

		}

	}



});
