var listdivs = null;
var emptysearchdiv = null;

function initProductList(){

  emptysearchdiv = $('emptysearch');
  $('filterbox').setStyle({
    display : 'block'
  });

  listdivs = $$('div.product_window');
	listdivs.each( function(div){
	   div.addClassName("collapsed");
	   div.openbtn = div.down('.showDetails');
	   div.openbtn.setStyle({
		 display : 'block'
	   });
     div.closebtn = div.down('.hideDetails');
     div.openbtn.observe('click', showProductDetails);
     div.closebtn.observe('click', hideProductDetails);
   
     div.raddata = new Object();
		 
     /* Hack: textContent für FF und innerText für IE */
     var hasInnerText = (document.getElementsByTagName("body")[0].innerText != undefined) ? true : false;
     
     if(!hasInnerText){
      div.raddata.rohr = div.down('.rohrdurchmesser').textContent;
     }
     else {
      div.raddata.rohr = div.down('.rohrdurchmesser').innerText;
     }
     
     if(!hasInnerText){
     div.raddata.material = div.down('.material').textContent;
     }
     else {
     div.raddata.material = div.down('.material').innerText;
     }
		 
     var fw = div.getElementsByClassName('fahrwagen');
     div.raddata.fahrwagentypen = new Array();
     for(var i = 0;i<fw.length;i++){
	     /* Hack: textContent für FF und innerText für IE */
			 if(!hasInnerText){
	        div.raddata.fahrwagentypen.push(fw[i].textContent);
	     }
	     else {
	        div.raddata.fahrwagentypen.push(fw[i].innerText);
	     }
     }
     var imglimks = div.getElementsByTagName('a');
     
     //Lightbox für Bilder, Titel in Bilder ausgeben
     if(!hasInnerText){
       var radname = div.getElementsByTagName('h1')[0].textContent;
     }
     else {
       var radname = div.getElementsByTagName('h1')[0].innerText;
     }
     
     for(var i = 0;i<imglimks.length;i++){
        if(imglimks[i].rel=='lightbox'){
            imglimks[i].title = radname;
        }
     }
  });
  //Filter abschicken
  $('filterProducts').observe('click', applyFilter);
}

function applyFilter(e){
  var fw = $('fahrwagen').value;
  var rd = $('rohrdurchmesser').value;
  var ma = $('material').value;
  var shownelems = 0;
  
  for(var i = 0;i<listdivs.length;i++){
    var rad = listdivs[i].raddata;

    if(
      (fw==0 || rad.fahrwagentypen.indexOf(fw) != -1) &&
      (rd==0 || rad.rohr >= rd) &&
      (ma==0 || rad.material==ma)
      ){
        listdivs[i].show();
        shownelems++;
        }else{
            listdivs[i].hide();
        }
   }
   if(shownelems == 0){
     emptysearchdiv.removeClassName("hideemptysearch");
   }else{
     emptysearchdiv.addClassName("hideemptysearch");
   }
}

function showProductDetails(event){
  var div = $(Event.element(event)).up('.product_window');
  div.removeClassName("collapsed");
   div.openbtn.hide();
   div.closebtn.setStyle({
      display : 'block'
     });
}

function hideProductDetails(event){  
  var div = $(Event.element(event)).up('.product_window');  
   div.openbtn.setStyle({
      display : 'block'
     });
   div.closebtn.hide();  
  div.addClassName("collapsed");
}
document.observe("dom:loaded", initProductList);
