TabunAva

Случайные аватары по псевдониму на Табуне

目前為 2021-11-14 提交的版本,檢視 最新版本

// ==UserScript==
// @name         TabunAva
// @namespace    http://tampermonkey.net/
// @version      0.1
// @description  Случайные аватары по псевдониму на Табуне
// @author       Kujivunia или Niko_de_Andjelo
// @match        https://tabun.everypony.ru/*
// @grant        none
// @license MIT
// ==/UserScript==

//Замена аватарок
var Avatar="https://cdn.everypony.ru/static/local/avatar_" ;//Сокращение ссылок на аватарки
//IDENTICON: https://avatars.dicebear.com/styles/identicon
var identicon = "https://avatars.dicebear.com/api/identicon/:"
var identiconParams = ".svg?scale=100&size=24"
var cInf = document.getElementsByClassName('comment-info');

[].forEach.call(cInf,function(element) {
    if (element.getElementsByClassName('comment-author')[0].children[0].children[0].src == (Avatar + 'male_24x24.png') || element.getElementsByClassName('comment-author')[0].children[0].children[0].src == (Avatar + 'female_24x24.png')){
        var temp = element.getElementsByClassName('comment-author');
        var name = temp[0].children[1].innerText;
        temp[0].children[0].children[0].src = identicon + name + identiconParams;
    }
});

function change_avatar() { //Отдельная функция для замены аватарок у новых комментариев.

    [].forEach.call(cInf,function(element) {
        if (element.getElementsByClassName('comment-author')[0].children[0].children[0].src == (Avatar + 'male_24x24.png') || element.getElementsByClassName('comment-author')[0].children[0].children[0].src == (Avatar + 'female_24x24.png')){
            var temp = element.getElementsByClassName('comment-author');
            var name = temp[0].children[1].innerText;
            temp[0].children[0].children[0].src = identicon + name + identiconParams;
        }
    });
}

document.getElementById('count-comments').addEventListener('DOMSubtreeModified', function() { //Смотрит число комментариев и при изменении запускает смену аватарок. Без этого новые комментарии будут с обычными аватарками.
    change_avatar() });