Browse Source

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

pull/4/head
Eugen Rochko 5 years ago
committed by GitHub
parent
commit
6e3936aa6f
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 46 additions and 25 deletions
  1. +4
    -0
      app/javascript/styles/mastodon/tables.scss
  2. +15
    -7
      app/views/admin/invites/_invite.html.haml
  3. +3
    -3
      app/views/admin/invites/index.html.haml
  4. +14
    -6
      app/views/invites/_invite.html.haml
  5. +10
    -9
      app/views/invites/index.html.haml

+ 4
- 0
app/javascript/styles/mastodon/tables.scss View File

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

+ 15
- 7
app/views/admin/invites/_invite.html.haml View File

@ -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

+ 3
- 3
app/views/admin/invites/index.html.haml View File

@ -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

+ 14
- 6
app/views/invites/_invite.html.haml View File

@ -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

+ 10
- 9
app/views/invites/index.html.haml View File

@ -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