// b3rtImageFixer 1.2
// Copyright 2009, H. poort
// This software may not be used without a valid license

function b3rtImageDimensionsFixer(d){this.imageList=[];this.callbackFunction=function(a,b,c){};if((typeof d)=='function')this.callbackFunction=d;this.initialize()};b3rtImageDimensionsFixer.prototype.initialize=function(a){if((typeof document.getElementsByTagName)=='undefined')return;if(!document.body){var b=this;window.setTimeout(function(){if(b){b.initialize(true);b=null}},25);return}if((typeof document.body.getAttribute)=='undefined')return;this.gatherImages()};b3rtImageDimensionsFixer.prototype.gatherImages=function(){var a=document.getElementsByTagName('img');if(a&&a.length>0){for(var i=0;i<a.length;i++){this.imageList[i]={'originalImage':a[i],'checkImage':new Image()}}for(var i=0;i<this.imageList.length;i++){this.loadCheckImage(i)}}};b3rtImageDimensionsFixer.prototype.loadCheckImage=function(a){var b=this;this.imageList[a].checkImage.onload=function(){if(b){b.imageList[a].checkImage.onload=null;b.imageList[a].checkImage.onerror=null;b.compareDimensions(a,false);b=null}};this.imageList[a].checkImage.onerror=function(){if(b){b.imageList[a].checkImage.onload=null;b.imageList[a].checkImage.onerror=null;b.compareDimensions(a,true);b=null}};this.imageList[a].checkImage.src=this.imageList[a].originalImage.src};b3rtImageDimensionsFixer.prototype.compareDimensions=function(a,b){if(!b){var c={'width':-1,'height':-1};var d={'width':-1,'height':-1};var e=false;var f=parseInt(this.imageList[a].originalImage.getAttribute('width',2));if(!isNaN(f))c.width=f;var g=parseInt(this.imageList[a].originalImage.getAttribute('height',2));if(!isNaN(g))c.height=g;f=parseInt(this.imageList[a].checkImage.width);if(!isNaN(f))d.width=f;g=parseInt(this.imageList[a].checkImage.height);if(!isNaN(g))d.height=g;if((c.width>-1)&&(c.width!=d.width))e=true;if((c.height>-1)&&(c.height!=d.height))e=true;if(e)this.callbackFunction(this.imageList[a].originalImage,c,d)}this.imageList[a].originalImage=null;this.imageList[a].checkImage=null;this.imageList[a]=null;var h=true;for(var i=0;i<this.imageList.length;i++){if(this.imageList[i]){h=false;break}}};
