Автоподписыватель на пользователей д2ру
当前为
// ==UserScript==
// @name D2RUAUTOSUBSCRIBER
// @namespace http://tampermonkey.net/
// @version 0.2
// @description Автоподписыватель на пользователей д2ру
// @author S30N1K
// @match https://dota2.ru/
// @grant none
// ==/UserScript==
(async function () {
const offset = 864000
const lastDate = parseInt(localStorage.getItem("lastSubscribeTime")) || 0
let lastUser = parseInt(localStorage.getItem("lastSubscribeUser")) || 100
const nextUser = async () => {
lastUser += 1;
localStorage.setItem("lastSubscribeUser", lastUser.toString())
await subscribe()
}
const subscribe = async () => {
const response = await fetch("/forum/api/user/subscribe", {
method: 'POST',
body: JSON.stringify({uid: lastUser}),
headers: {
"X-Requested-With": "XMLHttpRequest"
}
})
const result = await response.json()
switch (result.status){
case "already": {
console.log(`${lastUser} уже подписан`)
await nextUser()
break
}
case "success": {
console.log(`${lastUser} успешно подписались`)
await nextUser()
break
}
case "invalidUser":{
await nextUser()
break
}
case "accessDenied": {
console.log("Лимит подписок на сегодня исчерпан")
localStorage.setItem("lastSubscribeTime", (+new Date() + offset).toString())
break
}
default: {
console.log(result)
}
}
}
if ((+new Date()) > lastDate) {
await subscribe()
}
})();