﻿// För att kunna använda "_blank" även i ett XHTML 1.0 Strict-dokument.
// Ange en hyperlänk (anchor) som ska öppnas i ett nytt fönster på följande sätt <a rel=”external” href=”http://blahblah.com”>new link</a>. På motsvarande sätt i formulär-tag.
// Källa: http://www.sitepoint.com/article/standards-compliant-world/3

function externalLinks() {
// Kolla om JavaScript, eller rättare getElementsByTagName, fungerar. 
// Om inte, ingen stor skada skedd. Länkar öppnas i samma fönster.
 if (!document.getElementsByTagName) return;
 //Deklarera array av länkar:
 var anchors = document.getElementsByTagName("a");
 //Länkar:
 for (var i=0; i<anchors.length; i++) {
   var anchor = anchors[i];
   if (anchor.getAttribute("href") &&
       anchor.getAttribute("rel") == "external") {
     anchor.target = "_blank";
     }
 }
}
function setFormTarget(strTarget) {
//Funktionen setFormTarget() kallas på i ASP.NET-koden när den behövs som OnClientClick="setFormTarget('_blank');" i kanppar. Används dock inte efter beslut av beställaren 2006-11-17.
// Kolla om JavaScript, eller rättare getElementsByTagName, fungerar. 
// Om inte, ingen stor skada skedd. Var formuläret öppnas ändras inte.
 if (!document.getElementsByTagName) return;
//Sätt target på formuläret (samma som används i hela applikationen, eftersom form definieras i MasterPage).
//Kan inte använda rel="external", eftersom XHTML 1.0 Stict inte tillåter det attributet i element av typen form.
//Möjliga värden _blank = nytt fönster, _self = i samma fönster.
 //Deklarera array av formulär
 var forms = document.getElementsByTagName("form");
//Loopa igenom array:en av formulär
for(var i = 0; i < forms.length; i++)
 {
   var form = forms[i];
   if(form.getAttribute("action"))
   {
      form.target = strTarget;
   }
 } 
}
function doWindowLoad() {
    document.onkeydown = displayAccessKeys; // <=== OBS! Denna rad ska vara aktiv i skarp version! Kan hända den är utkommenterad av debugg-skäl. ===
    externalLinks();
}
//Se till att funktionen som fixar externa länkar och funktion som visar/döljer snabbtangenter (AccessKeys) körs när sidan laddas.
window.onload = doWindowLoad;
