var fxDuration = 1.0

function crossfade(node) {
    new Effect.Appear(node, {from: 1.0, to: 0.0, duration: fxDuration});
    new Effect.Appear(node+"h", {from: 0.0, to: 1.0, duration: fxDuration});
}

function crossfadeBack(node) {
    new Effect.Appear(node+"h", {from: 1.0, to: 0.0, duration: fxDuration});
    new Effect.Appear(node, {from: 0.0, to: 1.0, duration: fxDuration});
}



function fadeIn(node, duration){
  new Effect.Appear(node, {duration:duration, from:0.0, to:1.0, 
      afterFinish: function () {
        new Event.observe(node, 'mouseover', function(event) {
            //console.log(node.id+" mosueover");
            crossfade(node.id);
        }); 
        
        new Event.observe(node, 'mouseout', function(event) {
            //console.log(node.id+" mouseout");
            crossfadeBack(node.id);
        });
      }
  });
}

document.observe("dom:loaded", function() {
  
  $$('.imghidden').each(function(node){  
      fadeIn(node, (2000+Math.floor(10000*Math.random()))/1000);   
  });
  
  $$('.thumbhidden').each(function(node){  
      new Event.observe(node, 'mouseover', function(event) {
           //console.log(node.id+" mosueover");
           crossfade(node.id);
       }); 
       
       new Event.observe(node, 'mouseout', function(event) {
           //console.log(node.id+" mouseout");
           crossfadeBack(node.id);
       });
  });
 
  $$('.deschidden').each(function(node){ 
      node.hide();   
  });
  
});