|
1 | 1 | 'use strict'; |
2 | 2 | angular.module('com.module.events') |
3 | | - .config(function($stateProvider) { |
| 3 | + .config(function ($stateProvider) { |
4 | 4 | $stateProvider.state('app.events', { |
5 | 5 | abstract: true, |
6 | 6 | url: '/events', |
7 | 7 | templateUrl: 'modules/events/views/main.html' |
8 | 8 | }).state('app.events.list', { |
9 | 9 | url: '', |
10 | 10 | templateUrl: 'modules/events/views/list.html', |
11 | | - controller: 'EventsCtrl' |
| 11 | + controllerAs: 'ctrl', |
| 12 | + controller: function (events) { |
| 13 | + this.events = events; |
| 14 | + }, |
| 15 | + resolve: { |
| 16 | + events: function (EventsService) { |
| 17 | + return EventsService.getEvents(); |
| 18 | + } |
| 19 | + } |
12 | 20 | }).state('app.events.add', { |
13 | 21 | url: '/add', |
14 | 22 | templateUrl: 'modules/events/views/form.html', |
15 | | - controller: 'EventsCtrl' |
| 23 | + controllerAs: 'ctrl', |
| 24 | + controller: function ($state, EventsService, event) { |
| 25 | + this.event = event; |
| 26 | + this.formFields = EventsService.getFormFields(); |
| 27 | + this.formOptions = {}; |
| 28 | + this.submit = function () { |
| 29 | + EventsService.upsertEvent(this.event).then(function () { |
| 30 | + $state.go('^.list'); |
| 31 | + }); |
| 32 | + }; |
| 33 | + }, |
| 34 | + resolve: { |
| 35 | + event: function () { |
| 36 | + return {}; |
| 37 | + } |
| 38 | + } |
16 | 39 | }).state('app.events.edit', { |
17 | 40 | url: '/:id/edit', |
18 | 41 | templateUrl: 'modules/events/views/form.html', |
19 | | - controller: 'EventsCtrl' |
| 42 | + controllerAs: 'ctrl', |
| 43 | + controller: function ($state, EventsService, event) { |
| 44 | + console.log(event); |
| 45 | + this.event = event; |
| 46 | + this.formFields = EventsService.getFormFields(); |
| 47 | + this.formOptions = {}; |
| 48 | + this.submit = function () { |
| 49 | + EventsService.upsertEvent(this.event).then(function () { |
| 50 | + $state.go('^.list'); |
| 51 | + }); |
| 52 | + }; |
| 53 | + }, |
| 54 | + resolve: { |
| 55 | + event: function ($stateParams, EventsService) { |
| 56 | + return EventsService.getEvent($stateParams.id); |
| 57 | + } |
| 58 | + } |
20 | 59 | }).state('app.events.view', { |
21 | 60 | url: '/:id', |
22 | 61 | templateUrl: 'modules/events/views/view.html', |
23 | | - controller: 'EventsCtrl' |
| 62 | + controllerAs: 'ctrl', |
| 63 | + controller: function (event) { |
| 64 | + this.event = event; |
| 65 | + }, |
| 66 | + resolve: { |
| 67 | + event: function ($stateParams, EventsService) { |
| 68 | + return EventsService.getEvent($stateParams.id); |
| 69 | + } |
| 70 | + } |
| 71 | + }).state('app.events.delete', { |
| 72 | + url: '/:id/delete', |
| 73 | + template: '', |
| 74 | + controllerAs: 'ctrl', |
| 75 | + controller: function ($state, EventsService, event) { |
| 76 | + EventsService.deleteEvent(event.id, function () { |
| 77 | + $state.go('^.list'); |
| 78 | + }, function () { |
| 79 | + $state.go('^.list'); |
| 80 | + }); |
| 81 | + }, |
| 82 | + resolve: { |
| 83 | + event: function ($stateParams, EventsService) { |
| 84 | + return EventsService.getEvent($stateParams.id); |
| 85 | + } |
| 86 | + } |
24 | 87 | }); |
25 | 88 | }); |
0 commit comments