Improve invites list with click-to-copy inputs (#10259)

master
Eugen Rochko 6 years ago committed by GitHub
parent 9e33174604
commit 6e3936aa6f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 4
      app/javascript/styles/mastodon/tables.scss
  2. 22
      app/views/admin/invites/_invite.html.haml
  3. 6
      app/views/admin/invites/index.html.haml
  4. 20
      app/views/invites/_invite.html.haml
  5. 19
      app/views/invites/index.html.haml

@ -82,6 +82,10 @@
}
}
}
&--invites tbody td {
vertical-align: middle;
}
}
.table-wrapper {

@ -1,21 +1,29 @@
%tr
%td
.input-copy
.input-copy__wrapper
%input{ type: :text, maxlength: '999', spellcheck: 'false', readonly: 'true', value: public_invite_url(invite_code: invite.code) }
%button{ type: :button }= t('generic.copy')
%td
.name-tag
= image_tag invite.user.account.avatar.url(:original), alt: '', width: 16, height: 16, class: 'avatar'
%span.username= invite.user.account.username
%td
= invite.uses
= " / #{invite.max_uses}" unless invite.max_uses.nil?
%td
- if invite.expired?
- if invite.expired?
%td{ colspan: 2 }
= t('invites.expired')
- else
- else
%td
= fa_icon 'user fw'
= invite.uses
= " / #{invite.max_uses}" unless invite.max_uses.nil?
%td
- if invite.expires_at.nil?
- else
%time.formatted{ datetime: invite.expires_at.iso8601, title: l(invite.expires_at) }
= l invite.expires_at
%td= table_link_to 'link', public_invite_url(invite_code: invite.code), public_invite_url(invite_code: invite.code)
%td
- if !invite.expired? && policy(invite).destroy?
= table_link_to 'times', t('invites.delete'), admin_invite_path(invite), method: :delete

@ -18,15 +18,15 @@
%hr.spacer/
.table-wrapper
%table.table
.table-wrapper.simple_form
%table.table.table--invites
%thead
%tr
%th
%th
%th= t('invites.table.uses')
%th= t('invites.table.expires_at')
%th
%th
%tbody
= render @invites

@ -1,17 +1,25 @@
%tr
%td
= invite.uses
= " / #{invite.max_uses}" unless invite.max_uses.nil?
%td
- if invite.expired?
.input-copy
.input-copy__wrapper
%input{ type: :text, maxlength: '999', spellcheck: 'false', readonly: 'true', value: public_invite_url(invite_code: invite.code) }
%button{ type: :button }= t('generic.copy')
- if invite.expired?
%td{ colspan: 2 }
= t('invites.expired')
- else
- else
%td
= fa_icon 'user fw'
= invite.uses
= " / #{invite.max_uses}" unless invite.max_uses.nil?
%td
- if invite.expires_at.nil?
- else
%time.formatted{ datetime: invite.expires_at.iso8601, title: l(invite.expires_at) }
= l invite.expires_at
%td= table_link_to 'link', public_invite_url(invite_code: invite.code), public_invite_url(invite_code: invite.code)
%td
- if !invite.expired? && policy(invite).destroy?
= table_link_to 'times', t('invites.delete'), invite_path(invite), method: :delete

@ -8,12 +8,13 @@
%hr.spacer/
%table.table
%thead
%tr
%th= t('invites.table.uses')
%th= t('invites.table.expires_at')
%th
%th
%tbody
= render @invites
.simple_form
%table.table.table--invites
%thead
%tr
%th
%th= t('invites.table.uses')
%th= t('invites.table.expires_at')
%th
%tbody
= render @invites

Loading…
Cancel
Save