Accounts, UI: Expose kobold badges over the API. Render badges in the web app.
parent
89c5d8ec4e
commit
c961429dc2
|
@ -191,6 +191,8 @@ class Header extends ImmutablePureComponent {
|
|||
const fields = account.get('fields');
|
||||
const badge_bot = account.get('bot') ? (<div className='account-role bot'><FormattedMessage id='account.badges.bot' defaultMessage='Bot' /></div>) : null;
|
||||
const badge_ao = account.get('adults_only') ? (<div className='account-role adults-only'><FormattedMessage id='account.badges.adults_only' defaultMessage="🔞 Adult content" /></div>) : null;
|
||||
const badge_gntly_kbld = account.get('gentlies_kobolds') ? (<div className='account-role gentlies'><FormattedMessage id='account.badges.gentlies_kobolds' defaultMessage="Gentlies kobolds" /></div>) : null;
|
||||
const badge_kobold = account.get('is_a_kobold') ? (<div className='account-role kobold'><FormattedMessage id='account.badges.kobold' defaultMessage="Gently the kobold" /></div>) : null;
|
||||
const acct = account.get('acct').indexOf('@') === -1 && domain ? `${account.get('acct')}@${domain}` : account.get('acct');
|
||||
|
||||
return (
|
||||
|
@ -220,8 +222,9 @@ class Header extends ImmutablePureComponent {
|
|||
|
||||
<div className='account__header__tabs__name'>
|
||||
<h1>
|
||||
<span dangerouslySetInnerHTML={displayNameHtml} /> {badge_ao}{badge_bot}
|
||||
<span dangerouslySetInnerHTML={displayNameHtml} />
|
||||
<small>@{acct} {lockedIcon}</small>
|
||||
<div className='roles'>{badge_ao}{badge_bot}{badge_gntly_kbld}{badge_kobold}</div>
|
||||
</h1>
|
||||
</div>
|
||||
|
||||
|
|
|
@ -2,6 +2,8 @@
|
|||
"account.add_or_remove_from_list": "Add or Remove from lists",
|
||||
"account.badges.bot": "Bot",
|
||||
"account.badges.adults_only": "🔞 Adult content",
|
||||
"account.badges.gentlies_kobolds": "Gentlies kobolds",
|
||||
"account.badges.kobold": "Gently the kobold",
|
||||
"account.block": "Block @{name}",
|
||||
"account.block_domain": "Hide {domain}",
|
||||
"account.blocked": "Blocked",
|
||||
|
|
|
@ -6,7 +6,7 @@ class REST::AccountSerializer < ActiveModel::Serializer
|
|||
attributes :id, :username, :acct, :display_name, :locked, :bot, :created_at,
|
||||
:note, :url, :avatar, :avatar_static, :header, :header_static,
|
||||
:followers_count, :following_count, :statuses_count, :replies,
|
||||
:adults_only
|
||||
:adults_only, :gentlies_kobolds, :is_a_kobold
|
||||
|
||||
has_one :moved_to_account, key: :moved, serializer: REST::AccountSerializer, if: :moved_and_not_nested?
|
||||
has_many :emojis, serializer: REST::CustomEmojiSerializer
|
||||
|
@ -56,4 +56,12 @@ class REST::AccountSerializer < ActiveModel::Serializer
|
|||
def followers_count
|
||||
(Setting.hide_followers_count || object.user&.setting_hide_followers_count) ? -1 : object.followers_count
|
||||
end
|
||||
|
||||
def gentlies_kobolds
|
||||
object.user_gentlies_kobolds? || false
|
||||
end
|
||||
|
||||
def is_a_kobold
|
||||
object.user_is_a_kobold? || false
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Reference in New Issue