From 204873fe243c91bdc3c228986f02967974bad06e Mon Sep 17 00:00:00 2001 From: iamareebjamal Date: Sun, 2 Feb 2020 17:59:10 +0530 Subject: [PATCH 1/2] fix: Remove serialization of computed statistics --- app/controllers/admin/events/list.js | 4 +-- .../admin/users/view/events/list.js | 4 +-- app/controllers/events/list.js | 4 +-- app/models/event.js | 2 +- app/routes/events/view/index.js | 2 +- app/serializers/event.js | 25 +++++-------------- 6 files changed, 14 insertions(+), 27 deletions(-) diff --git a/app/controllers/admin/events/list.js b/app/controllers/admin/events/list.js index ec386f05dcb..2a918b762da 100644 --- a/app/controllers/admin/events/list.js +++ b/app/controllers/admin/events/list.js @@ -64,14 +64,14 @@ export default class extends Controller.extend(EmberTableControllerMixin) { }, { name : 'Sessions', - valuePath : 'eventStatisticsGeneral', + valuePath : 'generalStatistics', cellComponent : 'ui-table/cell/cell-sessions', width : 90 }, { name : 'Speakers', - valuePath : 'eventStatisticsGeneral', + valuePath : 'generalStatistics', cellComponent : 'ui-table/cell/cell-speakers-dashboard', width : 90 }, diff --git a/app/controllers/admin/users/view/events/list.js b/app/controllers/admin/users/view/events/list.js index 2ee97d9e2ad..4cc6e52be77 100644 --- a/app/controllers/admin/users/view/events/list.js +++ b/app/controllers/admin/users/view/events/list.js @@ -41,14 +41,14 @@ export default class extends Controller.extend(EmberTableControllerMixin) { }, { name : 'Sessions', - valuePath : 'eventStatisticsGeneral', + valuePath : 'generalStatistics', width : 90, isSortable : false, cellComponent : 'ui-table/cell/cell-sessions-dashboard' }, { name : 'Speakers', - valuePath : 'eventStatisticsGeneral', + valuePath : 'generalStatistics', cellComponent : 'ui-table/cell/cell-speakers-dashboard', isSortable : false }, diff --git a/app/controllers/events/list.js b/app/controllers/events/list.js index 7d2ca1be6c9..a5edf0ee526 100644 --- a/app/controllers/events/list.js +++ b/app/controllers/events/list.js @@ -43,12 +43,12 @@ export default class extends Controller.extend(EmberTableControllerMixin) { }, { name : 'Sessions', - valuePath : 'eventStatisticsGeneral', + valuePath : 'generalStatistics', cellComponent : 'ui-table/cell/cell-sessions-dashboard' }, { name : 'Speakers', - valuePath : 'eventStatisticsGeneral', + valuePath : 'generalStatistics', cellComponent : 'ui-table/cell/cell-speakers-dashboard' }, { diff --git a/app/models/event.js b/app/models/event.js index 9d96115ee69..b0a7a0b391e 100644 --- a/app/models/event.js +++ b/app/models/event.js @@ -111,7 +111,7 @@ export default ModelBase.extend(CustomPrimaryKeyMixin, { invoice : hasMany('event-invoice'), speakersCall : belongsTo('speakers-call'), stripeAuthorization : belongsTo('stripe-authorization'), - eventStatisticsGeneral : belongsTo('event-statistics-general'), + generalStatistics : belongsTo('event-statistics-general'), tax : belongsTo('tax'), copyright : belongsTo('event-copyright'), sessionTypes : hasMany('session-type'), diff --git a/app/routes/events/view/index.js b/app/routes/events/view/index.js index 6bb1d3bd25f..c3dfa7a4713 100644 --- a/app/routes/events/view/index.js +++ b/app/routes/events/view/index.js @@ -22,7 +22,7 @@ export default class extends Route.extend(EmberTableRouteMixin) { roleInvites : await eventDetails.query('roleInvites', {}), sessionTypes : await eventDetails.query('sessionTypes', {}), socialLinks : await eventDetails.query('socialLinks', {}), - statistics : await eventDetails.query('eventStatisticsGeneral', {}), + statistics : await eventDetails.query('generalStatistics', {}), orderStat : await eventDetails.query('orderStatistics', {}), tickets : await eventDetails.query('tickets', {}), roles : await this.store.findAll('role') diff --git a/app/serializers/event.js b/app/serializers/event.js index 2012aa1359b..4797a235063 100644 --- a/app/serializers/event.js +++ b/app/serializers/event.js @@ -10,26 +10,13 @@ export default ApplicationSerializer.extend(CustomPrimaryKeyMixin, { subTopic : 'event-sub-topic', copyright : 'event-copyright' }, - normalize() { - const payload = this._super(...arguments); - payload.data = this.addLinks(payload.data); - return payload; - }, - addLinks(event) { - event.relationships.eventStatisticsGeneral = { - links: { - related : `/v1/events/${event.id}/general-statistics`, - self : `/v1/events/${event.id}/general-statistics` - } - }; - event.relationships.orderStatistics = { - links: { - related : `/v1/events/${event.id}/order-statistics`, - self : `/v1/events/${event.id}/order-statistics` - } - }; - return event; + serialize() { + const json = this._super(...arguments); + delete json.data.relationships['general-statistics']; + delete json.data.relationships['order-statistics']; + + return json; } }); From c1f3eadb333de791d7d96b81e846b5ec7d9b6e60 Mon Sep 17 00:00:00 2001 From: iamareebjamal Date: Sun, 2 Feb 2020 18:04:12 +0530 Subject: [PATCH 2/2] fix --- app/models/event.js | 42 +++++++++++++++++++++--------------------- 1 file changed, 21 insertions(+), 21 deletions(-) diff --git a/app/models/event.js b/app/models/event.js index b0a7a0b391e..e301eb396c8 100644 --- a/app/models/event.js +++ b/app/models/event.js @@ -95,27 +95,27 @@ export default ModelBase.extend(CustomPrimaryKeyMixin, { /** * Relationships */ - type : belongsTo('event-type'), - topic : belongsTo('event-topic'), - subTopic : belongsTo('event-sub-topic'), - location : belongsTo('event-location'), - sessions : hasMany('session'), - sponsors : hasMany('sponsor'), - microlocations : hasMany('microlocation'), - tracks : hasMany('track'), - tickets : hasMany('ticket'), - orders : hasMany('order'), - socialLinks : hasMany('social-link'), - emailNotifications : hasMany('email-notification'), - speakers : hasMany('speaker'), - invoice : hasMany('event-invoice'), - speakersCall : belongsTo('speakers-call'), - stripeAuthorization : belongsTo('stripe-authorization'), - generalStatistics : belongsTo('event-statistics-general'), - tax : belongsTo('tax'), - copyright : belongsTo('event-copyright'), - sessionTypes : hasMany('session-type'), - user : belongsTo('user', { inverse: 'events' }), + type : belongsTo('event-type'), + topic : belongsTo('event-topic'), + subTopic : belongsTo('event-sub-topic'), + location : belongsTo('event-location'), + sessions : hasMany('session'), + sponsors : hasMany('sponsor'), + microlocations : hasMany('microlocation'), + tracks : hasMany('track'), + tickets : hasMany('ticket'), + orders : hasMany('order'), + socialLinks : hasMany('social-link'), + emailNotifications : hasMany('email-notification'), + speakers : hasMany('speaker'), + invoice : hasMany('event-invoice'), + speakersCall : belongsTo('speakers-call'), + stripeAuthorization : belongsTo('stripe-authorization'), + generalStatistics : belongsTo('event-statistics-general'), + tax : belongsTo('tax'), + copyright : belongsTo('event-copyright'), + sessionTypes : hasMany('session-type'), + user : belongsTo('user', { inverse: 'events' }), customForms : hasMany('custom-form'), attendees : hasMany('attendee'),