| Current Path : /var/www/homesaver/www/bitrix/components/bitrix/landing.settings/templates/.default/ |
| Current File : /var/www/homesaver/www/bitrix/components/bitrix/landing.settings/templates/.default/script.js.map |
{"version":3,"file":"script.js","sources":["src/js/index.js"],"sourcesContent":["import {Event, ajax as Ajax, Tag, Dom} from 'main.core';\nimport {Loader} from \"main.loader\";\n\ntype PageOption = {\n\tpage: string,\n\tname: string,\n\tlink: ?string,\n\tlinkToSave: ?string,\n\tcurrent: ?boolean,\n\tcontainer: ?HTMLDivElement,\n\tform: ?HTMLFormElement,\n}\n\nexport class LandingSettings\n{\n\tstatic PAGE_LINK_SELECTOR = 'a[data-page], a[data-placement]';\n\n\tsiteId: number;\n\tlandingId: number;\n\tpages: {\n\t\t[code: string]: PageOption\n\t};\n\tcurrentPage: PageOption;\n\tmenu: HTMLDivElement;\n\tcontainer: HTMLDivElement;\n\tlinks: [HTMLAnchorElement];\n\tsaveButton: HTMLButtonElement;\n\tloader: Loader;\n\tloadingPages: [string];\n\n\t/**\n\t * Constructor.\n\t */\n\tconstructor(options: {\n\t\tsiteId: number,\n\t\tlandingId: number,\n\t\tpages: {\n\t\t\t[code: string]: PageOption\n\t\t},\n\t\tmenuId: string,\n\t\tcontainerId: string,\n\t\tsaveButtonId: string,\n\t\ttype: string,\n\t})\n\t{\n\t\tthis.siteId = options.siteId;\n\t\tthis.landingId = options.landingId;\n\t\tthis.type = options.type;\n\n\t\t// pages\n\t\tthis.pages = options.pages;\n\t\tthis.container = document.getElementById(options.containerId);\n\t\tthis.menu = document.getElementById(options.menuId);\n\n\t\tfor (let page in this.pages)\n\t\t{\n\t\t\tthis.pages[page].container = Tag.render`<div class=\"landing-settings-page-container\"></div>`;\n\t\t\tDom.append(this.pages[page].container, this.container);\n\t\t}\n\t\tthis.loadingPages = [];\n\n\t\tthis.loaderContainer = Tag.render`<div class=\"landing-settings-loader-container\"></div>`;\n\t\tDom.insertAfter(this.loaderContainer, this.container);\n\t\tthis.loader = new Loader({target: this.loaderContainer});\n\n\t\t// links\n\t\tthis.links = [].slice.call(this.menu.querySelectorAll(LandingSettings.PAGE_LINK_SELECTOR));\n\t\tlet currentLink = this.links[0];\n\t\tthis.links.forEach(link => {\n\t\t\tthis.bindMenuLink(link);\n\n\t\t\tif (\n\t\t\t\tlink.dataset.page\n\t\t\t\t&& this.pages[link.dataset.page]\n\t\t\t\t&& this.pages[link.dataset.page].current === true\n\t\t\t)\n\t\t\t{\n\t\t\t\tcurrentLink = link;\n\t\t\t}\n\t\t});\n\t\tif (currentLink)\n\t\t{\n\t\t\tthis.onMenuLinkClick(currentLink);\n\t\t}\n\n\t\t// save\n\t\tthis.saveButton = document.getElementById(options.saveButtonId);\n\t\tthis.onSave = this.onSave.bind(this);\n\t\tEvent.bind(this.saveButton, 'click', this.onSave);\n\t}\n\n\tshowLoader()\n\t{\n\t\tthis.loader.show();\n\t\tDom.show(this.loaderContainer);\n\t}\n\n\thideLoader()\n\t{\n\t\tthis.loader.hide();\n\t\tDom.hide(this.loaderContainer);\n\t}\n\n\tbindMenuLink(link: HTMLAnchorElement)\n\t{\n\t\tEvent.bind(link, 'click', event => {\n\t\t\tevent.preventDefault();\n\t\t\tevent.stopPropagation();\n\t\t\tthis.onMenuLinkClick(link)\n\t\t});\n\t}\n\n\tbindPageLink(pageLink: HTMLAnchorElement)\n\t{\n\t\tif (pageLink.dataset.page)\n\t\t{\n\t\t\tconst currentMenuLink = this.links.find(menuLink => menuLink.dataset.page === pageLink.dataset.page);\n\t\t\tif (currentMenuLink)\n\t\t\t{\n\t\t\t\tEvent.bind(pageLink, 'click', event => {\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\tevent.stopPropagation();\n\t\t\t\t\tcurrentMenuLink.click();\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t}\n\n\tonMenuLinkClick(link: HTMLAnchorElement)\n\t{\n\t\tif (link.dataset.page)\n\t\t{\n\t\t\tthis.onPageChange(link.dataset.page);\n\t\t}\n\t\telse if (link.dataset.placement)\n\t\t{\n\t\t\t// for open app pages in slider\n\t\t\tif (\n\t\t\t\ttypeof BX.rest !== 'undefined' &&\n\t\t\t\ttypeof BX.rest.Marketplace !== 'undefined'\n\t\t\t)\n\t\t\t{\n\t\t\t\tBX.rest.Marketplace.bindPageAnchors({});\n\t\t\t}\n\t\t\tBX.rest.AppLayout.openApplication(\n\t\t\t\tlink.dataset.appId,\n\t\t\t\t{\n\t\t\t\t\tSITE_ID: this.siteId,\n\t\t\t\t\tLID: this.landingId,\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tPLACEMENT: link.dataset.placement,\n\t\t\t\t\tPLACEMENT_ID: link.dataset.placementId,\n\t\t\t\t},\n\t\t\t);\n\t\t}\n\t}\n\n\tonPageChange(pageId: string)\n\t{\n\t\tconst pageToLoad = this.pages[pageId];\n\t\tif (pageToLoad)\n\t\t{\n\t\t\tif (pageToLoad.container.childNodes.length === 0)\n\t\t\t{\n\t\t\t\tthis.showLoader();\n\t\t\t\tthis.loadingPages.push(pageId);\n\t\t\t\tAjax.get(pageToLoad.link, result =>\n\t\t\t\t{\n\t\t\t\t\tpageToLoad.container.innerHTML = result;\n\t\t\t\t\tthis.loadingPages.splice(this.loadingPages.indexOf(pageId), 1);\n\t\t\t\t\tif (this.loadingPages.length === 0)\n\t\t\t\t\t{\n\t\t\t\t\t\tthis.hideLoader();\n\t\t\t\t\t}\n\t\t\t\t\tconst form = pageToLoad.container.querySelector('form.landing-form');\n\t\t\t\t\tif (form)\n\t\t\t\t\t{\n\t\t\t\t\t\tpageToLoad.form = form;\n\t\t\t\t\t}\n\n\t\t\t\t\tconst pageLinks = pageToLoad.container.querySelectorAll(LandingSettings.PAGE_LINK_SELECTOR);\n\t\t\t\t\tif (pageLinks.length > 0)\n\t\t\t\t\t{\n\t\t\t\t\t\tpageLinks.forEach(link => this.bindPageLink(link));\n\t\t\t\t\t}\n\n\t\t\t\t\tif (this.currentPage)\n\t\t\t\t\t{\n\t\t\t\t\t\tthis.currentPage.container.hidden = true;\n\t\t\t\t\t}\n\t\t\t\t\tthis.currentPage = pageToLoad;\n\t\t\t\t\tthis.currentPage.container.hidden = false;\n\t\t\t\t});\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tif (this.currentPage)\n\t\t\t\t{\n\t\t\t\t\tthis.currentPage.container.hidden = true;\n\t\t\t\t}\n\t\t\t\tthis.currentPage = pageToLoad;\n\t\t\t\tthis.currentPage.container.hidden = false;\n\t\t\t}\n\t\t}\n\t}\n\n\tonSave()\n\t{\n\t\tthis.showLoader();\n\n\t\tconst submits = [];\n\t\tfor (let page in this.pages)\n\t\t{\n\t\t\tconst currPage = this.pages[page];\n\t\t\tif (currPage.form)\n\t\t\t{\n\t\t\t\tsubmits.push(\n\t\t\t\t\tfetch(currPage.linkToSave, {\n\t\t\t\t\t\tmethod: 'POST',\n\t\t\t\t\t\tbody: new FormData(currPage.form),\n\t\t\t\t\t\theaders: {\n\t\t\t\t\t\t\t'Bx-ajax': true,\n\t\t\t\t\t\t},\n\t\t\t\t\t}),\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t\tPromise.all(submits)\n\t\t\t.then((results: [Response]) =>\n\t\t\t{\n\t\t\t\tlet all = true;\n\t\t\t\tresults.forEach(result => {\n\t\t\t\t\tall = all && result.ok;\n\t\t\t\t});\n\t\t\t\tif (all)\n\t\t\t\t{\n\t\t\t\t\ttop.window['landingSettingsSaved'] = true;\n\t\t\t\t\ttop.BX.onCustomEvent('BX.Landing.Filter:apply');\n\t\t\t\t\tthis.hideLoader();\n\t\t\t\t\tif (this.type === 'KNOWLEDGE' || this.type === 'GROUP')\n\t\t\t\t\t{\n\t\t\t\t\t\tBX.SidePanel.Instance.close();\n\t\t\t\t\t\tBX.SidePanel.Instance.reload();\n\t\t\t\t\t}\n\t\t\t\t\telse\n\t\t\t\t\t{\n\t\t\t\t\t\ttop.window.location.reload();\n\t\t\t\t\t\tBX.SidePanel.Instance.close();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch(err =>\n\t\t\t{\n\t\t\t\tconsole.error(err);\n\t\t\t});\n\t}\n}"],"names":["LandingSettings","options","siteId","landingId","type","pages","container","document","getElementById","containerId","menu","menuId","page","Tag","render","Dom","append","loadingPages","loaderContainer","insertAfter","loader","Loader","target","links","slice","call","querySelectorAll","PAGE_LINK_SELECTOR","currentLink","forEach","link","bindMenuLink","dataset","current","onMenuLinkClick","saveButton","saveButtonId","onSave","bind","Event","show","hide","event","preventDefault","stopPropagation","pageLink","currentMenuLink","find","menuLink","click","onPageChange","placement","BX","rest","Marketplace","bindPageAnchors","AppLayout","openApplication","appId","SITE_ID","LID","PLACEMENT","PLACEMENT_ID","placementId","pageId","pageToLoad","childNodes","length","showLoader","push","Ajax","get","result","innerHTML","splice","indexOf","hideLoader","form","querySelector","pageLinks","bindPageLink","currentPage","hidden","submits","currPage","fetch","linkToSave","method","body","FormData","headers","Promise","all","then","results","ok","top","window","onCustomEvent","SidePanel","Instance","close","reload","location","err","console","error"],"mappings":"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"}