// fav2png_z7.js

// usage:
//  <script type="text/javascript">writeFavImg('<DOMAIN>');</script>
//  <noscript><img height='16px' width='16px' src='http://www.sectorprime.com/cgi-bin/fav2png_z7.pl?fav=<DOMAIN>'/></noscript>

// writes image tag that looks like this:
// <img class='fav2png' height='16px' width='16px' alt='<DOMAIN>' src='<OLD_CACHE>'
//  onload="fav2png(this,'<DOMAIN>')" onerror="fav2png(this,'<DOMAIN>')"/>
// so the initial image is the old cache, but this is then updated.  Looks much faster, especially on Internet Explorer.
function writeFavImg(domain) {
 var cachedImg="http://www.sectorprime.com/img_cache/"+domain.replace(/[\.-]/g,'_').replace(/__/g,'_')+".png";
 document.write("<img class='fav2png' height='16px' width='16px' alt='"+domain+"' src='"+cachedImg+"' onload=\"fav2png(this,'"+domain+"')\" onerror=\"fav2png(this,'"+domain+"')\"/>");
}

// writes image tag (see above) in a hyperlink
function writeFavLink(domain) {
 document.write("<a class='fav2png' href='http://"+domain+"/'>");
 writeFavImg(domain);
 document.write("</a>");
}

// updates image to use latest fav2png image
function fav2png(img,domain) {
 var fav2pngSrc="http://www.sectorprime.com/cgi-bin/fav2png_z7.pl?fav="+domain;
 if(img.src != fav2pngSrc) {
  img.src=fav2pngSrc;
 }
}
