Greasy Fork is available in English.

Hiển thị thành viên Dabieye [kênh Mihoyo] & thời gian tạo kênh

Cột thành viên bên phải Dabieye [kênh Mihoyo] hiển thị số lượng người dùng kênh và vị trí nhãn hiển thị thời gian tạo kênh. Sử dụng cá nhân.

// ==UserScript==
// @name         大别野[米游社频道]右侧成员栏显示频道用户数,标签位置显示频道创建时间
// @name:en   Display Dabieye [Mihoyo channel] members & channel creation time
// @description  大别野[米游社频道]右侧成员栏显示频道用户数,标签位置显示频道创建时间。自用
// @description:en   Dabieye [Mihoyo channel] right side member column shows the number of channel users, and the label position shows the channel creation time. Self-use
// @name:ar          عرض أعضاء Dabieye [قناة Mihoyo] ووقت إنشاء القناة
// @description:ar    يعرض عمود الأعضاء على الجانب الأيمن من Dabieye [قناة Mihoyo] عدد مستخدمي القناة، ويعرض موضع الملصق وقت إنشاء القناة. للاستخدام الشخصي.
// @name:bg          Показване на членовете на Dabieye [Mihoyo channel] и времето на създаване на канала
// @description:bg    Колоната за членовете от дясната страна на Dabieye [Mihoyo channel] показва броя на потребителите на канала, а позицията на етикета показва времето на създаване на канала. За лична употреба.
// @name:cs          Zobrazit členy Dabieye [kanál Mihoyo] a čas vytvoření kanálu
// @description:cs    Sloupec členů na pravé straně Dabieye [kanál Mihoyo] zobrazuje počet uživatelů kanálu a pozice štítku zobrazuje čas vytvoření kanálu. Pro vlastní potřebu.
// @name:da          Vis Dabieye [Mihoyo-kanal] medlemmer og kanalens oprettelsestidspunkt
// @description:da    Dabieye [Mihoyo-kanal] højre side medlemskolonne viser antallet af kanalbrugere, og labelpositionen viser kanalens oprettelsestidspunkt. Til eget brug.
// @name:de          Dabieye [Mihoyo-Kanal] Mitglieder und Kanalerstellungszeit anzeigen
// @description:de    Die rechte Spalte für Mitglieder von Dabieye [Mihoyo-Kanal] zeigt die Anzahl der Kanalbenutzer an, und die Labelposition zeigt die Kanalerstellungszeit an. Für den Eigengebrauch.
// @name:el          Εμφάνιση μελών Dabieye [καναλιού Mihoyo] και ώρα δημιουργίας καναλιού
// @description:el    Η δεξιά στήλη μελών του Dabieye [καναλιού Mihoyo] εμφανίζει τον αριθμό των χρηστών του καναλιού και η θέση της ετικέτας εμφανίζει την ώρα δημιουργίας του καναλιού. Για προσωπική χρήση.
// @name:eo          Montri membrojn de Dabieye [Mihoyo-kanalo] kaj kanal-kretempon
// @description:eo    La dekstra membrokolumno de Dabieye [Mihoyo-kanalo] montras la nombron da kanaluzantoj, kaj la etikedpozicio montras la kanal-kretempon. Por propra uzo.
// @name:es          Mostrar miembros de Dabieye [canal Mihoyo] y hora de creación del canal
// @description:es    La columna de miembros del lado derecho de Dabieye [canal Mihoyo] muestra el número de usuarios del canal, y la posición de la etiqueta muestra la hora de creación del canal. Para uso personal.
// @name:fi          Näytä Dabieye [Mihoyo-kanava] jäsenet ja kanavan luontiaika
// @description:fi    Dabieye [Mihoyo-kanava] oikeanpuoleinen jäsenpalsta näyttää kanavan käyttäjien määrän ja tunnisteen sijainti näyttää kanavan luontiajan. Oma käyttö.
// @name:fr          Afficher les membres Dabieye [chaîne Mihoyo] et l'heure de création de la chaîne
// @description:fr    La colonne des membres à droite de Dabieye [chaîne Mihoyo] affiche le nombre d'utilisateurs de la chaîne, et la position de l'étiquette affiche l'heure de création de la chaîne. Pour usage personnel.
// @name:fr-CA       Afficher les membres Dabieye [chaîne Mihoyo] et l'heure de création de la chaîne
// @description:fr-CA    La colonne des membres à droite de Dabieye [chaîne Mihoyo] affiche le nombre d'utilisateurs de la chaîne, et la position de l'étiquette affiche l'heure de création de la chaîne. Pour usage personnel.
// @name:he          הצג חברים Dabieye [ערוץ Mihoyo] ושעת יצירת הערוץ
// @description:he    עמודת החברים בצד ימין של Dabieye [ערוץ Mihoyo] מציגה את מספר משתמשי הערוץ, ומיקום התווית מציג את שעת יצירת הערוץ. לשימוש עצמי.
// @name:hr          Prikaži članove Dabieye [Mihoyo kanal] i vrijeme stvaranja kanala
// @description:hr    Stupac članova s desne strane Dabieye [Mihoyo kanal] prikazuje broj korisnika kanala, a položaj oznake prikazuje vrijeme stvaranja kanala. Za osobnu upotrebu.
// @name:hu          Dabieye [Mihoyo csatorna] tagok és csatorna létrehozási idő megjelenítése
// @description:hu    A Dabieye [Mihoyo csatorna] jobb oldali tagoszlopában megjelenik a csatorna felhasználóinak száma, a címke pozíciója pedig a csatorna létrehozási idejét mutatja. Saját használatra.
// @name:id          Tampilkan anggota Dabieye [saluran Mihoyo] & waktu pembuatan saluran
// @description:id    Kolom anggota sisi kanan Dabieye [saluran Mihoyo] menampilkan jumlah pengguna saluran, dan posisi label menampilkan waktu pembuatan saluran. Untuk penggunaan pribadi.
// @name:it          Mostra i membri Dabieye [canale Mihoyo] e l'ora di creazione del canale
// @description:it    La colonna dei membri sul lato destro di Dabieye [canale Mihoyo] mostra il numero di utenti del canale e la posizione dell'etichetta mostra l'ora di creazione del canale. Per uso personale.
// @name:ja          大别野[ミホヨチャンネル]のメンバーとチャンネル作成時間を表示
// @description:ja    大别野[ミホヨチャンネル]右側のメンバー欄にチャンネルユーザー数を表示し、ラベル位置にチャンネル作成時間を表示します。個人的な使用。
// @name:ka          Dabieye [Mihoyo-ს არხი] წევრებისა და არხის შექმნის დროის ჩვენება
// @description:ka    Dabieye [Mihoyo-ს არხი]-ის მარჯვენა მხარეს წევრების სვეტი აჩვენებს არხის მომხმარებელთა რაოდენობას, ხოლო წარწერის პოზიცია აჩვენებს არხის შექმნის დროს. პირადი მოხმარებისთვის.
// @name:ko          Dabieye [Mihoyo 채널] 회원 및 채널 생성 시간 표시
// @description:ko    Dabieye [Mihoyo 채널] 오른쪽 회원 열에 채널 사용자 수가 표시되고 레이블 위치에 채널 생성 시간이 표시됩니다. 개인 용도.
// @name:nb          Vis Dabieye [Mihoyo-kanal] medlemmer og kanalopprettelsestidspunkt
// @description:nb    Dabieye [Mihoyo-kanal] høyre side medlemskolonne viser antall kanalbrukere, og etikettposisjonen viser kanalopprettelsestidspunktet. For eget bruk.
// @name:nl          Toon Dabieye [Mihoyo-kanaal] leden en kanaal aanmaaktijd
// @description:nl    De rechter ledenkolom van Dabieye [Mihoyo-kanaal] toont het aantal kanaalgebruikers en de labelpositie toont de kanaal aanmaaktijd. Voor eigen gebruik.
// @name:pl          Wyświetl członków Dabieye [kanał Mihoyo] i czas utworzenia kanału
// @description:pl    Kolumna członków po prawej stronie Dabieye [kanał Mihoyo] wyświetla liczbę użytkowników kanału, a pozycja etykiety wyświetla czas utworzenia kanału. Do użytku osobistego.
// @name:pt-BR       Exibir membros do Dabieye [canal Mihoyo] e hora de criação do canal
// @description:pt-BR    A coluna de membros do lado direito do Dabieye [canal Mihoyo] mostra o número de usuários do canal, e a posição do rótulo mostra a hora de criação do canal. Para uso pessoal.
// @name:ro          Afișează membrii Dabieye [canal Mihoyo] și ora creării canalului
// @description:ro    Coloana de membri din partea dreaptă a Dabieye [canal Mihoyo] afișează numărul de utilizatori ai canalului, iar poziția etichetei afișează ora creării canalului. Pentru uz personal.
// @name:ru          Показать участников Dabieye [канал Mihoyo] и время создания канала
// @description:ru    Столбец участников справа на странице Dabieye [канал Mihoyo] отображает количество пользователей канала, а в метке отображается время создания канала. Для личного использования.
// @name:sk          Zobraziť členov Dabieye [kanál Mihoyo] a čas vytvorenia kanála
// @description:sk    Stĺpec členov na pravej strane Dabieye [kanál Mihoyo] zobrazuje počet používateľov kanála a pozícia štítku zobrazuje čas vytvorenia kanála. Pre osobné použitie.
// @name:sr          Прикажи чланове Dabieye [Mihoyo канал] и време креирања канала
// @description:sr    Колона чланова са десне стране Dabieye [Mihoyo канал] приказује број корисника канала, а позиција етикете приказује време креирања канала. За личну употребу.
// @name:sv          Visa medlemmar i Dabieye [Mihoyo-kanal] och kanalens skapandetid
// @description:sv    Dabieye [Mihoyo-kanal] höger sidokolumn visar antalet kanalanvändare och etikettpositionen visar kanalens skapandetid. För eget bruk.
// @name:th          แสดงสมาชิก Dabieye [ช่อง Mihoyo] และเวลาสร้างช่อง
// @description:th    คอลัมน์สมาชิกด้านขวาของ Dabieye [ช่อง Mihoyo] แสดงจำนวนผู้ใช้ช่อง และตำแหน่งป้ายกำกับแสดงเวลาสร้างช่อง สำหรับใช้ส่วนตัว
// @name:tr          Dabieye [Mihoyo kanalı] üyelerini ve kanal oluşturma zamanını göster
// @description:tr    Dabieye [Mihoyo kanalı] sağ tarafındaki üye sütunu, kanal kullanıcılarının sayısını ve etiket konumu kanal oluşturma zamanını gösterir. Kişisel kullanım için.
// @name:ug          Dabieye [Mihoyo قانىلى] ئەزالىرى ۋە قانال قۇرۇلغان ۋاقتىنى كۆرسىتىش
// @description:ug    Dabieye [Mihoyo قانىلى] ئوڭ تەرەپتىكى ئەزالار تۈۋرۈكى قانال ئىشلەتكۈچىلىرىنىڭ سانىنى كۆرسىتىدۇ ، بەلگە ئورنى قانالنىڭ قۇرۇلغان ۋاقتىنى كۆرسىتىدۇ. شەخسىي ئىشلىتىش ئۈچۈن.
// @name:uk          Показати членів Dabieye [канал Mihoyo] та час створення каналу
// @description:uk    Стовпець членів праворуч на сторінці Dabieye [канал Mihoyo] показує кількість користувачів каналу, а мітка показує час створення каналу. Для особистого використання.
// @name:vi          Hiển thị thành viên Dabieye [kênh Mihoyo] & thời gian tạo kênh
// @description:vi    Cột thành viên bên phải Dabieye [kênh Mihoyo] hiển thị số lượng người dùng kênh và vị trí nhãn hiển thị thời gian tạo kênh. Sử dụng cá nhân.
// @name:zh          大别野[米游社频道]右侧成员栏显示频道用户数和频道创建时间
// @description:zh    大别野[米游社频道]右侧成员栏显示频道用户数,标签位置显示频道创建时间。自用
// @name:zh-CN       大别野[米游社频道]右侧成员栏显示频道用户数和频道创建时间
// @description:zh-CN    大别野[米游社频道]右侧成员栏显示频道用户数,标签位置显示频道创建时间。自用
// @name:zh-HK       大別野[米游社頻道]右側成員欄顯示頻道用戶數和頻道創建時間
// @description:zh-HK    大別野[米游社頻道]右側成員欄顯示頻道用戶數,標籤位置顯示頻道創建時間。自用
// @name:zh-SG       大别野[米游社频道]右侧成员栏显示频道用户数和频道创建时间
// @description:zh-SG    大别野[米游社频道]右侧成员栏显示频道用户数,标签位置显示频道创建时间。自用
// @name:zh-TW       大別野[米游社頻道]右側成員欄顯示頻道用戶數和頻道創建時間
// @description:zh-TW    大別野[米游社頻道]右側成員欄顯示頻道用戶數,標籤位置顯示頻道創建時間。自用
// @namespace    http://tampermonkey.net/
// @version      0.4.2.1
// @author       aspen138
// @match        https://dby.miyoushe.com/*
// @match        https://dby.miyoushe.com/chat/*
// @icon         https://dby.miyoushe.com/favicon.png
// @require      https://updategreasyfork.deno.dev/scripts/483208/1302155/ajaxHooker_myaijarvis.js
// @grant        GM_addStyle
// @run-at       document-start
// @license      MIT
// ==/UserScript==
 
 
 
// 定义一个全局对象,用来包装memberNum
var globals = {};
 
 
// Define the updateMemberText function
const updateMemberText = () => {
    console.log("触发updateMemberText");
 
    // Use setInterval to periodically check for the elements
    const intervalId = setInterval(() => {
        var elements = document.querySelectorAll('#__nuxt > div > div > div:nth-child(3) > div > h2');
        console.log(elements);
 
        // Only proceed if elements are found
        if (elements.length > 0) {
            elements.forEach(targetElement => {
                if (targetElement && targetElement.textContent.includes('')) {
                    targetElement.childNodes.forEach((child) => {
                        if (child.nodeType === Node.TEXT_NODE && child.textContent.includes('')) {
                            console.log("这个应该后出现 频道人数函数里", globals.memberNum);
                            child.textContent = globals.memberNum + '名频道成员';
                        }
                    });
                }
            });
 
            // Clear the interval once updates are made
            clearInterval(intervalId);
        }
    }, 100); // Check every 100ms or any other reasonable time interval
};
 
 
//"退出大别野"文字改为更容易理解的"退出此频道"
(function (){
  // Function to observe DOM changes
    const observeDOM = () => {
        // Options for the observer (which mutations to observe)
        const config = {
            childList: true,
            subtree: true
        };
 
        // Callback function to execute when mutations are observed
        const callback = function(mutationsList, observer) {
            for (let mutation of mutationsList) {
                if (mutation.type === 'childList') {
                    changeTextContent();
                }
            }
        };
 
        // Create an observer instance linked to the callback function
        const observer = new MutationObserver(callback);
 
        // Start observing the target node for configured mutations
        observer.observe(document.body, config);
    };
 
    // Function to change the text content
    const changeTextContent = () => {
        // Select the element based on its inner text
        let elements = Array.from(document.querySelectorAll('span'));
        let targetElement = elements.find(el => el.textContent.includes('退出大别野'));
 
        // If the element is found, change its text content
        if (targetElement) {
            targetElement.textContent = '退出此频道';
        }
    };
 
    // Wait for the DOM to be fully loaded
    document.addEventListener('DOMContentLoaded', observeDOM);
})();
 
 
(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);
                    globals.memberNum = json.data.villa_full_info.villa_info.member_num;
                    var createdAt = timestampToTime(Number(json.data.villa_full_info.villa_info.villa_created_at));
                    console.log("这个应该先出现    频道人数函数里",globals.memberNum)
                    //json.data.villa_full_info.villa_info.tags.push('人数:' + globals.memberNum);
                    setTimeout(updateMemberText(),10*1000);
                    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...
})();