Greasy Fork

Greasy Fork is available in English.

大别野[米游社频道]显示频道用户数

大别野[米游社频道]显示频道用户数。自用

目前为 2023-12-18 提交的版本,查看 最新版本

// ==UserScript==
// @name         大别野[米游社频道]显示频道用户数
// @namespace    http://tampermonkey.net/
// @version      0.2
// @description  大别野[米游社频道]显示频道用户数。自用
// @author       aspen138
// @match        https://dby.miyoushe.com/chat/*
// @icon         https://dby.miyoushe.com/favicon.png
// @grant        GM_addStyle
// @run-at       document-start
// @license      MIT

// ==/UserScript==

(function() {
	'use strict';

	function timestampToTime(timestamp) {
		const milliseconds = timestamp * 1000;
		const date = new Date(milliseconds);
		const year = date.getFullYear();
		const month = addZero(date.getMonth() + 1);
		const day = addZero(date.getDate());
		const hour = addZero(date.getHours());
		const minute = addZero(date.getMinutes());
		const second = addZero(date.getSeconds());

		return `${ year }-${ month }-${ day } ${ hour }:${ minute }:${ second }`;
	}

	function addZero(num) {
		return num < 10 ? `0${ num }` : `${ num }`;
	}


	ajaxHooker.hook(request => {
		if (request.url.includes("https://bbs-api.miyoushe.com/vila/wapi/villa/v2/getVillaFull")
			// || request.url.includes("https://bbs-api.miyoushe.com/vila/wapi/home/list")
		) {
			//console.log("成功劫持")
			//console.log(request)
			request.response = res => {
				//console.log('\n== ↓ ↓ ↓ ↓ ↓ == \n', res)
				var jsonString = res.responseText
				try {
					var json = JSON.parse(jsonString);
					var memberNum = json.data.villa_full_info.villa_info.member_num;
					var createdAt = timestampToTime(Number(json.data.villa_full_info.villa_info.villa_created_at));
					json.data.villa_full_info.villa_info.tags.push('人数:' + memberNum);
					json.data.villa_full_info.villa_info.tags.push('创建时间:' + createdAt);
					res.responseText = JSON.stringify(json);
				} catch (e) {
					console.error("Parsing error:", e);
				}
				GM_addStyle(`
                   .memberNum {
							position: absolute;
							left: 0;
							bottom: -25px;
							color: #999;
						}
                `);
			}
		}
	});
	// Your code here...
})();