Author

Topic: [Userscript] Unofficial Bitcointalk Reporter Badges (Read 395 times)

legendary
Activity: 2940
Merit: 3030
Thanks mprep  Cool

I havnt installed it for now or using it and will take a look at some stage when i have the time for !
Just to see what kind of Badges are sticked to the Users .
And yeah something like this would be nice to get from theymos on the Forum at some time.

You're a great moderator, even though I don't frequent the sections you handle very often.  You've also been around for as long as I can remember.
indeed and i agree with that he is a great moderator , and he is mostly everywhere on the forum.
legendary
Activity: 3234
Merit: 6706
Proudly Cycling Merits for Foxpup
Very cool (even though I don't qualify for one)!  I think having a badge for reporting is a great incentive to keep doing so and an excellent way to recognize members who do a lot of good for the forum in the background, without receiving the recognition they deserve.  If it weren't for people who report a good deal of shitposts, spam, and whatever else, bitcointalk would be even more of a mess than it is.  Moderators deserve props for taking action on the reports of course, but without those reports there's just no way in hell they'd be able to detect all of the nonsense.

Thanks for the show of gratitude, mprep.  You're a great moderator, even though I don't frequent the sections you handle very often.  You've also been around for as long as I can remember.
global moderator
Activity: 3752
Merit: 2607
In a world of peaches, don't ask for apple sauce
I'm using the phone now, I'll try it later.
So my Holmes badges are gone? What badges were used, because I see different formations?
My script is unofficial (a.k.a. done on my own initiative and not endorsed by theymos or Bitcointalk) so I've only used resources that are freely available to me (specifically, a few of Font Awesome's open source icons as well as data publicly posted by theymos). I have no clue as to what icons theymos is going to use for the official reporter badges nor do I know as to what the report count thresholds are gonna be. You get an (unofficial) badge if you appeared in either the 2017 or 2021 list of top reporters (links to both of those can be found in this thread's OP). If you appeared in both lists, you get 2 badges. The type of badge / icon you get depends on your position in each list (top 3, more than 1000 good reports or just in the list).

Does bad reports affect the rating? or only good reports?
The userscript only takes into account good reports.

There are some good badges on that topic, I was hoping the user would have the option to use the occasion with him.
I'm not an expert in copyright (read: I have no clue beyond anecdotes and info from random potentially dubious articles) but while theymos might have an implicit license to display those icons on the forum1 I don't. As for allowing users to pick the icons used for the badges, while it is possible, I feel like that's way out of scope for this userscript and would require quite a bit more coding work.

1 AFAIK users implicitly give a website a license to display the content they've posted onto it as long as they themselves own it or at least have the right to sublicense it; as to whether that only applies to content being displayed as posts as opposed to being incorporated into other parts of the website is beyond me
legendary
Activity: 1512
Merit: 4795
It may be a strange question, but who can see that badge?
Anyone who installed the userscript.
Extensions are limited even not to your device, but to your broswer that you installed the extension. Assuming you used Firefox for it, it will only be limited to the Firefox broswer. That does not mean if you login on another browser that you will see it, it will not show unless the extension is also installed on the browser and do the setup. Let us hope it will be like the rank up badges one day that everyone can see.
legendary
Activity: 1582
Merit: 1284
 I'm using the phone now, I'll try it later.
So my Holmes badges are gone? What badges were used, because I see different formations?
Does bad reports affect the rating? or only good reports?

I suggest getting a Holmes badge when you reach a certain number "300 report", then changing the color every level.






There are some good badges on that topic, I was hoping the user would have the option to use the occasion with him.
legendary
Activity: 3248
Merit: 3098
It may be a strange question, but who can see that badge? I'm asking this because I don't see anything shown in the @mprep profile, and I see that @twiki posted a sample screen that clearly shows a blue star under @mprep name.

You also had a badge under your name. I make ss for you with a hint  Wink

copper member
Activity: 68
Merit: 0
.gg/tompicks
Nice little fix while we wait for the actual badge to come out
legendary
Activity: 3290
Merit: 16489
Thick-Skinned Gang Leader and Golden Feather 2021
It may be a strange question, but who can see that badge?
Anyone who installed the userscript.
legendary
Activity: 3220
Merit: 5630
Blackjack.fun-Free Raffle-Join&Win $50🎲
It may be a strange question, but who can see that badge? I'm asking this because I don't see anything shown in the @mprep profile, and I see that @twiki posted a sample screen that clearly shows a blue star under @mprep name.
staff
Activity: 2436
Merit: 2347
Thanks.

Question. Installed the script, but I don't see any badges. Where should they be displayed?
Have you saved your settings?

https://i.imgur.com/dwvREnA.png

If yes, then the icons should be displayed as shown in the picture.

https://i.imgur.com/HXvE0fe.png

Well, of course I kept it. And it can't be otherwise.

P.S. It's okay, I didn't copy the script completely
member
Activity: 185
Merit: 50
Thanks.

Question. Installed the script, but I don't see any badges. Where should they be displayed?
Have you saved your settings?



If yes, then the icons should be displayed as shown in the picture.

staff
Activity: 2436
Merit: 2347
Thanks.

Question. Installed the script, but I don't see any badges. Where should they be displayed?
global moderator
Activity: 3752
Merit: 2607
In a world of peaches, don't ask for apple sauce
Very nice!
Let me propose that this Reporter Badge script could be added to BPIP Extension, so they could be used even without userscript managers.
I don't know how complicated is to add this to extension, and correct me if I am wrong but I think that other scripts and themes are already added.
This should be optional in settings, so maybe suchmoon and ibminer could comment if that is even possible and if they have free time for this update.


The only userscript-exclusive feature the script uses is the "@match" header directive (which is relatively easy to emulate in JS) so it shouldn't be a massive undertaking if the BPIP people wanted to incorporate it into the extension. I wouldn't be against it (as long as the legally required attribution notices for the 3rd party icons are preserved).
legendary
Activity: 2212
Merit: 7064
Cashback 15%
Very nice!
Let me propose that this Reporter Badge script could be added to BPIP Extension, so they could be used even without userscript managers.
I don't know how complicated is to add this to extension, and correct me if I am wrong but I think that other scripts and themes are already added.
This should be optional in settings, so maybe suchmoon and ibminer could comment if that is even possible and if they have free time for this update.

global moderator
Activity: 3752
Merit: 2607
In a world of peaches, don't ask for apple sauce
Since official reporter badges are (I assume) still on theymos's backlog, I thought I'd throw together a simple userscript as a "thank you" to all the active reporters over the years. Data is sourced from theymos's publicly posted stats back in 2017 and in 2021. A user can have 2 badges if they appeared in both lists. Badges are also dependent on where in that list you were (top 3, more than 1000 reports or just present in the list). If you're not sure about what a specific badge means, just hover over it and you should see a brief description.

Here's the script:

Code:
// ==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 = '';
    let starIcon = '';
    let medalIcon = '';

    let robotIcon = '';
    let ninjaIcon = '';    
    let awardIcon = '';
    // End of icon code

    // Data from https://bitcointalksearch.org/topic/m.57980000
    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://bitcointalksearch.org/topic/m.21740582
    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","
" + icons.join("
") + "");
    }


    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","
" + icons.join(" "));
        }
    }
    
})();

(may contain bugs, use at your own risk)

Note to anyone new to userscripts: you need a userscript manager browser extension to install and use this script (e.g. Tampermonkey; available both for Chrome and Firefox in their respective extension stores).
Jump to: