window.addEvents({
  'domready': function ()
  {
    twjs = new Asset.javascript( 'http://platform.twitter.com/anywhere.js?id='+TWITTER_APIKEY, {
      async: 'async',
      events: { load: initTwitterHovercards }
    });
    
    projectsOverlay();
    externalLinks();
  }
});

var externalLinks = function()
{
    $$('a').each(function(item,index){
      if(item.get('href').substr(0,5) == "http:"){
          item.addEvent("click",function(event){
              window.open(item.get('href'));
              event.preventDefault();
          });
      }  
    });
};

var projectsOverlay = function ()
{
  $$('ul#projects li').each( addOverlay );
};

var addOverlay = function( project )
{
  iHateTransparentBoxes = new Element('div',{
    styles: {
      'opacity':    0.5,
      'background': '#000',
      'position':   'absolute',
      'width':      300,
      'height':     59,
      'top':        110,
      'html':       '&nbsp;',
      'z-index':    10
    }
  });
  
  project.adopt(iHateTransparentBoxes);
  
  project.setStyle('cursor','pointer');
  
  project.getElement('hgroup').setStyles({
    'background': 'transparent url(/images/chequerboard.gif) repeat left top',
    'position':   'absolute',
    'top':        110,
    'left':       0,
    'z-index':    20,
    'width':      280,
    'height':     39
  });

  project.addEvents({
    'mouseenter':     function ()
    {
      try{ this.getElement('hgroup a').addClass('over'); }
      catch(e){ };
    },
    'mouseleave':     function ()
    {
      try{ this.getElement('hgroup a').removeClass('over'); }
      catch(e){ };
    },
    'click':          function ()
    {
      try{ window.location = this.getElement('hgroup a').get('href'); }
      catch(e){ };
    } 
  });

  project.getElement('img').setStyle('margin-bottom',20);
  
};

var initTwitterHovercards = function ()
{
  twttr.anywhere( function (T) {
    T("a.twitter").hovercards(
      {
        expanded:     true,
        linkifyUsers: false,
        username: function(node)
        {
          un = $(node).get('href').replace(/http:\/\/(www\.)?twitter\.com\//,'');
          return un;
        }
      }
    );
    T("section.tweet blockquote").linkifyUsers();
  });
};
