addLoadEvent(Init);


function Init() {
   fadingBoxes.init();
   fadingBoxes2.init();
}

var Projects  = {
   current : 0,
   items : [],
   cached : 0,
   loaded  : [],
   
   add   : function(data) {
     this.items.push(data);
   },

   
   start : function(i) {
      //console.debug('start:',i);
     if(i == 1) {
       var i1 = setTimeout(function() {
         //Projects.refresh(true);
        },15000);
     }
     if(i == 2) {
       this.loaded[1] = this.loaded[2] = 0;
       var i2 = setTimeout(function() {
         //Projects.refresh(false);
        },10000);
     }
   },

   refresh : function(big) {
      if(big) {
         var cb = function() {
            Projects.clearImage(1);
            Projects.updateBlock(1,Projects.getData(big));
            setTimeout(function() { Projects.fade('home-project',new WDF.Effect.FadeIn()); },250);
         }
         this.fade('home-project',new WDF.Effect.FadeOut(),cb);
      } else {
         var cb = function() {
           Projects.clearImage(2);
           Projects.clearImage(3);
           Projects.updateBlock(2,Projects.getData(big));
           Projects.updateBlock(3,Projects.getData(big));
           setTimeout(function() { Projects.fade('home-projects',new WDF.Effect.FadeIn()); },250);

         }
         this.fade('home-projects',new WDF.Effect.FadeOut(),cb);
      }
   },
   
   clearImage : function(i) {
      var imagelink  = $('p'+i+'_imagelink');
      var img        = imagelink.getElementsByTagName("img");
      img            = img[0];
      
      img.src        = "/images/blank.gif";
      //console.debug(img);
   },


   getData : function(big) {
      if(this.current > this.items.length-1) {
         this.current = 0;
      }
      var data = this.items[this.current++];
      if(big) {
         var image = new Image(400,266);
         image.src    = "/image-cache/crop-400x266/"+data.filesystem_id+"-image";
      } else {
         var image = new Image(190,147);
         image.src    = "/image-cache/crop-190x147/"+data.filesystem_id+"-image";
      }
      return data;
   },

   fade : function(id,effect,cb) {
      var applyer = new WDF.Effect.Applyer();
      applyer.add(effect);
      applyer.execute($(id),cb,10);
   },

   updateBlock : function(i,data,big) {
      var name       = $('p'+i+'_name');
      var headline   = $('p'+i+'_headline');
      var link       = $('p'+i+'_link');
      var imagelink  = $('p'+i+'_imagelink');
      var img        = imagelink.getElementsByTagName("img");
      var img        = img[0];
      name.innerHTML = data.name;
      imagelink.href = link.href  = "/projects-list/"+data.category_ident+"/"+data.id+"/";
      if(i==1) {
         headline.innerHTML = data.headline;
         img.src     = "/image-cache/crop-400x266/"+data.filesystem_id+"-image";
      } else {
         img.src     = "/image-cache/crop-190x147/"+data.filesystem_id+"-image";
      }
      data.filesystem_id;
      data.name;
   },
   
   onImageLoad : function(i,part) {
      if(i == 1) {
         
            this.start(1);
      }
      if(i == 2) {
         this.loaded[part] = 1;
         if(this.loaded[1] == 1 && this.loaded[2] == 1) {
              this.start(2);
         }
      }
   }
};