var d = document;
var metaversum = {

  init : function(){
    this.makeanchors();
    this.nicearchive();
    this.makemail();
  },

  create : function(args){
    // required: nodeName, parentNode
    // optional: id, innerHTML, className, href
    var e = d.createElement(args.nodeName);
    args.parentNode.appendChild(e);
    if (args.id !== undefined) e.id = args.id;
    if (args.innerHTML !== undefined) e.innerHTML = args.innerHTML;
    if (args.className !== undefined) e.className = args.className;
    if (args.href !== undefined) e.href = args.href;
    return e;
  },

 makeanchors : function(){
    this.all_anchors = $$('.anchor');
    for(var i=0; i<this.all_anchors.length;i++){
//      alert(this.all_anchors[i].innerHTML);
      this.all_anchors[i].id = 'pagesub'+i;
      var l = this.create({nodeName: 'LI',parentNode: $('anchors')});
      var c = this.all_anchors[i].nodeName;
      this.create({
        nodeName: 'A',
        parentNode: l,
        href: '#pagesub'+i,
        className: 'go_'+c,
        innerHTML: this.all_anchors[i].innerHTML
      });
    }
    if (this.all_anchors.length === 0) $('sidebar').removeChild($('anchors'));
  },

 nicearchive : function(){
    this.all_subs = $$('#sub a');
    for(var i=0; i<this.all_subs.length;i++){
//      alert(this.all_subs[i].innerHTML);
      var c = this.all_subs[i].innerHTML;
      if(c.indexOf('20') == 0){ 
        // this is a bit of a hack if the link is an archive link…
        this.all_subs[i].innerHTML = "Milestones "+c;
      }
    }
  },

 makemail : function(){
    this.all_mailadr = $$('A.wp-caption-dd');
    for(var i=0; i<this.all_mailadr.length;i++){
      var the_adr = this.all_mailadr[i].innerHTML.replace(/\(at\)/, '@');
      this.all_mailadr[i].innerHTML = the_adr;
      this.all_mailadr[i].href = "mailto:"+the_adr+"?subject=web contact&body="+location.href;
      
    }
  }
};

Event.observe(window, 'load', function() {
  metaversum.init();
});
