// This file is for opening new windows for external links
//
//
var external = {
  newWin: true, // open link in new window
  prepareLinks: function() {
    if (!document.getElementsByTagName) {
      return;
    }
    var rootHost = external.getHost(document.location.href);
    var links = document.getElementsByTagName('a');
    for (var i = 0; i < links.length; i++) {
      var linkHost = external.getHost(links[i].href);
			//alert(linkHost);
      if ( (linkHost != rootHost) && (linkHost.indexOf("facebook") == -1) && (linkHost.indexOf("digg") == -1) && (linkHost.indexOf("delicious")==-1) ) {
				// We ONLY add the openNewWin function to the links which have urls at different hosts
        external.addEvent(links[i], 'click', external.openNewWin);
      }
    }
  },
  openNewWin: function(event) {
    var htmlElement = document.getElementsByTagName('html')[0];
    // check attributes and only track items with 'rel' attribute set
    /*if (!this.getAttribute('rel') || !htmlElement.getAttribute('xml:lang')) {
      return;
    }*/
    // send external to Urchin
    /*if (window.urchinTracker) {
      var language = htmlElement.getAttribute('xml:lang');
      var rel = this.getAttribute('rel');
      var path = '/tracking/' + language + '/' + rel;
      urchinTracker(path);
    }*/
    // open link in new window
    if (external.newWin) {
      external.stopEvent(event);
      window.open(this.getAttribute('href'));
    }
  },
  addEvent: function(obj, type, fn) {
    if (obj.addEventListener) {
      obj.addEventListener(type, fn, false);
    } else if (obj.attachEvent) {
      obj['e'+type+fn] = fn;
      obj[type+fn] = function() {
        obj['e'+type+fn](window.event);
      }
      obj.attachEvent('on'+type, obj[type+fn]);
    }
  },
  stopEvent: function(event) {
    if (event.preventDefault) {
      event.preventDefault();
      event.stopPropagation();
    } else {
      event.returnValue = false;
      event.cancelBubble = true;
    }
  },
  getHost: function(url) {
    var host = url.toLowerCase();
    if (host.indexOf('http://') >= 0) {
      host = host.substring(7, host.length);
    }
    return host.substring(0, host.indexOf('/'));
  }
}

external.addEvent(window, 'load', external.prepareLinks);
