function var_dump(obj) {
   if(typeof obj == "object") {
      //return "Type: "+typeof(obj)+((obj.constructor) ? "\nConstructor: "+obj.constructor : "")+"\nValue: " + obj;
      var rs = "Type: "+typeof(obj)+"\n";
      for(o in obj){
        rs += var_dump(obj[o])+"\n";
      }
      return rs;
   } else {
      return "Type: "+typeof(obj)+"\nValue: "+obj;
   }
}//end function var_dump

function errorReport(err){
    window.alert(err);
}

function styleThumb(thumb, extra){
    setMask(thumb, thumb.size, '', extra);
    
    a = thumb.getElement('a');
    if(a){
        thumb.setStyle('cursor', 'pointer');
        thumb.linkSrc = a.getAttribute('href');
        thumb.addEvent('click', function(){document.location = this.linkSrc;});
        setHoverMask(thumb, thumb.size, 'up', extra);
    }
}

function setMask(photo, s, up, extra){
    //window.alert(photo.hasClass('masked'));
    //var maskSize = photo.getStyle('width').toInt();  //maskSize geldt voor zowel de hoogte als de breedte
    var maskSize = s;
    debug('set mask');
    var mask = '';
    if(!photo.hasClass('masked')){
        mask = new Element('div').inject(photo, 'inside');
        mask.addClass('photoMask');
        //mask.addClass('fixPNG');
        if(maskSize == 'cover_big'){
            w = 385;
            h = 186;
        } else {
            w = maskSize;
            h = maskSize;
        }
        mask.setStyles({'width':w,'height':h,'position':'absolute','z-index':'4', 'top':'0', 'left':'0'});
        mask.setStyle('cursor', photo.getStyle('cursor'));
        photo.addClass('masked');
        //window.console.log(photo);
    } else {
        mask = photo.getElement('.photoMask');
    }
    var src = 'url("'+assetsdir+'style/images/photomask/'+maskSize+extra+up+'.png")';
    //window.alert(src);
    mask.setStyle('background-image' , src);
    if(up == 'up') mask.setStyle('cursor', 'pointer');
    Browser.fixPNG(mask);
}

function setHoverMask(photo, s, up, extra){
    photo.addEvent('mouseenter', function(){
        setMask(this, this.size, 'up', extra);
        });
    photo.addEvent('mouseleave', function(){
        setMask(this, this.size, '', extra);
        });
}
function removeMask(photo){
    if(photo.hasClass('masked')){
        mask = photo.getElement('.photoMask');
        mask.remove();
        photo.removeClass('masked');
    }
}

function addFlash(id, url, flashvars, w, h){
     var params = {
          //'wmode': 'transparent',
          'allowfullscreen':'true',
          'allowScriptAccess':'always',
          'autostart': true,
          'scale': 'noscale'
     };
     var attributes = {};

     swfobject.embedSWF(url, id, w, h, "9.0.0","expressInstall.swf", flashvars, params, attributes);
}

function addFlashReplacement(id, src, width, height, flashvars){
     container = $(id);
     replacementid = id+'_replacement';
     var replacementElement = new Element('div', {
          'id': replacementid
     });
     replacementElement.injectInside(container);
     
     addFlash(replacementid, src, flashvars, width, height);
}
