- content_for :page_title do
  = t('admin.custom_emojis.title')

- content_for :header_tags do
  = javascript_pack_tag 'admin', async: true, crossorigin: 'anonymous'

- if can?(:create, :custom_emoji)
  - content_for :heading_actions do
    = link_to t('admin.custom_emojis.upload'), new_admin_custom_emoji_path, class: 'button'

.filters
  .filter-subset
    %strong= t('admin.accounts.location.title')
    %ul
      %li= filter_link_to t('admin.accounts.location.all'), local: nil, remote: nil
      %li
        - if selected? local: '1', remote: nil
          = filter_link_to t('admin.accounts.location.local'), {local: nil, remote: nil}, {local: '1', remote: nil}
        - else
          = filter_link_to t('admin.accounts.location.local'), local: '1', remote: nil
      %li
        - if selected? remote: '1', local: nil
          = filter_link_to t('admin.accounts.location.remote'), {remote: nil, local: nil}, {remote: '1', local: nil}
        - else
          = filter_link_to t('admin.accounts.location.remote'), remote: '1', local: nil

= form_tag admin_custom_emojis_url, method: 'GET', class: 'simple_form' do
  .fields-group
    - CustomEmojiFilter::KEYS.each do |key|
      = hidden_field_tag key, params[key] if params[key].present?

    - %i(shortcode by_domain).each do |key|
      .input.string.optional
        = text_field_tag key, params[key], class: 'string optional', placeholder: I18n.t("admin.custom_emojis.#{key}")

    .actions
      %button.button= t('admin.accounts.search')
      = link_to t('admin.accounts.reset'), admin_custom_emojis_path, class: 'button negative'

= form_for(@form, url: batch_admin_custom_emojis_path) do |f|
  = hidden_field_tag :page, params[:page] || 1

  - CustomEmojiFilter::KEYS.each do |key|
    = hidden_field_tag key, params[key] if params[key].present?

  .batch-table
    .batch-table__toolbar
      %label.batch-table__toolbar__select.batch-checkbox-all
        = check_box_tag :batch_checkbox_all, nil, false
      .batch-table__toolbar__actions
        - if params[:local] == '1'
          = f.button safe_join([fa_icon('save'), t('generic.save_changes')]), name: :update, class: 'table-action-link', type: :submit, data: { confirm: t('admin.reports.are_you_sure') }

          = f.button safe_join([fa_icon('eye'), t('admin.custom_emojis.list')]), name: :list, class: 'table-action-link', type: :submit, data: { confirm: t('admin.reports.are_you_sure') }

          = f.button safe_join([fa_icon('eye-slash'), t('admin.custom_emojis.unlist')]), name: :unlist, class: 'table-action-link', type: :submit, data: { confirm: t('admin.reports.are_you_sure') }

        = f.button safe_join([fa_icon('power-off'), t('admin.custom_emojis.enable')]), name: :enable, class: 'table-action-link', type: :submit, data: { confirm: t('admin.reports.are_you_sure') }

        = f.button safe_join([fa_icon('power-off'), t('admin.custom_emojis.disable')]), name: :disable, class: 'table-action-link', type: :submit, data: { confirm: t('admin.reports.are_you_sure') }

        - if can?(:destroy, :custom_emoji)
          = f.button safe_join([fa_icon('times'), t('admin.custom_emojis.delete')]), name: :delete, class: 'table-action-link', type: :submit, data: { confirm: t('admin.reports.are_you_sure') }

        - if can?(:copy, :custom_emoji) && params[:local] != '1'
          = f.button safe_join([fa_icon('copy'), t('admin.custom_emojis.copy')]), name: :copy, class: 'table-action-link', type: :submit, data: { confirm: t('admin.reports.are_you_sure') }

    - if params[:local] == '1'
      .batch-table__form.simple_form
        .fields-row
          .fields-group.fields-row__column.fields-row__column-6
            .input.select.optional
              .label_input
                = f.select :category_id, options_from_collection_for_select(CustomEmojiCategory.all, 'id', 'name'), prompt: t('admin.custom_emojis.assign_category'), class: 'select optional', 'aria-label': t('admin.custom_emojis.assign_category')

          .fields-group.fields-row__column.fields-row__column-6
            .input.string.optional
              .label_input
                = f.text_field :category_name, class: 'string optional', placeholder: t('admin.custom_emojis.create_new_category'), 'aria-label': t('admin.custom_emojis.create_new_category')

    .batch-table__body
      - if @custom_emojis.empty?
        = nothing_here 'nothing-here--under-tabs'
      - else
        = render partial: 'custom_emoji', collection: @custom_emojis, locals: { f: f }

= paginate @custom_emojis

