Skip to content

Commit 4c6aa2d

Browse files
committed
feat: ember table for admin notificaition logs
1 parent 49c31c4 commit 4c6aa2d

File tree

6 files changed

+70
-49
lines changed

6 files changed

+70
-49
lines changed
Lines changed: 34 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,36 @@
11
import Controller from '@ember/controller';
2+
import { computed } from '@ember/object';
3+
import EmberTableControllerMixin from 'open-event-frontend/mixins/ember-table-controller';
24

3-
export default Controller.extend({
4-
columns: [
5-
{
6-
propertyName : 'user.first-name',
7-
template : 'components/ui-table/cell/admin/reports/system-logs/notification-logs/cell-for',
8-
title : 'For',
9-
disableSorting : true,
10-
disableFiltering : true
11-
},
12-
{
13-
propertyName : 'received-at',
14-
template : 'components/ui-table/cell/admin/reports/system-logs/notification-logs/cell-time',
15-
title : 'Time'
16-
},
17-
{
18-
propertyName : 'title',
19-
title : 'Actions',
20-
disableSorting : true,
21-
disableFiltering : true
22-
},
23-
{
24-
propertyName : 'message',
25-
title : 'Message',
26-
template : 'components/ui-table/cell/admin/reports/system-logs/notification-logs/cell-sanitize',
27-
disableSorting : true,
28-
disableFiltering : true
29-
}
30-
]
31-
});
5+
6+
export default class extends Controller.extend(EmberTableControllerMixin) {
7+
per_page = 100;
8+
sort_by = 'received-at';
9+
sort_dir = 'ASC';
10+
@computed()
11+
get columns() {
12+
return [
13+
{
14+
name : 'For',
15+
valuePath : 'user',
16+
cellComponent : 'ui-table/cell/admin/reports/system-logs/notification-logs/cell-for'
17+
},
18+
{
19+
name : 'Time',
20+
valuePath : 'receivedAt',
21+
cellComponent : 'ui-table/cell/admin/reports/system-logs/notification-logs/cell-time',
22+
headerComponent : 'tables/headers/sort',
23+
isSortable : true
24+
},
25+
{
26+
name : 'Actions',
27+
valuePath : 'title'
28+
},
29+
{
30+
name : 'Message',
31+
valuePath : 'message',
32+
cellComponent : 'ui-table/cell/admin/reports/system-logs/notification-logs/cell-sanitize'
33+
}
34+
];
35+
}
36+
}
Lines changed: 18 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,23 @@
11
import Route from '@ember/routing/route';
2+
import EmberTableRouteMixin from 'open-event-frontend/mixins/ember-table-route';
23

3-
export default Route.extend({
4+
export default class extends Route.extend(EmberTableRouteMixin) {
45
titleToken() {
56
return this.l10n.t('Notification Logs');
6-
},
7-
8-
model() {
9-
return this.store.query('notification', {
10-
include : 'user',
11-
'page[size]' : 100,
12-
sort : '-received-at'
13-
});
147
}
15-
});
8+
9+
10+
async model(params) {
11+
const searchField = 'title';
12+
let filterOptions = this.applySearchFilters([], params, searchField);
13+
14+
let queryString = {
15+
include : 'user',
16+
filter : filterOptions,
17+
'page[size]' : params.per_page || 100,
18+
'page[number]' : params.page || 1
19+
};
20+
queryString = this.applySortFilters(queryString, params);
21+
return this.asArray(this.store.query('notification', queryString));
22+
}
23+
}
Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,13 @@
1-
{{events/events-table columns=columns data=model
2-
useNumericPagination=true
3-
showGlobalFilter=true
4-
showPageSize=true
5-
}}
1+
{{tables/default columns=columns
2+
rows=model.data
3+
currentPage=page
4+
pageSize=per_page
5+
searchQuery=search
6+
sortBy=sort_by
7+
sortDir=sort_dir
8+
metaData=model.meta
9+
filterOptions=filterOptions
10+
widthConstraint="eq-container"
11+
resizeMode="fluid"
12+
fillMode="equal-column"
13+
}}
Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
{{#if (or record.user.firstName record.user.lastName)}}
2-
{{record.user.firstName}} {{record.user.lastName}}
1+
{{#if (or record.firstName record.lastName)}}
2+
{{record.firstName}} {{record.lastName}}
33
{{else}}
44
{{t 'No Name Provided'}}
55
{{/if}}
6-
<div class="muted text">{{record.user.email}}</div>
6+
<div class="muted text">{{record.email}}</div>
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
{{sanitize record.message}}
1+
{{sanitize record}}
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
{{moment-from-now record.receivedAt}}
1+
{{moment-from-now record}}

0 commit comments

Comments
 (0)