﻿/// <reference name="MicrosoftAjax.js"/>

Type.registerNamespace("nl.materieelmarkt.Online.Extensions");

nl.materieelmarkt.Online.Extensions.Clickout = function(element) {
  nl.materieelmarkt.Online.Extensions.Clickout.initializeBase(this, [element]);
}

nl.materieelmarkt.Online.Extensions.Clickout.prototype = {
  initialize: function() {
    nl.materieelmarkt.Online.Extensions.Clickout.callBaseMethod(this, 'initialize');
    var links=this.get_element().getElementsByTagName("a");
    var home=$get("Logo").href;
    for (var i=0; i<links.length; i++) {
      if (links[i].href && links[i].href.startsWith("http") &&
          !links[i].href.startsWith(home) && !links[i].onclick) {
        links[i].onclick=this.clickout;
      }
    }
  },
  dispose: function() {        
    //Add custom dispose actions here
    nl.materieelmarkt.Online.Extensions.Clickout.callBaseMethod(this, 'dispose');
  },
  clickout: nl$materieelmarkt$Online$Extensions$Clickout$clickout
}

function nl$materieelmarkt$Online$Extensions$Clickout$clickout() {
  try {
    var banidt=this.className;
    if (banidt && banidt.startsWith("banner-")) {
      banidt=banidt.substring(7);
    }
    else {
      banidt="";
    }
    window.open(
      String.format("{0}Clickout.aspx?url={1}&banidt={2}",
      $get("Logo").href,
      escape(this.href),
      banidt));
    return window==null;
  }
  catch (e) {
    return true;
  }
}

var nl$materieelmarkt$Online$Extensions$Clickout$appHome;

nl.materieelmarkt.Online.Extensions.Clickout.registerClass('nl.materieelmarkt.Online.Extensions.Clickout', Sys.UI.Behavior);

if (typeof(Sys) !== 'undefined') Sys.Application.notifyScriptLoaded();
