{"version":3,"file":"DataLayer.js","names":["defineDs","localDataLayer","returnAsArray","array","Array","isArray","promoView","productArray","push","promotions","promoClick","productImpression","impressions","productDetail","detail","products","addToCart","add","removeFromCart","length","remove","checkout","data","step","option","actionField","purchaseCompleted","id","totalPrice","toString","revenue","firstInteraction","lastInteraction","purchase","event","payload","getDataLayer","ecommerce","window","dataLayer","i","categoryName","category","lynCategories","systemCategories","vaelgSelvCategories","lykkeCategories","indexOf","variantName","brand","rows","playType","systemName","variant","slice","charAt","eurojackpotDrawDay","split","quantity","getSystemCombinationAmount","rowPrice","feedData","numberOfDraws","type","draws"],"sources":["DanskeSpil/Framework/NumberGames/Scripts/Helpers/DataLayer.js"],"sourcesContent":["defineDs('DanskeSpil/Framework/NumberGames/Scripts/Helpers/DataLayer',\r\n function () {\r\n\r\n // Variables:\r\n var localDataLayer = [];\r\n\r\n // Functions:\r\n var returnAsArray = function (array) {\r\n if (!Array.isArray(array)) {\r\n return [array];\r\n } else {\r\n return array;\r\n }\r\n };\r\n\r\n var promoView = function (productArray) {\r\n productArray = returnAsArray(productArray);\r\n push('promoView', {\r\n promoView: {\r\n promotions: productArray\r\n }\r\n });\r\n };\r\n\r\n var promoClick = function (productArray) {\r\n productArray = returnAsArray(productArray);\r\n push('promoClick', {\r\n promoClick: {\r\n promotions: productArray\r\n }\r\n });\r\n };\r\n\r\n var productImpression = function (productArray) {\r\n productArray = returnAsArray(productArray);\r\n push('productImpression', {\r\n impressions: productArray\r\n });\r\n };\r\n\r\n var productDetail = function (productArray) {\r\n productArray = returnAsArray(productArray);\r\n push('productDetail', {\r\n detail: {\r\n products: productArray\r\n }\r\n });\r\n };\r\n\r\n var addToCart = function (productArray) {\r\n productArray = returnAsArray(productArray);\r\n push('addToCart', {\r\n add: {\r\n products: productArray\r\n }\r\n });\r\n };\r\n\r\n var removeFromCart = function (productArray) {\r\n productArray = returnAsArray(productArray);\r\n if (productArray.length > 0) {\r\n push('removeFromCart', {\r\n remove: {\r\n products: productArray\r\n }\r\n });\r\n }\r\n };\r\n\r\n var checkout = function (data, productArray) {\r\n productArray = returnAsArray(productArray);\r\n var step = data.step;\r\n var option = data.option;\r\n\r\n push('checkout', {\r\n checkout: {\r\n actionField: {\r\n step: step,\r\n option: option\r\n },\r\n products: productArray\r\n }\r\n });\r\n };\r\n\r\n var purchaseCompleted = function (data, productArray) {\r\n productArray = returnAsArray(productArray);\r\n var id = data.id;\r\n var totalPrice = data.totalPrice.toString();\r\n const actionField = {\r\n id: id,\r\n revenue: totalPrice\r\n };\r\n if (data.firstInteraction) {\r\n actionField.firstInteraction = data.firstInteraction;\r\n }\r\n if (data.lastInteraction) {\r\n actionField.lastInteraction = data.lastInteraction;\r\n }\r\n\r\n push('purchaseComplete', {\r\n purchase: {\r\n actionField: actionField,\r\n products: productArray\r\n }\r\n });\r\n };\r\n\r\n var push = function (event, payload) {\r\n getDataLayer().push({\r\n event: event,\r\n ecommerce: payload\r\n });\r\n };\r\n\r\n var getDataLayer = function () {\r\n if (window.dataLayer) {\r\n for (var i = 0; i < localDataLayer.length; i++) {\r\n window.dataLayer.push(localDataLayer[i]);\r\n }\r\n }\r\n\r\n return window.dataLayer || localDataLayer;\r\n };\r\n\r\n // Set the category field to the correct naming\r\n var categoryName = function (category) {\r\n var lynCategories = ['KenoMillion', 'KenoLarge', 'KenoSmall', 'Lightning'];\r\n var systemCategories = ['KenoSystem', 'System'];\r\n var vaelgSelvCategories = ['KenoClassic', 'Classic'];\r\n var lykkeCategories = ['Lucky'];\r\n\r\n if (lynCategories.indexOf(category) > -1) {\r\n category = 'lyn';\r\n }\r\n\r\n if (systemCategories.indexOf(category) > -1) {\r\n category = 'system';\r\n }\r\n\r\n if (vaelgSelvCategories.indexOf(category) > -1) {\r\n category = 'vaelg_selv';\r\n }\r\n\r\n if (lykkeCategories.indexOf(category) > -1) {\r\n category = 'lykke';\r\n }\r\n\r\n return category;\r\n };\r\n\r\n // Generate the variant field\r\n var variantName = function (brand, rows, playType, systemName) {\r\n var variant;\r\n\r\n // Make sure there is always 2 digits in the row number (fx 02).\r\n rows = ('0' + rows).slice(-2);\r\n\r\n // -- AllOrNothing Variants --\r\n if (brand == 'allornothing' || brand == 'plus_allornothing') {\r\n rows = rows + 'dag' + (rows !== 1 ? 'e' : '');\r\n variant = 'alt_';\r\n\r\n if (brand == 'plus_allornothing') {\r\n rows = '';\r\n variant = 'plu_alt';\r\n // ensure that plus will always have _raekker variant\r\n playType = 'Lightning';\r\n }\r\n\r\n if (playType == 'Lightning' || playType == 'Classic') {\r\n variant += rows + '_raekker';\r\n }\r\n }\r\n\r\n // -- Keno Variants --\r\n if (brand == 'keno' || brand === 'plus_keno') {\r\n rows = rows + 'dage';\r\n variant = 'ken_';\r\n\r\n if (brand === 'plus_keno') {\r\n variant = 'plu_ken';\r\n }\r\n\r\n if (playType == 'KenoMillion') {\r\n variant += rows + '_million';\r\n }\r\n\r\n if (playType == 'KenoClassic') {\r\n variant += rows + '_raekker';\r\n }\r\n\r\n if (playType == 'KenoSystem') {\r\n variant += rows + '_system';\r\n }\r\n\r\n if (playType == 'KenoLarge') {\r\n variant += rows + '_store';\r\n }\r\n\r\n if (playType == 'KenoSmall') {\r\n variant += rows + '_lille';\r\n }\r\n }\r\n\r\n // -- Lotto Variants --\r\n if (brand == 'lotto' || brand == 'plus_lotto') {\r\n rows = rows + 'uger';\r\n variant = 'lot_';\r\n\r\n if (brand == 'plus_lotto') {\r\n rows = '';\r\n variant = 'plu_lot';\r\n // ensure that plus will always have _raekker variant\r\n playType = 'Lightning';\r\n }\r\n\r\n if (playType == 'System') {\r\n // Set systemName to 'R', 'M', or 'C'\r\n // These are Reduced, Mathematical, or Chance\r\n systemName = systemName.charAt(0);\r\n if (systemName == 'R' || systemName == 'C') {\r\n variant += rows + '_reduceret';\r\n }\r\n\r\n if (systemName == 'M') {\r\n variant += rows + '_matematisk';\r\n }\r\n }\r\n\r\n if (playType == 'Lightning' || playType == 'Classic' || playType == 'Lucky') {\r\n variant += rows + '_raekker';\r\n }\r\n }\r\n\r\n // -- VikingeLotto Variants --\r\n if (brand == 'viking' || brand == 'plus_viking') {\r\n variant = 'vik_';\r\n rows = rows + 'uger';\r\n\r\n if (brand == 'plus_viking') {\r\n rows = '';\r\n variant = 'plu_vik';\r\n // ensure that plus will always have _raekker variant\r\n playType = 'Lightning';\r\n }\r\n\r\n if (playType == 'System') {\r\n // Set systemName to 'R', 'M', or 'C'\r\n // These are Reduced, Mathematical, or Chance\r\n systemName = systemName.charAt(0);\r\n if (systemName == 'R' || systemName == 'C') {\r\n variant += rows + '_reduceret';\r\n }\r\n\r\n if (systemName == 'M') {\r\n variant += rows + '_matematisk';\r\n }\r\n }\r\n\r\n if (playType == 'Lightning' || playType == 'Classic' || playType == 'Lucky') {\r\n variant += rows + '_raekker';\r\n }\r\n }\r\n\r\n // -- Joker --\r\n if (brand == 'joker' || brand == 'plus_joker') {\r\n rows = '_' + rows + 'uger';\r\n variant = 'jok_';\r\n\r\n if (brand == 'plus_joker') {\r\n rows = '';\r\n variant = 'plu_jok_';\r\n }\r\n\r\n if (playType == 'saturday') {\r\n variant += 'loerdag' + rows;\r\n }\r\n\r\n if (playType == 'wednesday') {\r\n variant += 'onsdag' + rows;\r\n }\r\n }\r\n\r\n // -- EuroJackpot --\r\n if (brand == 'eurojackpot' ||\r\n brand == 'plus_eurojackpot' ||\r\n brand.indexOf('eurojackpot') !== -1) {\r\n rows = rows + 'draws';\r\n variant = 'ejp_';\r\n\r\n var eurojackpotDrawDay = brand.split('eurojackpot_')[1];\r\n if (eurojackpotDrawDay) variant = variant + eurojackpotDrawDay + '_';\r\n\r\n if (brand == 'plus_eurojackpot') {\r\n rows = '';\r\n variant = 'plu_ejp';\r\n // ensure that plus will always have _raekker variant\r\n playType = 'Lightning';\r\n }\r\n\r\n if (playType == 'Lightning' || playType == 'Classic' || playType == 'Lucky') {\r\n variant += rows + '_raekker';\r\n }\r\n\r\n if (playType == 'System') {\r\n variant += rows + '_matematisk';\r\n }\r\n }\r\n\r\n return variant;\r\n };\r\n\r\n var quantity = function (brand, rows, playType, getSystemCombinationAmount) {\r\n if (brand == 'keno') {\r\n if (playType == 'KenoSystem') {\r\n rows = getSystemCombinationAmount;\r\n }\r\n\r\n if (playType == 'KenoLarge' || playType == 'KenoSmall') {\r\n rows = 1;\r\n }\r\n }\r\n\r\n // -- Lotto Variants --\r\n if (brand == 'lotto') {\r\n rows = getSystemCombinationAmount;\r\n }\r\n\r\n // -- VikingeLotto Variants --\r\n if (brand == 'viking') {\r\n rows = getSystemCombinationAmount;\r\n }\r\n\r\n // -- EuroJackpot --\r\n if (brand == 'eurojackpot') {\r\n rows = getSystemCombinationAmount;\r\n }\r\n\r\n return rows;\r\n };\r\n\r\n var rowPrice = function (feedData, numberOfDraws, type) {\r\n var rowPrice;\r\n\r\n if (type === 'AllOrNothingClassic' || type === 'AllOrNothingLightning') {\r\n rowPrice = feedData * numberOfDraws;\r\n } else if (type == 'KenoMillion' || type == 'KenoClassic' || type == 'KenoSystem' || type == 'KenoLarge' || type == 'KenoSmall') {\r\n if (type == 'KenoMillion' || type == 'KenoClassic' || type == 'KenoSystem') {\r\n rowPrice = feedData * numberOfDraws;\r\n }\r\n\r\n if (type == 'KenoLarge') {\r\n rowPrice = (feedData * numberOfDraws) * 10;\r\n }\r\n\r\n if (type == 'KenoSmall') {\r\n rowPrice = (feedData * numberOfDraws) * 5;\r\n }\r\n } else {\r\n if (type != 'joker') {\r\n rowPrice = feedData.draws && feedData.draws[0] && feedData.draws[0].rowPrice ? feedData.draws[0].rowPrice : 0;\r\n rowPrice = rowPrice * numberOfDraws;\r\n }\r\n\r\n if (type == 'plus') {\r\n rowPrice = feedData.draws && feedData.draws[0] && feedData.draws[0].rowPrice ? feedData.draws[0].rowPrice : 0;\r\n }\r\n\r\n if (type == 'joker') {\r\n rowPrice = feedData * 2 * numberOfDraws;\r\n }\r\n\r\n if (type == 'plus_joker') {\r\n rowPrice = feedData * 2;\r\n }\r\n }\r\n\r\n rowPrice = rowPrice.toString();\r\n\r\n return rowPrice;\r\n };\r\n\r\n // Public functions:\r\n return {\r\n variantName: variantName,\r\n categoryName: categoryName,\r\n quantity: quantity,\r\n rowPrice: rowPrice,\r\n promoView: promoView,\r\n promoClick: promoClick,\r\n productImpression: productImpression,\r\n productDetail: productDetail,\r\n addToCart: addToCart,\r\n removeFromCart: removeFromCart,\r\n checkout: checkout,\r\n purchaseCompleted: purchaseCompleted,\r\n push: push\r\n };\r\n\r\n });\r\n"],"mappings":"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","ignoreList":[]}