// flessepostvoorziening

var re_ws = /\s+/;
	  
var mt_protocol = "ma";
mt_protocol += "ilto";
mt_protocol += ":";
var post_pseudo_protocol = "flesje:";
var post_foutmelding = "Gezonken flesje";  // kun je aanpassen als je wilt!

function flessepost()
{
  for ( var i = 0; i < document.links.length; ++i )
  {
    var pr = document.links[ i ].protocol;
    if ( ! (    pr == post_pseudo_protocol 
             || pr == "mailto:"
             || pr == "file:" 
             || pr == "http:"              ) ) continue;

    var loc_href = document.links[ i ].href;
			
    if ( ! (    pr == post_pseudo_protocol
             || pr == "mailto:"            ) ) 
    {
      // netscape ziet de post: link als een gewone link en flikkert er een pad voor :-(
      // ik moet dan het gedeelte na de laatste / pakken:
      var pos = loc_href.lastIndexOf( "/" + post_pseudo_protocol );
      if ( pos < 0 ) continue; 
      loc_href = loc_href.substr( pos + 1 );
      pr = post_pseudo_protocol;  // alsnog
    }
			
    // pr is nu mailto: of post_pseudo_protocol
			
    var adr = unescape( loc_href.substr( pr.length ) );
    var delen = adr.split( re_ws );
    // bij voorloopspaties geeft NS een eerste leeg element:
    if ( delen.length && delen[                0 ].length < 1 ) delen.shift();
    if ( delen.length && delen[ delen.length - 1 ].length < 1 ) delen.  pop();
    if ( delen.length < 3 )
    {
      if ( pr == post_pseudo_protocol ) alert ( post_foutmelding + ": " + adr );
      // géén melding bij mailto: - link klopt dan wsch gewoon, doe niets.
      continue;
    }   
    var adres = "";
    for ( var j = 0; j < delen.length; ++j ) 
    {
      adres += ( j == 0 ? "" : j == 1 ? "@" : "." ) + delen[ j ];
    }  
    document.links[ i ].href = mt_protocol + adres; 
    // bij escape( adres ) geeft Netscape %40 ipv @ in status; link werkt wel. 
  }
}

