", "" ].join("") .replace("$$TEXT_ALIGN_CLASS$$", textAlignClass) .replace("$$COLUMN_TEXT$$", input.columnText); } function prepareTeamColumn(input) { var containerOpen = "", containerOpen, "
", " " ].join("") .replaceAll("$$TEAM_FLAG_SIZE$$", teamLogoSize) .replaceAll("$$TEAM_SLUG$$", input.teamSlug) .replaceAll("$$RANK$$", input.rank) .replaceAll("$$TEAM_FLAG_SRC$$", "data:image/svg+xml;charset=utf-8,") .replaceAll("$$TEAM_FLAGS$$", teamAssetImage) .replaceAll("$$TEAM_FLAG_PARAMS$$", "?w=" + teamLogoSize * 4) .replaceAll("$$TEAM_NAME$$", input.teamName); } function prepareTabularData(groupedData) { var rows = []; groupedData.forEach(function(standing) { var columns = []; columns.push(prepareTextColumn({ columnText: standing.position })); columns.push(prepareTeamColumn({ teamSlug: standing.team_slug, rank: standing.position, teamFlag: standing.team_flag, teamName: SHOULD_USE_TEAM_FULL_NAME ? standing.team_name : standing.team_short_name, qualified: !!standing.qualified })); columns.push(prepareTextColumn({ columnText: standing.played })); columns.push(prepareTextColumn({ columnText: standing.won })); columns.push(prepareTextColumn({ columnText: standing.lost })); columns.push(prepareTextColumn({ columnText: standing.tied })); columns.push(prepareTextColumn({ columnText: standing.points, classes: "selected" })); columns.push(prepareTextColumn({ columnText: standing.nrr })); rows.push([ "", columns.join("\n"), " " ].join("")); }); return rows.join("\n"); } function onTeamNameClicked(e) { var target = e.target.closest("a.points-table-team"); if (!target) return; var destinationUrl = target.getAttribute("href"); if (!destinationUrl) return; var teamName = target.innerText; trackGAEvent("TEAM_NAME_CLICKED", { section: "points_table", destination_url: destinationUrl, taem_name: teamName }); } function initAnalytics(tableContainer) { var tableBody = tableContainer.querySelector("tbody"); if (tableBody) { tableBody.querySelectorAll("a.points-table-team").forEach(function(teamAnchor) { teamAnchor.addEventListener("click", onTeamNameClicked); }); } } function init() { if (!container) return; var groupContainers = container.querySelectorAll(".cricket-points-table"); if (!groupContainers.length) return; groupContainers.forEach(function(groupContainer) { initAnalytics(groupContainer); }); var refreshData = function() { getRefreshedDataByAjax(function(response) { try { if (!response) return; if (!response["table"]) return; if (!response["table"][0]) return; if (!response["table"][0]["table"]) return; var pointsTableData = response["table"][0]["table"]; var pointsTableDataByGroup = {}; pointsTableData.forEach(function(group) { pointsTableDataByGroup[group.group_name] = group["group"]; }); groupContainers.forEach(function(groupContainer) { var groupTitle = groupContainer.dataset["groupTitle"]; var groupData = pointsTableDataByGroup[groupTitle]; if (Array.isArray(groupData) && groupData.length) { var tableBody = groupContainer.querySelector("table.keeda-data-table tbody"); if (tableBody) { var pointsTableDataForDom = prepareTabularData(groupData); tableBody.innerHTML = pointsTableDataForDom; window.dispatchEvent(new CustomEvent("custom:sk:utils:lazyLoadAssetImages")); initAnalytics(groupContainer); } } }); setTimeout(refreshData, REFRESH_INTERVAL_SECONDS * 1000); } catch (err) { console.error("Error while preparing points table DOM data", err); } }); } refreshData(); } window.addEventListener("DOMContentLoaded", init); })();
"; var containerClose = "
"; if (input.teamSlug) { containerOpen = ""; containerClose = ""; } if (input.qualified) { containerOpen = containerOpen.replaceAll("points-table-team", "points-table-team qualified"); } var teamAssetImage = generateTeamAssetImage(input.teamSlug, "cricket", [ input.teamFlag, defaultTeamFlag ]); return [ "$$TEAM_NAME$$
", containerClose, "ncG1vNJzZmivp6x7tLzOq6uso5WasaJ6wqikaJ%2BfZLCxuI6ppqKmpKh6ta3BpZw%3D