aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSam Potts <sam@selz.com>2016-01-14 09:35:01 +1100
committerSam Potts <sam@selz.com>2016-01-14 09:35:01 +1100
commitdebdf112cc4e473bc41ce57590dfd4b5812cf23d (patch)
tree83c6b73c4f48298134886bb6a1a3494bd083c850
parent533af96c4f99da01f5157e02859d667dac92519f (diff)
parent533bd173b2d011a496a6d486a699296425ead7a7 (diff)
downloadplyr-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.md10
-rw-r--r--src/js/plyr.js25
2 files changed, 30 insertions, 5 deletions
diff --git a/readme.md b/readme.md
index e6878202..ce647687 100644
--- a/readme.md
+++ b/readme.md
@@ -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 || {}));