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 { .table-wrapper {

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

@ -1,21 +1,29 @@
%tr %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 %td
.name-tag .name-tag
= image_tag invite.user.account.avatar.url(:original), alt: '', width: 16, height: 16, class: 'avatar' = image_tag invite.user.account.avatar.url(:original), alt: '', width: 16, height: 16, class: 'avatar'
%span.username= invite.user.account.username %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') = 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? - if invite.expires_at.nil?
- else - else
%time.formatted{ datetime: invite.expires_at.iso8601, title: l(invite.expires_at) } %time.formatted{ datetime: invite.expires_at.iso8601, title: l(invite.expires_at) }
= 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 %td
- if !invite.expired? && policy(invite).destroy? - if !invite.expired? && policy(invite).destroy?
= table_link_to 'times', t('invites.delete'), admin_invite_path(invite), method: :delete = 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/ %hr.spacer/
.table-wrapper
%table.table
.table-wrapper.simple_form
%table.table.table--invites
%thead %thead
%tr %tr
%th
%th %th
%th= t('invites.table.uses') %th= t('invites.table.uses')
%th= t('invites.table.expires_at') %th= t('invites.table.expires_at')
%th %th
%th
%tbody %tbody
= render @invites = render @invites

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

@ -1,17 +1,25 @@
%tr %tr
%td %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') = 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? - if invite.expires_at.nil?
- else - else
%time.formatted{ datetime: invite.expires_at.iso8601, title: l(invite.expires_at) } %time.formatted{ datetime: invite.expires_at.iso8601, title: l(invite.expires_at) }
= 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 %td
- if !invite.expired? && policy(invite).destroy? - if !invite.expired? && policy(invite).destroy?
= table_link_to 'times', t('invites.delete'), invite_path(invite), method: :delete = 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/ %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