- content_for :page_title do = @account.acct = render 'application/card', account: @account .dashboard__counters{ style: 'margin-top: 10px' } %div = link_to admin_account_account_statuses_path(@account.id) do .dashboard__counters__num= number_with_delimiter @account.statuses_count .dashboard__counters__label= t 'admin.accounts.statuses' %div = link_to admin_account_account_statuses_path(@account.id, { media: true }) do .dashboard__counters__num= number_to_human_size @account.media_attachments.sum('file_file_size') .dashboard__counters__label= t 'admin.accounts.media_attachments' %div %div .dashboard__counters__text - if @account.local? && @account.user.nil? %span.neutral= t('admin.accounts.deleted') - elsif @account.suspended? %span.red= t('admin.accounts.suspended') - elsif @account.silenced? %span.red= t('admin.accounts.silenced') - elsif @account.local? && @account.user&.disabled? %span.red= t('admin.accounts.disabled') - elsif @account.local? && !@account.user&.confirmed? %span.neutral= t('admin.accounts.confirming') - elsif @account.local? && !@account.user_approved? %span.neutral= t('admin.accounts.pending') - else %span.neutral= t('admin.accounts.no_limits_imposed') .dashboard__counters__label= t 'admin.accounts.login_status' %div = link_to admin_account_followers_path(@account.id) do .dashboard__counters__num= number_with_delimiter @account.local_followers_count .dashboard__counters__label= t 'admin.accounts.followers' %div = link_to admin_account_follows_path(@account.id) do .dashboard__counters__num= number_with_delimiter @account.local_following_count .dashboard__counters__label= t 'admin.accounts.following' %div %a .dashboard__counters__num= number_with_delimiter @account.blocked_by.count .dashboard__counters__label Blocked By %div = link_to admin_reports_path(account_id: @account.id) do .dashboard__counters__num= number_with_delimiter @account.reports.count .dashboard__counters__label= t '.created_reports' %div = link_to admin_reports_path(target_account_id: @account.id) do .dashboard__counters__num= number_with_delimiter @account.targeted_reports.count .dashboard__counters__label= t '.targeted_reports' %div = link_to admin_account_joined_groups_path(@account.id) do .dashboard__counters__num= number_with_delimiter @account.groups.count .dashboard__counters__label Joined Groups %div = link_to admin_account_joined_groups_path(@account.id) do .dashboard__counters__num= number_with_delimiter @account.group_removed_accounts.count .dashboard__counters__label Removed by Groups -# %div -# %a{href: "/admin/chat_messages?account_id=#{@account.id}"} -# .dashboard__counters__num= number_with_delimiter @account.chat_conversation_accounts_count -# .dashboard__counters__label Chat Conversations -# %div -# = link_to admin_account_chat_messages_path(@account.id) do -# .dashboard__counters__num= number_with_delimiter @account.chat_messages_count -# .dashboard__counters__label Chat Messages - unless @account.local? && @account.user.nil? .table-wrapper %table.table.inline-table %tbody - if @account.local? - if @account.avatar? %tr %th= t('admin.accounts.avatar') %td= table_link_to 'trash', t('admin.accounts.remove_avatar'), remove_avatar_admin_account_path(@account.id), method: :post, data: { confirm: t('admin.accounts.are_you_sure') } if can?(:remove_avatar, @account) %td - if @account.header? %tr %th= t('admin.accounts.header') %td= table_link_to 'trash', t('admin.accounts.remove_header'), remove_header_admin_account_path(@account.id), method: :post, data: { confirm: t('admin.accounts.are_you_sure') } if can?(:remove_header, @account) %td %tr %th= t('admin.accounts.role') %td= t("admin.accounts.roles.#{@account.user&.role}") %td = table_link_to 'angle-double-up', t('admin.accounts.promote'), promote_admin_account_role_path(@account.id), method: :post, data: { confirm: t('admin.accounts.are_you_sure') } if can?(:promote, @account.user) = table_link_to 'angle-double-down', t('admin.accounts.demote'), demote_admin_account_role_path(@account.id), method: :post, data: { confirm: t('admin.accounts.are_you_sure') } if can?(:demote, @account.user) %tr %th= t('admin.accounts.email') %td= @account.user_email %td= table_link_to 'edit', t('admin.accounts.change_email.label'), admin_account_change_email_path(@account.id) if can?(:change_email, @account.user) - if @account.user_unconfirmed_email.present? %tr %th= t('admin.accounts.unconfirmed_email') %td= @account.user_unconfirmed_email %td %tr %th= t('admin.accounts.email_status') %td - if @account.user&.confirmed? = t('admin.accounts.confirmed') - else = t('admin.accounts.confirming') %td= table_link_to 'refresh', t('admin.accounts.resend_confirmation.send'), resend_admin_account_confirmation_path(@account.id), method: :post if can?(:confirm, @account.user) %tr %th= t('admin.accounts.login_status') %td - if @account.user&.disabled? = t('admin.accounts.disabled') - else = t('admin.accounts.enabled') %td - if @account.user&.disabled? = table_link_to 'unlock', t('admin.accounts.enable'), enable_admin_account_path(@account.id), method: :post if can?(:enable, @account.user) - elsif @account.user_approved? = table_link_to 'lock', t('admin.accounts.disable'), new_admin_account_action_path(@account.id, type: 'disable') if can?(:disable, @account.user) %tr %th= t('simple_form.labels.defaults.locale') %td= @account.user_locale %td %tr %th= t('admin.accounts.joined') %td %time.formatted{ datetime: @account.created_at.iso8601, title: l(@account.created_at) }= l @account.created_at %td %tr %th Is flagged as spam %td - if @account.is_spam? %span YES - else %span no - if @account.is_spam? %td= table_link_to 'ban', 'Reset', reset_spam_admin_account_path(@account.id), method: :post %tr %th= t('admin.accounts.most_recent_ip') %td= @account.user_current_sign_in_ip %td %tr %th= t('admin.accounts.most_recent_activity') %td - if @account.user_current_sign_in_at %time.formatted{ datetime: @account.user_current_sign_in_at.iso8601, title: l(@account.user_current_sign_in_at) }= l @account.user_current_sign_in_at %tr %th= t('admin.accounts.is_pro') %td - if @account.is_pro? =fa_icon 'check' - if @account.pro_expires_at? %time.formatted{ datetime: @account.pro_expires_at.iso8601, title: l(@account.pro_expires_at) }= l @account.pro_expires_at - else ∞ %td - if @account.local? = table_link_to '', t('admin.accounts.edit_pro'), edit_pro_admin_account_path(@account.id), class: 'button' if can?(:verify, @account) %tr %th= t('admin.accounts.is_verified') %td - if @account.is_verified? =fa_icon 'check' %td - if @account.local? - if @account.is_verified? = table_link_to 'undo', t('admin.accounts.unverify'), unverify_admin_account_path(@account.id), class: 'button', method: :post, data: { confirm: t('admin.accounts.are_you_sure') } if can?(:verify, @account) - else = table_link_to '', t('admin.accounts.verify'), verify_admin_account_path(@account.id), class: 'button', method: :post, data: { confirm: t('admin.accounts.are_you_sure') } if can?(:verify, @account) %tr %th= t('admin.accounts.is_donor') %td - if @account.is_donor? =fa_icon 'check' %td - if @account.local? - if @account.is_donor? = table_link_to 'undo', t('admin.accounts.remove_donor_badge'), remove_donor_badge_admin_account_path(@account.id), class: 'button', method: :post, data: { confirm: t('admin.accounts.are_you_sure') } if can?(:update_badges, @account) - else = table_link_to '', t('admin.accounts.add_donor_badge'), add_donor_badge_admin_account_path(@account.id), class: 'button', method: :post, data: { confirm: t('admin.accounts.are_you_sure') } if can?(:update_badges, @account) %tr %th= t('admin.accounts.is_investor') %td - if @account.is_investor? =fa_icon 'check' %td - if @account.local? - if @account.is_investor? = table_link_to 'undo', t('admin.accounts.remove_investor_badge'), remove_investor_badge_admin_account_path(@account.id), class: 'button', method: :post, data: { confirm: t('admin.accounts.are_you_sure') } if can?(:update_badges, @account) - else = table_link_to '', t('admin.accounts.add_investor_badge'), add_investor_badge_admin_account_path(@account.id), class: 'button', method: :post, data: { confirm: t('admin.accounts.are_you_sure') } if can?(:update_badges, @account) %div{ style: 'overflow: hidden' } %div{ style: 'float: right' } - if @account.local? = link_to t('admin.accounts.reset_password'), admin_account_reset_path(@account.id), method: :create, class: 'button' if can?(:reset_password, @account.user) - if @account.user&.otp_required_for_login? = link_to t('admin.accounts.disable_two_factor_authentication'), admin_user_two_factor_authentication_path(@account.user.id), method: :delete, class: 'button' if can?(:disable_2fa, @account.user) - if !@account.memorial? && @account.user_approved? = link_to t('admin.accounts.memorialize'), memorialize_admin_account_path(@account.id), method: :post, data: { confirm: t('admin.accounts.are_you_sure') }, class: 'button button--destructive' if can?(:memorialize, @account) - else = link_to t('admin.accounts.redownload'), redownload_admin_account_path(@account.id), method: :post, class: 'button' if can?(:redownload, @account) %div{ style: 'float: left' } - if @account.local? && @account.user_approved? = link_to t('admin.accounts.warn'), new_admin_account_action_path(@account.id, type: 'none'), class: 'button' if can?(:warn, @account) - if @account.silenced? = link_to t('admin.accounts.undo_silenced'), unsilence_admin_account_path(@account.id), method: :post, class: 'button' if can?(:unsilence, @account) - elsif !@account.local? || @account.user_approved? = link_to t('admin.accounts.silence'), new_admin_account_action_path(@account.id, type: 'silence'), class: 'button button--destructive' if can?(:silence, @account) - if @account.local? - unless @account.user_confirmed? = link_to t('admin.accounts.confirm'), admin_account_confirmation_path(@account.id), method: :post, class: 'button' if can?(:confirm, @account.user) - if @account.suspended? = link_to t('admin.accounts.undo_suspension'), unsuspend_admin_account_path(@account.id), method: :post, class: 'button' if can?(:unsuspend, @account) - elsif !@account.local? || @account.user_approved? = link_to t('admin.accounts.perform_full_suspension'), new_admin_account_action_path(@account.id, type: 'suspend'), class: 'button button--destructive' if can?(:suspend, @account) - if @account.local? = link_to t('admin.accounts.change_password.button'), edit_admin_account_path(@account.id), class: 'button' - unless @account.local? - if DomainBlock.where(domain: @account.domain).exists? = link_to t('admin.domain_blocks.undo'), admin_instance_path(@account.domain), class: 'button' - else = link_to t('admin.domain_blocks.add_new'), new_admin_domain_block_path(_domain: @account.domain), class: 'button button--destructive' %hr.spacer/ - unless @warnings.empty? = render @warnings %hr.spacer/ = render @moderation_notes = simple_form_for @account_moderation_note, url: admin_account_moderation_notes_path do |f| = render 'shared/error_messages', object: @account_moderation_note = f.input :content, placeholder: t('admin.reports.notes.placeholder'), rows: 6 = f.hidden_field :target_account_id .actions = f.button :button, t('admin.account_moderation_notes.create'), type: :submit