﻿// Tilføjer vare med valgt størrelse til indkøbskurven.
function doAddToBasket()
{
  //The name of input element containing the stock number
  var stockNr = 'antalILager';
  //The name of the input element containing the chosen number
  var curNumber = 'number';

  var drp = document.getElementById('sizedropdown');
  if (!drp) return;
  var recid = drp[drp.selectedIndex].value;
  var num= document.getElementById('number').value;
  AddToBasket(recid, num);

  if (document.location.href.indexOf('debug')>-1) alert('attempted to add ' + num + ' x ' + recid + ' to basket?!');
}

// Tilføjer vare til ønskeliste
function addToWishList() {
  var drp = document.getElementById('sizedropdown');
  if (!drp) return;
  var vare = drp[drp.selectedIndex].value;
  var vareFelt = AJS.$('idVare');
  vareFelt.value= vare;
  var wishLsForm = AJS.$('Axel_tilfoej_slet_fra_oenskeliste');
  wishLsForm.submit();
}

// Viser størrelser
function showSizes(recordid) {
  document.getElementById(recordid).style.display = 'block'; 
}

// skjuler størrelser
function hideSizes(recordid) {
  document.getElementById(recordid).style.display = 'none'; 
}



// --- Flyt  snippet fra sitelayout til sidelayout ----------------------------------------- //

function MoveSnippet(sCon, nsCon)
{
var SnippetContainer = document.getElementById(sCon);
var NewSnippetContainer = document.getElementById(nsCon);

   if (SnippetContainer && NewSnippetContainer)
   {
     Tangora.DOM.MoveElement(sCon, nsCon);
     SnippetContainer.style.display = "block";
   }
}

function LoadHandler()
{
  MoveSnippet('SnippetContainer1','NewSnippetContainer1');
  MoveSnippet('SnippetContainer2','NewSnippetContainer2');
  MoveSnippet('SnippetContainer3','NewSnippetContainer3');
  MoveSnippet('SnippetContainer4','NewSnippetContainer4');
  MoveSnippet('SnippetContainer5','NewSnippetContainer5');
  MoveSnippet('SnippetContainer6','NewSnippetContainer6');
  MoveSnippet('SnippetContainer7','NewSnippetContainer7');
  MoveSnippet('SnippetContainer8','NewSnippetContainer8');
  MoveSnippet('SnippetContainer9','NewSnippetContainer9');
  MoveSnippet('SnippetContainer10','NewSnippetContainer10');
  MoveSnippet('SnippetContainer11','NewSnippetContainer11');
}



// --- QUINT ------------------------------------------------------------------------------------------------------------------------------------//

function addToQuintWishList() {
  var drp = document.getElementById('sizedropdown');
  if (!drp) return;
  var vare = drp[drp.selectedIndex].value;
  var vareFelt = AJS.$('idVare');
  vareFelt.value= vare;
  //var url = 'http://axel.tangora.net/page101.aspx?Bruger=' + brugerID + '&Vare=' + vare;
  var wishLsForm = AJS.$('Axel_tilfoej_slet_fra_oenskeliste');
  wishLsForm.submit();
}



// --- menu javascript til baggrundsmarkering ved menuvalg ------------------------//

var menuLocation = "";

function activeMenuHandler(){
	// check om der skal bruges innerText eller textContent (IE/FF)
  var hasInnerText = (document.getElementsByTagName("body")[0].innerText != undefined) ? true : false;

  var activeMenuLocationURL = location.href;
  var host = location.host.toString();
  var hostLength = host.length + 7; // 7=http:// + hostdomæne.

  // hvis vi er på en detaljeside, vil der være tilføjet et # samt menulinket på det aktuelle menupunkt
  var menuParam = location.hash; 
  if(menuParam != ""){
    // fjerner #. (der er kun brug for selve linket) 
    // Aktiveres når der er klik på produktdetalje.
    var activeMenuLocation = menuParam.substr(1, menuParam.length); 
  }
  else{
    // trækker den aktuelle menu ud af URL'en. Ved klik på menupunkt.
    var activeMenuLocation = location.pathname + location.search;
  }  

  // henter alle menuer (den første [0] er topnavigationen)
  var menus = document.getElementsByTagName('ul');

  var activeMenu = null;
  var brands = activeMenuLocation.substr(1,6);

  if(brands == 'brands'){ // checker om det er brandmenuen
    activeMenu = menus[2]; 
  }
  else{
    activeMenu = menus[1]; // ellers er det typemenuen
  }

  // henter alle menupunkter fra den aktive menudel 
  var links = activeMenu.getElementsByTagName('li');

  // går alle links igennem for at finde frem til hvilket menupunkt, der skal highlightes.
  var link = null;
  for(var i=0; i<links.length; i++){
    link = links[i].firstChild.toString(); // firstChild = <a...>
    thelink = link.substr(hostLength, link.length); // henter alt efter http://www.quint.dk
    if(thelink == activeMenuLocation){ // checker om linket er det aktive
    	if(!hasInnerText){
    		var outletCheck = links[i].textContent; // FF
    	}
    	else{
    		var outletCheck = links[i].innerText; // IE
    	}
    	if(outletCheck == 'Outlet'){
    		var actClass = 'activeMenuOutlet';
    	}
    	if(!hasInnerText){
    		var udsalgCheck = links[i].textContent; // FF
    	}
    	else{
    		var udsalgCheck = links[i].innerText; // IE
    	}
    	if(udsalgCheck == 'Udsalg'){
    		var actClass = 'activeMenuUdsalg';
    	}
    	else{
    		var actClass = 'activeMenu';
    	}
   	
	   if(links[i].className != "")
	    links[i].className += " " + actClass; // HER SKAL FJERNES EN KOMMENTAR FOR AT AKTIVERE
	   else
	    links[i].className = actClass;

	var menuLocation = "#" + thelink; // menuLocation bruges til at opdatere alle produktdeltaljelinks, så menupunktet også er aktivt, når der klikkes på et produkt.
    }
  }

  // produktDiv er den DIV, som har fået id "produkter" i sidelayouts
  // pt. er det: 
  // "Quint v3 - brand-detaljeoversigt"
  // "Quint v3 - produkt-oversigt"
  // "Axel v3 - brand-detaljeoversigt"
  // "Axel v3 - produkt-oversigt"
  var produktDiv = document.getElementById('produkter');

  if(produktDiv != null && menuLocation != undefined){
	  // alle links i DIV med id "produkter" tilføjet den aktuelle menuLocation
	  var produktDivLinks = produktDiv.getElementsByTagName('a');
	  for(var i = 0; i<produktDivLinks.length; i++){
	    produktDivLinks[i].href += menuLocation;
	  }
  }
} // slut activeMenuHandler


// når siden er loadet markeres det menupunkt, som er det aktive
Tangora.Events.AddHandler(window, 'onload', activeMenuHandler);











// --- INTRANET -------------------------------------------------------------------------------------------------------------------------------//

//------------ Viser dato på intranet ----------------------------------------------//

  function GetDay(intDay){
    var DayArray = new Array("Søndag", "Mandag", "Tirsdag", "Onsdag", "Torsdag", "Fredag", "Lørdag");
    return DayArray[intDay];
    }

  function GetMonth(intMonth){
    var MonthArray = new Array("Januar", "Februar", "Marts", "April", "Maj", "Juni", "Juli", "August", "September", "Oktober", "November", "December");
    return MonthArray[intMonth]; 	  	 
    }
  function getDateStrWithDOW(){
    var today = new Date();
    var year = today.getYear();
    if(year<1000) year+=1900;
    var todayStr = GetDay(today.getDay()) + " ";
    todayStr += "den " + today.getDate() + ". " + GetMonth(today.getMonth());
    todayStr += " " + year;
    return todayStr;
    }

 // --- Slet standart indhold på input felt ved klik --------------------------------------//

function clearText(thefield){
  if (thefield.defaultValue==thefield.value)
  thefield.value = "";
} 

function LoadRelatedProducts(items, pageId, targetId)
{
  var loader = document.createElement("div");
  loader.id = "loader";
  loader.innerHTML = "<img src='/media/axel/ajax-loader.gif' /> Henter relaterede varer...";
  var target = document.getElementById(targetId);
  if(target) target.appendChild(loader);

  var url = "/page" + pageId + ".aspx?itemfilter=" + encodeURIComponent(items);
  AjaxLoadRelatedProducts(url, RenderResult, targetId);
}

function RenderResult(html, targetId)
{
  var target = document.getElementById(targetId);
  target.innerHTML = html;
}

function AjaxLoadRelatedProducts(url, callback, targetId)
{
  	var storage = tsAjax.createInstance("bgsave");
	storage.method="post";
	storage.TargetId = targetId;

	storage.CallbackFunction = callback;

	tsAjax.innerHTML(url,"tsAjax","bgsave",null,null,RelatedProductsCallback);
}

function RelatedProductsCallback()
{
	if (this.ajaxObj!=null) {
		if (this.ajaxObj.readyState==4) {
			var RT = this.ajaxObj.responseText;

			this.CallbackFunction(RT, this.TargetId);
											
			if (this.statusElement!=null) {this.statusElement.innerHTML = this.statusText_Done;}
			if (this.resultElement!=null) {this.resultElement.innerHTML = RT}
		} else {
		   }			
	} else {
		var RT = this.IF.innerHTML;
		if (this.statusElement!=null) {this.statusElement.innerHTML = this.statusText_Done;}
		if (this.resultElement!=null) {this.resultElement.innerHTML = RT}
	}
}
//Rotate images
function initImageRotator()
{
  var loader = document.createElement("div");
  loader.id = "loader";
  loader.style.display = "none";
  document.getElementsByTagName("body")[0].appendChild(loader);

  var wrap = document.getElementById("produkter");
  if(!wrap) return;

  var imgs = wrap.getElementsByTagName("img");

  for(var i = 0; i < imgs.length; i++)
  {
    imgs[i].org = imgs[i].src;
    imgs[i].imgArray = new Array();
    imgs[i].timer = "0";
    imgs[i].index = 0;
    imgs[i].mouseOver = false;
    imgs[i].onmouseover = masterImageMouseOver;
    imgs[i].onmouseout = masterImageMouseOut;    
  }
}
Tangora.Events.AddHandler(window,"onload",initImageRotator);

function masterImageMouseOver()
{
  this.mouseOver = true;

  if(this.imgArray.length == 0)
  {
    var loader = document.getElementById("loader");
    loader.innerHTML = "";

    var base = this.src.substring(0, this.src.lastIndexOf("_"));
     
    for(var i = 1; i < 4; i++)
    {
	var img = document.createElement("img");
	img.onload = imgLoaded;
	img.onerror = imgError;
	img.master = this;
	img.src = base + "_" + i + ".jpg";
	loader.appendChild(img);
    }
  }
  else if(this.mouseOver)
    rotateImage(this);
}

function imgLoaded()
{
  this.master.imgArray.push(this.src);
  if(this.master.imgArray.length >= 3)
    rotateImage(this.master);
}
function imgError()
{
  this.master.imgArray.push(null);
  if(this.master.imgArray.length >= 3)
    rotateImage(this.master);
}
function masterImageMouseOut()
{
  try
  {
  this.mouseOver = false;
  window.clearTimeout(this.timer);
  this.timer = "";
  this.src = this.org;
  }
  catch(ex)
  {
  }
}

function rotateTimer()
{
  window.clearTimeout(this.timer);
  var that = this;
 
  this.timer = window.setTimeout(function(){rotateImage(that);},1000);
}
function rotateImage(img)
{
  if(!img.mouseOver) return;

  try
  {
  var u = img.imgArray.length;
  var i = parseInt(img.index)+1;
  if(i >= u) i = 0;
  
  var nImg = null;
  img.index = i;

  if(img.imgArray[i] != null)
  {
    img.src = img.imgArray[i];
    rotateTimer.call(img);
  }
  else
    rotateImage(img);
  }
  catch(ex)
  {}
}

var GenericAjaxLoader = function(page)
{
  this.CallbackHandler = null;
  this.Load = function(sender)
  {
    var rnd = Math.random(10).toString().replace(".","");
    var url = location.protocol + "//" + location.host + "/" + page;
    if(page.indexOf("?") == -1)
	url += "?";
    else url += "&";
	url += "rndkey=" + rnd;
		
    var loader = tsAjax.createInstance(rnd);
    loader.method="get";
    loader.Sender = sender

    if(this.CallbackHandler != null) loader.callbackHandler = this.CallbackHandler;
    if(this.CallbackHandler != null) tsAjax.innerHTML(url,"tsAjax",rnd,null,null,this.GenericCallbackHandler);
    else return tsAjax.innerHTML(url,null,rnd,null,null,null);
  }

  this.GenericCallbackHandler = function()
  {
    if (this.ajaxObj!=null) {
	if (this.ajaxObj.readyState==4) {
	  var RT = this.ajaxObj.responseText;
	  this.callbackHandler.call(this.Sender,RT);
											
	  if (this.statusElement!=null) {this.statusElement.innerHTML = this.statusText_Done;}
	  if (this.resultElement!=null) {this.resultElement.innerHTML = RT}
	  } else {
	}			
    } else {
	var RT = this.IF.innerHTML;
	if (this.statusElement!=null) {this.statusElement.innerHTML = this.statusText_Done;}
	if (this.resultElement!=null) {this.resultElement.innerHTML = RT}
    }
  }
}

function popularItemsCallback(RT)
{
  this.innerHTML = RT;
}

function MarkActiveMenu(brandId)
{
	var activeElm = document.getElementById("brand" + brandId);

	if(activeElm)
	{
		var className = "activeMenu";

		if(activeElm.className && activeElm.className != "")
		  className = " " + className;
		else if(activeElm.className && activeElm.className.indexOf("activeMenu")>-1)
		  className = "";

		if(className != "")
		  activeElm.className += className;
	}	
}
function MarkOutletMenu()
{
  var outletElm = Tangora.DOM.GetCollectionByClassName("maincell", "li", "outlet")[0];

  if(outletElm)
  {
    var className = "activeMenu";

    if(outletElm.className && outletElm.className.indexOf("activeMenu")>-1)
	className = " " + className;
    
    outletElm.className = className;
  }
}

function LoadRatings(targetId, pageId, itemId, color)
{
  var url = "/page" + pageId + ".aspx?item=" + itemId + "&color=" + color;
  var gal = new GenericAjaxLoader(url);
  gal.CallbackHandler = ratingCallback;  

  var target = document.getElementById(targetId);
  
  gal.Load(target);
}

function ratingCallback(RT)
{
  this.innerHTML = RT;
}

//Infoboks
function getMiniBasketSum()
{
  var sum = 0;
  var basket = document.getElementById("MiniBasketDiv");
  var divs = basket.getElementsByTagName("div");
  if(divs.length > 0)
    sum = divs[1].innerHTML.replace(".","").replace(",",".");

  return sum;
}
var InfoboxHandler = function(layerId)
{
  var _timerId = "";
  var _layer = null;

  this.Init = function()
  {
    _layer = document.getElementById(layerId);
  }

  this.Show = function()
  {
    if(_timerId == "")
    {
	var sum = (500 - getMiniBasketSum());
	var sumCont = document.getElementById("sum-container");
	   var sumHeader = $("h5.discount")[0];
	if(sum < 0)
	  sumHeader.style.display = "none";
	else
	  sumCont.innerHTML = sum;

	$(_layer).slideDown('slow'); //.style.display = "block";
	this.SetHideTimer(5000);
    }
  }
  this.SetHideTimer = function(secs)
  {
    this.ClearTimer();
    var that = this;
    _timerId = window.setTimeout(function(){that.Hide.call(that);}, secs);
  }
  this.Hide = function()
  {
    this.ClearTimer();
    $(_layer).slideUp('fast'); //.style.display = "none";
  }
  this.ClearTimer = function()
  {
    window.clearTimeout(_timerId);
    _timerId = "";  
  }
  
}
var infobox;
function initInfobox()
{
  var loc = document.location.href;

  if(loc.indexOf("test") > -1)
  {
    infobox= new InfoboxHandler("basket-overlay");
    infobox.Init();

    var overlay = document.getElementById("basket-overlay");
    overlay .onmouseover = overlayMouseOverHandler;
    overlay .onmouseout = overlayMouseOutHandler;

    var basket = document.getElementById("basket-wrapper");
    basket.onmouseover = basketMouseOverHandler;
    basket.onmouseout = basketMouseOutHandler;

    var shopMore = document.getElementById("shop-more");
    shopMore.onclick = function(){ infobox.Hide(); return false; };

    var checkOut = document.getElementById("go-to-basket");
    checkOut.onclick = CheckoutClick;
  }
}
Tangora.Events.AddHandler(window,"onload",initInfobox);
function overlayMouseOverHandler(e)
{
  infobox.ClearTimer();
}
function overlayMouseOutHandler(e)
{
  infobox.SetHideTimer(500);
}
function basketMouseOverHandler(e)
{
  infobox.ClearTimer();
  infobox.Show();
}
function basketMouseOutHandler(e)
{
  infobox.SetHideTimer(100);
}
