  /**
    * preloader toggle code 
    * -----------------------------------------------------------------
    * 
    * @copyright Copyright (c) 2009 ballyhoo Werbeagentur GmbH
    * @author Arne Blankerts <theseer@fcms.de>
    * 
    * 
    * 
    */
   
   (function(){
      var counts = [];
      
      function handler(){
         var pos = 0;
         while (true) {
            //dump('Testing intersect_container_'+pos+'\n');
            obj = document.getElementById('intersect_container_'+pos)
            if (!obj) break;
            
            var loader=fScript.getElementsByClassName('loader', obj.parentNode)[0];            
            loader.style.display='block';
            counts[pos] = 0;
            //dump('init preload '+pos+'\n');
            var imgs = obj.getElementsByTagName('IMG');               
            for (var x=0; x<imgs.length; x++) {
               var func = function(e,t,l,m){ 
                  counts[t]++; 
                  //dump('count '+t+' updated: '+counts[t]+'/'+m+'\n');
                  if (counts[t]==m) {
                     //dump('done preload '+t+'\n');
                     l.style.display='none';
                  }
               }
               fScript.registerEvent('load',  func, imgs[x], pos, loader, imgs.length );
               fScript.registerEvent('error', func, imgs[x], pos, loader, imgs.length );
            }
            
            pos++;
         }           
      }
      
      function finishHandler() {
         //dump('Finish Handler called\n');
         var pos = 0;
         while (true) {
            obj = document.getElementById('intersect_container_'+pos)
            if (!obj) break;
            fScript.getElementsByClassName('loader', obj.parentNode)[0].style.display='none';
            pos++;
         }
         //dump('Finish handler done\n');
      }

      if (document.addEventListener) {
         window.addEventListener('load', finishHandler, false)
         document.addEventListener("DOMContentLoaded", handler, false);        
      } else {
         window.attachEvent('onload', finishHandler);
         document.onreadystatechange = function(){
            if(document.readyState == "interactive" || document.readyState == "complete") handler();
         }
         
      }
      
   })();
 
