{"mappings":"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","sources":["src/js/all.js"],"sourcesContent":["var rmaxOptions = window.rmaxOptions || (window.rmaxOptions = {});\n // rmaxOptions.adHost = '//beta-ssp.tenmax.io';\n\nvar _rmaxads = (window.rmaxads || (window.rmaxads = {}));\n(_rmaxads.cmd || (_rmaxads.cmd = [])).push(function(rmaxads) {\n rmaxads.on('space', function(space) {\n space.demo({\n crid: currentCreative,\n // toBeta: false\n });\n });\n});\n\nwindow.addEventListener(\"scroll\", function() {\n let { height } = document.querySelector(\"#header > .container\").getBoundingClientRect();\n if (window.scrollY >= height && window.innerWidth > 768) {\n document.body.classList.add(\"menuFixed\");\n } else {\n document.body.classList.remove(\"menuFixed\");\n }\n});\n\nlet tenMaxAttr = [\n {\n name: \"ASIAMAX_NATIVE\",\n parameter: {\n \"data-rmax-space-id\":\"59290d62db8742fb\",\n \"data-rmax-space-type\":\"NATIVE\",\n \"data-target-pos\":\"INNER\"\n }, \n script: \"//tenmax-static.cacafly.net/ssp/adsbytenmax.js\",\n crid: 37968\n }, {\n name: \"ASIAMAX_BANNER\",\n parameter: {\n \"data-rmax-space-id\":\"6b6a131e633347fd\",\n \"data-rmax-space-type\":\"BANNER\"\n },\n script: \"//tenmax-static.cacafly.net/ssp/adsbytenmax.js\",\n crid: 46226\n }, {\n name: \"ASIAMAX_COMBO\",\n parameter: {\n \"data-rmax-space-id\":\"1e615494f98346ec\",\n \"data-rmax-space-type\":\"UNIVERSAL\"\n },\n script: \"//tenmax-static.cacafly.net/ssp/universal.js\",\n crid: 19532\n }, \n // {\n // name: \"PPS1\",\n // parameter: {\n // \"data-rmax-space-id\":\"cdecc578055b4b77\",\n // \"data-rmax-space-type\":\"BANNER\",\n // \"data-rmax-space-width\":\"300px\",\n // \"data-rmax-space-height\":\"250px\"\n // },\n // script: \"//tenmax-static.cacafly.net/ssp/adsbytenmax.js\",\n // crid: 26435\n // }, {\n // name: \"PPS2\",\n // parameter: {\n // \"data-rmax-space-id\":\"59cda7b6d10a4614\",\n // \"data-rmax-space-type\":\"BANNER\",\n // \"data-rmax-space-width\":\"300px\",\n // \"data-rmax-space-height\":\"250px\"\n // },\n // script: \"//tenmax-static.cacafly.net/ssp/adsbytenmax.js\",\n // crid: 26433\n // }, {\n // name: \"PPS3\",\n // parameter: {\n // \"data-rmax-space-id\":\"3d72f1550f6c4181\",\n // \"data-rmax-space-type\":\"BANNER\",\n // \"data-rmax-space-width\":\"300px\",\n // \"data-rmax-space-height\":\"250px\"\n // },\n // script: \"//tenmax-static.cacafly.net/ssp/adsbytenmax.js\",\n // crid: 26433\n // }, {\n // name: \"PPS4\",\n // parameter: {\n // \"data-rmax-space-id\":\"50f0c350595c401f\",\n // \"data-rmax-space-type\":\"BANNER\",\n // \"data-rmax-space-width\":\"300px\",\n // \"data-rmax-space-height\":\"250px\"\n // }, \n // script: \"//tenmax-static.cacafly.net/ssp/adsbytenmax.js\",\n // crid: 26436}\n];\nlet anchorPosition = [\"readMore\", \"topOfArticle\", \"middleOfArticle\", \"bottomOfArticle\", \"interstitial\"];\nlet currentType = 0, currentPosition = 0, currentCreative;\nlet queryString = location.search.toLowerCase();\nlet params = new URLSearchParams(queryString);\nlet randomMode = (function () {\n let intervalID;\n let state = false;\n const randomIntervalInSecs = 5;\n function getState() {\n return state;\n }\n function turnOn() {\n if (!state) {\n state = true;\n intervalID = setInterval(() => {\n let randomNum;\n do {\n randomNum = Math.floor(Math.random() * 3);\n } while (randomNum == currentType);\n changeType(randomNum);\n }, (randomIntervalInSecs * 1000));\n updateType();\n }\n }\n function turnOff() {\n if (state) {\n state = false;\n clearInterval(intervalID);\n updateType();\n }\n }\n function toggle() {\n if (!state) {\n turnOn();\n } else {\n turnOff();\n }\n }\n return {getState, turnOn, turnOff, toggle};\n})();\n\nwindow.onload = function () {\n dropdownBehavior();\n interstitialBehavior();\n init();\n}\n\nfunction init() {\n let videoCreative = params.get(\"vcreative\");\n let adCreative = params.get(\"creative\");\n loadingCard(true);\n let requests = [requestCreativeInfo(videoCreative), requestCreativeInfo(adCreative)];\n Promise.allSettled(requests).then(([videoPromise, adPromise]) => {\n console.log(adPromise);\n let videoInfo = videoPromise.status == \"fulfilled\" ? videoPromise.value : null;\n let adInfo = adPromise.status == \"fulfilled\" ? adPromise.value : null;\n let videoCrid = checkAndModifyVideoCreative(videoInfo);\n let [rowType, adCrid] = checkAndModifyAdCreative(adInfo);\n console.log(rowType, adCrid);\n initAd(rowType, adCrid);\n initVideo(videoCrid);\n }).then(() => {\n loadingCard(false);\n });\n function checkAndModifyVideoCreative(info) {\n if (!info) {\n return 19111;\n }\n return info.crid;\n }\n function checkAndModifyAdCreative(info) {\n console.log(info);\n let nonExists = !info;\n let rowType = !nonExists && (info.subType || info.rowType);\n let notSupported = rowType == \"PPS\";\n if (nonExists) {\n return [params.get(\"type\") || \"\", null];\n }\n if (notSupported) {\n return [\"\", null];\n }\n if (rowType == \"ASIAMAX_COMBO\") {\n return [\"ASIAMAX_COMBO\", info.crid];\n }\n // if (rowType == \"banner\" && (info.width != 300 || info.height != 250)) {\n // return [\"banner\", null];\n // }\n return [rowType, info.crid];\n }\n function initVideo(crid) {\n crid ? setHrefParams(\"vcreative\", crid) : deleteHrefParams(\"vcreative\");\n let options = {\n id: \"content_video\",\n adTagUrl: `https://ssp.tenmax.io/supply/demo/video/rmax-ad?rmaxSpaceId=3b7e8b888f0140a9&domain=https://ssp.tenmax.io&demo=true&crid=${crid}&toBeta=false`\n };\n player.ima(options);\n player.ima.initializeAdDisplayContainer();\n player.ima.requestAds();\n player.play();\n }\n function initAd(type, crid) {\n let typeIndex = tenMaxAttr.findIndex(el => el.name == type);\n console.log(tenMaxAttr.findIndex(el => console.log(el.name)), type);\n if (typeIndex == -1) {\n changeType(currentType);\n randomMode.turnOn();\n } else {\n changeType(typeIndex, crid);\n }\n let position = params.get(\"position\") || \"\";\n let positionIndex = anchorPosition.findIndex(el => el.toLowerCase() == position.toLowerCase());\n if (positionIndex == -1) {\n positionIndex = window.innerWidth > 768 ? 0 : 2;\n }\n changePosition(positionIndex);\n }\n}\n\nfunction loadingCard(status) {\n let interstitial = document.querySelector(\".interstitial\");\n let alertCard = document.querySelector(\".interstitial > .alertCard\");\n let loading = document.querySelector(\".alertCard > .loading\");\n let text = document.querySelector(\".alertCard > p\");\n if (status) {\n interstitial.style.display = \"flex\";\n alertCard.style.display = \"flex\";\n loading.style.display = \"inline-block\";\n text.innerText = `素材ID尋找中 =͟͟͞͞( •̀д•́)`;\n } else {\n interstitial.style.display = \"none\";\n alertCard.style.display = \"none\";\n }\n}\n\nfunction requestCreativeInfo(creativeID) {\n return new Promise((resolve, reject) => {\n if (!creativeID) {\n return reject();\n }\n let httpRequest = new XMLHttpRequest();\n if (!httpRequest) {\n return reject(`Giving up :( Cannot create an XMLHTTP instance`);\n }\n httpRequest.responseType = \"json\";\n httpRequest.onload = () => {\n httpRequest.status === 200 ? resolve(httpRequest.response) : reject(`bad request`);\n };\n httpRequest.open(\"GET\", `https://ssp.tenmax.io/supply/util/creative/${creativeID}/info`);\n httpRequest.send();\n });\n}\n\nfunction setHrefParams(key, value) {\n params.set(key, value);\n history.replaceState(`?${params.toString()}`,\"\", `?${params.toString()}`);\n}\n\nfunction deleteHrefParams(key) {\n params.delete(key);\n history.replaceState(`?${params.toString()}`,\"\", `?${params.toString()}`);\n}\n\n// control type dropdown status (render)\nfunction updateType() {\n document.querySelectorAll(\"#type > .dropdown > li:not(.randomMode)\").forEach((btn, index) => {\n !randomMode.getState() && (index == currentType) ? btn.classList.add(\"active\") : btn.classList.remove(\"active\");\n });\n let randomModeBtn = document.querySelector(\"#type > .dropdown > li.randomMode\");\n randomMode.getState() ? randomModeBtn.classList.add(\"active\") : randomModeBtn.classList.remove(\"active\");\n randomMode.getState() ? setHrefParams(\"type\", \"randomMode\") : setHrefParams(\"type\", tenMaxAttr[currentType].name.split(\"_\")[1].toLowerCase());\n}\n\nfunction updatePosition() {\n document.querySelectorAll(\"#position > .dropdown > li\").forEach((btn, index) => {\n index == currentPosition ? btn.classList.add(\"active\") : btn.classList.remove(\"active\");\n });\n}\n\nfunction dropdownBehavior() {\n document.querySelectorAll(\"#burger > aside > ul > li\").forEach(el => {\n el.addEventListener(\"click\", function() {\n this.classList.toggle(\"active\");\n let siblings = n => [...n.parentElement.children].filter(c => c != n);\n siblings(el).forEach(sibling => sibling.classList.remove(\"active\"));\n });\n });\n document.querySelectorAll(\".dropdown > li\").forEach(el => {\n el.addEventListener(\"click\", function() {\n document.querySelector(\"#burger > input[type=checkbox]\").checked = false;\n });\n });\n typeMenuBehavior();\n positionMenuBehavior();\n}\n\nfunction typeMenuBehavior() {\n document.querySelectorAll(\"#type > .dropdown > li:not(.randomMode)\").forEach((el, index) => {\n el.addEventListener(\"click\", function() {\n deleteHrefParams(\"creative\");\n randomMode.turnOff();\n changeType(index);\n });\n });\n document.querySelector(\"#type > .dropdown > li.randomMode\").addEventListener(\"click\", function() {\n deleteHrefParams(\"creative\");\n randomMode.toggle();\n });\n}\n\nfunction positionMenuBehavior() {\n document.querySelectorAll(\"#position > .dropdown > li\").forEach((el, index) => {\n el.addEventListener(\"click\", function() {\n changeType(currentType, currentCreative);\n changePosition(index);\n });\n });\n}\n\nfunction interstitialBehavior() {\n document.querySelector(\".interstitial\").addEventListener(\"click\", function() {\n document.querySelector(\".interstitial\").style.display = \"none\";\n });\n}\n\nfunction changePosition(num) {\n currentPosition = num;\n setHrefParams(\"position\", anchorPosition[currentPosition]);\n let adTest = document.querySelector(\"#adTest\");\n let anchor = document.querySelector(`.${anchorPosition[currentPosition]}Anchor`);\n anchor.parentNode.insertBefore(adTest, anchor);\n if (currentPosition == 4) {\n document.querySelector(\".interstitial\").style.display = \"flex\";\n }\n updatePosition();\n}\n\nfunction changeType(num, crid = null) {\n currentType = num;\n currentCreative = crid || tenMaxAttr[currentType].crid;\n crid ? setHrefParams(\"creative\", crid) : deleteHrefParams(\"creative\");\n let adTest = document.querySelector(\"#adTest\");\n adTest.querySelectorAll(\"ins, script, p\").forEach(el => el.remove());\n insertAD(adTest, \"async\", tenMaxAttr[currentType]);\n updateType();\n}\n\nfunction insertAD(element, async, attributes) {\n let p = document.createElement(\"p\");\n p.innerText = `廣告類型: ${attributes.name.split(\"_\")[1]}`;\n element.appendChild(p);\n let ins = document.createElement(\"ins\");\n ins.className = \"rmax\";\n ins.style.alignSelf = \"center\";\n for (let key in attributes.parameter) {\n ins.setAttribute(key, attributes.parameter[key]);\n }\n element.appendChild(ins);\n let script = document.createElement(\"script\");\n script.src = attributes.script;\n script[async] = async;\n element.appendChild(script);\n}\n\n// need check\n// Video Ad\nvar player = videojs('content_video');\n\n// Remove controls from the player on iPad to stop native controls from stealing\n// our click\nvar contentPlayer = document.getElementById('content_video_html5_api');\nif ((navigator.userAgent.match(/iPad/i) ||\n navigator.userAgent.match(/Android/i)) &&\n contentPlayer.hasAttribute('controls')) {\n contentPlayer.removeAttribute('controls');\n}\n\n// Initialize the ad container when the video player is clicked, but only the\n// first time it's clicked.\nvar startEvent = 'click';\nif (navigator.userAgent.match(/iPhone/i) ||\n navigator.userAgent.match(/iPad/i) ||\n navigator.userAgent.match(/Android/i)) {\n startEvent = 'tap';\n}\n"],"names":["rmaxOptions","window","_rmaxads","rmaxads","cmd","push","on","space","demo","crid","currentCreative","addEventListener","height","document","querySelector","getBoundingClientRect","scrollY","innerWidth","body","classList","add","remove","tenMaxAttr","name","parameter","script","anchorPosition","currentType","currentPosition","queryString","location","search","toLowerCase","params","URLSearchParams","randomMode","intervalID","state","randomIntervalInSecs","turnOn","setInterval","randomNum","Math","floor","random","changeType","updateType","turnOff","clearInterval","getState","toggle","init","videoCreative","get","adCreative","loadingCard","requests","requestCreativeInfo","Promise","allSettled","then","videoPromise","adPromise","console","log","videoInfo","status","value","adInfo","videoCrid","info","rowType","adCrid","nonExists","subType","notSupported","checkAndModifyAdCreative","type","typeIndex","findIndex","el","position","positionIndex","changePosition","initAd","setHrefParams","deleteHrefParams","options","id","adTagUrl","player","ima","initializeAdDisplayContainer","requestAds","play","initVideo","interstitial","alertCard","loading","text","style","display","innerText","creativeID","resolve","reject","httpRequest","XMLHttpRequest","responseType","onload","response","open","send","key","set","history","replaceState","toString","delete","querySelectorAll","forEach","btn","index","randomModeBtn","split","updatePosition","dropdownBehavior","this","n","parentElement","children","filter","c","sibling","checked","typeMenuBehavior","positionMenuBehavior","interstitialBehavior","num","adTest","anchor","parentNode","insertBefore","insertAD","element","async","attributes","p","createElement","appendChild","ins","className","alignSelf","setAttribute","src","videojs","contentPlayer","getElementById","navigator","userAgent","match","hasAttribute","removeAttribute","startEvent"],"version":3,"file":"index.c621437b.js.map"}