Xal0lex (OP)
Moderator
Legendary
Offline
Activity: 2450
Merit: 2449
|
Оригинальный топик [Userscript] Unofficial Bitcointalk Reporter BadgesПеревод от имени автора. Поскольку официальные значки репортера (как я предполагаю) все еще находятся у Theymos`a в списке "to do", я решил создать простой скрипт, который будет отображать такие значки. Ну, типа "спасибки" всем активным репортерам за эти годы. Данные взяты из публично опубликованной статистики Theymos`a за 2017 и 2021 годы. Пользователь может иметь 2 значка (если он присутствует в обоих списках). Значки также зависят от того, какое место в списке вы занимали (топ-3, более 1000 сообщений или просто присутствие в списке). Если вы не уверены, что означает тот или иной значок, просто наведите на него курсор, и вы увидите краткое описание. Вот скрипт: // ==UserScript== // @name Unofficial Bitcointalk reporter badges // @namespace mprep // @version 0.1 // @description adds Bitcointalk reporter badges based on theymos's reporter data published in 2017 and 2021 // @author mprep // @match https://bitcointalk.org/index.php?topic=* // @match https://bitcointalk.org/index.php?action=pm* // ==/UserScript==
(function () { /* Icons from Font Awesome (https://fontawesome.com/) URLs: https://fontawesome.com/v5.15/icons/star?style=solid https://fontawesome.com/v5.15/icons/user-ninja?style=solid https://fontawesome.com/v5.15/icons/award?style=solid https://fontawesome.com/v5.15/icons/medal?style=solid https://fontawesome.com/v5.15/icons/robot?style=solid https://fontawesome.com/v5.15/icons/crown?style=solid All icons were modified (changed colors, set fixed size, added on-hover text)
Used under the Creative Commons Attribution 4.0 International license (https://creativecommons.org/licenses/by/4.0/legalcode) */ let crownIcon = '<span style="color: goldenrod;" title="Was one of the all-time top 3 reporters in 2017"><svg height="15" aria-hidden="true" focusable="false" data-prefix="fas" data-icon="crown" class="svg-inline--fa fa-crown fa-w-20" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 512"><path fill="currentColor" d="M528 448H112c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h416c8.8 0 16-7.2 16-16v-32c0-8.8-7.2-16-16-16zm64-320c-26.5 0-48 21.5-48 48 0 7.1 1.6 13.7 4.4 19.8L476 239.2c-15.4 9.2-35.3 4-44.2-11.6L350.3 85C361 76.2 368 63 368 48c0-26.5-21.5-48-48-48s-48 21.5-48 48c0 15 7 28.2 17.7 37l-81.5 142.6c-8.9 15.6-28.9 20.8-44.2 11.6l-72.3-43.4c2.7-6 4.4-12.7 4.4-19.8 0-26.5-21.5-48-48-48S0 149.5 0 176s21.5 48 48 48c2.6 0 5.2-.4 7.7-.8L128 416h384l72.3-192.8c2.5.4 5.1.8 7.7.8 26.5 0 48-21.5 48-48s-21.5-48-48-48z"></path></svg></span>'; let starIcon = '<span style="color: #0059b3;" title="Was one of the all-time top 40 reporters with more than 1000 good reports (in 2017)"><svg height="15" aria-hidden="true" focusable="false" data-prefix="fas" data-icon="star" class="svg-inline--fa fa-star fa-w-18" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512"><path fill="currentColor" d="M259.3 17.8L194 150.2 47.9 171.5c-26.2 3.8-36.7 36.1-17.7 54.6l105.7 103-25 145.5c-4.5 26.3 23.2 46 46.4 33.7L288 439.6l130.7 68.7c23.2 12.2 50.9-7.4 46.4-33.7l-25-145.5 105.7-103c19-18.5 8.5-50.8-17.7-54.6L382 150.2 316.7 17.8c-11.7-23.6-45.6-23.9-57.4 0z"></path></svg></span>'; let medalIcon = '<span style="color: #595959" title="Was one of the all-time top 40 reporters (in 2017)"><svg height="15" aria-hidden="true" focusable="false" data-prefix="fas" data-icon="medal" class="svg-inline--fa fa-medal fa-w-16" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M223.75 130.75L154.62 15.54A31.997 31.997 0 0 0 127.18 0H16.03C3.08 0-4.5 14.57 2.92 25.18l111.27 158.96c29.72-27.77 67.52-46.83 109.56-53.39zM495.97 0H384.82c-11.24 0-21.66 5.9-27.44 15.54l-69.13 115.21c42.04 6.56 79.84 25.62 109.56 53.38L509.08 25.18C516.5 14.57 508.92 0 495.97 0zM256 160c-97.2 0-176 78.8-176 176s78.8 176 176 176 176-78.8 176-176-78.8-176-176-176zm92.52 157.26l-37.93 36.96 8.97 52.22c1.6 9.36-8.26 16.51-16.65 12.09L256 393.88l-46.9 24.65c-8.4 4.45-18.25-2.74-16.65-12.09l8.97-52.22-37.93-36.96c-6.82-6.64-3.05-18.23 6.35-19.59l52.43-7.64 23.43-47.52c2.11-4.28 6.19-6.39 10.28-6.39 4.11 0 8.22 2.14 10.33 6.39l23.43 47.52 52.43 7.64c9.4 1.36 13.17 12.95 6.35 19.59z"></path></svg></span>';
let robotIcon = '<span style="color: goldenrod;" title="One of 2021\'s top 3 reporters"><svg height="15" aria-hidden="true" focusable="false" data-prefix="fas" data-icon="robot" class="svg-inline--fa fa-robot fa-w-20" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 512"><path fill="currentColor" d="M32,224H64V416H32A31.96166,31.96166,0,0,1,0,384V256A31.96166,31.96166,0,0,1,32,224Zm512-48V448a64.06328,64.06328,0,0,1-64,64H160a64.06328,64.06328,0,0,1-64-64V176a79.974,79.974,0,0,1,80-80H288V32a32,32,0,0,1,64,0V96H464A79.974,79.974,0,0,1,544,176ZM264,256a40,40,0,1,0-40,40A39.997,39.997,0,0,0,264,256Zm-8,128H192v32h64Zm96,0H288v32h64ZM456,256a40,40,0,1,0-40,40A39.997,39.997,0,0,0,456,256Zm-8,128H384v32h64ZM640,256V384a31.96166,31.96166,0,0,1-32,32H576V224h32A31.96166,31.96166,0,0,1,640,256Z"></path></svg></span>'; let ninjaIcon = '<span style="color: #0059b3;" title="One of 2021\'s top 50 reporters with more than 1000 good reports"><svg height="15" aria-hidden="true" focusable="false" data-prefix="fas" data-icon="user-ninja" class="svg-inline--fa fa-user-ninja fa-w-14" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="currentColor" d="M325.4 289.2L224 390.6 122.6 289.2C54 295.3 0 352.2 0 422.4V464c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48v-41.6c0-70.2-54-127.1-122.6-133.2zM32 192c27.3 0 51.8-11.5 69.2-29.7 15.1 53.9 64 93.7 122.8 93.7 70.7 0 128-57.3 128-128S294.7 0 224 0c-50.4 0-93.6 29.4-114.5 71.8C92.1 47.8 64 32 32 32c0 33.4 17.1 62.8 43.1 80-26 17.2-43.1 46.6-43.1 80zm144-96h96c17.7 0 32 14.3 32 32H144c0-17.7 14.3-32 32-32z"></path></svg></span>'; let awardIcon = '<span style="color: #595959;" title="One of 2021\'s top 50 reporters"><svg height="15" aria-hidden="true" focusable="false" data-prefix="fas" data-icon="award" class="svg-inline--fa fa-award fa-w-12" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><path fill="currentColor" d="M97.12 362.63c-8.69-8.69-4.16-6.24-25.12-11.85-9.51-2.55-17.87-7.45-25.43-13.32L1.2 448.7c-4.39 10.77 3.81 22.47 15.43 22.03l52.69-2.01L105.56 507c8 8.44 22.04 5.81 26.43-4.96l52.05-127.62c-10.84 6.04-22.87 9.58-35.31 9.58-19.5 0-37.82-7.59-51.61-21.37zM382.8 448.7l-45.37-111.24c-7.56 5.88-15.92 10.77-25.43 13.32-21.07 5.64-16.45 3.18-25.12 11.85-13.79 13.78-32.12 21.37-51.62 21.37-12.44 0-24.47-3.55-35.31-9.58L252 502.04c4.39 10.77 18.44 13.4 26.43 4.96l36.25-38.28 52.69 2.01c11.62.44 19.82-11.27 15.43-22.03zM263 340c15.28-15.55 17.03-14.21 38.79-20.14 13.89-3.79 24.75-14.84 28.47-28.98 7.48-28.4 5.54-24.97 25.95-45.75 10.17-10.35 14.14-25.44 10.42-39.58-7.47-28.38-7.48-24.42 0-52.83 3.72-14.14-.25-29.23-10.42-39.58-20.41-20.78-18.47-17.36-25.95-45.75-3.72-14.14-14.58-25.19-28.47-28.98-27.88-7.61-24.52-5.62-44.95-26.41-10.17-10.35-25-14.4-38.89-10.61-27.87 7.6-23.98 7.61-51.9 0-13.89-3.79-28.72.25-38.89 10.61-20.41 20.78-17.05 18.8-44.94 26.41-13.89 3.79-24.75 14.84-28.47 28.98-7.47 28.39-5.54 24.97-25.95 45.75-10.17 10.35-14.15 25.44-10.42 39.58 7.47 28.36 7.48 24.4 0 52.82-3.72 14.14.25 29.23 10.42 39.59 20.41 20.78 18.47 17.35 25.95 45.75 3.72 14.14 14.58 25.19 28.47 28.98C104.6 325.96 106.27 325 121 340c13.23 13.47 33.84 15.88 49.74 5.82a39.676 39.676 0 0 1 42.53 0c15.89 10.06 36.5 7.65 49.73-5.82zM97.66 175.96c0-53.03 42.24-96.02 94.34-96.02s94.34 42.99 94.34 96.02-42.24 96.02-94.34 96.02-94.34-42.99-94.34-96.02z"></path></svg></span>'; // End of icon code
// Data from https://bitcointalk.org/index.php?topic=5360879.msg57980000#msg57980000 let newReporters = { "actmyname": 38580, "Ratimov": 33267, "eaLiTy": 13852, "GazetaBitcoin": 4750, "hosseinimr93": 3800, "friends1980": 3090, "DaveF": 2744, "lovesmayfamilis": 1665, "Rikafip": 1548, "Csmiami": 1529, "Mbitr": 1458, "miner29": 1403, "xandry": 1225, "mk4": 1173, "dkbit98": 1165, "suchmoon": 1162, "Barcode_": 1010, "Lucius": 972, "xhomerx10": 852, "LoyceV": 834, "DdmrDdmr": 832, "sandy-is-fine": 811, "OmegaStarScream": 769, "NotFuzzyWarm": 724, "Xal0lex": 698, "pooya87": 677, "SiNeReiNZzz": 595, "DroomieChikito": 580, "vareole": 569, "UserU": 560, "Lafu": 550, "odolvlobo": 546, "UnclWish": 511, "alucard20724": 504, "Charles-Tim": 504, "RickDeckard": 447, "colires": 435, "ETFbitcoin": 425, "bluspirit": 418, "LeGaulois": 364, };
// Data from https://bitcointalk.org/index.php?topic=2166379.msg21740582#msg21740582 let oldReporters = { "Lutpin": 11008, "shorena": 10423, "Cyrus": 4641, "botany": 4568, "xandry": 4271, "xhomerx10": 4098, "mexxer-2": 3936, "Foxpup": 3719, "EFS": 3597, "rickbig41": 3321, "Quickseller": 2982, "mprep": 2794, "hilariousandco": 2723, "TheButterZone": 2430, "DannyHamilton": 2425, "Welsh": 2213, "achow101": 1847, "redsn0w": 1786, "-ck": 1756, "subSTRATA": 1633, "mitzie": 1526, "dbshck": 1523, "deadley": 1495, "SFR10": 1417, "EcuaMobi": 1370, "malevolent": 1317, "--Encrypted--": 1268, "tmfp": 1230, "Lauda": 1197, "suchmoon": 1111, "Vod": 1110, "okae": 1063, "OmegaStarScream": 1060, "railzand": 965, "mocacinno": 955, "austin": 896, "Mitchell": 895, "Muhammed Zakir": 877, "unamis76": 852, "NLNico": 779, "MissCrypto": 773, "xetsr": 750, "dogie": 725, "KWH": 705, "Chris!": 696, "grv": 677, "dihydrogenmonoxide": 647, "pedrog": 643, "ocminer": 617, "cr1776": 606, }
function addIcons(usernameEl, icons) { usernameEl.parentElement.insertAdjacentHTML("afterEnd","<br><i class='smalltext'>" + icons.join("</i><br><i class='smalltext'>") + "</i>"); }
let user_links = document.querySelectorAll("b>a[href^='https://bitcointalk.org/index.php?action=profile;u='][title^='View the profile of ']"); for (let i=0; i < user_links.length; i++) { let icons = []; let username = user_links[i].innerText.trim(); if (username in newReporters) { if (newReporters[username] > 10000) // Top 3 { icons.push(robotIcon); } else if (newReporters[username] > 1000) { icons.push(ninjaIcon); } else { icons.push(awardIcon); } } if (username in oldReporters) { if (oldReporters[username] > 4600) // Top 3 { icons.push(crownIcon); } else if (oldReporters[username] > 1000) { icons.push(starIcon); } else { icons.push(medalIcon); } } if (icons.length > 0) { user_links[i].parentElement.insertAdjacentHTML("afterEnd","<br>" + icons.join(" ")); } } })(); ( может содержать ошибки, используйте на свой страх и риск) Примечание для тех, кто впервые сталкивается с такого рода скриптами: для установки и использования этого скрипта вам необходимо расширение браузера, например, Tampermonkey (расширение доступно как для Chrome, так и для Firefox в соответствующих магазинах расширений).
|