1
0
Fork 0
mirror of https://github.com/FrankerFaceZ/FrankerFaceZ.git synced 2025-08-08 23:30:53 +00:00

Improve Hidden Badges with badge previews.

This commit is contained in:
SirStendec 2016-10-01 15:00:00 -04:00
parent 886f45b990
commit a186d88636
3 changed files with 49 additions and 20 deletions

View file

@ -1,5 +1,6 @@
<div class="list-header">3.5.305 <time datetime="2016-10-01T17:40">(2016-10-01)</time></div> <div class="list-header">3.5.305 <time datetime="2016-10-01T17:40">(2016-10-01)</time></div>
<ul class="chat-menu-content menu-side-padding"> <ul class="chat-menu-content menu-side-padding">
<li>Added: Badge previews to the <code>Hidden Badges</code> setting to make it more obvious how to hide any given badge when the names don't quite lien up.</li>
<li>Added: Shortcuts to GitHub's Issues pages to the FFZ About menu so people can submit bugs and ideas.</li> <li>Added: Shortcuts to GitHub's Issues pages to the FFZ About menu so people can submit bugs and ideas.</li>
<li>Added: Seperate option to hide the banner at the top of channel pages.</li> <li>Added: Seperate option to hide the banner at the top of channel pages.</li>
<li>Changed: Allow tab-completion of global emoticons by default.</li> <li>Changed: Allow tab-completion of global emoticons by default.</li>

View file

@ -78,13 +78,21 @@ FFZ.settings_info.hidden_badges = {
if ( badgeCollection ) { if ( badgeCollection ) {
if ( badgeCollection.global ) if ( badgeCollection.global )
for(var badge in badgeCollection.global) for(var badge in badgeCollection.global)
if ( badgeCollection.global.hasOwnProperty(badge) && badge !== 'broadcasterName' ) if ( badgeCollection.global.hasOwnProperty(badge) && badge !== 'broadcasterName' ) {
values.push('<code>' + badge + '</code>'); var badge_data = badgeCollection.global[badge],
version = Object.keys(badge_data.versions)[0];
values.push([badge, f.render_badges(f.get_twitch_badges(badge + "/" + version))]);
}
if ( badgeCollection.channel ) if ( badgeCollection.channel )
for(var badge in badgeCollection.channel) for(var badge in badgeCollection.channel)
if ( badgeCollection.channel.hasOwnProperty(badge) && badge !== 'broadcasterName' ) if ( badgeCollection.channel.hasOwnProperty(badge) && badge !== 'broadcasterName' ) {
values.push('<code>' + badge + '</code>'); var badge_data = badgeCollection.channel[badge],
version = Object.keys(badge_data.versions)[0];
values.push([badge, f.render_badges(f.get_twitch_badges(badge + "/" + version))]);
}
} }
for(var badge_id in f.badges) { for(var badge_id in f.badges) {
@ -92,26 +100,40 @@ FFZ.settings_info.hidden_badges = {
continue; continue;
var badge = f.badges[badge_id], var badge = f.badges[badge_id],
hide_key = (badge.source_ext ? f._apis[badge.source_ext].name_key : 'ffz') + '-' + (badge.name || badge.id); hide_key = (badge.source_ext ? f._apis[badge.source_ext].name_key : 'ffz') + '-' + (badge.name || badge.id),
render_badge = {};
values.push('<code>' + hide_key + '</code>'); render_badge[badge.slot] = f._get_badge_object({}, badge);
values.push([hide_key, f.render_badges(render_badge)]);
} }
if ( this.has_bttv && window.BetterTTV ) { if ( this.has_bttv && window.BetterTTV ) {
try { try {
for(var badge_id in BetterTTV.chat.store.__badgeTypes) for(var badge_id in BetterTTV.chat.store.__badgeTypes)
values.push('<code>bttv-' + badge_id + '</code>'); values.push(['bttv-' + badge_id, null]);
values.push('<code>bot</code>'); values.push(['bot', null]);
} catch(err) { } catch(err) {
this.error("Unable to load known BetterTTV badges.", err); this.error("Unable to load known BetterTTV badges.", err);
} }
} }
var already_used = [],
output = [];
for(var i=0; i < values.length; i++) {
var badge = values[i];
if ( already_used.indexOf(badge[0]) !== -1 )
continue;
already_used.push(badge[0]);
output.push((badge[1] ? '<div class="ffz-hidden-badges badges">' + badge[1] + '</div>' : '') + '<code>' + badge[0] + '</code>');
}
utils.prompt( utils.prompt(
"Hidden Badges", "Hidden Badges",
"Please enter a comma-separated list of badges that you would like to be hidden in chat.</p><p><b>Possible Values:</b> " + _.unique(values).join(", "), "Please enter a comma-separated list of badges that you would like to be hidden in chat.</p><p><b>Possible Values:</b> " + output.join(", "),
old_val, old_val,
function(new_val) { function(new_val) {
if ( new_val === null || new_val === undefined ) if ( new_val === null || new_val === undefined )
@ -306,20 +328,24 @@ FFZ.prototype.get_badges = function(user, room_id, badges, msg) {
continue; continue;
} }
badges[slot] = { badges[slot] = this._get_badge_object(badge, full_badge);
klass: 'ffz-badge-' + badge.id, }
title: badge.title || full_badge.title || ('Unknown FFZ Badge\nID: ' + badge.id),
return badges;
}
FFZ.prototype._get_badge_object = function(badge, full_badge) {
return {
klass: 'ffz-badge-' + (badge.id || full_badge.id),
title: badge.title || full_badge.title || ('Unknown FFZ Badge\nID: ' + (badge.id | full_badge.id)),
image: badge.image, image: badge.image,
full_image: full_badge.image, full_image: full_badge.image,
color: badge.color, color: badge.color,
no_invert: badge.no_invert || full_badge.no_invert, no_invert: badge.no_invert || full_badge.no_invert,
invert_invert: badge.invert_invert || full_badge.invert_invert, invert_invert: badge.invert_invert || full_badge.invert_invert,
transparent: badge.transparent || full_badge.transparent || (badge.color || full_badge.color) === "transparent", transparent: badge.transparent || full_badge.transparent || (badge.color || full_badge.color) === "transparent",
extra_css: badge.extra_css extra_css: (badge.extra_css || full_badge.extra_css)
};
} }
return badges;
} }

View file

@ -3120,6 +3120,8 @@ body.ffz-bttv #ffz-feed-tabs .tabs { margin-bottom: 0 }
} }
.ffz-hidden-badges.badges { margin-left: 5px }
/* Odd Badges */ /* Odd Badges */
.badge.click_url { cursor: pointer } .badge.click_url { cursor: pointer }