{"version":3,"sources":["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"],"names":["McUtils","prototype","constructor","isElementInView","element","fullyInView","pageTop","jQuery","window","scrollTop","pageBottom","height","elementTop","offset","top","elementBottom","isElementBelowView","isElementAboveView","$","this","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","ensureCorrectImageSizesForField","applyCustomerSpecifics","popupParam","css","callback","InitializeRoyalSliderForPreview","spacing","orientation","autoCenter","bind","reinit","PubSub","publish","AjaxRenderingEngineEventTypes","onFieldContentChanged","onNewAreasShown","onPopupReady","onPopupFilterChanged","onAjaxRenderingLoaded","onKnockoutRenderingCompleted","onPriceRefreshRequested","onPushProductsIntoField","onClearFieldFilter","onFieldsRefresh","onFilterLoadRequested","onAddNewAreaContent","subscribe","message","AreaId","updateFields","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","fieldUpdateInProgress","placeholderDict","length","each","index","item","removeClass","addClass","pageParam","getParameterByName","parseInt","articleIdentifier","D4AiActive","D4AiRegisterStats","unhideProductMenu","fieldsToLoad","push","targetKey","filterTargetKey","onlyUpdateProductList","doNotRenderFilter","useDummyData","popupFilter","nextPageNumber","firstPageViewPopup","updateContentForPreloadedFields","runUpdateFields","updateSelectedAttributeListVisibility","getQuickview","placement","openQuickView","nodeid","manufacturerid","areaname","me","myCenteredPopup","closest","quickview","loadLightboxFields","options","loadNextPage","loadPrevPage","prevPageNumber","reloadPageCallback","fieldIds","isNaN","i","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","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","e","alert","ToggleStockMode","ToggleStockModeFjernlager","name","replace","results","RegExp","exec","location","search","decodeURIComponent","addFieldToArea","areaContainer","ActiveArticleId","AreaUniqueId","Response","AddToEnd","existingFields","EnableLinksForArticlesWithBackground","replaceField","IsEdm","fn","scrollView","animate","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","scrollViewToTopOfPage","parents","RemoveAttributeValueLinkFromDom","encodeURI","currentUrl","valToAdd","filterIndex","indexOfColonInNewValue","existingAttributeID","startOfExistingAttributeIDInUrl","McIndexOf","startOfUrl","endOfUrl","CreateUrl","titleOfRemoved","AddDivForRemovingAttributeValue","title","searchLocAfterFiltering","informShopOfFilterActivation","setInternalListOfOpenFilters","scrolltime","scrollTo","position","documentElement","body","currentFilter","clientHasFilter","prop","openAttributes","openAttributesList","doScrollToNextPage","scrollToNextPage","getAttribute","nextPageIndex","updateScroller","scrollToPrevPage","prevPage","navigateToPage","fetchAttributeValues","target","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","filterContainer","filterClientId","cacheKey","attr","FilterIsJson","OpenAttributes","OtherContactId","JSON","stringify","currentPopupFilter","getFieldWidth","myPlids","myPlidsString","myPlid","fieldData","UseSpecificLayoutId","LayoutId","VariantSorting","Plid","PlidList","SendFilterOnly","remove","skipSorter","Data","SkipFilterRendering","UseDummyData","DeviceSize","GetElementsOnly","SkipSorter","CurrentArticle","PopupFilter","AllowDeferred","Prepend","updateFieldContent","EmptyFields","D4DeferredScripts","setTimeout","decodedString","DOMParser","parseFromString","textContent","D4SingleScript","getScript","textStatus","jqxhr","console","log","status","setupSubscriptions","postStatistics","contentChanged","fieldParents","parentIndex","tmpWidth","$current","lightboxLocator","disableDoubleClick","publisher","checkElementsMarkedInSessionStorage","Target","cartsmall","onShowNewItemInCartText","favouriteCart","lightboxModal","isShown","cart","onPopupForProductAssembly","p","FullFilter","nextF","Sender","next","nextField","loadPopupParams","fieldNode","Plids","ExtraData","ajaxPopup","checkForPopupAfterProductInfoVisit","checkForPopupFirstPageView","CustomEvent","event","bubbles","cancelable","detail","evt","createEvent","initCustomEvent","querySelector","dispatchEvent","classToDisable","dblclick","preventDefault","addFieldSorterToPage","$targetField","FieldSorterResponse","myFieldContainer","oldFieldSorter","prepend","FieldSorter2Response","Menu","onAddNewFilterButton","addFieldContentToPage","targetField","bottomImageToLoad","added","registerStatistics","LoadFilter","updateFilterContent","AddToExistingField","imageList","lastImage","last","containsLoadableImage","backgroundImgItems","bgItem","initialiseAdLinks","InitializeRoyalSlider","InitializeRoyalSliderInAds","IsProductListing","hide","IsNoHitSearch","ShowInStockOnly","ShowInRemoteStockOnly","IsDummyField","click","selectLayoutClick","LayoutCssClass","fieldToUpdateLayout","className","match","join","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","getSlideshowModel","SlideShowModel","parentWithSlideInfo","ensureCorrectImageSizes","images","lazyImg","initialiseSlideshows","slidemodel","ImgModuleVer","imageLoadedPromises","Array","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","elementId","autoscale","toUpperCase","aspect","myId","TargetId","Index","Aspect","IncludeLink","UseSecondaryImage","IncludeNotFound","AutoScale","D4LinkArraySetup","makeAdLinkToProduct","productLink","stats","PopupRule","FieldIds","Note","updateContentForSpecificFields","fieldRecognizer","includeMegaMenuChildren","recognizer","preloadedFields","fieldItems","fieldItem","UniqueId","preloadedElements","eItems","eItem","Elements","startParaxify","Fields","fields","fData","showSearchSynonymText","alteredSearchResultArea","alteredText","newContent","first","applyModelRegisterExtraData","targetfield","extraData","AccessoriesGroup","accessoriesgroup","FreeText","freeTextItem","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","prev","rrpPriceTags","Rrp","nordeaprices","FinancingTxt","backorders","BackorderTxt","$field","lazyImages","loadSlideshowForProdThumb","loadSlideshowForLazyThumb","InitializeAnimationsInArticleWithBackground","PagesRemaining","isSlideOver","PopupPch","lightboxContainer","movePopupFieldsToOriginalPlaceholder","empty","dataFound","getCssClassesForLightbox","dataToApply","fillLightboxWithContent","PopupEvent","onHideLightbox","skipAdd","addNextFieldToDom","on","handleScroll","off","footerlist","querySelectorAll","footer","addScrollObserver","lipscore","initWidgets","some","x","classesForFields","after","fieldPopupHtml","detach","doScrollHandling","scrollerContainer","scrollerTag","onHeaderIntersection","entries","entry","intersectionRatio","prevElement","headerObserver","unobserve","scrollEventPrevRegistered","onIntersection","onFieldIntersection","fieldScrollObserver","HasMoreFieldsToLoad","myFieldData","myInnerData","noloop","fieldWasAdded","fieldToObserve","findNextFieldToObserve","fieldElement","getElementById","addFieldScrollObserver","popNextFieldAboveView","currentImgSrc","Image","onBottomImgLoaded","onerror","loadNextField","findNextVisibleField","fieldReadyToLoad","n","splice","IntersectionObserver","rootMargin","threshold","observe","toggleAttributeValues","toggleClass","toggleIconAttributeValues","searchAtttributes","siblings","searchQuery","value","includes","preventDefaultOnEnter","keyCode","filterData","secondaryFilterId","FilterResponse","targetDiv","$targetDiv","oldHeight","loadAttributeFilterNotYetLoaded","attributeFilte","ShowCompressedFilter","urlParamsFilterIsValidFor","shouldDelayLoadingFilter","attributeFilterParent","is","delayLoadFilterParent","delayLoadFilterManufacturerId","delayLoadFilterLoaded","storeFilterLoadCall","allowDelay","listingFields","notProcessedFields","cachingparams","CacheKey","checkAttributeVisibility","itemsToProcess","itemsProcessed","filterItems","itemParam","Identifier","FilterItems","Visible","RenderedData","nextItem","menu","dummyBarn","removeAttr","stopImmediatePropagation","publisherAdminMenu","callLayoutAction","cancelBubble","stopPropagation","updateVariantMatrixField","listingField","variantMatrix","VariantChilds","ProduktLagerId","myfunction","ready","outerHTML","eq","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","otherVariantType","SingleAvailableAttributeValueId","AttributeValueIds","itemToDisable","InfoMsg","attributeValueId1","attributeValue2Id","lockedVariantType","MotherPlid","AttributeValueId1","AttributeValueId2","LockedVariantType","selectedAttributeValueId","attributeType","AttributeValueId","VariantType"],"mappings":"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","file":"2.9323630d9600ee544c5f.bundle.js","sourcesContent":["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 AjaxRenderingEngine.ensureCorrectImageSizesForField(container, result);\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 onFilterLoadRequested: \"AjaxRenderingEngine.onFilterLoadRequested\",\r\n onAddNewAreaContent:\"AjaxRenderingEngine.onAddNewAreaContent\"\r\n};\r\n\r\nexport const AjaxRenderingEngine = new (function AjaxRenderingEngine($) {\r\n PubSub.subscribe(AjaxRenderingEngineEventTypes.onAddNewAreaContent, function (message, data) {\r\n jQuery('#A' + data.AreaId).html(data.Content);\r\n self.updateFields('#A' + data.AreaId +' .ajax-field', \"#AttributeListBox\", false, false, false, 0); \r\n });\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 self.fieldUpdateInProgress = false;\r\n self.placeholderDict = {};\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']:not(.menu-container 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']:not(.menu-container 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 if (jQuery(\".ProductMenu\").css(\"order\") === 1) {\r\n self.unhideProductMenu();//do not wait for attributes are loaded when order is 1\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 () { //TODO: MOVE, move to separate publisher-only file\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) { //TODO: MOVE, move to separate publisher-only file\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 \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) { //TODO: MOVE, move to separate publisher-only file\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 () { //TODO: MOVE, move to separate publisher-only file\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(\"