diff options
author | Sam Potts <sam@selz.com> | 2016-01-14 09:35:01 +1100 |
---|---|---|
committer | Sam Potts <sam@selz.com> | 2016-01-14 09:35:01 +1100 |
commit | debdf112cc4e473bc41ce57590dfd4b5812cf23d (patch) | |
tree | 83c6b73c4f48298134886bb6a1a3494bd083c850 | |
parent | 533af96c4f99da01f5157e02859d667dac92519f (diff) | |
parent | 533bd173b2d011a496a6d486a699296425ead7a7 (diff) | |
download | plyr-debdf112cc4e473bc41ce57590dfd4b5812cf23d.tar.lz plyr-debdf112cc4e473bc41ce57590dfd4b5812cf23d.tar.xz plyr-debdf112cc4e473bc41ce57590dfd4b5812cf23d.zip |
Merge pull request #140 from gurupras/gurupras-develop
Updated API function 'plyr.source()' to get media source
-rw-r--r-- | readme.md | 10 | ||||
-rw-r--r-- | src/js/plyr.js | 25 |
2 files changed, 30 insertions, 5 deletions
@@ -356,10 +356,10 @@ Here's a list of the methods supported: </tr> <tr> <td><code>source(...)</code></td> - <td>String or Array</td> + <td>String or Array or (null|undefined)</td> <td> - Set the media source. - <br><br> + Get/Set the media source. + <br><br> <strong>string</strong><br> <code>.source("/path/to/video.mp4")</code><br> This will set the <code>src</code> attribute on the <code>video</code> or <code>audio</code> element. @@ -370,6 +370,9 @@ Here's a list of the methods supported: <br><br> <strong>YouTube</strong><br> Currently this API method only accepts a YouTube ID when used with a YouTube player. I will add URL support soon, along with being able to swap between types (e.g. YouTube to Audio or Video and vice versa.) + <br><br> + <strong> null or undefined </strong><br> + Returns the current media source. Works for both native videos and embeds. </td> </tr> <tr> @@ -504,3 +507,4 @@ Also these links helped created Plyr: ## Copyright and License [The MIT license](license.md). + diff --git a/src/js/plyr.js b/src/js/plyr.js index 44f17290..638deaad 100644 --- a/src/js/plyr.js +++ b/src/js/plyr.js @@ -1716,6 +1716,27 @@ } } + // Add common function to retrieve media source + function _source(args) { + // If not null or undefined, parse it + if(args !== null && args !== undefined) { + return _parseSource(args); + } + + // Return the current source + + // The following lines inside if/else may fail. + // Not sure whether to bubble exception up or + // return a default value or log to console. + if(player.type === "youtube") { + return player.embed.getVideoUrl(); + } + else { + return player.media.currentSrc; + } + } + + // Update poster function _updatePoster(source) { if (player.type === 'video') { @@ -1997,7 +2018,7 @@ rewind: _rewind, forward: _forward, seek: _seek, - source: _parseSource, + source: _source, poster: _updatePoster, setVolume: _setVolume, togglePlay: _togglePlay, @@ -2088,4 +2109,4 @@ return players; }; -}(this.plyr = this.plyr || {}));
\ No newline at end of file +}(this.plyr = this.plyr || {})); |