Отображение заметки о пользоватале
当前为
// ==UserScript==
// @name User Notes
// @namespace http://tampermonkey.net/
// @author Nicky (https://zelenka.guru/members/2259792/)
// @version 1.1
// @description Отображение заметки о пользоватале
// @match https://zelenka.guru/*
// @icon https://zelenka.guru/data/avatars/l/2259/2259792.jpg?1690711557
// @grant GM_setValue
// @grant GM_getValue
// ==/UserScript==
function registerInput(element, link) {
element[0].addEventListener('input', function (evt) {
GM_setValue($(this).val());
});
element.val(GM_getValue(link, ''));
element.keypress(function(e) {
if (e.which === 13) {
GM_setValue(link, $(this).val());
XenForo.alert('Изменения сохранены', '', 2000);
}
});
}
function addNote(element = null){
let createInput = () => {
return $('<input type="text" id="link_input" placeholder="none" autocomplete="off" style="background: rgb(0, 0, 0, 0) !important; color: rgb(214, 214, 214);border: 0; width: -webkit-fill-available; padding: 3px 0 1px">');
};
if (window.location.href == 'https://zelenka.guru/account/ignored' && !element) {
let member = document.getElementsByClassName('member');
for (let element of member) {
let input = createInput();
let userStatus = element.querySelector('.userBlurb');
input[0].style.width = '71%';
userStatus.after(input[0]);
registerInput(input, element.querySelector('a[href]').href);
}
return
}
else if (element) {
let input = createInput();
input[0].style.color = 'rgb(148, 148, 148)';
let userStatus = element.querySelector('.userTitleBlurb');
userStatus.after(input[0]);
registerInput(input, element.querySelector('a[href]').href);
}
else {
let input = createInput();
let pageTop = $('.page_top');
pageTop[0].insertBefore(input[0], pageTop[0].lastChild);
registerInput(input, window.location.href);
let memberInfo = document.getElementsByClassName('memberInfo');
for (let element of memberInfo) {
let input = createInput();
input.css({'color': 'rgb(148, 148, 148)', 'font-size': '12px'});
let userStatus = element.querySelector('.userTitle');
userStatus.after(input[0]);
registerInput(input, element.querySelector('a[href]').href);
}
}
}
window.onload = function() {
const observer = new MutationObserver(function(mutationsList) {
for (let mutation of mutationsList) {
for (let addedNode of mutation.addedNodes) {
if (addedNode instanceof HTMLElement && addedNode.classList.contains('modal') && addedNode.querySelector('.memberCard')) {
addNote(addedNode);
}
}
}
});
observer.observe(document.body, { childList: true, subtree: true });
};
addNote();