diff --git a/app/controllers/events/import.js b/app/controllers/events/import.js index 7bd20404be6..7120111b972 100644 --- a/app/controllers/events/import.js +++ b/app/controllers/events/import.js @@ -1,6 +1,6 @@ import Controller from '@ember/controller'; import { run } from '@ember/runloop'; -import { action } from '@ember/object'; +import { action, computed } from '@ember/object'; export default class extends Controller { importStatus = ''; @@ -9,6 +9,28 @@ export default class extends Controller { file = false; fileName = ''; + @computed() + get columns() { + return [ + { + name : 'State', + valuePath : 'resultStatus' + }, + { + name : 'Message', + valuePath : 'result' + + }, + { + name : 'Started', + valuePath : 'startsAt', + cellComponent : 'ui-table/cell/cell-simple-date', + headerComponent : 'tables/headers/sort', + isSortable : true + } + ]; + } + importTask(taskUrl) { run.later(() => { this.loader diff --git a/app/routes/events/import.js b/app/routes/events/import.js index 32796399877..e189832486d 100644 --- a/app/routes/events/import.js +++ b/app/routes/events/import.js @@ -1,16 +1,25 @@ import Route from '@ember/routing/route'; -export default Route.extend({ +import EmberTableRouteMixin from 'open-event-frontend/mixins/ember-table-route'; +export default class extends Route.extend(EmberTableRouteMixin) { titleToken() { return this.l10n.t('Import'); - }, - async model() { + } + + async model(params) { + const searchField = 'result'; + let filterOptions = []; + filterOptions = this.applySearchFilters(filterOptions, params, searchField); + let queryString = { + filter : filterOptions, + 'page[size]' : params.per_page || 10, + 'page[number]' : params.per_page || 1 + }; + queryString = this.applySortFilters(queryString, params); - const data = await this.store.findAll('importJob'); return { - data, - objectType: 'importJob' + importJobs: await this.asArray(this.store.query('importJob', queryString)) }; } -}); +} diff --git a/app/templates/components/events/imports-history-section.hbs b/app/templates/components/events/imports-history-section.hbs index 12f1afe7240..adff6369baa 100644 --- a/app/templates/components/events/imports-history-section.hbs +++ b/app/templates/components/events/imports-history-section.hbs @@ -1,60 +1,16 @@
-

{{t 'Previous Events'}}

-
- {{t 'Show'}}   - -   - {{t 'entries'}} - +

{{t 'Imported Events'}}

-
-
-
-
-

{{t 'Import Events - Currently Under Maintenance'}}

-
-
-
-
- {{!-- - - - - - - - - - {{#each data as |job|}} - - - - - - {{/each}} - - - - - - -
{{t 'State'}}{{t 'Message'}}{{t 'Started'}}
{{job.resultStatus}}{{job.result}}{{header-date job.startsAt}}
- -
--}} -
+{{tables/default columns=columns + rows=data.data + currentPage=page + pageSize=per_page + searchQuery=search + sortBy=sort_by + sortDir=sort_dir + metaData=data.meta + filterOptions=filterOptions + widthConstraint="eq-container" + resizeMode="fluid" + fillMode="equal-column" +}} diff --git a/app/templates/events/import.hbs b/app/templates/events/import.hbs index f045ae97c39..f7a2a9b2c50 100644 --- a/app/templates/events/import.hbs +++ b/app/templates/events/import.hbs @@ -1,3 +1,3 @@ {{events/event-import-section uploadFile=(action 'uploadFile') importStatus=importStatus importError=importError isImporting=isImporting file=file}} -

-{{events/imports-history-section data=model.data}} + +{{events/imports-history-section data=model.importJobs columns=columns page=page per_page=per_page search=search sort_by=sort_by sort_dir=sort_dir filterOptions=filterOptions}}