h1 Users

= form_for :user, Routes.admin_user_path(@conn, :index), [method: "get", class: "hform"], fn f ->
  .field
    => text_input f, :q, name: "q", class: "hform__text input", placeholder: "Search query"
    = submit "Search", class: "button hform__button"

=> link "Site staff", to: Routes.admin_user_path(@conn, :index, staff: 1)
' •
=> link "2FA users", to: Routes.admin_user_path(@conn, :index, twofactor: 1)

- route = fn p -> Routes.admin_user_path(@conn, :index, p) end
- pagination = render PhilomenaWeb.PaginationView, "_pagination.html", page: @users, route: route, conn: @conn, params: page_params(@conn.params)

.block
  .block__header
    = pagination

  .block__content
  table.table
    thead
      tr
        th Name
        th Email
        th Activated
        th Role
        th Created
        th Options
    tbody
      = for user <- @users do
        tr
          td
            = link user.name, to: Routes.profile_path(@conn, :show, user)

            = cond do
              - user.otp_required_for_login ->
                span.banner__2fa.success
                  i.fas.fa-check>
                  ' 2FA

              - user.role != "user" and !user.otp_required_for_login ->
                span.banner__2fa.danger 
                  i.fas.fa-times>
                  ' 2FA

              - true ->

          td
            = if can?(@conn, :edit, Philomena.Users.User) do
              = user.email
            - else
              i N/A

          td
            = cond do
              - user.deleted_at ->
                strong> Deactivated
                = pretty_time user.deleted_at

              - user.confirmed_at ->
                ' Active

              - true ->
                strong> Unconfirmed

          td
            = String.capitalize(user.role)

          td
            = pretty_time user.created_at

          td
            = if can?(@conn, :edit, user) do
              => link to: Routes.admin_user_path(@conn, :edit, user) do
                i.fa.fa-fw.fa-user-edit
                ' Edit

            /= if user.deleted_at do
            /  => link_to 'Reactivate', admin_user_activation_path(user), data: { confirm: t('are_you_sure') }, method: :create
            /- else
            /  => link_to 'Deactivate', admin_user_activation_path(user), data: { confirm: t('are_you_sure') }, method: :delete
            /' &bull;

            = if can?(@conn, :index, Philomena.Bans.User) do
              => link to: Routes.admin_user_ban_path(@conn, :new, username: user.name) do
                i.fa.fa-fw.fa-ban
                ' Ban
            = if can?(@conn, :edit, Philomena.ArtistLinks.ArtistLink) do
              => link to: Routes.profile_artist_link_path(@conn, :new, user) do
                i.fa.fa-fw.fa-link
                ' Add link

  .block__header.block__header--light
    = pagination