tornStats faction members

description

您需要先安装一个扩展,例如 篡改猴Greasemonkey暴力猴,之后才能安装此脚本。

您需要先安装一个扩展,例如 篡改猴暴力猴,之后才能安装此脚本。

您需要先安装一个扩展,例如 篡改猴暴力猴,之后才能安装此脚本。

您需要先安装一个扩展,例如 篡改猴Userscripts ,之后才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。

您需要先安装用户脚本管理器扩展后才能安装此脚本。

(我已经安装了用户脚本管理器,让我安装!)

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

(我已经安装了用户样式管理器,让我安装!)

// ==UserScript==
// @name         tornStats faction members
// @namespace    namespace
// @version      0.1
// @description  description
// @author       tos
// @match        *.tornstats.com/factions.php?*
// ==/UserScript==

const apiKey = 'APIKEY'
const factionID = 'FACTION_ID'

const get_faction = async () => {
  const res = await fetch(`https://api.torn.com/faction/${factionID}?selections=basic&key=${apiKey}`)
  return await res.json()
}

get_faction().then((f) => {
  const memberIDs = Object.keys(f.members)
  const trList = document.querySelector('#member-access tbody').children
  for (const tr of trList) {
    switch(tr.firstChild.children.length) {
      case 1:
        if (!memberIDs.includes(tr.firstChild.children[0].innerText.split('[')[1].split(']')[0])) tr.firstChild.children[0].style.color = 'red'
        break
      case 2:
        if (!memberIDs.includes(tr.firstChild.children[1].innerText.split('[')[1].split(']')[0])) tr.firstChild.children[1].style.color = 'red'
        break
      default:
        console.log(tr)
        break
    }
  }
})