// ==UserScript==
// @name PT站自动签到
// @author csf2001
// @namespace csf2001
// @version 1.0.1
// @license MIT
// @description pt站自动点击签到
// @match *://www.hitpt.com/*
// @match *://ptfans.cc/*
// @match *://rousi.zip/*
// @match *://sunnypt.top/*
// @match *://crabpt.vip/*
// @match *://zmpt.cc/*
// @match *://ptlgs.org/*
// @match *://sanpro.pw/*
// @match *://pt.0ff.cc/*
// @match *://cyanbug.net/*
// @match *://open.cd/*
// @match *://ourbits.club/*
// @match *://hdhome.org/*
// @match *://hdchina.org/*
// @match *://pterclub.com/*
// @match *://lemonhd.org/*
// @match *://www.pthome.net/*
// @match *://pt.btschool.club/*
// @match *://pt.soulvoice.club/*
// @match *://1ptba.com/*
// @match *://www.hddolby.com/*
// @match *://hdzone.me/*
// @match *://hddisk.life/*
// @match *://discfan.net/*
// @match *://www.hdarea.co/*
// @match *://hdcity.city/*
// @match *://dhcmusic.xyz/*
// @match *://totheglory.im/*
// @match *://www.nicept.net/*
// @match *://yingk.com/*
// @match *://hdstreet.club/*
// @match *://52pt.site/*
// @match *://moecat.best/*
// @match *://pt.hd4fans.org/*
// @match *://www.haidan.video/*
// @match *://www.pttime.org/*
// @match *://hdtime.org/*
// @match *://audiences.me/*
// @match *://*.tjupt.org/*
// @match *://*.hdfans.org/*
// @match *://*.oshen.win/*
// @match *://*.sharkpt.net/*
// @grant none
// ==/UserScript==
(function () {
var host = window.location.host;
var href = window.location.href;
function checkAndClick(element, text, additionalCondition = true) {
if (element && element.innerText.indexOf(text) !== -1 && additionalCondition) {
element.click();
}
}
setTimeout(function () {
var elements = {
hitptSign: document.getElementsByClassName("faqlink")[0],
ptfansSign: document.getElementsByClassName("faqlink")[0],
rousiSign: document.getElementsByClassName("faqlink")[0],
sunnyptSign: document.getElementsByClassName("faqlink")[0],
crabptSign: document.getElementsByClassName("faqlink")[0],
zmptSign: document.getElementsByClassName("faqlink")[0],
ptlgsSign: document.getElementsByClassName("faqlink")[0],
sanproSign: document.getElementsByClassName("faqlink")[0],
pt0ffSign: document.getElementsByClassName("faqlink")[0],
cyanbugSign: document.getElementsByClassName("nav-btn")[3],
opencdSign: document.getElementsByClassName("infos-bar")[4]?.getElementsByTagName("a")[0],
ourbitsSign: document.getElementsByClassName("faqlink")[0],
hdhomeSign: document.getElementsByClassName("faqlink")[0],
hdchinaSign: document.getElementsByClassName("userinfort")[0]?.getElementsByTagName("a")[1],
pterSign: document.getElementsByClassName("faqlink")[0],
lemonhdSign: document.getElementsByClassName("faqlink")[0],
pthomeSign: document.getElementsByClassName("faqlink")[0],
btschoolSign: Array.from(document.getElementById("outer")?.getElementsByTagName("a") || []).find(a => a.href.indexOf("addbonus") !== -1),
soulvoiceSign: document.getElementsByClassName("faqlink")[0],
_1ptbaSign: document.getElementsByClassName("faqlink")[0],
hddolbySign: document.getElementsByClassName("faqlink")[0],
hdzoneSign: document.getElementsByClassName("faqlink")[0],
hddiskSign: document.getElementsByClassName("faqlink")[0],
discfanSign: document.getElementsByClassName("faqlink")[0],
hdareaSign: document.getElementById("sign_in")?.getElementsByTagName("a")[0],
hdcitySign: document.getElementById("bottomnav")?.getElementsByTagName("a")[1],
dhcmusicSign: document.getElementsByClassName("faqlink")[0],
ttgSign: document.getElementById("sp_signed")?.getElementsByTagName("a")[0],
niceptSign: document.getElementsByClassName("faqlink")[0],
haidanSign: document.getElementById("modalBtn"),
pttimeSign: document.getElementsByClassName("faqlink")[0],
hdtimeSign: document.getElementsByClassName("faqlink")[0],
audiencesSign: document.getElementsByClassName("faqlink")[0],
hdfansSign: document.getElementsByClassName("faqlink")[0],
oshenSign: document.getElementsByClassName("faqlink")[0],
sharkptSign: Array.from(document.getElementsByTagName('shark-tooltip') || []).find(e => e.label === '签到')?.getElementsByTagName('shark-icon-button')[0]?.shadowRoot.querySelector('.button--high-warn'),
yingkSign: document.getElementById("game"),
hdstreetSign: document.getElementsByClassName("medium")[0]?.getElementsByTagName("a")[5],
_52ptSign: document.getElementById("game"),
moecatSign: document.getElementById("game"),
hd4fanSign: document.getElementById("checkin")?.getElementsByTagName("a")[0],
tjuptSign: document.getElementsByClassName("faqlink")[0],
};
var conditions = [
{ host: "hitpt", element: elements.hitptSign, text: "签到得魔力" },
{ host: "ptfans", element: elements.ptfansSign, text: "签到得魔力" },
{ host: "rousi", element: elements.rousiSign, text: "签到得魔力" },
{ host: "sunnypt", element: elements.sunnyptSign, text: "签到得魔力" },
{ host: "crabpt", element: elements.crabptSign, text: "签到得蟹币" },
{ host: "zmpt", element: elements.zmptSign, text: "签到得电力" },
{ host: "ptlgs", element: elements.ptlgsSign, text: "签到得工分" },
{ host: "sanpro", element: elements.sanproSign, text: "签到得魔力" },
{ host: "pt.0ff", element: elements.pt0ffSign, text: "签到得魔力", additionalCondition: href.indexOf("attendance") < 0 },
{ host: "cyanbug", element: elements.cyanbugSign, text: "签到得魔力" },
{ host: "open.cd", element: elements.opencdSign, text: "签到" },
{ host: "ourbits", element: elements.ourbitsSign, text: "签到得魔力" },
{ host: "hdhome", element: elements.hdhomeSign, text: "签到得魔力" },
{ host: "hdchina", element: elements.hdchinaSign, text: "签 到" },
{ host: "pterclub", element: elements.pterSign, text: "签到得猫粮" },
{ host: "lemonhd", element: elements.lemonhdSign, text: "签到" },
{ host: "pthome", element: elements.pthomeSign, text: "签到得魔力" },
{ host: "btschool", element: elements.btschoolSign, text: "每日签到" },
{ host: "soulvoice", element: elements.soulvoiceSign, text: "签到得魔力" },
{ host: "1ptba", element: elements._1ptbaSign, text: "签到得魔力" },
{ host: "hddolby", element: elements.hddolbySign, text: "签到得鲸币" },
{ host: "hdzone", element: elements.hdzoneSign, text: "签到得魔力" },
{ host: "hddisk", element: elements.hddiskSign, text: "签到得魔力" },
{ host: "discfan", element: elements.discfanSign, text: "签到得魔力" },
{ host: "hdarea", element: elements.hdareaSign, text: "签到" },
{ host: "hdcity", element: elements.hdcitySign, text: "签到", additionalCondition: elements.hdcitySign?.innerText.indexOf("已签到") < 0 },
{ host: "dhcmusic", element: elements.dhcmusicSign, text: "签到得魔力" },
{ host: "totheglory", element: elements.ttgSign, text: "签到" },
{ host: "nicept", element: elements.niceptSign, text: "签到得魔力" },
{ host: "haidan", element: elements.haidanSign, text: "每日打卡" },
{ host: "pttime", element: elements.pttimeSign, text: "签到领魔力" },
{ host: "hdtime", element: elements.hdtimeSign, text: "签到得魔力" },
{ host: "audiences", element: elements.audiencesSign, text: "签到得魔力" },
{ host: "hdfans", element: elements.hdfansSign, text: "签到得魔力" },
{ host: "oshen", element: elements.oshenSign, text: "签到得魔力" },
{ host: "sharkpt", element: elements.sharkptSign },
{ host: "yingk", element: elements.yingkSign, text: "每日签到", additionalCondition: href.indexOf("bakatest") < 0 },
{ host: "hdstreet", element: elements.hdstreetSign, text: "每日签到", additionalCondition: href.indexOf("bakatest") < 0 },
{ host: "52pt", element: elements._52ptSign, text: "签到赚魔力", additionalCondition: href.indexOf("bakatest") < 0 },
{ host: "moecat", element: elements.moecatSign, text: "每日签到", additionalCondition: href.indexOf("bakatest") < 0 },
{ host: "hd4fans", element: elements.hd4fanSign, text: "签 到" },
{ host: "tjupt", element: elements.tjuptSign, text: "签到得魔力", additionalCondition: href.indexOf("attendance") < 0 },
];
conditions.forEach(({ host: siteHost, element, text, additionalCondition = true }) => {
if (host.indexOf(siteHost) !== -1) {
checkAndClick(element, text, additionalCondition);
}
});
}, 500);
})();