Ghost/ghost/admin/app/components/gh-members-import-table.hbs
Rishabh Garg f068e40723 Added new members CSV importer (#1797)
no refs
depends on https://github.com/TryGhost/Ghost/pull/12472

The members CSV importer gets an overhaul and works with new importer module in members service, performing the import in a background job when the import will take too long to complete in a reasonable time and send an email with data on completion. Also includes updated CSV mapping UI and error handling to allow easier import from different type of exports.

Co-authored-by: Fabien O'Carroll <fabien@allou.is>
Co-authored-by: Peter Zimon <zimo@ghost.org>
2020-12-10 01:02:31 +05:30

30 lines
1.8 KiB
Handlebars

<table class="f8 gh-members-import-table ma0">
<thead>
<tr>
<th class="table-cell-field"><span class="f-small midgrey ttu fw5">Field</span></th>
<th class="table-cell-data">
<div class="flex items-center justify-between">
<span class="f-small midgrey ttu fw5 nudge-top--1">Sample data <span class="midlightgrey fw4">(#{{format-number this.currentRecord}})</span></span>
<div class="flex items-center bg-white br2 ml1 nr1 gh-members-import-datanav">
<a href="#" {{action "prev"}} class="pa1 flex items-center justify-center br b--whitegrey {{unless this.hasPrevRecord "o-30"}}" data-test-import-prev>{{svg-jar "arrow-left" class="w3 h3 fill-middarkgrey" }}</a>
<a href="#" {{action "next"}} class="pa1 flex items-center justify-center {{unless this.hasNextRecord "o-30"}}" data-test-import-next>{{svg-jar "arrow-right" class="w3 h3 fill-middarkgrey" }}</a>
</div>
</div>
</th>
<th><span class="f-small midgrey ttu fw5">Import as</span></th>
</tr>
</thead>
<tbody>
{{#each currentlyDisplayedData as |row|}}
<tr>
<td class="middarkgrey table-cell-field"><span>{{row.key}}</span></td>
<td class="middarkgrey table-cell-data {{unless row.value "empty-cell"}}"><span>{{row.value}}</span></td>
<td><span><GhMembersImportMappingInput @updateMapping={{this.updateMapping}} @mapFrom={{row.key}} @mapTo={{row.mapTo}} @disabled={{@disabled}} /></span></td>
</tr>
{{else}}
<tr>
<td colspan="3" class="gh-member-import-nodata"><span>No data found in the uploaded CSV.</span></td>
</tr>
{{/each}}
</tbody>
</table>