From 8d8ccd8e9d447766517ae2eb6e916ccd818dfbc8 Mon Sep 17 00:00:00 2001 From: samuel Date: Mon, 24 Nov 2025 18:45:41 +0100 Subject: [PATCH] Add player id in ranking and ally members --- CHANGELOG.md | 4 ++++ manifest.json | 2 +- metadata.json | 4 ++-- src/kaplus.js | 23 ++++++++++++++++++++++- 4 files changed, 29 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 2401634..5e96518 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,9 @@ # Changelog +## 1.11.1 (2026-11-24) + +- ajout de l'id des joueurs dans le classement général et la liste des membres de l'alliance + ## 1.10.1 (2026-11-20) - envoi des ressources par milliers sur le marché diff --git a/manifest.json b/manifest.json index 82a83e1..e494cec 100644 --- a/manifest.json +++ b/manifest.json @@ -1,7 +1,7 @@ { "manifest_version": 3, "name": "KAplus", - "version": "1.10.1", + "version": "1.11.1", "developer": { "name": "Samuel Campos", diff --git a/metadata.json b/metadata.json index af001b3..2a306d0 100644 --- a/metadata.json +++ b/metadata.json @@ -5,8 +5,8 @@ "firefox" ], "release_notes": { - "fr": "- envoi des ressources par milliers sur le marché", - "en-US": "- send resources by thousands in market" + "fr": "- ajout de l'id des joueurs dans le classement général et la liste des membres de l'alliance", + "en-US": "- add players id in ranking and ally members pages" } } } \ No newline at end of file diff --git a/src/kaplus.js b/src/kaplus.js index 4c8cf2b..0923fff 100644 --- a/src/kaplus.js +++ b/src/kaplus.js @@ -27,7 +27,9 @@ function createCustomElement(tag, attrs, text, style) { let elt = document.createElement(tag); if (attrs) { for (let [key, value] of Object.entries(attrs)) { - elt.setAttribute(key, value.toString()); + if (value !== null) { + elt.setAttribute(key, value.toString()); + } } } if (text) { @@ -163,6 +165,25 @@ function main() { let sub = urlParams.get("sub"); let sendCommandForm = document.getElementById("sendCommandForm"); + /* Add player id on ranking */ + if (section === "ranking" || (section === "ally" && module === "members")) { + let mainContentPane = document.getElementsByClassName("contentpane")[1]; + let borderListTable = mainContentPane.getElementsByClassName("borderlist")[0]; + let playerRows = borderListTable.getElementsByTagName("tr"); + + let headerCells = playerRows[0].getElementsByTagName("th"); + let idHeaderCell = createCustomElement("th", {"class": headerCells[0].getAttribute("class")}, "Id"); + playerRows[0].insertBefore(idHeaderCell, headerCells[1]); + + for (let i = 1; i < playerRows.length; i ++) { + let playerCells = playerRows[i].getElementsByTagName("td"); + let playerProfileLink = playerCells[1].getElementsByTagName("a")[0].getAttribute("href"); + let idValue = playerProfileLink.replace(/^.*id=(\d+)$/, "$1"); + let idCell = createCustomElement("td", {"class": playerCells[0].getAttribute("class")}, idValue); + playerRows[i].insertBefore(idCell, playerCells[1]); + } + } + /* Display unit-points on user profile */ if (section === "info_player" && (module === "profile" || module === null)) { let mainContentPane = document.getElementsByClassName("contentpane")[1];