46 |
46 |
47 if (this.autostart) { |
47 if (this.autostart) { |
48 _pauseState = false; |
48 _pauseState = false; |
49 this.media.trigger("play"); |
49 this.media.trigger("play"); |
50 } |
50 } |
|
51 |
51 // Binding functions to jwplayer |
52 // Binding functions to jwplayer |
52 |
53 |
53 this.media.getCurrentTime = function() { |
54 var _media = this.media; |
54 return new IriSP.Model.Time(1000*_player.getPosition() || 0); |
55 |
55 } |
56 _media.on("setcurrenttime", function(_milliseconds) { |
56 this.media.getVolume = function() { |
|
57 return _player.getVolume() / 100; |
|
58 } |
|
59 this.media.getPaused = function() { |
|
60 return _pauseState; |
|
61 } |
|
62 this.media.getMuted = function() { |
|
63 return _player.getMute(); |
|
64 } |
|
65 this.media.setCurrentTime = function(_milliseconds) { |
|
66 _seekPause = _pauseState; |
57 _seekPause = _pauseState; |
67 return _player.seek(_milliseconds / 1000); |
58 _player.seek(_milliseconds / 1000); |
68 } |
59 }); |
69 this.media.setVolume = function(_vol) { |
60 |
70 return _player.setVolume(Math.floor(_vol*100)); |
61 _media.on("setvolume", function(_vol) { |
71 } |
62 _player.setVolume(Math.floor(_vol*100)); |
72 this.media.mute = function() { |
63 _media.volume = _vol; |
73 return _player.setMute(true); |
64 }); |
74 } |
65 |
75 this.media.unmute = function() { |
66 _media.on("setmuted", function(_muted) { |
76 return _player.setMute(false); |
67 _player.setMute(_muted); |
77 } |
68 _media.muted = _muted; |
78 this.media.play = function() { |
69 }); |
79 return _player.play(true); |
70 |
80 } |
71 _media.on("setplay", function() { |
81 this.media.pause = function() { |
72 _player.play(true); |
82 return _player.pause(true); |
73 _media.paused = false; |
83 } |
74 }); |
|
75 |
|
76 _media.on("setpause", function() { |
|
77 _player.pause(true); |
|
78 _media.paused = true; |
|
79 }); |
84 |
80 |
85 // Binding jwplater events to media |
81 // Binding jwplater events to media |
86 |
82 |
87 var _media = this.media; |
83 function getVolume() { |
|
84 _media.muted = _player.getMute(); |
|
85 _media.volume = _player.getVolume() / 100; |
|
86 } |
88 |
87 |
89 _opts.events = { |
88 _opts.events = { |
90 onReady: function() { |
89 onReady: function() { |
|
90 getVolume(); |
|
91 _media.currentTime = new IriSP.Model.Time(1000*_player.getPosition() || 0); |
91 _media.trigger("loadedmetadata"); |
92 _media.trigger("loadedmetadata"); |
92 }, |
93 }, |
93 onTime: function(_progress) { |
94 onTime: function(_progress) { |
94 if (_seekPause) { |
95 if (_seekPause) { |
95 _player.pause(true); |
96 _player.pause(true); |
112 _pauseState = true; |
113 _pauseState = true; |
113 _media.trigger("pause"); |
114 _media.trigger("pause"); |
114 }, |
115 }, |
115 onSeek: function() { |
116 onSeek: function() { |
116 _media.trigger("seeked"); |
117 _media.trigger("seeked"); |
|
118 }, |
|
119 onMute: function(_event) { |
|
120 _media.muted = _event.mute; |
|
121 _media.trigger("volumechange"); |
|
122 }, |
|
123 onVolume: function(_event) { |
|
124 _media.volume = _event.volume / 100; |
|
125 _media.trigger("volumechange"); |
117 } |
126 } |
118 } |
127 } |
119 _player.setup(_opts); |
128 _player.setup(_opts); |
120 |
129 |
121 this.jwplayer = _player; |
130 this.jwplayer = _player; |