Skip to content

Commit

Permalink
chore: Convert services and controllers to ES6 classes
Browse files Browse the repository at this point in the history
  • Loading branch information
iamareebjamal committed Mar 31, 2020
1 parent 39ba679 commit 33b228a
Show file tree
Hide file tree
Showing 46 changed files with 1,148 additions and 976 deletions.
4 changes: 3 additions & 1 deletion app/controllers/admin/sales/discounted-events.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
import classic from 'ember-classic-decorator';
import Controller from '@ember/controller';
import AdminSalesMixin from 'open-event-frontend/mixins/admin-sales';

export default Controller.extend(AdminSalesMixin);
@classic
export default class DiscountedEventsController extends Controller.extend(AdminSalesMixin) {}
4 changes: 3 additions & 1 deletion app/controllers/admin/sales/index.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
import classic from 'ember-classic-decorator';
import Controller from '@ember/controller';
import AdminSalesMixin from 'open-event-frontend/mixins/admin-sales';

export default Controller.extend(AdminSalesMixin);
@classic
export default class IndexController extends Controller.extend(AdminSalesMixin) {}
4 changes: 3 additions & 1 deletion app/controllers/admin/sales/locations.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
import classic from 'ember-classic-decorator';
import Controller from '@ember/controller';
import AdminSalesMixin from 'open-event-frontend/mixins/admin-sales';

export default Controller.extend(AdminSalesMixin);
@classic
export default class LocationsController extends Controller.extend(AdminSalesMixin) {}
19 changes: 12 additions & 7 deletions app/controllers/admin/sales/marketer.js
Original file line number Diff line number Diff line change
@@ -1,19 +1,24 @@
import Controller from '@ember/controller';
import classic from 'ember-classic-decorator';
import { computed } from '@ember/object';
import Controller from '@ember/controller';

export default Controller.extend({
salesTotal: computed(function() {
@classic
export default class MarketerController extends Controller {
@computed
get salesTotal() {
let sum = 0;
this.model.forEach(data => {
sum += data.sales.completed.ticket_count;
});
return sum;
}),
discountsTotal: computed(function() {
}

@computed
get discountsTotal() {
let sum = 0;
this.model.forEach(data => {
sum += data.sales.completed.sales_total;
});
return sum;
})
});
}
}
4 changes: 3 additions & 1 deletion app/controllers/admin/sales/organizers.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
import classic from 'ember-classic-decorator';
import Controller from '@ember/controller';
import AdminSalesMixin from 'open-event-frontend/mixins/admin-sales';

export default Controller.extend(AdminSalesMixin);
@classic
export default class OrganizersController extends Controller.extend(AdminSalesMixin) {}
18 changes: 11 additions & 7 deletions app/controllers/admin/sales/revenue.js
Original file line number Diff line number Diff line change
@@ -1,20 +1,24 @@
import Controller from '@ember/controller';
import classic from 'ember-classic-decorator';
import { computed } from '@ember/object';
import Controller from '@ember/controller';

export default Controller.extend({
ticketsTotal: computed(function() {
@classic
export default class RevenueController extends Controller {
@computed
get ticketsTotal() {
let sum = 0;
this.model.forEach(data => {
sum += data.ticketCount;
});
return sum;
}),
}

revenueTotal: computed(function() {
@computed
get revenueTotal() {
let sum = 0;
this.model.forEach(data => {
sum += data.revenue;
});
return sum;
})
});
}
}
13 changes: 8 additions & 5 deletions app/controllers/admin/users.js
Original file line number Diff line number Diff line change
@@ -1,12 +1,15 @@
import Controller from '@ember/controller';
import classic from 'ember-classic-decorator';
import { computed } from '@ember/object';
import Controller from '@ember/controller';


export default Controller.extend({
onSessionRoute: computed('routing.currentRouteName', function() {
@classic
export default class UsersController extends Controller {
@computed('routing.currentRouteName')
get onSessionRoute() {
let { currentRouteName } = this.routing;
const routes = ['admin.users.view.index', 'admin.users.view.sessions.list', 'admin.users.view.tickets.list', 'admin.users.view.events.list', 'admin.users.view.account.profile', 'admin.users.view.account.email-preferences', 'admin.users.view.account.applications'];
return !routes.includes(currentRouteName);
})
});
}
}

34 changes: 23 additions & 11 deletions app/controllers/application.js
Original file line number Diff line number Diff line change
@@ -1,18 +1,30 @@
import classic from 'ember-classic-decorator';
import { computed } from '@ember/object';
import { inject as service } from '@ember/service';
import { filterBy } from '@ember/object/computed';
import Controller from '@ember/controller';
import { inject as service } from '@ember/service';
import { computed } from '@ember/object';
import moment from 'moment';


export default Controller.extend({
routing : service('-routing'),
cookies : service(),
fastboot : service(),
unreadNotifications : filterBy('model.notifications', 'isRead', false),
footerPages : filterBy('model.pages', 'place', 'footer'),
@classic
export default class ApplicationController extends Controller {
@service('-routing')
routing;

@service
cookies;

@service
fastboot;

@filterBy('model.notifications', 'isRead', false)
unreadNotifications;

@filterBy('model.pages', 'place', 'footer')
footerPages;

showCookie: computed(function() {
@computed
get showCookie() {
const cookieName = 'seen-cookie-message';
let cookie = this.cookies.read(cookieName);
let cookieExists = false;
Expand All @@ -26,5 +38,5 @@ export default Controller.extend({
};
this.cookies.write(cookieName, 'yes', options);
return cookieExists;
})
});
}
}
5 changes: 3 additions & 2 deletions app/controllers/events.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
import classic from 'ember-classic-decorator';
import Controller from '@ember/controller';
export default Controller.extend({
});
@classic
export default class EventsController extends Controller {}
71 changes: 38 additions & 33 deletions app/controllers/events/view/edit/attendee.js
Original file line number Diff line number Diff line change
@@ -1,41 +1,46 @@
import classic from 'ember-classic-decorator';
import { action } from '@ember/object';
import Controller from '@ember/controller';
import EventWizardMixin from 'open-event-frontend/mixins/event-wizard';

export default Controller.extend(EventWizardMixin, {
@classic
export default class AttendeeController extends Controller.extend(EventWizardMixin) {
async saveForms(data) {
await Promise.all((data.customForms ? data.customForms.toArray() : []).map(customForm => customForm.save()));
return data;
},
actions: {
async save(data) {
try {
await this.saveForms(data);
this.saveEventDataAndRedirectTo(
'events.view.index',
['tickets']
);
} catch (error) {
console.error('Error while updating attendee', error);
this.notify.error(this.l10n.t(error.message),
{
id: 'attendee_error_serv'
});
}
},
async move(direction, data) {
try {
await this.saveForms(data);
this.saveEventDataAndRedirectTo(
direction === 'forwards' ? 'events.view.edit.sponsors' : 'events.view.edit.basic-details',
['tickets']
);
} catch (error) {
console.error('Error while moving attendee', error);
this.notify.error(this.l10n.t(error.message),
{
id: 'attendee_move_error'
});
}
}

@action
async save(data) {
try {
await this.saveForms(data);
this.saveEventDataAndRedirectTo(
'events.view.index',
['tickets']
);
} catch (error) {
console.error('Error while updating attendee', error);
this.notify.error(this.l10n.t(error.message),
{
id: 'attendee_error_serv'
});
}
}

@action
async move(direction, data) {
try {
await this.saveForms(data);
this.saveEventDataAndRedirectTo(
direction === 'forwards' ? 'events.view.edit.sponsors' : 'events.view.edit.basic-details',
['tickets']
);
} catch (error) {
console.error('Error while moving attendee', error);
this.notify.error(this.l10n.t(error.message),
{
id: 'attendee_move_error'
});
}
}
});
}
34 changes: 19 additions & 15 deletions app/controllers/events/view/edit/basic-details.js
Original file line number Diff line number Diff line change
@@ -1,19 +1,23 @@
import classic from 'ember-classic-decorator';
import { action } from '@ember/object';
import Controller from '@ember/controller';
import EventWizardMixin from 'open-event-frontend/mixins/event-wizard';

export default Controller.extend(EventWizardMixin, {
actions: {
save() {
this.saveEventDataAndRedirectTo(
'events.view.index',
['tickets', 'socialLinks', 'copyright', 'tax', 'stripeAuthorization']
);
},
move() {
this.saveEventDataAndRedirectTo(
'events.view.edit.attendee',
['tickets', 'socialLinks', 'copyright', 'tax', 'stripeAuthorization']
);
}
@classic
export default class BasicDetailsController extends Controller.extend(EventWizardMixin) {
@action
save() {
this.saveEventDataAndRedirectTo(
'events.view.index',
['tickets', 'socialLinks', 'copyright', 'tax', 'stripeAuthorization']
);
}
});

@action
move() {
this.saveEventDataAndRedirectTo(
'events.view.edit.attendee',
['tickets', 'socialLinks', 'copyright', 'tax', 'stripeAuthorization']
);
}
}
38 changes: 20 additions & 18 deletions app/controllers/events/view/edit/sessions-speakers.js
Original file line number Diff line number Diff line change
@@ -1,31 +1,33 @@
import classic from 'ember-classic-decorator';
import { action } from '@ember/object';
import Controller from '@ember/controller';
import EventWizardMixin from 'open-event-frontend/mixins/event-wizard';

export default Controller.extend(EventWizardMixin, {

@classic
export default class SessionsSpeakersController extends Controller.extend(EventWizardMixin) {
async saveEventData() {
const event = await this._super(...arguments);
const event = await undefined;

event.get('isSessionsSpeakersEnabled')
? await this.model.speakersCall.save()
: await this.model.speakersCall.destroyRecord();

return event;
},
}

@action
save() {
this.saveEventDataAndRedirectTo(
'events.view.index',
['tracks', 'sessionTypes', 'microlocations', 'customForms', 'tickets']
);
}

actions: {
save() {
this.saveEventDataAndRedirectTo(
'events.view.index',
['tracks', 'sessionTypes', 'microlocations', 'customForms', 'tickets']
);
},
move(direction) {
this.saveEventDataAndRedirectTo(
direction === 'forwards' ? 'events.view.edit.sponsors' : 'events.view.edit.sponsors',
['tracks', 'sessionTypes', 'microlocations', 'customForms', 'tickets']
);
}
@action
move(direction) {
this.saveEventDataAndRedirectTo(
direction === 'forwards' ? 'events.view.edit.sponsors' : 'events.view.edit.sponsors',
['tracks', 'sessionTypes', 'microlocations', 'customForms', 'tickets']
);
}
});
}
34 changes: 18 additions & 16 deletions app/controllers/events/view/edit/sponsors.js
Original file line number Diff line number Diff line change
@@ -1,21 +1,23 @@
import classic from 'ember-classic-decorator';
import { action } from '@ember/object';
import Controller from '@ember/controller';
import EventWizardMixin from 'open-event-frontend/mixins/event-wizard';

export default Controller.extend(EventWizardMixin, {

actions: {
save() {
this.saveEventDataAndRedirectTo(
'events.view.index',
['sponsors', 'tickets']
);
},
move(direction) {
this.saveEventDataAndRedirectTo(
direction === 'forwards' ? 'events.view.edit.sessions-speakers' : 'events.view.edit.attendee',
['sponsors', 'tickets']
);
}
@classic
export default class SponsorsController extends Controller.extend(EventWizardMixin) {
@action
save() {
this.saveEventDataAndRedirectTo(
'events.view.index',
['sponsors', 'tickets']
);
}

});
@action
move(direction) {
this.saveEventDataAndRedirectTo(
direction === 'forwards' ? 'events.view.edit.sessions-speakers' : 'events.view.edit.attendee',
['sponsors', 'tickets']
);
}
}
Loading

0 comments on commit 33b228a

Please sign in to comment.