Skip to content

Instantly share code, notes, and snippets.

@matthewrossanderson
Forked from leetrout/emoji_leaders.js
Last active April 21, 2024 01:26
Show Gist options
  • Star 2 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save matthewrossanderson/beabb8a31cf9913fce2835b09c6a8f65 to your computer and use it in GitHub Desktop.
Save matthewrossanderson/beabb8a31cf9913fce2835b09c6a8f65 to your computer and use it in GitHub Desktop.
Slack Custom Emoji Leaderboard
// Run in dev tools https://<yourteam>.slack.com/customize/emoji
// Scroll to the bottom of the page to get all the emojis in the leaderboard
var out = "CUSTOM EMOJI LEADERS\n";
var usersCount = {};
$('.p-customize_emoji_list__author').each((i, el) => {
let user = el.textContent.trim();
let u = usersCount[user] ? usersCount[user] : {user: user, count: 0};
u.count += 1
usersCount[user] = u;
});
var topten = Object.values(usersCount)
.sort((a, b) => {return a.count - b.count})
.slice(-10)
.reverse();
var widest = 0;
topten.forEach((x) => {
let len = x.user.length;
if (len > widest) {
widest = len;
}
});
topten.forEach((x, i) => {
let padding = '.'.repeat(widest - x.user.length + 3);
out += `${x.user}${padding}${x.count}\n`;
});
console.log(out);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment