From 801ae4fc1adbe4ede941542b0b29f4ff80240072 Mon Sep 17 00:00:00 2001 From: Sam Potts Date: Sun, 15 Feb 2015 15:15:28 +1100 Subject: [PATCH] Improved experience on small screens --- assets/js/simple-media.js | 15 ++++++--------- assets/less/simple-media.less | 19 +++++++++++++++---- dist/css/simple-media.css | 2 +- dist/js/simple-media.js | 2 +- 4 files changed, 23 insertions(+), 15 deletions(-) diff --git a/assets/js/simple-media.js b/assets/js/simple-media.js index ab1a5505..bc576b52 100644 --- a/assets/js/simple-media.js +++ b/assets/js/simple-media.js @@ -22,6 +22,7 @@ // Default config var defaults = { + enabled: true, // /Android|webOS|iPhone|iPad|iPod|BlackBerry/i.test(navigator.userAgent) debug: false, seekInterval: 10, volume: 5, @@ -866,6 +867,11 @@ // Extend the default options with user specified config = extend(defaults, options); + // If enabled carry on + if(!config.enabled) { + return false; + } + // Setup the fullscreen api fullscreen = fullscreenApi(); @@ -888,15 +894,6 @@ return false; } - // If smartphone or tablet, stop customization as video (and captions in latest devices) are handled natively - player.isSmartphoneOrTablet = /Android|webOS|iPhone|iPad|iPod|BlackBerry/i.test(navigator.userAgent); - if (player.isSmartphoneOrTablet) { - if(config.debug) { - console.error("Browser not suppported."); - } - return false; - } - // Set up aria-label for Play button with the title option if (typeof(config.title) === "undefined" || !config.title.length) { config.playAriaLabel = "Play"; diff --git a/assets/less/simple-media.less b/assets/less/simple-media.less index fbb0d224..e485ee0e 100644 --- a/assets/less/simple-media.less +++ b/assets/less/simple-media.less @@ -123,10 +123,14 @@ padding: 20px; min-height: 2.5em; color: #fff; - font-size: 24px; + font-size: 16px; text-shadow: 0 1px 1px rgba(0,0,0, .75); text-align: center; .font-smoothing(); + + @media (min-width: 560px) { + font-size: 24px; + } } &.captions-active &-captions { display: block; @@ -352,8 +356,17 @@ } .player-captions { top: auto; - bottom: 80px; + bottom: 90px; + + @media (min-width: 560px) and (max-width: 767px) { + bottom: 60px; + } + + @media (min-width: 768px) { + bottom: 80px; + } } + } .player-controls { position: absolute; @@ -391,8 +404,6 @@ .video-controls .player-volume { position: relative; padding: 0; - //height: 8px; - //top: -3px; } .player-time { margin-top: 4px; diff --git a/dist/css/simple-media.css b/dist/css/simple-media.css index eee0eedc..ab48a2e2 100644 --- a/dist/css/simple-media.css +++ b/dist/css/simple-media.css @@ -1 +1 @@ -.sr-only{position:absolute!important;clip:rect(1px,1px,1px,1px);padding:0!important;border:0!important;height:1px!important;width:1px!important;overflow:hidden}.player{position:relative;max-width:100%;min-width:290px;overflow:hidden;background:#000}.player,.player *,.player ::after,.player ::before{box-sizing:border-box}.player-video{position:relative}.player video{width:100%;height:auto;vertical-align:middle}.player-captions{display:none;position:absolute;bottom:0;left:0;width:100%;padding:20px;min-height:2.5em;color:#fff;font-size:24px;text-shadow:0 1px 1px rgba(0,0,0,.75);text-align:center;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}.player.captions-active .player-captions{display:block}.player-controls{zoom:1;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;position:relative;padding:20px 10px 10px;background:#343f4a;line-height:1}.player-controls:after,.player-controls:before{content:"";display:table}.player-controls:after{clear:both}.player-controls-sound{display:inline-block;margin-top:10px}@media (min-width:560px){.player-controls-playback{float:left}.player-controls-sound{float:right;margin-top:0}}.player-controls button,.player-controls input+label{display:inline-block;vertical-align:middle;margin:0 2px;padding:5px 10px;transition:background .3s ease;border-radius:3px;cursor:pointer}.player-controls button svg,.player-controls input+label svg{width:18px;height:18px;display:block;fill:currentColor;transition:fill .3s ease}.player-controls input+label,.player-controls input.inverted:checked+label{color:#565d64}.player-controls button,.player-controls input.inverted+label,.player-controls input:checked+label{color:#cbd0d3}.player-controls button{border:0;background:0 0;overflow:hidden}.player-controls button:hover,.player-controls label:hover{background:#3498db}.player-controls button:hover svg,.player-controls label:hover svg{fill:#fff}.player-controls button:focus,.player-controls input:focus+label{outline:#000 dotted thin;outline-offset:1px}.player-controls button:focus svg,.player-controls input:focus+label svg{fill:#fff}.player-controls .icon-exit-fullscreen,.player-controls .icon-muted{display:none}.player-controls .player-time{display:inline-block;vertical-align:middle;margin-left:10px;color:#fff;font-weight:600;font-size:14px;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}.player-progress{position:absolute;top:0;left:0;right:0;width:100%;height:10px;margin:0;vertical-align:top}.player-progress[value]{-webkit-appearance:none;border:none;background:#565d64;cursor:pointer;color:#3498db}.player-progress[value]::-webkit-progress-bar{background:#565d64}.player-progress[value]::-webkit-progress-value{background:currentColor}.player-progress[value]::-moz-progress-bar{background:currentColor}.player-controls [data-player=pause],.player.playing .player-controls [data-player=play]{display:none}.player.playing .player-controls [data-player=pause]{display:inline-block}.player.muted .player-controls .icon-muted{display:block}.player.muted .player-controls .icon-muted+svg{display:none}.player-volume{vertical-align:middle;-webkit-appearance:none;-moz-appearance:none;width:100px;margin:0 10px 0 0;padding:0;cursor:pointer;background:0 0}.player-volume::-webkit-slider-runnable-track{height:6px;background:#565d64;border:0;border-radius:3px}.player-volume::-webkit-slider-thumb{-webkit-appearance:none;margin-top:-3px;height:12px;width:12px;background:#cbd0d3;border:0;border-radius:6px;transition:background .3s ease}.player-volume::-moz-range-track{height:6px;background:#565d64;border:0;border-radius:3px}.player-volume::-moz-range-thumb{height:12px;width:12px;background:#cbd0d3;border:0;border-radius:6px;transition:background .3s ease}.player-volume::-ms-track{height:6px;background:0 0;border-color:transparent;border-width:3px 0;color:transparent}.player-volume::-ms-fill-lower,.player-volume::-ms-fill-upper{height:6px;background:#565d64;border:0;border-radius:3px}.player-volume::-ms-thumb{height:12px;width:12px;background:#cbd0d3;border:0;border-radius:6px;transition:background .3s ease}.player-volume:focus{outline:0}.player-volume:focus::-webkit-slider-thumb{background:#3498db}.player-volume:focus::-moz-range-thumb{background:#3498db}.player-volume:focus::-ms-thumb{background:#3498db}.player:-webkit-full-screen{position:absolute;top:0;left:0;right:0;bottom:0;height:100%;width:100%}.player:-moz-full-screen{position:absolute;top:0;left:0;right:0;bottom:0;height:100%;width:100%}.player:-ms-fullscreen{position:absolute;top:0;left:0;right:0;bottom:0;height:100%;width:100%}.player:fullscreen{position:absolute;top:0;left:0;right:0;bottom:0;height:100%;width:100%}.player:-webkit-full-screen .player-video{height:100%;width:100%}.player:-moz-full-screen .player-video{height:100%;width:100%}.player:-ms-fullscreen .player-video{height:100%;width:100%}.player:fullscreen .player-video{height:100%;width:100%}.player:-webkit-full-screen .player-video video{height:100%}.player:-moz-full-screen .player-video video{height:100%}.player:-ms-fullscreen .player-video video{height:100%}.player:fullscreen .player-video video{height:100%}.player:-webkit-full-screen .player-video .player-captions{top:auto;bottom:80px}.player:-moz-full-screen .player-video .player-captions{top:auto;bottom:80px}.player:-ms-fullscreen .player-video .player-captions{top:auto;bottom:80px}.player:fullscreen .player-video .player-captions{top:auto;bottom:80px}.player:-webkit-full-screen .player-controls{position:absolute;bottom:0;left:0;right:0}.player:-moz-full-screen .player-controls{position:absolute;bottom:0;left:0;right:0}.player:-ms-fullscreen .player-controls{position:absolute;bottom:0;left:0;right:0}.player:fullscreen .player-controls{position:absolute;bottom:0;left:0;right:0}.player:-webkit-full-screen .player-controls .icon-exit-fullscreen{display:block}.player:-moz-full-screen .player-controls .icon-exit-fullscreen{display:block}.player:-ms-fullscreen .player-controls .icon-exit-fullscreen{display:block}.player:fullscreen .player-controls .icon-exit-fullscreen{display:block}.player:-webkit-full-screen .player-controls .icon-exit-fullscreen+svg{display:none}.player:-moz-full-screen .player-controls .icon-exit-fullscreen+svg{display:none}.player:-ms-fullscreen .player-controls .icon-exit-fullscreen+svg{display:none}.player:fullscreen .player-controls .icon-exit-fullscreen+svg{display:none}.player [data-player=captions],.player [data-player=captions]+label,.player [data-player=fullscreen],.player [data-player=fullscreen]+label{display:none}.player.captions-enabled [data-player=captions],.player.captions-enabled [data-player=captions]+label,.player.fullscreen-enabled [data-player=fullscreen],.player.fullscreen-enabled [data-player=fullscreen]+label{display:inline-block}@media screen and (-ms-high-contrast:active),(-ms-high-contrast:none){.video-controls .player-volume{position:relative;padding:0}.player-time{margin-top:4px}.player-captions{padding:8px;min-height:36px}} \ No newline at end of file +.sr-only{position:absolute!important;clip:rect(1px,1px,1px,1px);padding:0!important;border:0!important;height:1px!important;width:1px!important;overflow:hidden}.player{position:relative;max-width:100%;min-width:290px;overflow:hidden;background:#000}.player,.player *,.player ::after,.player ::before{box-sizing:border-box}.player-video{position:relative}.player video{width:100%;height:auto;vertical-align:middle}.player-captions{display:none;position:absolute;bottom:0;left:0;width:100%;padding:20px;min-height:2.5em;color:#fff;font-size:16px;text-shadow:0 1px 1px rgba(0,0,0,.75);text-align:center;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}@media (min-width:560px){.player-captions{font-size:24px}}.player.captions-active .player-captions{display:block}.player-controls{zoom:1;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;position:relative;padding:20px 10px 10px;background:#343f4a;line-height:1}.player-controls:after,.player-controls:before{content:"";display:table}.player-controls:after{clear:both}.player-controls-sound{display:inline-block;margin-top:10px}@media (min-width:560px){.player-controls-playback{float:left}.player-controls-sound{float:right;margin-top:0}}.player-controls button,.player-controls input+label{display:inline-block;vertical-align:middle;margin:0 2px;padding:5px 10px;transition:background .3s ease;border-radius:3px;cursor:pointer}.player-controls button svg,.player-controls input+label svg{width:18px;height:18px;display:block;fill:currentColor;transition:fill .3s ease}.player-controls input+label,.player-controls input.inverted:checked+label{color:#565d64}.player-controls button,.player-controls input.inverted+label,.player-controls input:checked+label{color:#cbd0d3}.player-controls button{border:0;background:0 0;overflow:hidden}.player-controls button:hover,.player-controls label:hover{background:#3498db}.player-controls button:hover svg,.player-controls label:hover svg{fill:#fff}.player-controls button:focus,.player-controls input:focus+label{outline:#000 dotted thin;outline-offset:1px}.player-controls button:focus svg,.player-controls input:focus+label svg{fill:#fff}.player-controls .icon-exit-fullscreen,.player-controls .icon-muted{display:none}.player-controls .player-time{display:inline-block;vertical-align:middle;margin-left:10px;color:#fff;font-weight:600;font-size:14px;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}.player-progress{position:absolute;top:0;left:0;right:0;width:100%;height:10px;margin:0;vertical-align:top}.player-progress[value]{-webkit-appearance:none;border:none;background:#565d64;cursor:pointer;color:#3498db}.player-progress[value]::-webkit-progress-bar{background:#565d64}.player-progress[value]::-webkit-progress-value{background:currentColor}.player-progress[value]::-moz-progress-bar{background:currentColor}.player-controls [data-player=pause],.player.playing .player-controls [data-player=play]{display:none}.player.playing .player-controls [data-player=pause]{display:inline-block}.player.muted .player-controls .icon-muted{display:block}.player.muted .player-controls .icon-muted+svg{display:none}.player-volume{vertical-align:middle;-webkit-appearance:none;-moz-appearance:none;width:100px;margin:0 10px 0 0;padding:0;cursor:pointer;background:0 0}.player-volume::-webkit-slider-runnable-track{height:6px;background:#565d64;border:0;border-radius:3px}.player-volume::-webkit-slider-thumb{-webkit-appearance:none;margin-top:-3px;height:12px;width:12px;background:#cbd0d3;border:0;border-radius:6px;transition:background .3s ease}.player-volume::-moz-range-track{height:6px;background:#565d64;border:0;border-radius:3px}.player-volume::-moz-range-thumb{height:12px;width:12px;background:#cbd0d3;border:0;border-radius:6px;transition:background .3s ease}.player-volume::-ms-track{height:6px;background:0 0;border-color:transparent;border-width:3px 0;color:transparent}.player-volume::-ms-fill-lower,.player-volume::-ms-fill-upper{height:6px;background:#565d64;border:0;border-radius:3px}.player-volume::-ms-thumb{height:12px;width:12px;background:#cbd0d3;border:0;border-radius:6px;transition:background .3s ease}.player-volume:focus{outline:0}.player-volume:focus::-webkit-slider-thumb{background:#3498db}.player-volume:focus::-moz-range-thumb{background:#3498db}.player-volume:focus::-ms-thumb{background:#3498db}.player:-webkit-full-screen{position:absolute;top:0;left:0;right:0;bottom:0;height:100%;width:100%}.player:-moz-full-screen{position:absolute;top:0;left:0;right:0;bottom:0;height:100%;width:100%}.player:-ms-fullscreen{position:absolute;top:0;left:0;right:0;bottom:0;height:100%;width:100%}.player:fullscreen{position:absolute;top:0;left:0;right:0;bottom:0;height:100%;width:100%}.player:-webkit-full-screen .player-video{height:100%;width:100%}.player:-moz-full-screen .player-video{height:100%;width:100%}.player:-ms-fullscreen .player-video{height:100%;width:100%}.player:fullscreen .player-video{height:100%;width:100%}.player:-webkit-full-screen .player-video video{height:100%}.player:-moz-full-screen .player-video video{height:100%}.player:-ms-fullscreen .player-video video{height:100%}.player:fullscreen .player-video video{height:100%}.player:-webkit-full-screen .player-video .player-captions{top:auto;bottom:90px}.player:-moz-full-screen .player-video .player-captions{top:auto;bottom:90px}.player:-ms-fullscreen .player-video .player-captions{top:auto;bottom:90px}.player:fullscreen .player-video .player-captions{top:auto;bottom:90px}@media (min-width:560px) and (max-width:767px){.player:-webkit-full-screen .player-video .player-captions{bottom:60px}.player:-moz-full-screen .player-video .player-captions{bottom:60px}.player:-ms-fullscreen .player-video .player-captions{bottom:60px}.player:fullscreen .player-video .player-captions{bottom:60px}}@media (min-width:768px){.player:-webkit-full-screen .player-video .player-captions{bottom:80px}.player:-moz-full-screen .player-video .player-captions{bottom:80px}.player:-ms-fullscreen .player-video .player-captions{bottom:80px}.player:fullscreen .player-video .player-captions{bottom:80px}}.player:-webkit-full-screen .player-controls{position:absolute;bottom:0;left:0;right:0}.player:-moz-full-screen .player-controls{position:absolute;bottom:0;left:0;right:0}.player:-ms-fullscreen .player-controls{position:absolute;bottom:0;left:0;right:0}.player:fullscreen .player-controls{position:absolute;bottom:0;left:0;right:0}.player:-webkit-full-screen .player-controls .icon-exit-fullscreen{display:block}.player:-moz-full-screen .player-controls .icon-exit-fullscreen{display:block}.player:-ms-fullscreen .player-controls .icon-exit-fullscreen{display:block}.player:fullscreen .player-controls .icon-exit-fullscreen{display:block}.player:-webkit-full-screen .player-controls .icon-exit-fullscreen+svg{display:none}.player:-moz-full-screen .player-controls .icon-exit-fullscreen+svg{display:none}.player:-ms-fullscreen .player-controls .icon-exit-fullscreen+svg{display:none}.player:fullscreen .player-controls .icon-exit-fullscreen+svg{display:none}.player [data-player=captions],.player [data-player=captions]+label,.player [data-player=fullscreen],.player [data-player=fullscreen]+label{display:none}.player.captions-enabled [data-player=captions],.player.captions-enabled [data-player=captions]+label,.player.fullscreen-enabled [data-player=fullscreen],.player.fullscreen-enabled [data-player=fullscreen]+label{display:inline-block}@media screen and (-ms-high-contrast:active),(-ms-high-contrast:none){.video-controls .player-volume{position:relative;padding:0}.player-time{margin-top:4px}.player-captions{padding:8px;min-height:36px}} \ No newline at end of file diff --git a/dist/js/simple-media.js b/dist/js/simple-media.js index 750eefb6..696ac3c8 100644 --- a/dist/js/simple-media.js +++ b/dist/js/simple-media.js @@ -1 +1 @@ -!function(e){"use strict";function t(){var e,t,n,r=navigator.userAgent,s=navigator.appName,o=""+parseFloat(navigator.appVersion),a=parseInt(navigator.appVersion,10);return-1!==navigator.appVersion.indexOf("Windows NT")&&-1!==navigator.appVersion.indexOf("rv:11")?(s="IE",o="11;"):-1!==(t=r.indexOf("MSIE"))?(s="IE",o=r.substring(t+5)):-1!==(t=r.indexOf("Chrome"))?(s="Chrome",o=r.substring(t+7)):-1!==(t=r.indexOf("Safari"))?(s="Safari",o=r.substring(t+7),-1!==(t=r.indexOf("Version"))&&(o=r.substring(t+8))):-1!==(t=r.indexOf("Firefox"))?(s="Firefox",o=r.substring(t+8)):(e=r.lastIndexOf(" ")+1)<(t=r.lastIndexOf("/"))&&(s=r.substring(e,t),o=r.substring(t+1),s.toLowerCase()==s.toUpperCase()&&(s=navigator.appName)),-1!==(n=o.indexOf(";"))&&(o=o.substring(0,n)),-1!==(n=o.indexOf(" "))&&(o=o.substring(0,n)),a=parseInt(""+o,10),isNaN(a)&&(o=""+parseFloat(navigator.appVersion),a=parseInt(navigator.appVersion,10)),[s,a]}function n(e){var t=[];return t=e.split(" --> "),s(t[0])}function r(e){var t=[];return t=e.split(" --> "),s(t[1])}function s(e){if(null===e||void 0===e)return 0;var t,n=[],r=[];return n=e.split(","),r=n[0].split(":"),t=Math.floor(60*r[0]*60)+Math.floor(60*r[1])+Math.floor(r[2])}function o(e){for(e.subcount=0;r(e.captions[e.subcount][0])e.captions.length-1){e.subcount=e.captions.length-1;break}}function a(e){e.container.className+=" "+C.classes.captions.enabled,C.captions.defaultActive&&(e.container.className+=" "+C.classes.captions.active,e.buttons.captions.setAttribute("checked","checked"))}function i(e,t,n){return e.replace(new RegExp(t.replace(/([.*+?^=!:${}()|\[\]\/\\])/g,"\\$1"),"g"),n)}function c(e,t){e.length||(e=[e]);for(var n=e.length-1;n>=0;n--){var r=n>0?t.cloneNode(!0):t,s=e[n],o=s.parentNode,a=s.nextSibling;r.appendChild(s),a?o.insertBefore(r,a):o.appendChild(r)}}function l(e){var t=M.isFullScreen()?{x:0,y:0}:u(e.currentTarget);return{x:e.clientX-t.x,y:e.clientY-t.y}}function u(e){for(var t=0,n=0;e;)t+=e.offsetLeft-e.scrollLeft+e.clientLeft,n+=e.offsetTop-e.scrollTop+e.clientTop,e=e.offsetParent;return{x:t,y:n}}function d(e,t){for(var n in t)t[n]&&t[n].constructor&&t[n].constructor===Object?(e[n]=e[n]||{},d(e[n],t[n])):e[n]=t[n];return e}function p(e){var t,n=I[e]||[],r=n.length;for(t=0;r>t;t++)n[t].apply(A.media,[])}function f(){var e={supportsFullScreen:!1,isFullScreen:function(){return!1},requestFullScreen:function(){},cancelFullScreen:function(){},fullScreenEventName:"",element:null,prefix:""},t="webkit moz o ms khtml".split(" ");if("undefined"!=typeof document.cancelFullScreen)e.supportsFullScreen=!0;else for(var n=0,r=t.length;r>n;n++)if(e.prefix=t[n],"undefined"!=typeof document[e.prefix+"CancelFullScreen"]){e.supportsFullScreen=!0;break}return"webkit"===e.prefix&&navigator.userAgent.match(/Version\/[\d\.]+.*Safari/)&&(e.supportsFullScreen=!1),e.supportsFullScreen&&(e.fullScreenEventName=e.prefix+"fullscreenchange",e.isFullScreen=function(){switch(this.prefix){case"":return document.fullScreen;case"webkit":return document.webkitIsFullScreen;default:return document[this.prefix+"FullScreen"]}},e.requestFullScreen=function(e){return""===this.prefix?e.requestFullScreen():e[this.prefix+"RequestFullScreen"]("webkit"===this.prefix?e.ALLOW_KEYBOARD_INPUT:null)},e.cancelFullScreen=function(){return""===this.prefix?document.cancelFullScreen():document[this.prefix+"CancelFullScreen"]()},e.element=function(){return""===this.prefix?document.fullscreenElement:document[this.prefix+"FullscreenElement"]}),e}function m(){C.debug&&console.log("Injecting custom controls");var e=C.html;e=i(e,"{aria-label}",C.playAriaLabel),e=i(e,"{id}",A.random),A.container.insertAdjacentHTML("beforeend",e)}function b(e){return A.container.querySelectorAll(e)}function v(e){return b(e)[0]}function g(){A.controls=v(C.selectors.controls),A.buttons={},A.buttons.play=v(C.selectors.buttons.play),A.buttons.pause=v(C.selectors.buttons.pause),A.buttons.restart=v(C.selectors.buttons.restart),A.buttons.rewind=v(C.selectors.buttons.rewind),A.buttons.forward=v(C.selectors.buttons.forward),A.buttons.mute=v(C.selectors.buttons.mute),A.buttons.captions=v(C.selectors.buttons.captions),A.buttons.fullscreen=v(C.selectors.buttons.fullscreen),A.progress={},A.progress.bar=v(C.selectors.progress),A.progress.text=A.progress.bar.getElementsByTagName("span")[0],A.volume=v(C.selectors.buttons.volume),A.duration=v(C.selectors.duration),A.seekTime=b(C.selectors.seekTime)}function x(){A.media.play(),A.container.className=A.container.className.replace(C.classes.stopped,C.classes.playing)}function T(){A.media.pause(),A.container.className=A.container.className.replace(C.classes.playing,C.classes.stopped)}function h(){A.media.currentTime=0,A.isTextTracks||(A.subcount=0),x()}function y(){A.volume.value=C.volume,A.media.volume=parseFloat(C.volume/10),k()}function k(){0===A.media.volume||A.media.muted?A.container.className+=" "+C.classes.muted:A.container.className=A.container.className.replace(C.classes.muted,"")}function w(){if(A.media=A.container.querySelectorAll("audio, video")[0],!A.media)return console.error("No audio or video element found!"),!1;if(null===A.media.getAttribute("autoplay")&&(A.container.className+=" "+C.classes.stopped),A.media.removeAttribute("controls"),A.type="video"==A.media.tagName.toLowerCase()?"video":"audio","video"===A.type){var e=document.createElement("div");e.setAttribute("class",C.classes.videoContainer),c(A.media,e),A.videoContainer=e}}function S(){if("video"===A.type){A.videoContainer.insertAdjacentHTML("afterbegin","
"),A.captionsContainer=v(C.selectors.captions),A.isTextTracks=!1,A.media.textTracks&&(A.isTextTracks=!0);for(var e,t="",s=A.media.childNodes,o=0;o=31||"Safari"===A.browserName&&A.browserMajorVersion>=7)for(C.debug&&console.log("Detected IE 10/11 or Firefox 31+ or Safari 7+"),A.isTextTracks=!1,l={},i=A.media.textTracks,c=0;cn(A.captions[A.subcount][0])&&A.media.currentTime.toFixed(1)r(A.captions[A.subcount][0])&&A.subcounte?0:e,A.isTextTracks||"video"!==A.type||o(A)},!1),A.buttons.forward.addEventListener("click",function(){var e=A.media.currentTime+C.seekInterval;A.media.currentTime=e>A.media.duration?A.media.duration:e,A.isTextTracks||"video"!==A.type||o(A)},!1),A.volume.addEventListener("change",function(){C.volume=this.value,y()},!1),A.buttons.mute.addEventListener("click",function(){A.media.muted=A.media.muted===!0?!1:!0,k()},!1),A.media.addEventListener("timeupdate",function(){A.secs=parseInt(A.media.currentTime%60),A.mins=parseInt(A.media.currentTime/60%60),A.secs=("0"+A.secs).slice(-2),A.mins=("0"+A.mins).slice(-2),A.duration.innerHTML=A.mins+":"+A.secs},!1),A.media.addEventListener("timeupdate",function(){A.percent=100/A.media.duration*A.media.currentTime,A.percent>0&&(A.progress.bar.value=A.percent,A.progress.text.innerHTML=A.percent)},!1),A.progress.bar.addEventListener("click",function(e){A.pos=l(e).x/this.offsetWidth,A.media.currentTime=A.pos*A.media.duration,A.isTextTracks||"video"!==A.type||o(A)}),A.buttons.captions.addEventListener("click",function(){this.checked?A.container.className+=" "+C.classes.captions.active:A.container.className=A.container.className.replace(C.classes.captions.active,"")},!1),A.media.addEventListener("ended",function(){"video"===A.type&&(A.captionsContainer.innerHTML=""),A.container.className=A.container.className.replace(C.classes.playing,C.classes.stopped)})}function E(e){A.container=e,w(),A.random=Math.floor(1e4*Math.random()),m(),g(),y(),F(),S(),N(),L()}var M,C,I={},A={},O={debug:!1,seekInterval:10,volume:5,clickToPause:!0,selectors:{container:".player",controls:".player-controls",buttons:{play:"[data-player='play']",pause:"[data-player='pause']",restart:"[data-player='restart']",rewind:"[data-player='restart']",forward:"[data-player='fast-forward']",mute:"[data-player='mute']",volume:"[data-player='volume']",captions:"[data-player='captions']",fullscreen:"[data-player='fullscreen']"},progress:".player-progress",captions:".player-captions",duration:".player-duration",seekTime:".player-seek-time"},classes:{videoContainer:"player-video",stopped:"stopped",playing:"playing",muted:"muted",captions:{active:"captions-active",enabled:"captions-enabled"},fullscreen:{enabled:"fullscreen-enabled"}},captions:{defaultActive:!0},fullscreen:{enabled:!0}};e.on=function(e,t){I[e]||(I[e]=[]),I[e].push(t)},e.setup=function(e){if(C=d(O,e),M=f(),A.browserInfo=t(),A.browserName=A.browserInfo[0],A.browserMajorVersion=A.browserInfo[1],C.debug&&console.log(A.browserName+" "+A.browserMajorVersion),"IE"===A.browserName&&(8===A.browserMajorVersion||9===A.browserMajorVersion))return C.debug&&console.error("Browser not suppported."),!1;if(A.isSmartphoneOrTablet=/Android|webOS|iPhone|iPad|iPod|BlackBerry/i.test(navigator.userAgent),A.isSmartphoneOrTablet)return C.debug&&console.error("Browser not suppported."),!1;C.playAriaLabel="undefined"!=typeof C.title&&C.title.length?"Play "+C.title:"Play";var n=document.querySelector(C.selectors.container);return null===n?(C.debug&&console.error("Selector "+C.selectors.container+" not found!"),!1):(E(n),p("setup"),void 0)}}(this.simpleMedia=this.simpleMedia||{}); \ No newline at end of file +!function(e){"use strict";function t(){var e,t,n,r=navigator.userAgent,s=navigator.appName,a=""+parseFloat(navigator.appVersion),o=parseInt(navigator.appVersion,10);return-1!==navigator.appVersion.indexOf("Windows NT")&&-1!==navigator.appVersion.indexOf("rv:11")?(s="IE",a="11;"):-1!==(t=r.indexOf("MSIE"))?(s="IE",a=r.substring(t+5)):-1!==(t=r.indexOf("Chrome"))?(s="Chrome",a=r.substring(t+7)):-1!==(t=r.indexOf("Safari"))?(s="Safari",a=r.substring(t+7),-1!==(t=r.indexOf("Version"))&&(a=r.substring(t+8))):-1!==(t=r.indexOf("Firefox"))?(s="Firefox",a=r.substring(t+8)):(e=r.lastIndexOf(" ")+1)<(t=r.lastIndexOf("/"))&&(s=r.substring(e,t),a=r.substring(t+1),s.toLowerCase()==s.toUpperCase()&&(s=navigator.appName)),-1!==(n=a.indexOf(";"))&&(a=a.substring(0,n)),-1!==(n=a.indexOf(" "))&&(a=a.substring(0,n)),o=parseInt(""+a,10),isNaN(o)&&(a=""+parseFloat(navigator.appVersion),o=parseInt(navigator.appVersion,10)),[s,o]}function n(e){var t=[];return t=e.split(" --> "),s(t[0])}function r(e){var t=[];return t=e.split(" --> "),s(t[1])}function s(e){if(null===e||void 0===e)return 0;var t,n=[],r=[];return n=e.split(","),r=n[0].split(":"),t=Math.floor(60*r[0]*60)+Math.floor(60*r[1])+Math.floor(r[2])}function a(e){for(e.subcount=0;r(e.captions[e.subcount][0])e.captions.length-1){e.subcount=e.captions.length-1;break}}function o(e){e.container.className+=" "+C.classes.captions.enabled,C.captions.defaultActive&&(e.container.className+=" "+C.classes.captions.active,e.buttons.captions.setAttribute("checked","checked"))}function i(e,t,n){return e.replace(new RegExp(t.replace(/([.*+?^=!:${}()|\[\]\/\\])/g,"\\$1"),"g"),n)}function c(e,t){e.length||(e=[e]);for(var n=e.length-1;n>=0;n--){var r=n>0?t.cloneNode(!0):t,s=e[n],a=s.parentNode,o=s.nextSibling;r.appendChild(s),o?a.insertBefore(r,o):a.appendChild(r)}}function l(e){var t=M.isFullScreen()?{x:0,y:0}:u(e.currentTarget);return{x:e.clientX-t.x,y:e.clientY-t.y}}function u(e){for(var t=0,n=0;e;)t+=e.offsetLeft-e.scrollLeft+e.clientLeft,n+=e.offsetTop-e.scrollTop+e.clientTop,e=e.offsetParent;return{x:t,y:n}}function d(e,t){for(var n in t)t[n]&&t[n].constructor&&t[n].constructor===Object?(e[n]=e[n]||{},d(e[n],t[n])):e[n]=t[n];return e}function p(e){var t,n=I[e]||[],r=n.length;for(t=0;r>t;t++)n[t].apply(A.media,[])}function f(){var e={supportsFullScreen:!1,isFullScreen:function(){return!1},requestFullScreen:function(){},cancelFullScreen:function(){},fullScreenEventName:"",element:null,prefix:""},t="webkit moz o ms khtml".split(" ");if("undefined"!=typeof document.cancelFullScreen)e.supportsFullScreen=!0;else for(var n=0,r=t.length;r>n;n++)if(e.prefix=t[n],"undefined"!=typeof document[e.prefix+"CancelFullScreen"]){e.supportsFullScreen=!0;break}return"webkit"===e.prefix&&navigator.userAgent.match(/Version\/[\d\.]+.*Safari/)&&(e.supportsFullScreen=!1),e.supportsFullScreen&&(e.fullScreenEventName=e.prefix+"fullscreenchange",e.isFullScreen=function(){switch(this.prefix){case"":return document.fullScreen;case"webkit":return document.webkitIsFullScreen;default:return document[this.prefix+"FullScreen"]}},e.requestFullScreen=function(e){return""===this.prefix?e.requestFullScreen():e[this.prefix+"RequestFullScreen"]("webkit"===this.prefix?e.ALLOW_KEYBOARD_INPUT:null)},e.cancelFullScreen=function(){return""===this.prefix?document.cancelFullScreen():document[this.prefix+"CancelFullScreen"]()},e.element=function(){return""===this.prefix?document.fullscreenElement:document[this.prefix+"FullscreenElement"]}),e}function m(){C.debug&&console.log("Injecting custom controls");var e=C.html;e=i(e,"{aria-label}",C.playAriaLabel),e=i(e,"{id}",A.random),A.container.insertAdjacentHTML("beforeend",e)}function b(e){return A.container.querySelectorAll(e)}function v(e){return b(e)[0]}function g(){A.controls=v(C.selectors.controls),A.buttons={},A.buttons.play=v(C.selectors.buttons.play),A.buttons.pause=v(C.selectors.buttons.pause),A.buttons.restart=v(C.selectors.buttons.restart),A.buttons.rewind=v(C.selectors.buttons.rewind),A.buttons.forward=v(C.selectors.buttons.forward),A.buttons.mute=v(C.selectors.buttons.mute),A.buttons.captions=v(C.selectors.buttons.captions),A.buttons.fullscreen=v(C.selectors.buttons.fullscreen),A.progress={},A.progress.bar=v(C.selectors.progress),A.progress.text=A.progress.bar.getElementsByTagName("span")[0],A.volume=v(C.selectors.buttons.volume),A.duration=v(C.selectors.duration),A.seekTime=b(C.selectors.seekTime)}function x(){A.media.play(),A.container.className=A.container.className.replace(C.classes.stopped,C.classes.playing)}function T(){A.media.pause(),A.container.className=A.container.className.replace(C.classes.playing,C.classes.stopped)}function h(){A.media.currentTime=0,A.isTextTracks||(A.subcount=0),x()}function y(){A.volume.value=C.volume,A.media.volume=parseFloat(C.volume/10),k()}function k(){0===A.media.volume||A.media.muted?A.container.className+=" "+C.classes.muted:A.container.className=A.container.className.replace(C.classes.muted,"")}function w(){if(A.media=A.container.querySelectorAll("audio, video")[0],!A.media)return console.error("No audio or video element found!"),!1;if(null===A.media.getAttribute("autoplay")&&(A.container.className+=" "+C.classes.stopped),A.media.removeAttribute("controls"),A.type="video"==A.media.tagName.toLowerCase()?"video":"audio","video"===A.type){var e=document.createElement("div");e.setAttribute("class",C.classes.videoContainer),c(A.media,e),A.videoContainer=e}}function N(){if("video"===A.type){A.videoContainer.insertAdjacentHTML("afterbegin","
"),A.captionsContainer=v(C.selectors.captions),A.isTextTracks=!1,A.media.textTracks&&(A.isTextTracks=!0);for(var e,t="",s=A.media.childNodes,a=0;a=31||"Safari"===A.browserName&&A.browserMajorVersion>=7)for(C.debug&&console.log("Detected IE 10/11 or Firefox 31+ or Safari 7+"),A.isTextTracks=!1,l={},i=A.media.textTracks,c=0;cn(A.captions[A.subcount][0])&&A.media.currentTime.toFixed(1)r(A.captions[A.subcount][0])&&A.subcounte?0:e,A.isTextTracks||"video"!==A.type||a(A)},!1),A.buttons.forward.addEventListener("click",function(){var e=A.media.currentTime+C.seekInterval;A.media.currentTime=e>A.media.duration?A.media.duration:e,A.isTextTracks||"video"!==A.type||a(A)},!1),A.volume.addEventListener("change",function(){C.volume=this.value,y()},!1),A.buttons.mute.addEventListener("click",function(){A.media.muted=A.media.muted===!0?!1:!0,k()},!1),A.media.addEventListener("timeupdate",function(){A.secs=parseInt(A.media.currentTime%60),A.mins=parseInt(A.media.currentTime/60%60),A.secs=("0"+A.secs).slice(-2),A.mins=("0"+A.mins).slice(-2),A.duration.innerHTML=A.mins+":"+A.secs},!1),A.media.addEventListener("timeupdate",function(){A.percent=100/A.media.duration*A.media.currentTime,A.percent>0&&(A.progress.bar.value=A.percent,A.progress.text.innerHTML=A.percent)},!1),A.progress.bar.addEventListener("click",function(e){A.pos=l(e).x/this.offsetWidth,A.media.currentTime=A.pos*A.media.duration,A.isTextTracks||"video"!==A.type||a(A)}),A.buttons.captions.addEventListener("click",function(){this.checked?A.container.className+=" "+C.classes.captions.active:A.container.className=A.container.className.replace(C.classes.captions.active,"")},!1),A.media.addEventListener("ended",function(){"video"===A.type&&(A.captionsContainer.innerHTML=""),A.container.className=A.container.className.replace(C.classes.playing,C.classes.stopped)})}function E(e){A.container=e,w(),A.random=Math.floor(1e4*Math.random()),m(),g(),y(),F(),N(),S(),L()}var M,C,I={},A={},O={enabled:!0,debug:!1,seekInterval:10,volume:5,clickToPause:!0,selectors:{container:".player",controls:".player-controls",buttons:{play:"[data-player='play']",pause:"[data-player='pause']",restart:"[data-player='restart']",rewind:"[data-player='restart']",forward:"[data-player='fast-forward']",mute:"[data-player='mute']",volume:"[data-player='volume']",captions:"[data-player='captions']",fullscreen:"[data-player='fullscreen']"},progress:".player-progress",captions:".player-captions",duration:".player-duration",seekTime:".player-seek-time"},classes:{videoContainer:"player-video",stopped:"stopped",playing:"playing",muted:"muted",captions:{active:"captions-active",enabled:"captions-enabled"},fullscreen:{enabled:"fullscreen-enabled"}},captions:{defaultActive:!0},fullscreen:{enabled:!0}};e.on=function(e,t){I[e]||(I[e]=[]),I[e].push(t)},e.setup=function(e){if(C=d(O,e),!C.enabled)return!1;if(M=f(),A.browserInfo=t(),A.browserName=A.browserInfo[0],A.browserMajorVersion=A.browserInfo[1],C.debug&&console.log(A.browserName+" "+A.browserMajorVersion),"IE"===A.browserName&&(8===A.browserMajorVersion||9===A.browserMajorVersion))return C.debug&&console.error("Browser not suppported."),!1;C.playAriaLabel="undefined"!=typeof C.title&&C.title.length?"Play "+C.title:"Play";var n=document.querySelector(C.selectors.container);return null===n?(C.debug&&console.error("Selector "+C.selectors.container+" not found!"),!1):(E(n),p("setup"),void 0)}}(this.simpleMedia=this.simpleMedia||{}); \ No newline at end of file