author | Chloe Laisne <chloe.laisne@gmail.com> |
Fri, 05 Aug 2016 14:55:45 +0200 | |
changeset 251 | ac320de33ec7 |
parent 249 | e4204b1a579a |
child 252 | ba4fd614582a |
permissions | -rw-r--r-- |
209
35cb7200bb0a
Separate playlist and player component with player service as bridge
Chloe Laisne <chloe.laisne@gmail.com>
parents:
diff
changeset
|
1 |
import Ember from 'ember'; |
35cb7200bb0a
Separate playlist and player component with player service as bridge
Chloe Laisne <chloe.laisne@gmail.com>
parents:
diff
changeset
|
2 |
|
215
82878d132784
Play/Pause/Reset events from player/playlist-components
Chloe Laisne <chloe.laisne@gmail.com>
parents:
214
diff
changeset
|
3 |
export default Ember.Service.extend(Ember.Evented, { |
209
35cb7200bb0a
Separate playlist and player component with player service as bridge
Chloe Laisne <chloe.laisne@gmail.com>
parents:
diff
changeset
|
4 |
|
214
9bff007eb03c
Reflect player-component actions on playlist-component
Chloe Laisne <chloe.laisne@gmail.com>
parents:
212
diff
changeset
|
5 |
items: [], |
9bff007eb03c
Reflect player-component actions on playlist-component
Chloe Laisne <chloe.laisne@gmail.com>
parents:
212
diff
changeset
|
6 |
item: null, |
242 | 7 |
model: null, |
212
f2c6080a73aa
Player backward/forward design logic
Chloe Laisne <chloe.laisne@gmail.com>
parents:
209
diff
changeset
|
8 |
|
242 | 9 |
window: '', |
10 |
playing: false, |
|
247
7a5d729992b8
Design and animate transcript
Chloe Laisne <chloe.laisne@gmail.com>
parents:
246
diff
changeset
|
11 |
progress: 0, // In Milliseconds |
242 | 12 |
reduce: false, |
214
9bff007eb03c
Reflect player-component actions on playlist-component
Chloe Laisne <chloe.laisne@gmail.com>
parents:
212
diff
changeset
|
13 |
|
251
ac320de33ec7
Add transcript button to player-component
Chloe Laisne <chloe.laisne@gmail.com>
parents:
249
diff
changeset
|
14 |
display: function(el) { |
ac320de33ec7
Add transcript button to player-component
Chloe Laisne <chloe.laisne@gmail.com>
parents:
249
diff
changeset
|
15 |
if(this.get('window') !== el) { |
ac320de33ec7
Add transcript button to player-component
Chloe Laisne <chloe.laisne@gmail.com>
parents:
249
diff
changeset
|
16 |
this.set('window', el); |
ac320de33ec7
Add transcript button to player-component
Chloe Laisne <chloe.laisne@gmail.com>
parents:
249
diff
changeset
|
17 |
} else { |
ac320de33ec7
Add transcript button to player-component
Chloe Laisne <chloe.laisne@gmail.com>
parents:
249
diff
changeset
|
18 |
this.set('window', ''); |
ac320de33ec7
Add transcript button to player-component
Chloe Laisne <chloe.laisne@gmail.com>
parents:
249
diff
changeset
|
19 |
} |
ac320de33ec7
Add transcript button to player-component
Chloe Laisne <chloe.laisne@gmail.com>
parents:
249
diff
changeset
|
20 |
}, |
ac320de33ec7
Add transcript button to player-component
Chloe Laisne <chloe.laisne@gmail.com>
parents:
249
diff
changeset
|
21 |
|
215
82878d132784
Play/Pause/Reset events from player/playlist-components
Chloe Laisne <chloe.laisne@gmail.com>
parents:
214
diff
changeset
|
22 |
init: function() { |
82878d132784
Play/Pause/Reset events from player/playlist-components
Chloe Laisne <chloe.laisne@gmail.com>
parents:
214
diff
changeset
|
23 |
this.on('reset', Ember.run.bind(this, this.get('reset'))); |
82878d132784
Play/Pause/Reset events from player/playlist-components
Chloe Laisne <chloe.laisne@gmail.com>
parents:
214
diff
changeset
|
24 |
}, |
82878d132784
Play/Pause/Reset events from player/playlist-components
Chloe Laisne <chloe.laisne@gmail.com>
parents:
214
diff
changeset
|
25 |
|
249 | 26 |
setProgress: function(time) { |
27 |
this.set('progress', time); |
|
28 |
}, |
|
29 |
||
30 |
play: function(id) { |
|
31 |
this.set('item', id); |
|
32 |
this.set('playing', true); |
|
33 |
}, |
|
34 |
||
35 |
pause: function() { |
|
36 |
this.set('playing', false); |
|
37 |
}, |
|
38 |
||
215
82878d132784
Play/Pause/Reset events from player/playlist-components
Chloe Laisne <chloe.laisne@gmail.com>
parents:
214
diff
changeset
|
39 |
reset: function(id) { |
82878d132784
Play/Pause/Reset events from player/playlist-components
Chloe Laisne <chloe.laisne@gmail.com>
parents:
214
diff
changeset
|
40 |
this.set('item', id); |
242 | 41 |
} |
209
35cb7200bb0a
Separate playlist and player component with player service as bridge
Chloe Laisne <chloe.laisne@gmail.com>
parents:
diff
changeset
|
42 |
}); |