{"version":3,"sources":["webpack:///./node_modules/process/browser.js","webpack:///./Scripts4.0/McUtils.js","webpack:///./Scripts4.0/ViewModels/quickview.js","webpack:///./Scripts4.0/ajax-render-engine.js","webpack:///./Scripts4.0/ViewModels/variant/ajax-variant-selector.js","webpack:///./node_modules/timers-browserify/main.js","webpack:///./node_modules/setimmediate/setImmediate.js","webpack:///(webpack)/buildin/global.js"],"names":["cachedSetTimeout","cachedClearTimeout","process","module","exports","defaultSetTimout","Error","defaultClearTimeout","runTimeout","fun","setTimeout","e","call","this","clearTimeout","currentQueue","queue","draining","queueIndex","cleanUpNextTick","length","concat","drainQueue","timeout","len","run","marker","runClearTimeout","Item","array","noop","nextTick","args","Array","arguments","i","push","prototype","apply","title","browser","env","argv","version","versions","on","addListener","once","off","removeListener","removeAllListeners","emit","prependListener","prependOnceListener","listeners","name","binding","cwd","chdir","dir","umask","McUtils","constructor","isElementInView","element","fullyInView","pageTop","jQuery","window","scrollTop","pageBottom","height","elementTop","offset","top","elementBottom","isElementBelowView","isElementAboveView","$","vm","id","self","service","WebApiService","vs","mcWeb","ajaxVariantSelector","avsInitialised","load","data","settings","init","currentAreaName","areaName","currentNodeId","nodeId","width","popupEvent","lightbox","events","onShowLightbox","currentPlacement","slideOverBox","show","plid","manufacturerId","param","NodeId","Width","ManufacturerId","ActivePlid","Placement","AreaName","PostAction","done","result","Success","container","undefined","html","Content","AjaxRenderingEngine","applyCustomerSpecifics","popupParam","css","callback","InitializeRoyalSliderForPreview","spacing","orientation","autoCenter","bind","reinit","PubSub","publish","AjaxRenderingEngineEventTypes","onFieldContentChanged","onNewAreasShown","onPopupReady","onPopupFilterChanged","onAjaxRenderingLoaded","onKnockoutRenderingCompleted","onPriceRefreshRequested","onPushProductsIntoField","onClearFieldFilter","onFieldsRefresh","filterService","fieldRenderService","statsService","imageService","deviceSize","currentSlideshow","allowUseOfProductCache","currentField","PreviewProduktLagerId","scrollEventIsRegistered","scrollEventFieldIsRegistered","scrollEventFooterIsRegistered","HasMorePages","PagingMode","LoadingFromScroll","fieldsReadyToLoad","lazyLoadFieldSetupDone","footerObserver","IntersectionObserveAllowed","AutoScrolledPages","InitialPageNumber","CurrentPageNumber","HighestPageNumberSeen","LowestPageNumberSeen","InitialLoadDone","subscriptionsInitialised","PrevPagingLoaded","myScrollToElement","currentArticleId","CheckStatistics","ListingTypeGrid","lightBoxIsOpen","slideOverBoxIsOpen","attributeFilterInitiated","rhsQuickview","Quickview","centerQuickview","currentSearchKeyword","finishedLoadingFieldsAbove","each","index","item","removeClass","addClass","pageParam","getParameterByName","parseInt","articleIdentifier","D4AiActive","D4AiRegisterStats","fieldsToLoad","targetKey","filterTargetKey","onlyUpdateProductList","doNotRenderFilter","useDummyData","popupFilter","nextPageNumber","firstPageViewPopup","updateContentForPreloadedFields","runUpdateFields","updateSelectedAttributeListVisibility","getQuickview","placement","openQuickView","nodeid","manufacturerid","areaname","me","myCenteredPopup","closest","quickview","loadLightboxFields","options","loadNextPage","updateFields","loadPrevPage","prevPageNumber","reloadPageCallback","fieldIds","isNaN","params","reloadAllLinkedFields","otherFields","fieldIdFound","reloadSingleElement","activePlid","area","fieldId","field","placeholder","linkedChildren","children","before","append","text","Math","round","FieldId","ElementId","ForceNormalMode","ForcedLayoutId","replaceWith","reloadLightboxFields","reloadFieldByListingType","listingtype","reloadFromCallbackActive","reloadProductListField","resetAutoScrolledPages","reloadInstantSearchPreview","setListingType","listingAsGrid","fieldSorters","newUrl","getCurrentFirstPage","history","pushState","addPrevPageScrollObserver","observed","scrollEventPrevRegistered","headerObserver","IntersectionObserver","onHeaderIntersection","rootMargin","threshold","observe","SetAllowedUseOfProductCache","val","reloadPageListingOnlyCallback","skipFilter","doSkipFilter","reloadDummyFields","find","isEdm","GetAction","scaleLayoutPicker","layoutPickerContainer","myField","contentHeight","contentWidth","scale","min","layoutName","hasClass","wrap","parent","reloadForPublisher","newDeviceSize","reloadFields","parentIdentifier","addRemainingFieldsToDom","ChangeSortType","dropDownControl","cont","McAjaxRequest","ToggleGroupVariants","obj","group","checked","alert","ToggleStockMode","ToggleStockModeFjernlager","replace","results","RegExp","exec","location","search","decodeURIComponent","clearFields","targetField","target","findFirstElementOfNextRow","currentElement","fieldLeftPosition","left","targetElementFound","nextElement","next","findLastElementOfLastRow","prev","showElementAsSlideshow","fieldid","elementid","elementIndex","currentSlideElement","currentSlideshowField","remove","innerfield","goTo","targetElement","insertAfter","activeSlider","stopAutoPlay","previewForExistingSlideshow","myPlids","myPlidsString","activeArticleId","plidList","after","previewSlideshowIsActive","ContainerId","scrollView","currentSlideIndex","currentSlide","elementId","linkedElements","prepend","event","lastPreviewElement","showNexElement","linkedElement","not","UpdateSlideshowPosition","InitializeRoyalSliderInAds","addFieldToArea","areaContainer","ActiveArticleId","AreaUniqueId","Response","AddToEnd","existingFields","EnableLinksForArticlesWithBackground","replaceField","IsEdm","moveback","lastLinkedElement","previewElement","parentElement","distance","distanceBetweenElementAndSlideshow","newTargetElement","showPrevious","visibleElement","maxIndex","newVisibleElement","eq","findLinkedElement","fn","animate","slideshow","bottomOfElement","RemovePageNumberFromLink","url","indexOf","urlPartWithPageID","substring","urlPartWithoutPageID","indexOfFirstAmpersand","str","escapeRegExp","indexOfQuestionmark","substr","document","href","RemoveAttribute","parsedFilter","newLocation","RemoveAttributeValueFromLink","attributeID","attributeValueID","String","indexBeforeAttributeValue","m","attValRegexp","newLink","addValueToQueryString","attributeId","attributeValueId","loc","searchLoc","attributeValueIdExisted","currentAttributes","split","attributeAndValues","attributeValues","j","RemoveAttributeValueLinkFromDom","encodeURI","currentUrl","valToAdd","filterIndex","indexOfColonInNewValue","existingAttributeID","startOfExistingAttributeIDInUrl","McIndexOf","startOfUrl","endOfUrl","CreateUrl","titleOfRemoved","AddDivForRemovingAttributeValue","searchLocAfterFiltering","informShopOfFilterActivation","setInternalListOfOpenFilters","currentFilter","clientHasFilter","prop","openAttributes","openAttributesList","doScrollToNextPage","scrollToNextPage","doScrollToPrevPage","scrollToPrevPage","getAttribute","nextPageIndex","updateScroller","prevPage","navigateToPage","fetchAttributeValues","targetId","queryFilterParam","queryMinParam","queryMaxParam","pageIndex","fieldRequestFilter","Url","pathname","Filter","MinPrice","MaxPrice","SearchString","ClientId","PageIndex","FilterCacheKey","AttributeId","RequestFilter","updateAttributeContent","currentIndex","nextIndex","hidePaging","pagingTag","showPagingContainer","showPageLoadingIcon","loadingTag","hidePageLoadingIcon","shift","refreshPriceCache","fieldsArray","otherContactId","getNextPage","getPrevPage","isInsidePopup","responsive","getScreenSize","isForInstantSearch","requestFilterAdded","sendFilterOnly","current","isProductListField","areaid","parents","filterContainer","filterClientId","cacheKey","attr","FilterIsJson","OpenAttributes","OtherContactId","JSON","stringify","currentPopupFilter","getFieldWidth","myPlid","fieldData","UseSpecificLayoutId","LayoutId","VariantSorting","Plid","PlidList","SendFilterOnly","skipSorter","Data","SkipFilterRendering","UseDummyData","DeviceSize","GetElementsOnly","SkipSorter","CurrentArticle","PopupFilter","AllowDeferred","Prepend","updateFieldContent","EmptyFields","D4DeferredScripts","decodedString","DOMParser","parseFromString","body","textContent","D4SingleScript","getScript","textStatus","jqxhr","console","log","status","setupSubscriptions","postStatistics","contentChanged","fieldParents","parentIndex","tmpWidth","$current","lightboxLocator","disableDoubleClick","subscribe","message","cartsmall","onShowNewItemInCartText","favouriteCart","lightboxModal","isShown","cart","onPopupForProductAssembly","p","FullFilter","nextF","Sender","nextField","loadPopupParams","fieldNode","Plids","ajaxPopup","checkForPopupAfterProductInfoVisit","checkForPopupFirstPageView","CustomEvent","bubbles","cancelable","detail","evt","createEvent","initCustomEvent","querySelector","dispatchEvent","classToDisable","dblclick","preventDefault","addFieldSorterToPage","$targetField","FieldSorterResponse","myFieldContainer","oldFieldSorter","FieldSorter2Response","Menu","onAddNewFilterButton","addFieldContentToPage","bottomImageToLoad","added","registerStatistics","LoadFilter","updateFilterContent","AddToExistingField","imageList","lastImage","last","containsLoadableImage","backgroundImgItems","bgItem","initialiseAdLinks","InitializeRoyalSlider","IsProductListing","hide","IsNoHitSearch","ShowInStockOnly","ShowInRemoteStockOnly","IsDummyField","click","selectLayoutClick","LayoutCssClass","fieldToUpdateLayout","className","match","join","SlideShowModel","currImg","src","bg","trim","initializeSlideShow","slideshowmodel","myParent","mcSlide","InitSlideshow","Play","Pause","HoverPause","GenerateNextPrev","GeneratePagination","ArrowsNavAutoHide","FadeSpeed","SlideSpeed","Effect","CrossFade","Orientation","ScaleType","Randomize","Css","IsMobileDomain","Height","resolveImagesOnImageLoaded","image","Promise","resolve","reject","complete","onload","getArrayOfArrays","inputArray","itemsPerArray","arrayOfArrays","slice","ensureCorrectImageSizes","images","lazyImg","ImgModuleVer","imageLoadedPromises","from","map","all","then","toArray","getParamForImage","filter","y","arrayOfImageArrays","requestForImagesSent","arrayId","items","Items","delaySlideshow","success","tag","newImages","initializeSlideShowAfterImagesLoaded","img","includeLink","tagName","toLowerCase","parentWidth","parentHeight","myWidth","myHeight","usesAltImg","imgStatus","autoscale","toUpperCase","aspect","myId","TargetId","Index","Aspect","IncludeLink","UseSecondaryImage","IncludeNotFound","AutoScale","D4LinkArraySetup","makeAdLinkToProduct","productLink","stats","PopupRule","FieldIds","Note","fieldRecognizer","recognizer","preloadedFields","fieldItems","fieldItem","UniqueId","preloadedElements","eItems","eItem","Elements","Fields","fields","fData","targetfield","PriceData","priceTags","$item","Price","Discount","NoBuy","myElement","UnlockBuy","BidName","BidExpires","setInterval","now","Date","getTime","salesCountdown","t","days","floor","hours","mins","secs","discountTags","line","jItem","oldPriceTags","OldPrice","rrpPriceTags","Rrp","$field","lazyImages","InitializeAnimationsInArticleWithBackground","PagesRemaining","isSlideOver","PopupPch","lightboxContainer","movePopupFieldsToOriginalPlaceholder","empty","dataFound","classesForFields","fieldPopupHtml","detach","dataToApply","PopupEvent","onHideLightbox","skipAdd","addNextFieldToDom","handleScroll","footerlist","querySelectorAll","footer","addScrollObserver","lipscore","initWidgets","scrollerContainer","scrollerTag","entries","entry","intersectionRatio","prevElement","unobserve","onIntersection","onFieldIntersection","fieldScrollObserver","HasMoreFieldsToLoad","myFieldData","myInnerData","noloop","fieldWasAdded","fieldToObserve","findNextFieldToObserve","fieldElement","getElementById","addFieldScrollObserver","popNextFieldAboveView","startParaxify","currentImgSrc","Image","onBottomImgLoaded","onerror","loadNextField","findNextVisibleField","fieldReadyToLoad","n","splice","ScrollToElement","toElement","toggleAttributeValues","toggleClass","filterData","secondaryFilterId","FilterResponse","targetDiv","filterOutEmptyAttributes","attributeFilte","ShowCompressedFilter","attributeFilterParent","filterItems","itemParam","Identifier","FilterItems","Visible","RenderedData","dummyBarn","removeAttr","stopImmediatePropagation","publisherAdminMenu","callLayoutAction","cancelBubble","stopPropagation","updateVariantMatrixField","listingField","variantMatrix","VariantChilds","ProduktLagerId","myfunction","ready","outerHTML","clone","ajaxRenderEngine","view","getModule","myContainer","instances","parentId","initialised","storeSelectionInBrowser","subscriptionsAdded","isVariantMother","registerModule","variantType1Id","variantType2Id","storeInBrowser","loadSelectedValuesFromDOM","domAttr1","domAttr2","motherPlid","restoreDataFromLocalStorage","variantTypeToActivate","selectVariant","$me","variantType","otherAttributeValueId","variantTypeCount","removeOldSelected","updateLocalStorage","getChildPlidAction","Message","setupOtherVariantType","myHeadingPch","attribName","innerText","StorageService","localStorage","setItem","tmp","getItem","myButton","myImgPlch","myColour","textContainer","itemContainer","itemText","getInactiveAttributeValuesAction","AttributeValueIds","otherVariantType","itemToDisable","InfoMsg","attributeValueId1","attributeValue2Id","lockedVariantType","MotherPlid","AttributeValueId1","AttributeValueId2","LockedVariantType","selectedAttributeValueId","attributeType","AttributeValueId","VariantType","Function","Timeout","clearFn","_id","_clearFn","scope","clearInterval","close","unref","ref","enroll","msecs","_idleTimeoutId","_idleTimeout","unenroll","_unrefActive","active","_onTimeout","setImmediate","global","clearImmediate","registerImmediate","channel","messagePrefix","onGlobalMessage","nextHandle","tasksByHandle","currentlyRunningATask","doc","attachTo","Object","getPrototypeOf","toString","handle","runIfPresent","postMessage","importScripts","postMessageIsAsynchronous","oldOnMessage","onmessage","canUsePostMessage","MessageChannel","port1","port2","createElement","documentElement","script","onreadystatechange","removeChild","appendChild","random","source","addEventListener","attachEvent","task","g"],"mappings":"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","file":"2.830eb842f9f140260903.bundle.js","sourcesContent":["// shim for using process in browser\nvar process = module.exports = {};\n\n// cached from whatever global is present so that test runners that stub it\n// don't break things. But we need to wrap it in a try catch in case it is\n// wrapped in strict mode code which doesn't define any globals. It's inside a\n// function because try/catches deoptimize in certain engines.\n\nvar cachedSetTimeout;\nvar cachedClearTimeout;\n\nfunction defaultSetTimout() {\n throw new Error('setTimeout has not been defined');\n}\nfunction defaultClearTimeout () {\n throw new Error('clearTimeout has not been defined');\n}\n(function () {\n try {\n if (typeof setTimeout === 'function') {\n cachedSetTimeout = setTimeout;\n } else {\n cachedSetTimeout = defaultSetTimout;\n }\n } catch (e) {\n cachedSetTimeout = defaultSetTimout;\n }\n try {\n if (typeof clearTimeout === 'function') {\n cachedClearTimeout = clearTimeout;\n } else {\n cachedClearTimeout = defaultClearTimeout;\n }\n } catch (e) {\n cachedClearTimeout = defaultClearTimeout;\n }\n} ())\nfunction runTimeout(fun) {\n if (cachedSetTimeout === setTimeout) {\n //normal enviroments in sane situations\n return setTimeout(fun, 0);\n }\n // if setTimeout wasn't available but was latter defined\n if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n cachedSetTimeout = setTimeout;\n return setTimeout(fun, 0);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedSetTimeout(fun, 0);\n } catch(e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedSetTimeout.call(null, fun, 0);\n } catch(e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error\n return cachedSetTimeout.call(this, fun, 0);\n }\n }\n\n\n}\nfunction runClearTimeout(marker) {\n if (cachedClearTimeout === clearTimeout) {\n //normal enviroments in sane situations\n return clearTimeout(marker);\n }\n // if clearTimeout wasn't available but was latter defined\n if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n cachedClearTimeout = clearTimeout;\n return clearTimeout(marker);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedClearTimeout(marker);\n } catch (e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedClearTimeout.call(null, marker);\n } catch (e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.\n // Some versions of I.E. have different rules for clearTimeout vs setTimeout\n return cachedClearTimeout.call(this, marker);\n }\n }\n\n\n\n}\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\n\nfunction cleanUpNextTick() {\n if (!draining || !currentQueue) {\n return;\n }\n draining = false;\n if (currentQueue.length) {\n queue = currentQueue.concat(queue);\n } else {\n queueIndex = -1;\n }\n if (queue.length) {\n drainQueue();\n }\n}\n\nfunction drainQueue() {\n if (draining) {\n return;\n }\n var timeout = runTimeout(cleanUpNextTick);\n draining = true;\n\n var len = queue.length;\n while(len) {\n currentQueue = queue;\n queue = [];\n while (++queueIndex < len) {\n if (currentQueue) {\n currentQueue[queueIndex].run();\n }\n }\n queueIndex = -1;\n len = queue.length;\n }\n currentQueue = null;\n draining = false;\n runClearTimeout(timeout);\n}\n\nprocess.nextTick = function (fun) {\n var args = new Array(arguments.length - 1);\n if (arguments.length > 1) {\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n }\n queue.push(new Item(fun, args));\n if (queue.length === 1 && !draining) {\n runTimeout(drainQueue);\n }\n};\n\n// v8 likes predictible objects\nfunction Item(fun, array) {\n this.fun = fun;\n this.array = array;\n}\nItem.prototype.run = function () {\n this.fun.apply(null, this.array);\n};\nprocess.title = 'browser';\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = ''; // empty string to avoid regexp issues\nprocess.versions = {};\n\nfunction noop() {}\n\nprocess.on = noop;\nprocess.addListener = noop;\nprocess.once = noop;\nprocess.off = noop;\nprocess.removeListener = noop;\nprocess.removeAllListeners = noop;\nprocess.emit = noop;\nprocess.prependListener = noop;\nprocess.prependOnceListener = noop;\n\nprocess.listeners = function (name) { return [] }\n\nprocess.binding = function (name) {\n throw new Error('process.binding is not supported');\n};\n\nprocess.cwd = function () { return '/' };\nprocess.chdir = function (dir) {\n throw new Error('process.chdir is not supported');\n};\nprocess.umask = function() { return 0; };\n","function McUtils() {\r\n}\r\nMcUtils.prototype = {\r\n constructor: McUtils,\r\n\r\n isElementInView: function(element, fullyInView) {\r\n var pageTop = jQuery(window).scrollTop();\r\n var pageBottom = pageTop + jQuery(window).height();\r\n var elementTop = jQuery(element).offset().top;\r\n var elementBottom = elementTop + jQuery(element).height();\r\n if (fullyInView === true) {\r\n return ((pageTop < elementTop) && (pageBottom > elementBottom));\r\n }\r\n else {\r\n return ((elementTop <= pageBottom) && (elementBottom >= pageTop));\r\n }\r\n },\r\n\r\n isElementBelowView: function (element) {\r\n var pageTop = jQuery(window).scrollTop();\r\n var pageBottom = pageTop + jQuery(window).height();\r\n var elementTop = jQuery(element).offset().top;\r\n\r\n return elementTop > pageBottom;\r\n },\r\n\r\n isElementAboveView: function (element) {\r\n var pageTop = jQuery(window).scrollTop();\r\n var elementTop = jQuery(element).offset().top;\r\n var elementBottom = elementTop + jQuery(element).height();\r\n\r\n return elementBottom < pageTop;\r\n }\r\n\r\n};\r\nexport default new McUtils();\r\n","import { AjaxRenderingEngine } from '@scripts/ajax-render-engine';\r\nimport '@scripts/ViewModels/variant/ajax-variant-selector.js';\r\n\r\nexport default new (function ($) {\r\n 'use strict';\r\n\r\n this.vm = function (id) {\r\n var self = this;\r\n self.id = \"#\" + id;\r\n \r\n self.service = new WebApiService(\"FieldRenderer\"); \r\n self.vs = new mcWeb.ajaxVariantSelector.vm(self); \r\n self.avsInitialised = false;\r\n self.load = function(data, settings){ \r\n \r\n };\r\n\r\n self.init = function(data){\r\n self.currentAreaName = data.areaName; \r\n self.currentNodeId = data.nodeId;\r\n self.width = 400;\r\n if(self.id === '#lightbox-placeholder'){ \r\n self.popupEvent = mcWeb.lightbox.events.onShowLightbox;\r\n self.currentPlacement = \"c\";\r\n }\r\n else {\r\n self.popupEvent = mcWeb.slideOverBox.events.onShowLightbox;\r\n self.currentPlacement = \"rhs\";\r\n }\r\n };\r\n\r\n self.show = function( plid, manufacturerId) {\r\n var param = {\r\n NodeId: self.currentNodeId,\r\n Width: self.width,\r\n ManufacturerId: manufacturerId,\r\n ActivePlid: plid,\r\n Placement: self.currentPlacement,\r\n AreaName : self.currentAreaName \r\n };\r\n\r\n self.service.PostAction(\"RenderQuickview\", param).done(\r\n function(result) {\r\n if (result != null && result.Success) {\r\n var container = $(self.id);\r\n if (container != null && container != undefined) {\r\n container.html(result.Content);\r\n\r\n AjaxRenderingEngine.applyCustomerSpecifics(container, result);\r\n //todo: finn riktig klasse å bruke her. avhenger av hvilken popup?\r\n //mangler å kjøre royal-slider for resultatet. Må gjøres for å få fram bilder osv.\r\n var popupParam = {\r\n css: \"d4-popup d4-popup-quickview\",\r\n callback: function () {\r\n var thumbs = {//todo: get from settings?\r\n spacing: 10,\r\n orientation: 'horizontal',\r\n autoCenter: false\r\n };\r\n var navigationMethod = 'bullets';//todo: get from settings?\r\n InitializeRoyalSliderForPreview(null, null, null, 'div.d4-preview', thumbs, navigationMethod);\r\n self.vs.bind();\r\n self.vs.reinit();\r\n }\r\n }\r\n PubSub.publish(self.popupEvent, popupParam);\r\n }\r\n }\r\n else {\r\n //hide slideoverbox or lightbox\r\n if (self.currentPlacement == \"rhs\") {\r\n PubSub.publish(\"mcWeb.slideOverBox.onHideLightbox\");\r\n }\r\n else {\r\n PubSub.publish(\"mcWeb.lightbox.onHideLightbox\");\r\n }\r\n }\r\n })\r\n };\r\n };//end vm\r\n})(jQuery);\r\n\r\n\r\n////Bind viewmodel for two quickviews, one for center and one for rhs\r\n//loadModule(mcWeb.quickview, 'slideover-placeholder', 'slideover-placeholder', null, null,true);\r\n//loadModule(mcWeb.quickview, 'lightbox-placeholder', 'lightbox-placeholder', null, null,true);\r\n","import McUtils from '@scripts/McUtils';\r\nimport Quickview from '@scripts/ViewModels/quickview';\r\n\r\nexport const AjaxRenderingEngineEventTypes = {\r\n onFieldContentChanged: \"AjaxRenderingEngine.onFieldContentChanged\",\r\n onNewAreasShown: \"AjaxRenderingEngine.onNewAreasShown\",\r\n onPopupReady: \"AjaxRenderingEngine.onPopupReady\",\r\n onPopupFilterChanged: \"AjaxRenderingEngine.onPopupFilterChanged\",\r\n onAjaxRenderingLoaded: \"AjaxRenderingEngine.onAjaxRenderingLoaded\",\r\n onKnockoutRenderingCompleted: \"AjaxRenderingEngine.onKnockoutRenderingCompleted\",\r\n onPriceRefreshRequested: \"AjaxRenderingEngine.onPriceRefreshRequested\",\r\n onPushProductsIntoField: \"AjaxRenderingEngine.onPushProductsIntoField\",\r\n onClearFieldFilter: \"AjaxRenderingEngine.onClearFieldFilter\",\r\n onFieldsRefresh : \"AjaxRenderingEngine.onFieldsRefresh\"\r\n};\r\n\r\nexport const AjaxRenderingEngine = new (function AjaxRenderingEngine($) {\r\n\r\n var self = this;\r\n self.service = new WebApiService(\"AreaRenderer\");\r\n self.filterService = new WebApiService(\"AttributeFilter\");\r\n self.fieldRenderService = new WebApiService(\"FieldRenderer\");\r\n self.statsService = new WebApiService(\"Stats\");\r\n self.imageService = new WebApiService(\"ImageRenderer\");\r\n self.deviceSize = \"\";\r\n self.currentSlideshow = null;\r\n self.allowUseOfProductCache = true;\r\n self.currentField = null;\r\n self.PreviewProduktLagerId = null;\r\n self.scrollEventIsRegistered = false;\r\n self.scrollEventFieldIsRegistered = false;\r\n self.scrollEventFooterIsRegistered = false;\r\n self.HasMorePages = false;\r\n self.PagingMode = 1;\r\n self.LoadingFromScroll = false;\r\n self.fieldsReadyToLoad = [];\r\n self.lazyLoadFieldSetupDone = false;\r\n self.footerObserver = null;\r\n self.IntersectionObserveAllowed = ('IntersectionObserver' in window);\r\n self.AutoScrolledPages = 0;\r\n self.InitialPageNumber = 1;\r\n self.CurrentPageNumber = 1;\r\n self.HighestPageNumberSeen = 1;\r\n self.LowestPageNumberSeen = 1;\r\n self.InitialLoadDone = false;\r\n self.subscriptionsInitialised = false;\r\n self.PrevPagingLoaded = false;\r\n self.myScrollToElement = null;\r\n self.currentArticleId = 0;\r\n self.CheckStatistics = false;\r\n self.ListingTypeGrid = false;\r\n self.lightBoxIsOpen = false;\r\n self.slideOverBoxIsOpen = false;\r\n self.attributeFilterInitiated = false;\r\n self.rhsQuickview = new Quickview.vm('slideover-placeholder');\r\n self.centerQuickview = new Quickview.vm('lightbox-placeholder');\r\n self.currentSearchKeyword = \"\";\r\n self.finishedLoadingFieldsAbove = false;\r\n\r\n this.load = function () {\r\n if (jQuery('body.listtype-grid').length > 0) {\r\n self.ListingTypeGrid = true;\r\n }\r\n\r\n jQuery(\"div.HeaderPublishAreaContainer .load-later\").each(function (index, item) {\r\n\r\n jQuery(item).removeClass(\"load-later\");\r\n jQuery(item).addClass(\"load-first\");\r\n });\r\n\r\n var pageParam = self.getParameterByName('pageID');\r\n if (pageParam.length > 0) {\r\n self.InitialPageNumber = parseInt(pageParam);\r\n self.CurrentPageNumber = self.InitialPageNumber;\r\n self.HighestPageNumberSeen = self.InitialPageNumber;\r\n self.LowestPageNumberSeen = self.InitialPageNumber;\r\n\r\n }\r\n var articleIdentifier = jQuery(\"div#current-article-id\");\r\n if (articleIdentifier.length > 0) {\r\n self.currentArticleId = jQuery(articleIdentifier[0]).data(\"current-article\");\r\n }\r\n\r\n self.CheckStatistics = (\r\n window.D4AiActive !== undefined &&\r\n window.D4AiActive &&\r\n window.D4AiRegisterStats !== undefined &&\r\n window.D4AiRegisterStats);\r\n\r\n var loadFirstParams = {\r\n targetKey: \"div.load-first .ajax-field.not-loaded\",\r\n filterTargetKey: \"#AttributeListBox\",\r\n onlyUpdateProductList: false,\r\n doNotRenderFilter: false,\r\n useDummyData: false,\r\n popupFilter: 0,\r\n nextPageNumber: 0\r\n };\r\n\r\n var loadSecond = {\r\n targetKey: \"div.load-later .web-pub-field[data-popup='0'] .ajax-field.loaded[data-sf='0'][data-field-is-productlist='1']\",\r\n filterTargetKey: \"#AttributeListBox\",\r\n onlyUpdateProductList: true,\r\n doNotRenderFilter: false,\r\n useDummyData: false,\r\n popupFilter: 0,\r\n nextPageNumber: 0\r\n };\r\n\r\n\r\n var loadLaterParams = {\r\n targetKey: \"div.load-later .web-pub-field[data-popup='0'] .ajax-field.not-loaded[data-sf='0']\",\r\n filterTargetKey: \"#AttributeListBox\",\r\n onlyUpdateProductList: false,\r\n doNotRenderFilter: false,\r\n useDummyData: false,\r\n popupFilter: 0,\r\n nextPageNumber: 0\r\n };\r\n\r\n var loadLaterWithFilterParams = {\r\n targetKey: \"div.load-later .web-pub-field[data-popup='0'] .ajax-field.not-loaded[data-sf='1']\",\r\n filterTargetKey: \"#AttributeListBox\",\r\n onlyUpdateProductList: false,\r\n doNotRenderFilter: false,\r\n useDummyData: false,\r\n popupFilter: 0,\r\n nextPageNumber: 0\r\n };\r\n\r\n var loadPopupParams = {\r\n targetKey: \"div.ajax-field.not-loaded[data-popup='1']\",\r\n filterTargetKey: \"#AttributeListBox\",\r\n onlyUpdateProductList: false,\r\n doNotRenderFilter: false,\r\n useDummyData: false,\r\n popupFilter: 1,\r\n nextPageNumber: 0\r\n };\r\n\r\n self.fieldsToLoad = [];\r\n self.fieldsToLoad.push(loadFirstParams);\r\n self.fieldsToLoad.push(loadSecond);\r\n self.fieldsToLoad.push(loadLaterParams);\r\n self.fieldsToLoad.push(loadLaterWithFilterParams);\r\n\r\n self.firstPageViewPopup = loadPopupParams;\r\n self.updateContentForPreloadedFields();\r\n\r\n self.runUpdateFields();\r\n\r\n self.updateSelectedAttributeListVisibility();\r\n PubSub.publish(AjaxRenderingEngineEventTypes.onAjaxRenderingLoaded);\r\n\r\n if (jQuery(window).scrollTop() === 0)\r\n self.finishedLoadingFieldsAbove = true;\r\n };\r\n\r\n this.getQuickview = function (placement) {\r\n if (placement === \"rhs\")\r\n return self.rhsQuickview;\r\n else return self.centerQuickview;\r\n };\r\n\r\n\r\n this.openQuickView = function (nodeid, plid, manufacturerid, placement, areaname, me) {\r\n if (me !== undefined) {\r\n //check if we can use the given placement\r\n var myCenteredPopup = jQuery(me).closest(\"#center-popup\");\r\n if (placement == 'c' && myCenteredPopup.length > 0) {\r\n //the popup would normalle be shown in center, but right now the ad is already shown in center,\r\n //so lets use the rhs instead\r\n placement = 'rhs';\r\n }\r\n else if (placement === 'rhs' && jQuery(me).closest(\"#rhs-popup\").length > 0) {\r\n placement = 'c';\r\n }\r\n }\r\n var quickview = self.getQuickview(placement);\r\n quickview.init({ areaName: areaname, nodeId: nodeid });\r\n quickview.show(plid, manufacturerid);\r\n };\r\n\r\n\r\n this.loadLightboxFields = function (options) {\r\n if (jQuery('body.listtype-grid').length > 0) {\r\n self.ListingTypeGrid = true;\r\n }\r\n\r\n var pageParam = self.getParameterByName('pageID');\r\n if (pageParam.length > 0) {\r\n self.InitialPageNumber = parseInt(pageParam);\r\n self.CurrentPageNumber = self.InitialPageNumber;\r\n self.HighestPageNumberSeen = self.InitialPageNumber;\r\n self.LowestPageNumberSeen = self.InitialPageNumber;\r\n\r\n }\r\n var articleIdentifier = jQuery(\"div#current-article-id\");\r\n if (articleIdentifier.length > 0) {\r\n self.currentArticleId = jQuery(articleIdentifier[0]).data(\"current-article\");\r\n }\r\n\r\n self.CheckStatistics = (\r\n window.D4AiActive != undefined &&\r\n window.D4AiActive &&\r\n window.D4AiRegisterStats != undefined &&\r\n window.D4AiRegisterStats);\r\n\r\n var loadFirstParams = {\r\n targetKey: \"div.modal div .ajax-field.not-loaded\",\r\n filterTargetKey: \"#AttributeListBox\",\r\n onlyUpdateProductList: false,\r\n doNotRenderFilter: false,\r\n useDummyData: false,\r\n popupFilter: 0,\r\n nextPageNumber: 0\r\n };\r\n\r\n self.fieldsToLoad = [];\r\n self.fieldsToLoad.push(loadFirstParams);\r\n\r\n self.runUpdateFields();\r\n };\r\n\r\n this.loadNextPage = function () {\r\n self.updateFields(\"div.load-later .ajax-field.not-loaded[data-field-is-productlist='1']\", \"#AttributeListBox\", true, false, false, 0, true);\r\n };\r\n\r\n this.loadPrevPage = function () {\r\n var loadOnlyProductListField = self.CurrentPageNumber > 1; //when scrolling upwards on the page, we we only add the productlisting field when scrolling up, until we are loading the first \"page\"\r\n\r\n var prevPageNumber = self.CurrentPageNumber - 1;\r\n if (prevPageNumber < 1) {\r\n //we're already on the first page, so we just stop processing\r\n return;\r\n }\r\n self.updateFields(\"div.load-later .ajax-field.not-loaded[data-field-is-productlist='1']\", \"#AttributeListBox\", true, false, false, 0, prevPageNumber);\r\n };\r\n\r\n this.reloadPageCallback = function (fieldIds) {//receives array with fieldids to update\r\n if (self.fieldsToLoad === undefined)\r\n self.fieldsToLoad = [];\r\n\r\n if (fieldIds == undefined || fieldIds.length == 0) {\r\n self.updateFields(\".ajax-field.not-loaded\", \"#AttributeListBox\", false, false, false, 0, 0);\r\n } else {\r\n if (isNaN(fieldIds)) {\r\n for (var i = 0; i < fieldIds.length; i++) {\r\n var params = {\r\n targetKey: \".field-container-\" + fieldIds[i] + \" div.ajax-field\",\r\n filterTargetKey: \"#AttributeListBox\",\r\n onlyUpdateProductList: false,\r\n doNotRenderFilter: false,\r\n useDummyData: false,\r\n popupFilter: 0,\r\n nextPageNumber: 0\r\n };\r\n if (jQuery(params.targetKey).length > 0)\r\n self.fieldsToLoad.push(params);\r\n }\r\n } else {\r\n var params = {\r\n targetKey: \".field-container-\" + fieldIds + \" div.ajax-field\",\r\n filterTargetKey: \"#AttributeListBox\",\r\n onlyUpdateProductList: false,\r\n doNotRenderFilter: false,\r\n useDummyData: false,\r\n popupFilter: 0,\r\n nextPageNumber: 0\r\n };\r\n if (jQuery(params.targetKey).length > 0)\r\n self.fieldsToLoad.push(params);\r\n }\r\n self.runUpdateFields();\r\n }\r\n };\r\n\r\n this.reloadAllLinkedFields = function () {\r\n var otherFields = [];\r\n jQuery(\"div.PubFieldMenu[data-include-linked-field-content='True']\").each(function (index, item) {\r\n var fieldIdFound = jQuery(item).data(\"fieldid\");\r\n otherFields.push(fieldIdFound);\r\n });\r\n self.reloadPageCallback(otherFields);\r\n };\r\n\r\n //find a single element on the page, ask the server to render it again, and then swap it out for the new one\r\n this.reloadSingleElement = function (nodeId, activePlid, area, fieldId, element) {\r\n var item = $(\"#Field_\" + fieldId + \" div.WebPubElement[data-elementid=\" + element + \"]\");\r\n if (item.length <= 0) {//implies this element has not been rendered in the field. Let us add a placholder at the end of the field, or if this field contains\r\n //linked content, we must add it in front of all the dynamic content\r\n var field = $(\"div.ajax-field[data-field-id=\" + fieldId + \"]\");\r\n var placeholder = \"
\";\r\n if (field.length > 0) {\r\n var linkedChildren = field.children(\".WebPubElement.linked-element\");\r\n if (linkedChildren.length > 0) {\r\n $(linkedChildren[0]).before(placeholder);\r\n }\r\n else {\r\n field.append(placeholder);\r\n\r\n }\r\n item = $(\"#plcholder\" + fieldId);\r\n }\r\n }\r\n if (nodeId == null)\r\n nodeId = jQuery('#hidden-nodeid').text();\r\n\r\n var width = Math.round($(item).width());\r\n if (item.length > 0) {\r\n var params = {\r\n NodeId: nodeId,\r\n Width: width,\r\n ActivePlid: activePlid,\r\n AreaName: area,\r\n FieldId: fieldId,\r\n ElementId: element,\r\n ForceNormalMode: false,\r\n ForcedLayoutId: 0\r\n };\r\n self.fieldRenderService.PostAction(\"RenderSingleElement\", params).done(function (result) {\r\n if (result && result.Success) {\r\n $(item).replaceWith(result.Content);\r\n }\r\n });\r\n }\r\n };\r\n\r\n this.reloadLightboxFields = function () {\r\n self.updateFields(\".modal-content .ajax-field.not-loaded\", \"#AttributeListBox\", false, false, false, 0);\r\n };\r\n\r\n this.reloadFieldByListingType = function (listingtype) {\r\n self.reloadFromCallbackActive = true;\r\n self.updateFields(\".ajax-field[data-listing-type=\" + listingtype + \"]\", \"#AttributeListBox\", false, false, false, 0, 0);\r\n };\r\n\r\n this.reloadProductListField = function () {\r\n self.resetAutoScrolledPages();\r\n self.updateFields(\".ajax-field[data-field-is-productlist='1']\", \"#AttributeListBox\", true, false, false, 0, 0);\r\n };\r\n\r\n this.reloadInstantSearchPreview = function (plid) {\r\n self.PreviewProduktLagerId = plid;\r\n self.updateFields(\".InstantSearch .d4-instant-search-loadbyajax .ajax-field\",\r\n \"\",\r\n false,\r\n true,\r\n false,\r\n 0,\r\n false);\r\n }\r\n\r\n\r\n this.setListingType = function (listingAsGrid) {\r\n self.ListingTypeGrid = listingAsGrid;\r\n if (listingAsGrid) {\r\n jQuery('body').addClass('.listtype-grid');\r\n jQuery('body').removeClass('.listtype-list');\r\n var fieldContentContainer = jQuery('.ajax-field.inner-layout-container[data-area-id=\"CenterContentDynamicProdListAlternate\"]');\r\n var fieldContainer = fieldContentContainer.closest(\".web-pub-field\");\r\n var fieldSorters = fieldContainer.children(\".FieldSorter\");\r\n if (fieldSorters.length > 0) {\r\n fieldSorters.each(function (index, item) {\r\n $(item).html('');\r\n });\r\n }\r\n jQuery('.ajax-field.inner-layout-container.not-loaded[data-area-id=\"CenterContentDynamicProdListAlternate\"]').html('');\r\n } else {\r\n jQuery('body').addClass('.listtype-list');\r\n jQuery('body').removeClass('.listtype-grid');\r\n var fieldContentContainer = jQuery('.ajax-field.inner-layout-container[data-area-id=\"CenterContentDynamicAdList\"]');\r\n var fieldContainer = fieldContentContainer.closest(\".web-pub-field\");\r\n var fieldSorters = fieldContainer.children(\".FieldSorter\");\r\n if (fieldSorters.length > 0) {\r\n fieldSorters.each(function (index, item) {\r\n $(item).html('');\r\n });\r\n }\r\n jQuery('.ajax-field.inner-layout-container[data-area-id=\"CenterContentDynamicAdList\"]').html('');\r\n }\r\n\r\n var newUrl = self.getCurrentFirstPage();\r\n self.CurrentPageNumber = 1;\r\n window.history.pushState(newUrl, '', newUrl);\r\n };\r\n\r\n this.addPrevPageScrollObserver = function (observed) {\r\n if (!self.IntersectionObserveAllowed)\r\n return;\r\n\r\n if (!self.scrollEventPrevRegistered && self.CurrentPageNumber > 1) {\r\n self.scrollEventPrevRegistered = true;\r\n var config = {\r\n // If the image gets within 50px in the Y axis, start the download.\r\n rootMargin: '0px 0px',\r\n threshold: 0.01\r\n };\r\n\r\n // The observer for the images on the page\r\n self.headerObserver = new IntersectionObserver(self.onHeaderIntersection, config);\r\n\r\n self.headerObserver.observe(observed);\r\n }\r\n };\r\n\r\n this.SetAllowedUseOfProductCache = function (val) {\r\n self.allowUseOfProductCache = val;\r\n };\r\n\r\n this.reloadPageListingOnlyCallback = function (skipFilter) {\r\n self.reloadFromCallbackActive = true;\r\n var doSkipFilter = true;\r\n if (skipFilter !== undefined)\r\n doSkipFilter = skipFilter\r\n self.updateFields(\".ajax-field[data-field-is-productlist='1']\", \"#AttributeListBox\", true, doSkipFilter, false, 0);\r\n };\r\n\r\n this.reloadDummyFields = function (deviceSize) {\r\n\r\n //first, find the area that contains the dummy fields\r\n var container = jQuery('.layout-picker').find('.load-later');\r\n if (container.length > 0) {\r\n var nodeId = jQuery('#hidden-nodeid').text();\r\n var param = {\r\n areaName: 'LayoutPicker',\r\n nodeId: nodeId,\r\n isEdm: false,\r\n deviceSize: deviceSize\r\n };\r\n self.service.GetAction(\"RenderAreaFramework\", param).done(\r\n function (result) {\r\n if (result != undefined && result.length > 0) {\r\n container.html(result);\r\n }\r\n self.updateFields(\".ajax-field.not-loaded-dummy\", \"\", false, false, true, 0);\r\n self.scaleLayoutPicker();\r\n });\r\n\r\n }\r\n //then fetch the new field framework as it might have been changed\r\n //then update the content of the fields\r\n\r\n };\r\n\r\n this.scaleLayoutPicker = function () {\r\n var layoutPickerContainer = jQuery(\".PublisherContainer.layout-picker\");\r\n if (layoutPickerContainer != null) {\r\n var layoutSelectorFields = layoutPickerContainer.find('.web-pub-field.container.dummy');\r\n\r\n layoutSelectorFields.each(function (index, element) {\r\n var myField = jQuery(element)\r\n var contentHeight = myField.height();\r\n var contentWidth = myField.width();\r\n var availableWidth = 170;\r\n var availableHeight = 100;\r\n var scale = Math.min(\r\n availableWidth / contentWidth,\r\n availableHeight / contentHeight\r\n );\r\n //todo: find out why the height isn't always correct\r\n myField.css(\"position\", \"absolute\");\r\n\r\n var translateVertical = \"0 0px\";\r\n myField.css(\"transform-origin\", translateVertical);\r\n\r\n myField.css(\"transform\", \"scale(\" + scale + \")\");\r\n var layoutName = myField.data(\"layout-name\");\r\n\r\n if (myField.hasClass(\"selected\")) {\r\n jQuery(myField).wrap(\"\");\r\n } else {\r\n jQuery(myField).wrap(\"\");\r\n }\r\n jQuery(myField.parent()).before(\"