7
7
. controller ( 'listEventController' , listEventController )
8
8
. controller ( 'appendSpeakerIntoEventController' , appendSpeakerIntoEventController ) ;
9
9
10
- function formEventController ( $log , $scope , $routeParams , $q , DataResource , uiAlert ) {
11
- const
10
+ function formEventController ( $log , $scope , $routeParams , wizMarkdownSvc , $q , DataResource , uiAlert ) {
11
+ const
12
12
vm = this ,
13
13
{ _id } = $routeParams ,
14
14
eventResource = new DataResource ( '/events' , '/:_id' ) ,
15
15
eventTypeResource = new DataResource ( 'eventTypes' ) ,
16
16
placeResource = new DataResource ( '/places' ) ;
17
17
18
18
// ===# Bootstraping data #=== //
19
-
19
+
20
20
vm . places = placeResource . query ( ) ;
21
21
vm . eventTypeList = eventTypeResource . query ( ) ;
22
22
28
28
. then ( event => vm . event = event )
29
29
. catch ( error => vm . alertEmitter . danger ( error . data . message ) ) ;
30
30
}
31
-
31
+
32
32
33
33
// ===# View model #=== //
34
34
vm . place = { } ;
35
35
vm . alert = { } ;
36
36
vm . alertEmitter = uiAlert ( vm . alert ) ;
37
37
vm . submitForm = submitForm ;
38
+ vm . previewMode = false ;
39
+ vm . previewNews = previewNews ;
38
40
39
41
// ===# Setup #=== //
40
42
41
43
function submitForm ( event ) {
42
44
if ( $scope . eventForm . $invalid ) return ;
43
-
45
+
44
46
$q
45
47
. resolve ( event )
46
48
. then ( parseDataToMs )
69
71
}
70
72
71
73
function parseDataToMs ( event ) {
72
- const
74
+ const
73
75
startHour = getFullHours ( event . startHour ) . getTime ( ) ,
74
76
startDate = getFullDate ( event . startDate ) . getTime ( ) ,
75
77
endHour = getFullHours ( event . endHour ) . getTime ( ) ,
89
91
return event ;
90
92
}
91
93
94
+ function previewNews ( message ) {
95
+ console . log ( message )
96
+ vm . previewMode = ! vm . previewMode ;
97
+ vm . event . preview = wizMarkdownSvc . Transform ( message ) ;
98
+ }
99
+
92
100
function getFullHours ( stringDate ) {
93
101
if ( typeof stringDate !== 'string' ) {
94
102
stringDate = Date . prototype . toISOString . call ( stringDate ) ;
104
112
if ( typeof stringDate !== 'string' ) {
105
113
stringDate = Date . prototype . toISOString . call ( stringDate ) ;
106
114
}
107
- const
115
+ const
108
116
regexp = / \d { 4 } - \d { 2 } - \d { 2 } / ,
109
117
dateExp = stringDate . match ( regexp ) [ 0 ] ;
110
118
116
124
const
117
125
vm = this ,
118
126
eventResource = new DataResource ( '/events' ) ;
119
-
127
+
120
128
// ===# Bootstraping data #=== //
121
129
eventResource
122
130
. query ( )
152
160
}
153
161
154
162
function appendSpeakerIntoEventController ( $log , $scope , $routeParams , $q , uiAlert , DataResource ) {
155
- const
163
+ const
156
164
vm = this ,
157
165
eventResource = new DataResource ( '/events' , '/:_id' ) ,
158
166
{ _id } = $routeParams ;
181
189
const mapSpeakersId = speakers => speakers . map ( speaker => speaker . _id ) ;
182
190
183
191
function speakersQuery ( event ) {
184
- const
192
+ const
185
193
{ speakers } = event ,
186
194
speakersId = mapSpeakersId ( speakers ) ,
187
195
speakerResource = new DataResource ( '/speakers' , '/:_id' ) ;
188
196
189
197
const filterSpeakersAlreadyAdded = speakers => speakers . filter ( speaker => speakersId . indexOf ( speaker . _id ) < 0 ) ;
190
-
198
+
191
199
speakerResource
192
200
. query ( )
193
201
. $promise
222
230
vm . speaker = speaker ;
223
231
}
224
232
}
225
- } ) ( angular ) ;
233
+ } ) ( angular ) ;
0 commit comments