--- a/src/widgets/AutoPlayer.js Sun Nov 12 22:07:33 2017 +0100
+++ b/src/widgets/AutoPlayer.js Wed Sep 04 17:32:50 2024 +0200
@@ -1,76 +1,91 @@
-IriSP.Widgets.AutoPlayer = function(player, config) {
- IriSP.Widgets.Widget.call(this, player, config);
-};
-
-IriSP.Widgets.AutoPlayer.prototype = new IriSP.Widgets.Widget();
+// AutoPlayer
-IriSP.Widgets.AutoPlayer.prototype.defaults = {
- default_type: "JwpPlayer"
-};
-
-IriSP.Widgets.AutoPlayer.prototype.draw = function() {
-
- if (typeof this.video === "undefined") {
- this.video = this.media.video;
+const AutoPlayer = function (ns) {
+ return class extends ns.Widgets.Widget {
+ constructor(player, config) {
+ super(player, config);
}
- var _props = [ "live", "provider", "autostart", "streamer", "video", "height", "width", "url_transform" ],
+ static defaults = {
+ default_type: "HtmlPlayer",
+ };
+
+ draw() {
+ if (typeof this.video === "undefined") {
+ this.video = this.media.video;
+ }
+
+ var _props = [
+ "live",
+ "provider",
+ "autostart",
+ "streamer",
+ "video",
+ "height",
+ "width",
+ "url_transform",
+ ],
_opts = {},
_types = [
- {
- regexp: /^rtmp:\/\//,
- type: "JwpPlayer"
- },
- {
- regexp: /\.(mp4|m4v|mp3)$/,
- type: "AdaptivePlayer"
- },
- {
- regexp: /\.(ogg|ogv|webm)$/,
- type: "HtmlPlayer"
- },
- {
- regexp: /^(https?:\/\/)?(www\.)?youtube\.com/,
- type: "PopcornPlayer"
- },
- {
- regexp: /^(https?:\/\/)?(www\.)?vimeo\.com/,
- type: "PopcornPlayer"
- },
- {
- regexp: /^(https?:\/\/)?(www\.)?dailymotion\.com/,
- type: "DailymotionPlayer"
- }
+ {
+ regexp: /^rtmp:\/\//,
+ type: "JwpPlayer",
+ },
+ {
+ regexp: /\.(mp4|m4v|mp3)$/,
+ type: "AdaptivePlayer",
+ },
+ {
+ regexp: /\.(ogg|ogv|webm)$/,
+ type: "HtmlPlayer",
+ },
+ {
+ regexp: /^(https?:\/\/)?(www\.)?youtube\.com/,
+ type: "PopcornPlayer",
+ },
+ {
+ regexp: /^(https?:\/\/)?(www\.)?vimeo\.com/,
+ type: "PopcornPlayer",
+ },
+ {
+ regexp: /^(https?:\/\/)?(www\.)?dailymotion\.com/,
+ type: "DailymotionPlayer",
+ },
],
_rtmprgx = /^rtmp:\/\//;
- for (var i = 0; i < _types.length; i++) {
+ for (var i = 0; i < _types.length; i++) {
if (this.video && _types[i].regexp.test(this.video.toLowerCase())) {
- _opts.type = _types[i].type;
- break;
+ _opts.type = _types[i].type;
+ break;
}
- }
+ }
- if (typeof _opts.type === "undefined") {
+ if (typeof _opts.type === "undefined") {
_opts.type = this.default_type;
- }
+ }
- if (_opts.type === "AdaptivePlayer") {
- var _canPlayType = document.createElement('video').canPlayType('video/mp4; codecs="avc1.42E01E"');
- _opts.type = (_canPlayType !== "no") ? "HtmlPlayer" : "JwpPlayer";
- }
+ if (_opts.type === "AdaptivePlayer") {
+ var _canPlayType = document
+ .createElement("video")
+ .canPlayType('video/mp4; codecs="avc1.42E01E"');
+ _opts.type = _canPlayType !== "no" ? "HtmlPlayer" : "JwpPlayer";
+ }
- if (_rtmprgx.test(this.video)) {
+ if (_rtmprgx.test(this.video)) {
_opts.provider = "rtmp";
_opts.live = true;
- }
+ }
- for (var i = 0; i < _props.length; i++) {
+ for (var i = 0; i < _props.length; i++) {
if (typeof this[_props[i]] !== "undefined") {
- _opts[_props[i]] = this[_props[i]];
+ _opts[_props[i]] = this[_props[i]];
}
- }
+ }
- this.insertSubwidget(this.$, _opts);
+ this.insertSubwidget(this.$, _opts);
+ };
+ };
+};
-};
+export { AutoPlayer };