- content_for :page_title do = t('disputes.strikes.title', action: t(@strike.action, scope: 'disputes.strikes.title_actions'), date: l(@strike.created_at.to_date)) - content_for :heading_actions do - if @appeal.persisted? = link_to t('admin.accounts.approve'), approve_admin_disputes_appeal_path(@appeal), method: :post, class: 'button' if can?(:approve, @appeal) = link_to t('admin.accounts.reject'), reject_admin_disputes_appeal_path(@appeal), method: :post, class: 'button button--destructive' if can?(:reject, @appeal) - if @strike.overruled? %p.hint %span.positive-hint = fa_icon 'check' = ' ' = t 'disputes.strikes.appeal_approved' - elsif @appeal.persisted? && @appeal.rejected? %p.hint %span.negative-hint = fa_icon 'times' = ' ' = t 'disputes.strikes.appeal_rejected' .report-header .report-header__card .strike-card - unless @strike.none_action? %p= t "user_mailer.warning.explanation.#{@strike.action}" - unless @strike.text.blank? = Formatter.instance.linkify(@strike.text) - if @strike.report && !@strike.report.other? %p %strong= t('user_mailer.warning.reason') = t("user_mailer.warning.categories.#{@strike.report.category}") - if @strike.report.violation? && @strike.report.rule_ids.present? %ul.rules-list - @strike.report.rules.each do |rule| %li= rule.text - if @strike.status_ids.present? && !@strike.status_ids.empty? %p %strong= t('user_mailer.warning.statuses') .strike-card__statuses-list - status_map = @strike.statuses.includes(:application, :media_attachments).index_by(&:id) - @strike.status_ids.each do |status_id| .strike-card__statuses-list__item - if (status = status_map[status_id.to_i]) .one-liner = link_to short_account_status_url(@strike.target_account, status_id), class: 'emojify' do = one_line_preview(status) - status.media_attachments.each do |media_attachment| %abbr{ title: media_attachment.description } = fa_icon 'link' = media_attachment.file_file_name .strike-card__statuses-list__item__meta %time.formatted{ datetime: status.created_at.iso8601, title: l(status.created_at) }= l(status.created_at) ยท = status.application.name - else .one-liner= t('disputes.strikes.status', id: status_id) .strike-card__statuses-list__item__meta = t('disputes.strikes.status_removed') .report-header__details .report-header__details__item .report-header__details__item__header %strong= t('disputes.strikes.created_at') .report-header__details__item__content %time.formatted{ datetime: @strike.created_at.iso8601, title: l(@strike.created_at) }= l(@strike.created_at) .report-header__details__item .report-header__details__item__header %strong= t('disputes.strikes.recipient') .report-header__details__item__content = admin_account_link_to @strike.target_account, path: can?(:show, @strike.target_account) ? admin_account_path(@strike.target_account_id) : ActivityPub::TagManager.instance.url_for(@strike.target_account) .report-header__details__item .report-header__details__item__header %strong= t('disputes.strikes.action_taken') .report-header__details__item__content - if @strike.overruled? %del= t(@strike.action, scope: 'user_mailer.warning.title') - else = t(@strike.action, scope: 'user_mailer.warning.title') - if @strike.report && can?(:show, @strike.report) .report-header__details__item .report-header__details__item__header %strong= t('disputes.strikes.associated_report') .report-header__details__item__content = link_to t('admin.reports.report', id: @strike.report.id), admin_report_path(@strike.report) - if @appeal.persisted? .report-header__details__item .report-header__details__item__header %strong= t('disputes.strikes.appeal_submitted_at') .report-header__details__item__content %time.formatted{ datetime: @appeal.created_at.iso8601, title: l(@appeal.created_at) }= l(@appeal.created_at) %hr.spacer/ - if @appeal.persisted? %h3= t('disputes.strikes.appeal') .report-notes .report-notes__item = image_tag @appeal.account.avatar.url, class: 'report-notes__item__avatar' .report-notes__item__header %span.username = link_to @appeal.account.username, can?(:show, @appeal.account) ? admin_account_path(@appeal.account_id) : short_account_url(@appeal.account) %time{ datetime: @appeal.created_at.iso8601, title: l(@appeal.created_at) } - if @appeal.created_at.today? = t('admin.report_notes.today_at', time: l(@appeal.created_at, format: :time)) - else = l @appeal.created_at.to_date .report-notes__item__content = simple_format(h(@appeal.text)) - elsif can?(:appeal, @strike) %h3= t('disputes.strikes.appeals.submit') = simple_form_for(@appeal, url: disputes_strike_appeal_path(@strike)) do |f| .fields-group = f.input :text, wrapper: :with_label, input_html: { maxlength: 500 } .actions = f.button :button, t('disputes.strikes.appeals.submit'), type: :submit