Add role badges to the WebUI (#25649)
This commit is contained in:
		@@ -370,16 +370,33 @@ class Header extends ImmutablePureComponent {
 | 
			
		||||
    const acct            = isLocal && domain ? `${account.get('acct')}@${domain}` : account.get('acct');
 | 
			
		||||
    const isIndexable     = !account.get('noindex');
 | 
			
		||||
 | 
			
		||||
    let badge;
 | 
			
		||||
    const badges = [];
 | 
			
		||||
 | 
			
		||||
    if (account.get('bot')) {
 | 
			
		||||
      badge = (<div className='account-role bot'><FormattedMessage id='account.badges.bot' defaultMessage='Automated' /></div>);
 | 
			
		||||
      badges.push(
 | 
			
		||||
        <div key='bot-badge' className='account-role bot'>
 | 
			
		||||
          <Icon id='cogs' /> { ' ' }
 | 
			
		||||
          <FormattedMessage id='account.badges.bot' defaultMessage='Automated' />
 | 
			
		||||
        </div>
 | 
			
		||||
      );
 | 
			
		||||
    } else if (account.get('group')) {
 | 
			
		||||
      badge = (<div className='account-role group'><FormattedMessage id='account.badges.group' defaultMessage='Group' /></div>);
 | 
			
		||||
    } else {
 | 
			
		||||
      badge = null;
 | 
			
		||||
      badges.push(
 | 
			
		||||
        <div key='group-badge' className='account-role group'>
 | 
			
		||||
          <Icon id='users' /> { ' ' }
 | 
			
		||||
          <FormattedMessage id='account.badges.group' defaultMessage='Group' />
 | 
			
		||||
        </div>
 | 
			
		||||
      );
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    account.get('roles', []).forEach((role) => {
 | 
			
		||||
      badges.push(
 | 
			
		||||
        <div key={`role-badge-${role.get('id')}`} className={`account-role user-role-${account.getIn(['roles', 0, 'id'])}`}>
 | 
			
		||||
          <Icon id='circle' /> { ' ' }
 | 
			
		||||
          <span>{role.get('name')} ({domain})</span>
 | 
			
		||||
        </div>
 | 
			
		||||
      );
 | 
			
		||||
    });
 | 
			
		||||
 | 
			
		||||
    return (
 | 
			
		||||
      <div className={classNames('account__header', { inactive: !!account.get('moved') })} onMouseEnter={this.handleMouseEnter} onMouseLeave={this.handleMouseLeave}>
 | 
			
		||||
        {!(suspended || hidden || account.get('moved')) && account.getIn(['relationship', 'requested_by']) && <FollowRequestNoteContainer account={account} />}
 | 
			
		||||
@@ -414,13 +431,19 @@ class Header extends ImmutablePureComponent {
 | 
			
		||||
 | 
			
		||||
          <div className='account__header__tabs__name'>
 | 
			
		||||
            <h1>
 | 
			
		||||
              <span dangerouslySetInnerHTML={displayNameHtml} /> {badge}
 | 
			
		||||
              <span dangerouslySetInnerHTML={displayNameHtml} />
 | 
			
		||||
              <small>
 | 
			
		||||
                <span>@{acct}</span> {lockedIcon}
 | 
			
		||||
              </small>
 | 
			
		||||
            </h1>
 | 
			
		||||
          </div>
 | 
			
		||||
 | 
			
		||||
          {badges.length > 0 && (
 | 
			
		||||
            <div className='account__header__badges'>
 | 
			
		||||
              {badges}
 | 
			
		||||
            </div>
 | 
			
		||||
          )}
 | 
			
		||||
 | 
			
		||||
          {!(suspended || hidden) && (
 | 
			
		||||
            <div className='account__header__extra'>
 | 
			
		||||
              <div className='account__header__bio' ref={this.setRef}>
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user