This repository has been archived on 2023-03-18. You can view files and clone it, but cannot push or open issues or pull requests.
osr-discourse-src/app/assets/javascripts/discourse/templates/user-invited-show.hbs

120 lines
5.1 KiB
Handlebars

{{#d-section pageClass="user-invites" tagName=""}}
{{#if canInviteToForum}}
{{#load-more class="user-content" selector=".user-invite-list tr" action=(action "loadMore")}}
<section>
<h2>{{i18n 'user.invited.title'}}</h2>
{{#if model.can_see_invite_details}}
<div class='admin-controls'>
<nav>
<ul class="nav nav-pills">
{{nav-item route='userInvited.show' routeParam='pending' i18nLabel=pendingLabel}}
{{nav-item route='userInvited.show' routeParam='redeemed' i18nLabel=redeemedLabel}}
</ul>
</nav>
<div class="pull-right">
{{d-button icon="plus" action=(route-action "showInvite") label="user.invited.create"}}
{{#if canBulkInvite}}
{{csv-uploader uploading=uploading}}
<a href="https://meta.discourse.org/t/sending-bulk-user-invites/16468" target="_blank" style="color:black;">{{d-icon "question-circle"}}</a>
{{/if}}
{{#if showBulkActionButtons}}
{{#if rescindedAll}}
{{i18n 'user.invited.rescinded_all'}}
{{else}}
{{d-button icon="times" action=(action "rescindAll") label="user.invited.rescind_all"}}
{{/if}}
{{#if reinvitedAll}}
{{i18n 'user.invited.reinvited_all'}}
{{else}}
{{d-button icon="sync" action=(action "reinviteAll") label="user.invited.reinvite_all"}}
{{/if}}
{{/if}}
</div>
</div>
{{/if}}
{{#if showSearch}}
<div class="user-invite-search">
<form>{{text-field value=searchTerm placeholderKey="user.invited.search"}}</form>
</div>
{{/if}}
{{#if model.invites}}
<table class='table user-invite-list'>
<tr>
{{#if inviteRedeemed}}
<th>{{i18n 'user.invited.user'}}</th>
<th>{{i18n 'user.invited.redeemed_at'}}</th>
{{#if model.can_see_invite_details}}
<th>{{i18n 'user.last_seen'}}</th>
<th>{{i18n 'user.invited.topics_entered'}}</th>
<th>{{i18n 'user.invited.posts_read_count'}}</th>
<th>{{i18n 'user.invited.time_read'}}</th>
<th>{{i18n 'user.invited.days_visited'}}</th>
{{/if}}
{{else}}
<th colspan="1">{{i18n 'user.invited.user'}}</th>
<th colspan="6">{{i18n 'user.invited.sent'}}</th>
{{/if}}
</tr>
{{#each model.invites as |invite|}}
<tr>
{{#if invite.user}}
<td>
{{#link-to 'user' invite.user}}{{avatar invite.user imageSize="tiny"}}{{/link-to}}
{{#link-to 'user' invite.user}}{{invite.user.username}}{{/link-to}}
</td>
<td>{{format-date invite.redeemed_at}}</td>
{{#if model.can_see_invite_details}}
<td>{{format-date invite.user.last_seen_at}}</td>
<td>{{number invite.user.topics_entered}}</td>
<td>{{number invite.user.posts_read_count}}</td>
<td>{{{format-duration invite.user.time_read}}}</td>
<td>
<span title="{{i18n 'user.invited.days_visited'}}">{{{unbound invite.user.days_visited}}}</span>
/
<span title="{{i18n 'user.invited.account_age_days'}}">{{{unbound invite.user.days_since_created}}}</span>
</td>
{{/if}}
{{else}}
<td>{{unbound invite.email}}</td>
<td>{{format-date invite.created_at}}</td>
<td>
{{#if invite.expired}}
<div>{{i18n 'user.invited.expired'}}</div>
{{/if}}
{{#if invite.rescinded}}
{{i18n 'user.invited.rescinded'}}
{{else}}
{{d-button icon="times" action=(action "rescind") actionParam=invite label="user.invited.rescind"}}
{{/if}}
</td>
<td>
{{#if invite.reinvited}}
<div>{{i18n 'user.invited.reinvited'}}</div>
{{else}}
{{d-button icon="sync" action=(action "reinvite") actionParam=invite label="user.invited.reinvite"}}
{{/if}}
</td>
{{/if}}
</tr>
{{/each}}
</table>
{{conditional-loading-spinner condition=invitesLoading}}
{{else}}
<div class="user-invite-none">
{{#if canBulkInvite}}
{{{i18n 'user.invited.bulk_invite.none'}}}
{{else}}
{{i18n 'user.invited.none'}}
{{/if}}
</div>
{{/if}}
</section>
{{/load-more}}
{{/if}}
{{/d-section}}