Greasy Fork is available in English.

Stats

Добовляет статистику вашей статистики на экран

Na nainštalovanie skriptu si budete musieť nainštalovať rozšírenie, ako napríklad Tampermonkey, Greasemonkey alebo Violentmonkey.

Na inštaláciu tohto skriptu je potrebné nainštalovať rozšírenie, ako napríklad Tampermonkey.

Na nainštalovanie skriptu si budete musieť nainštalovať rozšírenie, ako napríklad Tampermonkey, % alebo Violentmonkey.

Na nainštalovanie skriptu si budete musieť nainštalovať rozšírenie, ako napríklad Tampermonkey alebo Userscripts.

Na inštaláciu tohto skriptu je potrebné nainštalovať rozšírenie, ako napríklad Tampermonkey.

Na inštaláciu tohto skriptu je potrebné nainštalovať rozšírenie správcu používateľských skriptov.

(Už mám správcu používateľských skriptov, nechajte ma ho nainštalovať!)

Na inštaláciu tohto štýlu je potrebné nainštalovať rozšírenie, ako napríklad Stylus.

Na inštaláciu tohto štýlu je potrebné nainštalovať rozšírenie, ako napríklad Stylus.

Na inštaláciu tohto štýlu je potrebné nainštalovať rozšírenie, ako napríklad Stylus.

Na inštaláciu tohto štýlu je potrebné nainštalovať rozšírenie správcu používateľských štýlov.

Na inštaláciu tohto štýlu je potrebné nainštalovať rozšírenie správcu používateľských štýlov.

Na inštaláciu tohto štýlu je potrebné nainštalovať rozšírenie správcu používateľských štýlov.

(Už mám správcu používateľských štýlov, nechajte ma ho nainštalovať!)

// ==UserScript==
// @name         Stats
// @namespace    http://tampermonkey.net/
// @version      0.1
// @description  Добовляет статистику вашей статистики на экран
// @author       Уэнсдэй
// @match        https://zelenka.guru/*
// @grant        GM_addStyle
// ==/UserScript==

// Set your token here
const TOKEN = " СЮда свой токен ";

function applyUserStatsStyles() {
    const options = {
        method: 'GET',
        headers: {
            accept: 'application/json',
            authorization: `Bearer ${TOKEN}`
        }
    };

    fetch('https://api.zelenka.guru/users/me', options)
        .then(response => response.json())
        .then(data => {

            if (data && data.user && data.user.user_like_count !== undefined && data.user.user_message_count !== undefined) {
                const userLikeCount = data.user.user_like_count;
                const userMessageCount = data.user.user_message_count;


                const statsElement = document.createElement('span');
                statsElement.classList.add('user-stats');
                statsElement.textContent = `❤ Симпатии ${userLikeCount} | ✉ Сообщения ${userMessageCount}`;


                const navigationElement = document.getElementById('navigation');
                if (navigationElement) {

                    const existingStatsElement = document.querySelector('.user-stats');
                    if (existingStatsElement) {
                        existingStatsElement.remove();
                    }

                    navigationElement.appendChild(statsElement);
                } else {
                    console.error('Ошибка: Элемент с id="navigation" не найден');
                }
            } else {
                console.error('Ошибка: Некорректный формат ответа от API');
                alert('Ошибка при получении данных. Проверьте консоль для дополнительной информации.');
            }
        })
        .catch(err => {
            console.error(err);
            alert('Произошла ошибка. Проверьте консоль для дополнительной информации.');
        });
}


GM_addStyle(`
    #navigation {
        position: relative;
    }

    .user-stats {
        position: absolute;
        right: 10px; /* Optional right margin */
        top: 50%;
        transform: translateY(-50%);
        color: #8C8C8C; /* Optional text color */
        margin-right: 5px; /* Optional margin between text and screen edge */
    }
`);


window.addEventListener('load', applyUserStatsStyles);
setInterval(applyUserStatsStyles, 500000);