siteMapPerso
Details
dist/mySiteMap.js 63(+30 -33)
diff --git a/dist/mySiteMap.js b/dist/mySiteMap.js
index be582b6..91b8281 100644
--- a/dist/mySiteMap.js
+++ b/dist/mySiteMap.js
@@ -18,7 +18,6 @@ require("core-js/modules/web.url-search-params.js");
require("core-js/modules/es.string.match.js");
var enviroment = "";
var pages = [];
-console.log("dfdsf");
esURLValida(window.location.href);
//DATOS DE USUARIO
@@ -252,27 +251,30 @@ var logInWallInteractions = {
var landingDolarInteractions = {
name: "Landing Dólar"
};
-var mercadosOnlineInteractions = {
- name: SalesforceInteractions.CatalogObjectInteractionName.ViewCatalogObject,
- catalogObject: {
- type: "MercadosOnline",
- id: window.cronistaDataLayer[0].articleProperty.id,
- attributes: {
- url: window.location.href,
- name: SalesforceInteractions.cashDom(".section-header-title a").text()
- },
- relatedCatalogObjects: {
- TipoDeCotizacion: SalesforceInteractions.DisplayUtils.pageElementLoaded("html").then(function (ele) {
- return [window.cronistaDataLayer[0].articleProperty.category.toUpperCase()];
- })
- }
- }
-};
var home = new PageType("Home", "cronista.com", homeInteractions, homeListeners, false);
var payWall = new PageType("PayWall", "cronista.com/suscripciones", payWallInteractions, payWallListeners, false);
var logInWall = new PageType("LogInWall", "cronista.com/ingresa", logInWallInteractions, logInWallListeners, false);
-var landingDolar = new PageType("Landing Dólar", "cronista.com/MercadosOnline/dolar.html", landingDolarInteractions, landingDolarListeners, false);
-var mercadosOnline = new PageType("Mercados Online", "cronista.com/MercadosOnline", mercadosOnlineInteractions, mercadosOnlineInteractions, false);
+var landingDolar = new PageType("Landing Dólar", "cronista.com/MercadosOnline/dolar.html", landingDolarInteractions, landingDolarListeners, document.querySelector(".page.dolar"));
+if (validarParteDeURL(window.location.href, "MercadosOnline") && !validarParteDeURL(window.location.href, "cronista.com/MercadosOnline/dolar.html")) {
+ var mercadosOnlineInteractions = {
+ name: SalesforceInteractions.CatalogObjectInteractionName.ViewCatalogObject,
+ catalogObject: {
+ type: "MercadosOnline",
+ id: window.cronistaDataLayer[0].articleProperty.id,
+ attributes: {
+ url: window.location.href,
+ name: SalesforceInteractions.cashDom(".section-header-title a").text()
+ },
+ relatedCatalogObjects: {
+ TipoDeCotizacion: SalesforceInteractions.DisplayUtils.pageElementLoaded("html").then(function (ele) {
+ return [window.cronistaDataLayer[0].articleProperty.category.toUpperCase()];
+ })
+ }
+ }
+ };
+ var mercadosOnline = new PageType("Mercados Online", "cronista.com/MercadosOnline", mercadosOnlineInteractions, mercadosOnlineInteractions, false);
+ pages.push(mercadosOnline);
+}
if (document.querySelector("#pagecontent .news") || document.querySelector("#pagecontent .news-minisite") || document.querySelector("#pagecontent .news-es") || document.querySelector("#pagecontent .news-mx")) {
var metaTag = document.querySelector('meta[property="og:image"]');
var interaction = {
@@ -310,14 +312,15 @@ if (document.querySelector("#pagecontent .news") || document.querySelector("#pag
pages.push(article);
}
+//Función que devuelve el array con las info de las pageType
//[home, payWall, article, logInWall, landingDolar, mercadosOnline]
function Pages() {
- pages.push(home, payWall, logInWall, landingDolar, mercadosOnline);
+ pages.push(home, payWall, logInWall, landingDolar);
return pages;
}
//MATCH PAGE
-function PageType(name, myUrl, interaction, myEvents, isArticle) {
+function PageType(name, myUrl, interaction, myEvents, IsTemplate) {
this.name = name;
this.isMatch = function () {
var url = window.location.href;
@@ -327,13 +330,13 @@ function PageType(name, myUrl, interaction, myEvents, isArticle) {
if (url.charAt(url.length - 1) === '/') {
url = url.slice(0, window.location.href.lastIndexOf('/'));
}
- if (isArticle) {
+ //VALIDO POR TEMPLATE O URL
+ if (IsTemplate) {
isMatch = true;
} else {
isMatch = url === "".concat(enviroment).concat(myUrl) ? true : false;
if (name == "Mercados Online" && validarParteDeURL(url, "MercadosOnline")) {
isMatch = true;
- console.log("La URL contiene la parte especificada.");
}
}
return isMatch;
@@ -342,14 +345,8 @@ function PageType(name, myUrl, interaction, myEvents, isArticle) {
this.listeners = GenerateListeners(name, myEvents);
}
function validarParteDeURL(url, parte) {
- // Escapar caracteres especiales en la parte de la URL para usar en la expresión regular
var parteEscapada = parte.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
-
- // Crear una expresión regular con la parte de la URL
var regex = new RegExp(parteEscapada);
-
- // Verificar si la URL contiene la parte especificada
- console.log(regex.test(url));
return regex.test(url);
}
function GlobalActions(actionEvent) {
@@ -418,16 +415,16 @@ function ReadGlobalEvents(event, listeners) {
if (listeners.labelName == "TAGS") {
switch (event.target.innerText) {
case "EDICIÓN IMPRESA":
- dataName = nameTarget;
+ dataName = "TAG: " + nameTarget;
break;
case "DÓLAR":
- dataName = nameTarget;
+ dataName = "TAG: " + nameTarget;
break;
case "DÓLAR BLUE":
- dataName = nameTarget;
+ dataName = "TAG: " + nameTarget;
break;
case "QUIÉN ES QUIÉN":
- dataName = nameTarget;
+ dataName = "TAG: " + nameTarget;
break;
default:
isSend = false;
src/mySiteMap.js 60(+32 -28)
diff --git a/src/mySiteMap.js b/src/mySiteMap.js
index da8bc02..8c22546 100644
--- a/src/mySiteMap.js
+++ b/src/mySiteMap.js
@@ -108,31 +108,34 @@ let landingDolarInteractions = {
name: "Landing Dólar"
}
-let mercadosOnlineInteractions = {
- name: SalesforceInteractions.CatalogObjectInteractionName.ViewCatalogObject,
- catalogObject: {
- type: "MercadosOnline",
- id: window.cronistaDataLayer[0].articleProperty.id,
- attributes: {
- url: window.location.href,
- name: SalesforceInteractions.cashDom(".section-header-title a").text(),
- },
- relatedCatalogObjects: {
- TipoDeCotizacion: SalesforceInteractions.DisplayUtils.pageElementLoaded(
- "html",
- ).then((ele) => {
- return [window.cronistaDataLayer[0].articleProperty.category.toUpperCase()]
- }),
- },
- },
-}
const home = new PageType("Home", "cronista.com", homeInteractions, homeListeners, false);
const payWall = new PageType("PayWall", "cronista.com/suscripciones", payWallInteractions, payWallListeners, false);
const logInWall = new PageType("LogInWall", "cronista.com/ingresa", logInWallInteractions, logInWallListeners, false);
-const landingDolar = new PageType("Landing Dólar", "cronista.com/MercadosOnline/dolar.html", landingDolarInteractions, landingDolarListeners, false);
-const mercadosOnline = new PageType("Mercados Online", "cronista.com/MercadosOnline", mercadosOnlineInteractions, mercadosOnlineInteractions, false);
+const landingDolar = new PageType("Landing Dólar", "cronista.com/MercadosOnline/dolar.html", landingDolarInteractions, landingDolarListeners, document.querySelector(".page.dolar"));
+if (validarParteDeURL(window.location.href, "MercadosOnline") && !validarParteDeURL(window.location.href, "cronista.com/MercadosOnline/dolar.html")) {
+ let mercadosOnlineInteractions = {
+ name: SalesforceInteractions.CatalogObjectInteractionName.ViewCatalogObject,
+ catalogObject: {
+ type: "MercadosOnline",
+ id: window.cronistaDataLayer[0].articleProperty.id,
+ attributes: {
+ url: window.location.href,
+ name: SalesforceInteractions.cashDom(".section-header-title a").text(),
+ },
+ relatedCatalogObjects: {
+ TipoDeCotizacion: SalesforceInteractions.DisplayUtils.pageElementLoaded(
+ "html",
+ ).then((ele) => {
+ return [window.cronistaDataLayer[0].articleProperty.category.toUpperCase()]
+ }),
+ },
+ },
+ }
+ let mercadosOnline = new PageType("Mercados Online", "cronista.com/MercadosOnline", mercadosOnlineInteractions, mercadosOnlineInteractions, false);
+ pages.push(mercadosOnline)
+}
if (document.querySelector("#pagecontent .news") || document.querySelector("#pagecontent .news-minisite") || document.querySelector("#pagecontent .news-es") || document.querySelector("#pagecontent .news-mx")) {
const metaTag = document.querySelector('meta[property="og:image"]');
@@ -178,14 +181,15 @@ if (document.querySelector("#pagecontent .news") || document.querySelector("#pag
pages.push(article)
}
+//Función que devuelve el array con las info de las pageType
//[home, payWall, article, logInWall, landingDolar, mercadosOnline]
function Pages() {
- pages.push(home, payWall, logInWall, landingDolar, mercadosOnline)
+ pages.push(home, payWall, logInWall, landingDolar)
return pages
}
//MATCH PAGE
-function PageType(name, myUrl, interaction, myEvents, isArticle) {
+function PageType(name, myUrl, interaction, myEvents, IsTemplate) {
this.name = name;
this.isMatch = () => {
let url = window.location.href;
@@ -195,7 +199,8 @@ function PageType(name, myUrl, interaction, myEvents, isArticle) {
if (url.charAt(url.length - 1) === '/') {
url = url.slice(0, window.location.href.lastIndexOf('/'));
}
- if (isArticle) {
+ //VALIDO POR TEMPLATE O URL
+ if (IsTemplate) {
isMatch = true
} else {
isMatch = (url === `${enviroment}${myUrl}` ? true : false);
@@ -203,7 +208,6 @@ function PageType(name, myUrl, interaction, myEvents, isArticle) {
isMatch = true
}
}
-
return isMatch;
};
this.interaction = interaction;
@@ -294,16 +298,16 @@ function ReadGlobalEvents(event, listeners) {
if (listeners.labelName == "TAGS") {
switch (event.target.innerText) {
case "EDICIÓN IMPRESA":
- dataName = nameTarget
+ dataName = "TAG: " + nameTarget
break;
case "DÓLAR":
- dataName = nameTarget
+ dataName = "TAG: " + nameTarget
break;
case "DÓLAR BLUE":
- dataName = nameTarget
+ dataName = "TAG: " + nameTarget
break;
case "QUIÉN ES QUIÉN":
- dataName = nameTarget
+ dataName = "TAG: " + nameTarget
break;
default:
isSend = false