/* Cufon settings */
//Cufon.replace(".arialShadowBtn", {
//    textShadow: '1px 1px rgba(0, 0, 0, 0.2)'
//});

// jScrollPane - v2.0.0beta11 - 2011-05-02 <http://jscrollpane.kelvinluck.com/>  Copyright (c) 2010 Kelvin Luck Dual licensed under the MIT and GPL licenses.
; (function (b, a, c) { b.fn.jScrollPane = function (e) { function d(D, O) { var az, Q = this, Y, ak, v, am, T, Z, y, q, aA, aF, av, i, I, h, j, aa, U, aq, X, t, A, ar, af, an, G, l, au, ay, x, aw, aI, f, L, aj = true, P = true, aH = false, k = false, ap = D.clone(false, false).empty(), ac = b.fn.mwheelIntent ? "mwheelIntent.jsp" : "mousewheel.jsp"; aI = D.css("paddingTop") + " " + D.css("paddingRight") + " " + D.css("paddingBottom") + " " + D.css("paddingLeft"); f = (parseInt(D.css("paddingLeft"), 10) || 0) + (parseInt(D.css("paddingRight"), 10) || 0); function at(aR) { var aM, aO, aN, aK, aJ, aQ, aP = false, aL = false; az = aR; if (Y === c) { aJ = D.scrollTop(); aQ = D.scrollLeft(); D.css({ overflow: "hidden", padding: 0 }); ak = D.innerWidth() + f; v = D.innerHeight(); D.width(ak); Y = b('<div class="jspPane"/>').css("padding", aI).append(D.children()); am = b('<div class="jspContainer"/>').css({ width: ak + "px", height: v + "px" }).append(Y).appendTo(D) } else { D.css("width", ""); aP = az.stickToBottom && K(); aL = az.stickToRight && B(); aK = D.innerWidth() + f != ak || D.outerHeight() != v; if (aK) { ak = D.innerWidth() + f; v = D.innerHeight(); am.css({ width: ak + "px", height: v + "px" }) } if (!aK && L == T && Y.outerHeight() == Z) { D.width(ak); return } L = T; Y.css("width", ""); D.width(ak); am.find(">.jspVerticalBar,>.jspHorizontalBar").remove().end() } Y.css("overflow", "auto"); if (aR.contentWidth) { T = aR.contentWidth } else { T = Y[0].scrollWidth } Z = Y[0].scrollHeight; Y.css("overflow", ""); y = T / ak; q = Z / v; aA = q > 1; aF = y > 1; if (!(aF || aA)) { D.removeClass("jspScrollable"); Y.css({ top: 0, width: am.width() - f }); n(); E(); R(); w(); ai() } else { D.addClass("jspScrollable"); aM = az.maintainPosition && (I || aa); if (aM) { aO = aD(); aN = aB() } aG(); z(); F(); if (aM) { N(aL ? (T - ak) : aO, false); M(aP ? (Z - v) : aN, false) } J(); ag(); ao(); if (az.enableKeyboardNavigation) { S() } if (az.clickOnTrack) { p() } C(); if (az.hijackInternalLinks) { m() } } if (az.autoReinitialise && !aw) { aw = setInterval(function () { at(az) }, az.autoReinitialiseDelay) } else { if (!az.autoReinitialise && aw) { clearInterval(aw) } } aJ && D.scrollTop(0) && M(aJ, false); aQ && D.scrollLeft(0) && N(aQ, false); D.trigger("jsp-initialised", [aF || aA]) } function aG() { if (aA) { am.append(b('<div class="jspVerticalBar"/>').append(b('<div class="jspCap jspCapTop"/>'), b('<div class="jspTrack"/>').append(b('<div class="jspDrag"/>').append(b('<div class="jspDragTop"/>'), b('<div class="jspDragBottom"/>'))), b('<div class="jspCap jspCapBottom"/>'))); U = am.find(">.jspVerticalBar"); aq = U.find(">.jspTrack"); av = aq.find(">.jspDrag"); if (az.showArrows) { ar = b('<a class="jspArrow jspArrowUp"/>').bind("mousedown.jsp", aE(0, -1)).bind("click.jsp", aC); af = b('<a class="jspArrow jspArrowDown"/>').bind("mousedown.jsp", aE(0, 1)).bind("click.jsp", aC); if (az.arrowScrollOnHover) { ar.bind("mouseover.jsp", aE(0, -1, ar)); af.bind("mouseover.jsp", aE(0, 1, af)) } al(aq, az.verticalArrowPositions, ar, af) } t = v; am.find(">.jspVerticalBar>.jspCap:visible,>.jspVerticalBar>.jspArrow").each(function () { t -= b(this).outerHeight() }); av.hover(function () { av.addClass("jspHover") }, function () { av.removeClass("jspHover") }).bind("mousedown.jsp", function (aJ) { b("html").bind("dragstart.jsp selectstart.jsp", aC); av.addClass("jspActive"); var s = aJ.pageY - av.position().top; b("html").bind("mousemove.jsp", function (aK) { V(aK.pageY - s, false) }).bind("mouseup.jsp mouseleave.jsp", ax); return false }); o() } } function o() { aq.height(t + "px"); I = 0; X = az.verticalGutter + aq.outerWidth(); Y.width(ak - X - f); try { if (U.position().left === 0) { Y.css("margin-left", X + "px") } } catch (s) { } } function z() { if (aF) { am.append(b('<div class="jspHorizontalBar"/>').append(b('<div class="jspCap jspCapLeft"/>'), b('<div class="jspTrack"/>').append(b('<div class="jspDrag"/>').append(b('<div class="jspDragLeft"/>'), b('<div class="jspDragRight"/>'))), b('<div class="jspCap jspCapRight"/>'))); an = am.find(">.jspHorizontalBar"); G = an.find(">.jspTrack"); h = G.find(">.jspDrag"); if (az.showArrows) { ay = b('<a class="jspArrow jspArrowLeft"/>').bind("mousedown.jsp", aE(-1, 0)).bind("click.jsp", aC); x = b('<a class="jspArrow jspArrowRight"/>').bind("mousedown.jsp", aE(1, 0)).bind("click.jsp", aC); if (az.arrowScrollOnHover) { ay.bind("mouseover.jsp", aE(-1, 0, ay)); x.bind("mouseover.jsp", aE(1, 0, x)) } al(G, az.horizontalArrowPositions, ay, x) } h.hover(function () { h.addClass("jspHover") }, function () { h.removeClass("jspHover") }).bind("mousedown.jsp", function (aJ) { b("html").bind("dragstart.jsp selectstart.jsp", aC); h.addClass("jspActive"); var s = aJ.pageX - h.position().left; b("html").bind("mousemove.jsp", function (aK) { W(aK.pageX - s, false) }).bind("mouseup.jsp mouseleave.jsp", ax); return false }); l = am.innerWidth(); ah() } } function ah() { am.find(">.jspHorizontalBar>.jspCap:visible,>.jspHorizontalBar>.jspArrow").each(function () { l -= b(this).outerWidth() }); G.width(l + "px"); aa = 0 } function F() { if (aF && aA) { var aJ = G.outerHeight(), s = aq.outerWidth(); t -= aJ; b(an).find(">.jspCap:visible,>.jspArrow").each(function () { l += b(this).outerWidth() }); l -= s; v -= s; ak -= aJ; G.parent().append(b('<div class="jspCorner"/>').css("width", aJ + "px")); o(); ah() } if (aF) { Y.width((am.outerWidth() - f) + "px") } Z = Y.outerHeight(); q = Z / v; if (aF) { au = Math.ceil(1 / y * l); if (au > az.horizontalDragMaxWidth) { au = az.horizontalDragMaxWidth } else { if (au < az.horizontalDragMinWidth) { au = az.horizontalDragMinWidth } } h.width(au + "px"); j = l - au; ae(aa) } if (aA) { A = Math.ceil(1 / q * t); if (A > az.verticalDragMaxHeight) { A = az.verticalDragMaxHeight } else { if (A < az.verticalDragMinHeight) { A = az.verticalDragMinHeight } } av.height(A + "px"); i = t - A; ad(I) } } function al(aK, aM, aJ, s) { var aO = "before", aL = "after", aN; if (aM == "os") { aM = /Mac/.test(navigator.platform) ? "after" : "split" } if (aM == aO) { aL = aM } else { if (aM == aL) { aO = aM; aN = aJ; aJ = s; s = aN } } aK[aO](aJ)[aL](s) } function aE(aJ, s, aK) { return function () { H(aJ, s, this, aK); this.blur(); return false } } function H(aM, aL, aP, aO) { aP = b(aP).addClass("jspActive"); var aN, aK, aJ = true, s = function () { if (aM !== 0) { Q.scrollByX(aM * az.arrowButtonSpeed) } if (aL !== 0) { Q.scrollByY(aL * az.arrowButtonSpeed) } aK = setTimeout(s, aJ ? az.initialDelay : az.arrowRepeatFreq); aJ = false }; s(); aN = aO ? "mouseout.jsp" : "mouseup.jsp"; aO = aO || b("html"); aO.bind(aN, function () { aP.removeClass("jspActive"); aK && clearTimeout(aK); aK = null; aO.unbind(aN) }) } function p() { w(); if (aA) { aq.bind("mousedown.jsp", function (aO) { if (aO.originalTarget === c || aO.originalTarget == aO.currentTarget) { var aM = b(this), aP = aM.offset(), aN = aO.pageY - aP.top - I, aK, aJ = true, s = function () { var aS = aM.offset(), aT = aO.pageY - aS.top - A / 2, aQ = v * az.scrollPagePercent, aR = i * aQ / (Z - v); if (aN < 0) { if (I - aR > aT) { Q.scrollByY(-aQ) } else { V(aT) } } else { if (aN > 0) { if (I + aR < aT) { Q.scrollByY(aQ) } else { V(aT) } } else { aL(); return } } aK = setTimeout(s, aJ ? az.initialDelay : az.trackClickRepeatFreq); aJ = false }, aL = function () { aK && clearTimeout(aK); aK = null; b(document).unbind("mouseup.jsp", aL) }; s(); b(document).bind("mouseup.jsp", aL); return false } }) } if (aF) { G.bind("mousedown.jsp", function (aO) { if (aO.originalTarget === c || aO.originalTarget == aO.currentTarget) { var aM = b(this), aP = aM.offset(), aN = aO.pageX - aP.left - aa, aK, aJ = true, s = function () { var aS = aM.offset(), aT = aO.pageX - aS.left - au / 2, aQ = ak * az.scrollPagePercent, aR = j * aQ / (T - ak); if (aN < 0) { if (aa - aR > aT) { Q.scrollByX(-aQ) } else { W(aT) } } else { if (aN > 0) { if (aa + aR < aT) { Q.scrollByX(aQ) } else { W(aT) } } else { aL(); return } } aK = setTimeout(s, aJ ? az.initialDelay : az.trackClickRepeatFreq); aJ = false }, aL = function () { aK && clearTimeout(aK); aK = null; b(document).unbind("mouseup.jsp", aL) }; s(); b(document).bind("mouseup.jsp", aL); return false } }) } } function w() { if (G) { G.unbind("mousedown.jsp") } if (aq) { aq.unbind("mousedown.jsp") } } function ax() { b("html").unbind("dragstart.jsp selectstart.jsp mousemove.jsp mouseup.jsp mouseleave.jsp"); if (av) { av.removeClass("jspActive") } if (h) { h.removeClass("jspActive") } } function V(s, aJ) { if (!aA) { return } if (s < 0) { s = 0 } else { if (s > i) { s = i } } if (aJ === c) { aJ = az.animateScroll } if (aJ) { Q.animate(av, "top", s, ad) } else { av.css("top", s); ad(s) } } function ad(aJ) { if (aJ === c) { aJ = av.position().top } am.scrollTop(0); I = aJ; var aM = I === 0, aK = I == i, aL = aJ / i, s = -aL * (Z - v); if (aj != aM || aH != aK) { aj = aM; aH = aK; D.trigger("jsp-arrow-change", [aj, aH, P, k]) } u(aM, aK); Y.css("top", s); D.trigger("jsp-scroll-y", [-s, aM, aK]).trigger("scroll") } function W(aJ, s) { if (!aF) { return } if (aJ < 0) { aJ = 0 } else { if (aJ > j) { aJ = j } } if (s === c) { s = az.animateScroll } if (s) { Q.animate(h, "left", aJ, ae) } else { h.css("left", aJ); ae(aJ) } } function ae(aJ) { if (aJ === c) { aJ = h.position().left } am.scrollTop(0); aa = aJ; var aM = aa === 0, aL = aa == j, aK = aJ / j, s = -aK * (T - ak); if (P != aM || k != aL) { P = aM; k = aL; D.trigger("jsp-arrow-change", [aj, aH, P, k]) } r(aM, aL); Y.css("left", s); D.trigger("jsp-scroll-x", [-s, aM, aL]).trigger("scroll") } function u(aJ, s) { if (az.showArrows) { ar[aJ ? "addClass" : "removeClass"]("jspDisabled"); af[s ? "addClass" : "removeClass"]("jspDisabled") } } function r(aJ, s) { if (az.showArrows) { ay[aJ ? "addClass" : "removeClass"]("jspDisabled"); x[s ? "addClass" : "removeClass"]("jspDisabled") } } function M(s, aJ) { var aK = s / (Z - v); V(aK * i, aJ) } function N(aJ, s) { var aK = aJ / (T - ak); W(aK * j, s) } function ab(aW, aR, aK) { var aO, aL, aM, s = 0, aV = 0, aJ, aQ, aP, aT, aS, aU; try { aO = b(aW) } catch (aN) { return } aL = aO.outerHeight(); aM = aO.outerWidth(); am.scrollTop(0); am.scrollLeft(0); while (!aO.is(".jspPane")) { s += aO.position().top; aV += aO.position().left; aO = aO.offsetParent(); if (/^body|html$/i.test(aO[0].nodeName)) { return } } aJ = aB(); aP = aJ + v; if (s < aJ || aR) { aS = s - az.verticalGutter } else { if (s + aL > aP) { aS = s - v + aL + az.verticalGutter } } if (aS) { M(aS, aK) } aQ = aD(); aT = aQ + ak; if (aV < aQ || aR) { aU = aV - az.horizontalGutter } else { if (aV + aM > aT) { aU = aV - ak + aM + az.horizontalGutter } } if (aU) { N(aU, aK) } } function aD() { return -Y.position().left } function aB() { return -Y.position().top } function K() { var s = Z - v; return (s > 20) && (s - aB() < 10) } function B() { var s = T - ak; return (s > 20) && (s - aD() < 10) } function ag() { am.unbind(ac).bind(ac, function (aM, aN, aL, aJ) { var aK = aa, s = I; Q.scrollBy(aL * az.mouseWheelSpeed, -aJ * az.mouseWheelSpeed, false); return aK == aa && s == I }) } function n() { am.unbind(ac) } function aC() { return false } function J() { Y.find(":input,a").unbind("focus.jsp").bind("focus.jsp", function (s) { ab(s.target, false) }) } function E() { Y.find(":input,a").unbind("focus.jsp") } function S() { var s, aJ, aL = []; aF && aL.push(an[0]); aA && aL.push(U[0]); Y.focus(function () { D.focus() }); D.attr("tabindex", 0).unbind("keydown.jsp keypress.jsp").bind("keydown.jsp", function (aO) { if (aO.target !== this && !(aL.length && b(aO.target).closest(aL).length)) { return } var aN = aa, aM = I; switch (aO.keyCode) { case 40: case 38: case 34: case 32: case 33: case 39: case 37: s = aO.keyCode; aK(); break; case 35: M(Z - v); s = null; break; case 36: M(0); s = null; break } aJ = aO.keyCode == s && aN != aa || aM != I; return !aJ }).bind("keypress.jsp", function (aM) { if (aM.keyCode == s) { aK() } return !aJ }); if (az.hideFocus) { D.css("outline", "none"); if ("hideFocus" in am[0]) { D.attr("hideFocus", true) } } else { D.css("outline", ""); if ("hideFocus" in am[0]) { D.attr("hideFocus", false) } } function aK() { var aN = aa, aM = I; switch (s) { case 40: Q.scrollByY(az.keyboardSpeed, false); break; case 38: Q.scrollByY(-az.keyboardSpeed, false); break; case 34: case 32: Q.scrollByY(v * az.scrollPagePercent, false); break; case 33: Q.scrollByY(-v * az.scrollPagePercent, false); break; case 39: Q.scrollByX(az.keyboardSpeed, false); break; case 37: Q.scrollByX(-az.keyboardSpeed, false); break } aJ = aN != aa || aM != I; return aJ } } function R() { D.attr("tabindex", "-1").removeAttr("tabindex").unbind("keydown.jsp keypress.jsp") } function C() { if (location.hash && location.hash.length > 1) { var aK, aJ; try { aK = b(location.hash) } catch (s) { return } if (aK.length && Y.find(location.hash)) { if (am.scrollTop() === 0) { aJ = setInterval(function () { if (am.scrollTop() > 0) { ab(location.hash, true); b(document).scrollTop(am.position().top); clearInterval(aJ) } }, 50) } else { ab(location.hash, true); b(document).scrollTop(am.position().top) } } } } function ai() { b("a.jspHijack").unbind("click.jsp-hijack").removeClass("jspHijack") } function m() { ai(); b("a[href^=#]").addClass("jspHijack").bind("click.jsp-hijack", function () { var s = this.href.split("#"), aJ; if (s.length > 1) { aJ = s[1]; if (aJ.length > 0 && Y.find("#" + aJ).length > 0) { ab("#" + aJ, true); return false } } }) } function ao() { var aK, aJ, aM, aL, aN, s = false; am.unbind("touchstart.jsp touchmove.jsp touchend.jsp click.jsp-touchclick").bind("touchstart.jsp", function (aO) { var aP = aO.originalEvent.touches[0]; aK = aD(); aJ = aB(); aM = aP.pageX; aL = aP.pageY; aN = false; s = true }).bind("touchmove.jsp", function (aR) { if (!s) { return } var aQ = aR.originalEvent.touches[0], aP = aa, aO = I; Q.scrollTo(aK + aM - aQ.pageX, aJ + aL - aQ.pageY); aN = aN || Math.abs(aM - aQ.pageX) > 5 || Math.abs(aL - aQ.pageY) > 5; return aP == aa && aO == I }).bind("touchend.jsp", function (aO) { s = false }).bind("click.jsp-touchclick", function (aO) { if (aN) { aN = false; return false } }) } function g() { var s = aB(), aJ = aD(); D.removeClass("jspScrollable").unbind(".jsp"); D.replaceWith(ap.append(Y.children())); ap.scrollTop(s); ap.scrollLeft(aJ) } b.extend(Q, { reinitialise: function (aJ) { aJ = b.extend({}, az, aJ); at(aJ) }, scrollToElement: function (aK, aJ, s) { ab(aK, aJ, s) }, scrollTo: function (aK, s, aJ) { N(aK, aJ); M(s, aJ) }, scrollToX: function (aJ, s) { N(aJ, s) }, scrollToY: function (s, aJ) { M(s, aJ) }, scrollToPercentX: function (aJ, s) { N(aJ * (T - ak), s) }, scrollToPercentY: function (aJ, s) { M(aJ * (Z - v), s) }, scrollBy: function (aJ, s, aK) { Q.scrollByX(aJ, aK); Q.scrollByY(s, aK) }, scrollByX: function (s, aK) { s = (s >= 0) ? Math.max(s, 1) : Math.min(s, -1); var aJ = aD() + s, aL = aJ / (T - ak); W(aL * j, aK) }, scrollByY: function (s, aK) { s = (s >= 0) ? Math.max(s, 1) : Math.min(s, -1); var aJ = aB() + s, aL = aJ / (Z - v); V(aL * i, aK) }, positionDragX: function (s, aJ) { W(s, aJ) }, positionDragY: function (aJ, s) { V(aJ, s) }, animate: function (aJ, aM, s, aL) { var aK = {}; aK[aM] = s; aJ.animate(aK, { duration: az.animateDuration, ease: az.animateEase, queue: false, step: aL }) }, getContentPositionX: function () { return aD() }, getContentPositionY: function () { return aB() }, getContentWidth: function () { return T }, getContentHeight: function () { return Z }, getPercentScrolledX: function () { return aD() / (T - ak) }, getPercentScrolledY: function () { return aB() / (Z - v) }, getIsScrollableH: function () { return aF }, getIsScrollableV: function () { return aA }, getContentPane: function () { return Y }, scrollToBottom: function (s) { V(i, s) }, hijackInternalLinks: function () { m() }, destroy: function () { g() } }); at(O) } e = b.extend({}, b.fn.jScrollPane.defaults, e); b.each(["mouseWheelSpeed", "arrowButtonSpeed", "trackClickSpeed", "keyboardSpeed"], function () { e[this] = e[this] || e.speed }); return this.each(function () { var f = b(this), g = f.data("jsp"); if (g) { g.reinitialise(e) } else { g = new d(f, e); f.data("jsp", g) } }) }; b.fn.jScrollPane.defaults = { showArrows: false, maintainPosition: true, stickToBottom: false, stickToRight: false, clickOnTrack: true, autoReinitialise: false, autoReinitialiseDelay: 500, verticalDragMinHeight: 0, verticalDragMaxHeight: 99999, horizontalDragMinWidth: 0, horizontalDragMaxWidth: 99999, contentWidth: c, animateScroll: false, animateDuration: 300, animateEase: "linear", hijackInternalLinks: false, verticalGutter: 4, horizontalGutter: 4, mouseWheelSpeed: 0, arrowButtonSpeed: 0, arrowRepeatFreq: 50, arrowScrollOnHover: false, trackClickSpeed: 0, trackClickRepeatFreq: 70, verticalArrowPositions: "split", horizontalArrowPositions: "split", enableKeyboardNavigation: true, hideFocus: false, keyboardSpeed: 0, initialDelay: 300, speed: 30, scrollPagePercent: 0.8} })(jQuery, this);

// Setting up the site variables
var orloffVars = {
    strLoginTextDefault: "Webshop login",
    strLoginTextClose: "Luk login",
    intFoldAnimationTime: 750,
    strFoldAnimationType: "easeInOutCubic", // Alternative: 'easeInOutBack', 'easeInOutExpo' or 'easeInOutQuint' (or the standard 'swing')
    booCycleAutorun: true,
    booCycleAnimationRunning: false,
    objBasketSmallScroll: jQuery(""),
    objScrollSettings: { "verticalDragMaxHeight": 17, "showArrows": true },
    intCycleActiveIndex: 0,
    intCycleActiveSrc: "",
    intCycleInterval: 6000,
    intCycleLastManualClick: 0,
    fancyboxOptions: {
        "overlayColor": "#fff",
        "overlayOpacity": "0.5"
    }
}

// Hover on small images on user page
function UserHoverOnImage() {

    var objOverlay = jQuery(".overlayWrap .overlay");
    jQuery('table.SizeGuide tr.Row td.Img img').mouseenter(function () {

        var image = jQuery(this);
        largeProductSrc = image.attr("longdesc");

        if ((largeProductSrc != null) & (largeProductSrc != "")) {
            objOverlay.find("img.mySize").remove();
            objOverlay.append(jQuery("<img class='mySize' src='" + largeProductSrc + "' alt='' style='top: " + image.offset().top + "px; left: " + (image.offset().left - 480) + "px;' />"));
        }

    });

    jQuery(".overlayWrap .overlay img.mySize").live("mouseleave", function () {
        jQuery(this).remove();
    });
}

// Enable PIE for IE8
if (hLib.booIE7 || hLib.booIE8) { jQuery("head").append('<style type="text/css">.enablePIE { behavior: url(' + hLib.strSiteRoot + '/Public/css/PIE.htc); }</style>'); }

jQuery(function () {
    $.datepicker.regional['da'] = {
        closeText: 'Luk',
        prevText: '&#x3c;Forrige',
        nextText: 'N&aelig;ste&#x3e;',
        currentText: 'Idag',
        monthNames: ['Januar', 'Februar', 'Marts', 'April', 'Maj', 'Juni',
        'Juli', 'August', 'September', 'Oktober', 'November', 'December'],
        monthNamesShort: ['Jan', 'Feb', 'Mar', 'Apr', 'Maj', 'Jun',
        'Jul', 'Aug', 'Sep', 'Okt', 'Nov', 'Dec'],
        dayNames: ['S&oslash;ndag', 'Mandag', 'Tirsdag', 'Onsdag', 'Torsdag', 'Fredag', 'L&oslash;rdag'],
        dayNamesShort: ['S&oslash;n', 'Man', 'Tir', 'Ons', 'Tor', 'Fre', 'L&oslash;r'],
        dayNamesMin: ['S&oslash;', 'Ma', 'Ti', 'On', 'To', 'Fr', 'L&oslash;'],
        weekHeader: 'Uge',
        dateFormat: 'dd-mm-yy',
        firstDay: 1,
        isRTL: false,
        showMonthAfterYear: false,
        yearSuffix: ''
    };
    $.datepicker.setDefaults($.datepicker.regional['da']);
    UserHoverOnImage();

    //set selected class on menu on top level if submenu is selected
    SetSelectedFromSubMenu();

    //subMenu show/hide
    //    jQuery("div.contentMenuLeft ul.categories li.jSubMenu a").click(function () {
    //        var subSubMenu = jQuery(this).parent().find("ul.subSubCategories");

    //        if (subSubMenu.css("display") == "none") {
    //            HideSubSubMenues();
    //            subSubMenu.show();

    //        }
    //        else {
    //            subSubMenu.hide();
    //        }

    //        //return false;
    //    });

    //subMenu show/hide
    //    jQuery("div.contentMenuLeft ul.categories li.jMenu").click(function () {
    //        jQuery(this).addClass("selected").addClass("subMenu");
    //        var subMenu = jQuery(this).parent().find("ul.subCategories");
    //        subMenu.show();

    //        return false;
    //    });

    // Getting fold height
    orloffVars.intFoldHeight = jQuery(".foldArea").height();

    // Main menu spacing fix (replacing all " " with "&nbsp;")
    fixMainMenuSpace();

    // Front news items fix
    jQuery(".frontpage .news ul li:first").css("margin-left", "0");

    // Fold out top
    jQuery(".header .btnLogin, .header .arrowDown").click(function () {
        var objBtn = jQuery(this);
        var booIsLogin = false;
        var booIsBasket = false;
        if (objBtn.hasClass("btnLogin")) booIsLogin = true;
        else if (objBtn.hasClass("arrowDown")) booIsBasket = true;
        if (toggleTopFold() == "visible") {
            if (booIsLogin) objBtn.html("<span></span>" + orloffVars.strLoginTextClose);
            else if (booIsBasket) {
                objBtn.addClass("arrowUp");
                smallBasketScrollbar();
            }
        }
        else {
            if (booIsLogin) objBtn.html("<span></span>" + orloffVars.strLoginTextDefault);
            else if (booIsBasket) objBtn.removeClass("arrowUp");
        }
        return false;
    });

    // Lost password popup setup
    jQuery(".showLostPassordPopup").fancybox(orloffVars.fancyboxOptions);

    jQuery(".loginFancybox").fancybox({
        'hideOnContentClick': false,
        'hideOnOverlayClick': false,
        'titleShow': false,
        'width': 855,
        'height': 360,
        'autoDimensions': false,
        'overlayOpacity': 0.5,
        'padding': 0,
        'top': 160,
        'scrolling': 'no'
    });

    jQuery(".orderForm1").fancybox({
        "overlayColor": "#fff",
        "overlayOpacity": "0.5",
        "height": 400,
        "onComplete": function () {
            popup = jQuery("#fancybox-content div.employeeList");

            popup.find(".singleLeder label").attr("for", hLib.setID(popup.find(".singleLeder input"), "employeeListLeader"));

            var arrEmp = popup.find(".singleEmp");
            for (x = 0; x < arrEmp.length; x++) {
                arrEmp.eq(x).find("label").attr("for", hLib.setID(arrEmp.eq(x).find("input"), "employeeList"));
            }
        }
    });

    jQuery(".articleFancybox").fancybox({
        'hideOnContentClick': false,
        'hideOnOverlayClick': false,
        'titleShow': false,
        'width': 720,
        'height': 600,
        'autoDimensions': false,
        'overlayOpacity': 0.5,
        'padding': 0,
        'top': 20,
        'scrolling': 'auto'
    });

    // Front page cycle
    if (jQuery(".content .frontCycle").length > 0) {
        runFrontCycle(this, true); // Initiate
        jQuery(".content .frontCycle ul li a.mainlink").click(function (e) { e.preventDefault(); runFrontCycle(this); return false; });
        jQuery(".content .frontCycleArrow, body .frontCycleArrowIE6").click(function () { window.location = orloffVars.intCycleActiveSrc });
        jQuery(".content .frontCycle ul li").click(function () {
            if (jQuery(this).hasClass("selected") || jQuery(this).hasClass("preselected")) { window.location = orloffVars.intCycleActiveSrc; }
        }).hover(
                function () {
                    if (!jQuery(this).hasClass("selected")) jQuery(this).find(".selectedState").fadeIn(200);
                },
                function () { jQuery(this).find(".selectedState").hide(); }
            );
    }

    // Log in lock icon
    jQuery(".header .roundBox .btnLogin").prepend("<span/>");

    // Arrow for textbox at footer
    jQuery(".textBoxWrap .textBox").append("<span class='arrow'/>");

    // IE FIXES.
    if (hLib.booIELt8) {
        // Login button fix at fold IE7
        jQuery(".foldArea .login .loginFields .btnLogin").removeClass("enablePIE").parent().find("css3-container").remove();

        // Animation time for fold
        orloffVars.intFoldAnimationTime = 0;
    }

    // First H3 at left content menu
    jQuery("div.content div.contentMenuLeft h3:first").wrap("<div class='bgMenuLeftTop'/>");

    // Quick search
    var objSearch = jQuery("div.header div.menuWrap div.search");

    // Quick search
    hLib.enableQuickSearch({
        input: objSearch.find(".inpSearch"),
        btn: objSearch.find(".btnSearch"),
        result: "div.overlayWrap div.overlay",
        datasrc: window.url_QuickSearch,
        dataparametername: "searchTerm",
        mode: "onkeypress",
        // On click on search button
        oninputsubmit: function () {
            location.href = window.url_SearchResult + '?term=' + encodeURIComponent(objSearch.find(".inpSearch").val().replace(/\./g, ' '));
        },
        // On "enter" press when navigating in result list
        onitemsubmit: function (item) {
            location.href = jQuery(item).find(".destination").val();
        }
    });

    /* Suppliers hover effect fix for IE */
    if (hLib.booIELt7) {
        jQuery(".articleWrap .contentSuppliers .contentBrands ul li").hover(
            function () { jQuery(this).addClass("hover"); },
            function () { jQuery(this).removeClass("hover"); }
        );
    }

});


function DoSearch(term, placeholder) {
    if (term != placeholder) {
        location.href = window.url_SearchResult + '?term=' + encodeURIComponent(term.replace(/\./g, ' '));
    }
    return false;
}

// Generic popup
function displayPopup(options) {
    
    var objPopup = jQuery("div#genericPopup");
    if (objPopup.length < 1) {
        var htmPopups = jQuery("<div class='popups'></div>").appendTo("body");
        objPopup = jQuery("<div id='genericPopup' class='genericPopup clearfix'>Message</div>");
       
        htmPopups.append(objPopup);
    }

    // Custom settings
    var strType = "blank";
    var strHtml = "Specify message text!";
    var funcOnDisplay = function () { };
    var intHideAfterMs = -1;
    if (options != undefined) {
        if (jQuery.isPlainObject(options)) {
            // Type
            if (options.type != undefined) strType = options.type;
            // Message
            if (options.message != undefined) strHtml = options.message;
            // Width
            if (options.width != undefined) objPopup.width(options.width);
            // On display function
            if (options.ondisplay != undefined) funcOnDisplay = options.ondisplay;
            // Hide after some time
            if (options.autohide != undefined) intHideAfterMs = parseInt(options.autohide);
        }
        else strHtml = options;
    }
    
//    // Getting content placeholder
    var objPopupLink = jQuery("a#genericPopupHelper");
    if (jQuery("a#genericPopupHelper").length == 0) {

        objPopupLink = jQuery("<a id='genericPopupHelper'>&nbsp;</a>").attr('href', '#genericPopup');
        //objPopupLink = jQuery("<a href='#genericPopup' id='genericPopupHelper'>&nbsp;</a>");
        jQuery("body").append(objPopupLink);
    }
//    
    // Set class
    objPopup.removeClass("info succes error").addClass(strType);

    // Save message
    objPopup.html("").append("<span class='icon'/>" + strHtml);

    // On display function
    orloffVars.fancyboxOptions.onComplete = funcOnDisplay(objPopup);

//    // Auto hide
    if (intHideAfterMs > -1) { setTimeout("jQuery.fancybox.close()", intHideAfterMs); }
//    
    //    // Run popup with fancybox
   // if (!hLib.booIELt8) {
        return objPopupLink.fancybox(orloffVars.fancyboxOptions).trigger("click");  
    //}
}


function runFrontCycle(objLink, booInitiate) {

    var objLi = jQuery(".content .frontCycle ul li");
    var objLinks = objLi.find("a:not(.article)");
    
    // Initate
    if (booInitiate != undefined && booInitiate) {
        
        hLib.setID(objLinks, "cycleFront");

        // Animation helper
        objLinks.parent().find(".infoBlockWrap").css("top", "200px");

        // Adding all images and start loading
        var objMediaContainer = jQuery(".content .mediaFront .mediaContainer");
        for (i = 0; i < objLinks.length; i++) {
            var objImg = objLinks.eq(i).parent().find("img").addClass(objLinks.eq(i).attr("id"));
            if (objImg.length > 0) objMediaContainer.append(objImg);
        }
        objLinks.eq(0).parent().addClass("selected").find(".infoBlockWrap").css({ "display": "block", top: 0 });

        objMediaContainer.find("img").click(function () { window.location = jQuery(this).attr("rel"); });
        objMediaContainer.find("img").hover(
            function () { jQuery(this).addClass("hover"); },
            function () { jQuery(this).removeClass("hover"); }
        );

        setArrowPosForItem(objLinks.eq(0), 0, 0);
        orloffVars.intCycleActiveSrc = objLinks.eq(0).attr("href");

        // Adding hover helper
        jQuery(".content .frontCycle ul li:not(:first)").append("<span class='selectedState'/>");

        // Display first image
        if (objMediaContainer.find(".selected").length == 0) objMediaContainer.find("img:first").addClass("selected");

        // Start interval (runFrontCycle() will rerun itself when no parameters are sent)
        if (orloffVars.booCycleAutorun) setTimeout("runFrontCycle()", orloffVars.intCycleInterval / 2);

        // Adding border top and bottom for info boxes
        objLinks.parent().find(".infoBlock").wrap("<div class='infoBlockWrap'></div>").parent().prepend("<div class='dottedLine'></div>").append("<div class='dottedLine'></div>");

        // Adding IE6 static arrow
        if (hLib.booIELt7) {
            jQuery("body .overlayWrap .overlay").append("<div class='frontCycleArrowIE6'></div>");
            jQuery(".content .frontCycleArrow").hide();
        }
    }
    // Update
    else {
        
        var objActiveImg = jQuery(".content .mediaFront .mediaContainer img.selected");
        var objNew = null;
        var objNewContent = null;
        var objNewImg = null;
        var booCanChange = false;
        var booReRun = false;

        if (objLink != undefined) {

            orloffVars.intCycleLastManualClick = new Date().getTime();
            objNew = jQuery(objLink);

            if (!objNew.parent().hasClass("selected")) booCanChange = true;

            var objListItems = jQuery(".content .frontCycle ul li");
            for (i = 0; i < objListItems.length; i++) { if (objListItems.eq(i).hasClass("selected")) orloffVars.intCycleActiveIndex = i; }
        }
        else {
            booReRun = true;
            booCanChange = true;
            
            if ((new Date().getTime() - orloffVars.intCycleLastManualClick) < 10000) booCanChange = false; // 15s (10s + interval) delay after user click
            else {
                orloffVars.intCycleActiveIndex++;
                objNew = jQuery(".content .frontCycle ul li a:not(.article)").eq(orloffVars.intCycleActiveIndex);
                if (objNew.length == 0) {
                    orloffVars.intCycleActiveIndex = 0;
                    objNew = jQuery(".content .frontCycle ul li a:not(.article)").eq(0);
                }
            }
        }

        if (booCanChange) {

            if (!orloffVars.booCycleAnimationRunning) {
            
                orloffVars.intCycleActiveSrc = objNew.attr("href");
                orloffVars.booCycleAnimationRunning = true;
                var objOldLink = jQuery(".content .frontCycle ul li.selected a:first");
                var objOldBlock = objOldLink.parent().find(".infoBlock");
                var objNewBlock = objNew.parent().find(".infoBlock");
                var intNewIndex = 0;
                for (i = 0; i < objLinks.length; i++) { if (objLinks.eq(i).attr("id") == objNew.attr("id")) intNewIndex = i; }

                // Fading links
                if (hLib.booIEGt8 || !hLib.booIE) objOldLink.fadeIn(1000);
                else setTimeout(function () { objOldLink.show(); }, 300); // <-IE8 and older
                objNew.hide();
                objNew.parent().find(".selectedState").remove();

                objOldLink.parent().animate({ height: "33px" }, 750, function () { jQuery(this).removeClass("selected") });
                objNew.parent().addClass("preselected").animate({ height: "170px" }, 1250, function () {
                    jQuery(this).removeClass("preselected").addClass("selected");
                    orloffVars.booCycleAnimationRunning = false;
                    objOldLink.parent().append("<span class='selectedState'/>");
                    var objListItems = jQuery(".content .frontCycle ul li");
                    for (i = 0; i < objListItems.length; i++) { if (objListItems.eq(i).hasClass("selected")) orloffVars.intCycleActiveIndex = i; }
                });
                objOldBlock.parent().animate({ top: 160, height: 0 }, 1000);
                objNewBlock.parent().css("height", "0px").show().animate({ top: 0, height: 170 }, 750);
                setArrowPosForItem(objNew, 1250, intNewIndex);

                // Getting new image
                if (objNew.attr("id") != undefined && objNew.attr("id") != "") {
                    objNewImg = jQuery(".content .mediaFront .mediaContainer img." + objNew.attr("id"));

                    // Swithing images
                    if (objActiveImg.length > 0 && objNewImg.length > 0 && !objNewImg.hasClass("selected")) {
                        objActiveImg.stop(true, true).fadeOut(1000, function () { jQuery(this).removeClass("selected") });
                        objNewImg.fadeIn(1000, function () { jQuery(this).addClass("selected") });
                    }
                }
            }
        }
        if (booReRun && orloffVars.booCycleAutorun) setTimeout("runFrontCycle()", orloffVars.intCycleInterval);
    }
}

function setArrowPosForItem(objLinkItem, intAnimationTime, intItemIdex) {
    var objItem = jQuery(objLinkItem);
    var objArrow = jQuery(".content .frontCycleArrow");
    if (intItemIdex < 0) intItemIdex = 0;
    if (objItem.is("a")) objItem = objItem.parent();
    
    var intNewPosTop = ((36 * intItemIdex) + 100);
    
    objArrow.animate({ top: intNewPosTop + "px" }, intAnimationTime);

}

function toggleTopFold() {
    var objFold = jQuery(".foldWrap");
    var objContent = objFold.find(".foldBox:first");

    var booLogin = false;
    var booBasket = false;
    if (objContent.find(".loginFields").length > 0) booLogin = true;
    else if (objContent.find(".basketListView").length > 0) booBasket = true;
    
    if (!objContent.is(":visible")) {

        // Getting content object as visible object (to figure out dimensions)
        var objContentClone = hLib.cloneToVisibleItem(objContent);

        var intNewHeight = booLogin ? 220 : objContentClone.show().find(".foldBoxInner").outerHeight(true);
        if (booBasket) intNewHeight = 243;
        
        // Folding and fading
        objFold.animate({ height: intNewHeight }, orloffVars.intFoldAnimationTime, orloffVars.strFoldAnimationType);
        objContent.fadeIn(orloffVars.intFoldAnimationTime);

        // Moving overlay container
        jQuery(".overlayWrap").animate({ top: "+=" + (intNewHeight - 20) + "px" }, orloffVars.intFoldAnimationTime, orloffVars.strFoldAnimationType);
        
        // Deleting clone
        objContentClone.remove();

        return "visible";
    }
    else {
        // Folding and fading
        objFold.animate({ height: orloffVars.intFoldHeight }, orloffVars.intFoldAnimationTime, orloffVars.strFoldAnimationType);
        objContent.fadeOut(orloffVars.intFoldAnimationTime);
        
        // Moving overlay container
        jQuery(".overlayWrap").animate({ top: 0 }, orloffVars.intFoldAnimationTime, orloffVars.strFoldAnimationType);
        
        return "hidden";
    }
}

function fixMainMenuSpace() {
    var arrMenuItems = jQuery(".header .mainMenu li a");
    for (i=0; i<arrMenuItems.length; i++){
        var strText = arrMenuItems.eq(i).text().replace(" ", "&nbsp;");
        arrMenuItems.eq(i).html(strText);
    }
}

function OpenPaymentWindowNew(strUrl) {
    jQuery("#paymentOpenTrigger").attr("href", strUrl).fancybox({
        'speedIn': 200,
        'speedOut': 0,
        'overlayShow': true,
        'centerOnScroll': true,
        'overlayOpacity': 0.75,
        "overlayColor": "#fff",
        'width': 480,
        'height': 390,
        'onStart': function () { booPaymentWindowIsOpen = true; },
        'onComplete': function () { },
        'onClosed': function () { booPaymentWindowIsOpen = false; }
    });

    jQuery(function () { jQuery("#paymentOpenTrigger").trigger("click").hide(); });


}


//function HideSubSubMenues() {
//    //hide subsub menues under articles_levels
//    jQuery("div.contentMenuLeft ul li.jSubMenu ul.subSubCategories").hide();
//}

//function HideSubMenues() {
//    //hide sub menues under articles_levels
//    jQuery("div.contentMenuLeft ul.subCategories").hide();
//}

function SetSelectedFromSubMenu() {
    //show submenu if li har class selected
 
    var selSubMenu = jQuery("div.contentMenuLeft ul.categories li.jMenu ul li.selected");
    
    var parentSelSubMenu = findSelectedParentMenu(selSubMenu);
    if (parentSelSubMenu.hasClass("jMenu")) {
        //level 1
        parentSelSubMenu.addClass("selected");
    } else {
        //level 2
        var parentSelSubSubMenu = findSelectedParentMenu(parentSelSubMenu);
        if (parentSelSubSubMenu.hasClass("jMenu")) {
            parentSelSubSubMenu.addClass("selected");
        }
    }
}

function findSelectedParentMenu(selSubMenu) {
     return selSubMenu.parent().parent();
 }
 
 // To hide/display loading for login fields
 function formDisplayLoading(strBtnRef, showLoading) {

     var booLoadOverrideState = false;
     if (showLoading != undefined) booLoadOverrideState = showLoading;

     var objLoginBtn = jQuery(strBtnRef);
     if (objLoginBtn.length > 0) {
         var booShowLoading = true;
         if (!booLoadOverrideState) {

             // Alert box displayed, hide loading
             if (objLoginBtn.closest(".loginFields").find(".alert:visible").length > 0) booLoadOverrideState = false;
             else booLoadOverrideState = true;

         }
         if (booLoadOverrideState && booShowLoading) {
             if (!objLoginBtn.hasClass("loading")) objLoginBtn.addClass("loading").find("span").css({ "width": objLoginBtn.find("span").width() }).wrapInner("<span class='origText'/>").append("<span class='loading'>&nbsp;</span>");
         }
         else objLoginBtn.removeClass("loading").html("<span>" + objLoginBtn.find("span.origText").text() + "</span>");
     }
 }
