popcornjs-rails 1.1.2 → 1.2.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,64 @@
1
+ /*
2
+ * popcorn.js version 1.2
3
+ * http://popcornjs.org
4
+ *
5
+ * Copyright 2011, Mozilla Foundation
6
+ * Licensed under the MIT license
7
+ */
8
+
9
+ (function(){document.addEventListener=document.addEventListener||function(f,h){f=f==="DOMContentLoaded"?"onreadystatechange":"on"+f;document.attachEvent(f,h)};document.removeEventListener=document.removeEventListener||function(f,h){f=f==="DOMContentLoaded"?"onreadystatechange":"on"+f;document.detachEvent(f,h)};HTMLScriptElement.prototype.addEventListener=HTMLScriptElement.prototype.addEventListener||function(f,h){f=f==="load"?"onreadystatechange":"on"+f;this.attachEvent(f,h)};HTMLScriptElement.prototype.removeEventListener=
10
+ HTMLScriptElement.prototype.removeEventListener||function(f,h){f=f==="load"?"onreadystatechange":"on"+f;this.detachEvent(f,h)};document.createEvent=document.createEvent||function(){return{type:null,target:null,currentTarget:null,cancelable:false,bubbles:false,initEvent:function(f){this.type=f},stopPropagation:function(){},stopImmediatePropagation:function(){}}};Array.prototype.forEach=Array.prototype.forEach||function(f,h){var y=Object.prototype.hasOwnProperty;if(!this||!f)return{};h=h||this;for(var j in this)y.call(this,
11
+ j)&&f.call(h,this[j],j,this);return this};if(!Array.prototype.map)Array.prototype.map=function(f,h){var y,j,o;if(this==null)throw new TypeError("this is null or not defined");var u=Object(this),q=u.length>>>0;if({}.toString.call(f)!="[object Function]")throw new TypeError(f+" is not a function");if(h)y=h;j=Array(q);for(o=0;o<q;){var z;if(o in u){z=u[o];z=f.call(y,z,o,u);j[o]=z}o++}return j};if(!Array.prototype.indexOf)Array.prototype.indexOf=function(f){if(this==null)throw new TypeError;var h=Object(this),
12
+ y=h.length>>>0;if(y===0)return-1;var j=0;if(arguments.length>0){j=Number(arguments[1]);if(j!=j)j=0;else if(j!=0&&j!=Infinity&&j!=-Infinity)j=(j>0||-1)*Math.floor(Math.abs(j))}if(j>=y)return-1;for(j=j>=0?j:Math.max(y-Math.abs(j),0);j<y;j++)if(j in h&&h[j]===f)return j;return-1}})();
13
+ (function(f,h){function y(a,b){return function(){if(c.plugin.debug)return a.apply(this,arguments);try{return a.apply(this,arguments)}catch(d){c.plugin.errors.push({plugin:b,thrown:d,source:a.toString()});this.emit("error",c.plugin.errors)}}}if(h.addEventListener){var j=Array.prototype,o=Object.prototype,u=j.forEach,q=j.slice,z=o.hasOwnProperty,A=o.toString,F=f.Popcorn,I=/^(#([\w\-\_\.]+))$/,D=[],E=false,C={events:{hash:{},apis:{}}},G=function(){return f.requestAnimationFrame||f.webkitRequestAnimationFrame||
14
+ f.mozRequestAnimationFrame||f.oRequestAnimationFrame||f.msRequestAnimationFrame||function(a){f.setTimeout(a,16)}}(),B=function(a){var b=a.media.currentTime,d=a.options.frameAnimation,e=a.data.disabled,g=a.data.trackEvents,i=g.animating,k=g.startIndex,p=c.registryByName,n=0,v,t;for(k=Math.min(k+1,g.byStart.length-2);k>0&&g.byStart[k];){n=g.byStart[k];t=(v=n._natives)&&v.type;if(!v||p[t]||a[t])if(n.start<=b&&n.end>b&&e.indexOf(t)===-1){if(!n._running){n._running=true;v.start.call(a,null,n);d&&n&&n._running&&
15
+ n.natives.frame&&v.frame.call(a,null,n,b)}}else if(n._running===true){n._running=false;v.end.call(a,null,n);if(d&&n._natives.frame){n=i.indexOf(n);n>=0&&i.splice(n,1)}}k--}},c=function(a,b){return new c.p.init(a,b||null)};c.version="1.2";c.isSupported=true;c.instances=[];c.p=c.prototype={init:function(a,b){var d,e=this;if(typeof a==="function")if(h.readyState==="complete")a(h,c);else{D.push(a);if(!E){E=true;var g=function(){h.removeEventListener("DOMContentLoaded",g,false);for(var k=0,p=D.length;k<
16
+ p;k++)D[k].call(h,c);D=null};h.addEventListener("DOMContentLoaded",g,false)}}else{this.media=(d=I.exec(a))&&d.length&&d[2]?h.getElementById(d[2]):a;this[this.media.nodeName&&this.media.nodeName.toLowerCase()||"video"]=this.media;c.instances.push(this);this.options=b||{};this.isDestroyed=false;this.data={timeUpdate:c.nop,disabled:[],events:{},hooks:{},history:[],state:{volume:this.media.volume},trackRefs:{},trackEvents:{byStart:[{start:-1,end:-1}],byEnd:[{start:-1,end:-1}],animating:[],startIndex:0,
17
+ endIndex:0,previousUpdateTime:-1}};var i=function(){e.media.removeEventListener("loadeddata",i,false);var k;k=e.media.duration;k=k!=k?Number.MAX_VALUE:k+1;c.addTrackEvent(e,{start:k,end:k});if(e.options.frameAnimation){e.data.timeUpdate=function(){c.timeUpdate(e,{});e.emit("timeupdate");!e.isDestroyed&&G(e.data.timeUpdate)};!e.isDestroyed&&G(e.data.timeUpdate)}else{e.data.timeUpdate=function(p){c.timeUpdate(e,p)};e.isDestroyed||e.media.addEventListener("timeupdate",e.data.timeUpdate,false)}};e.media.readyState>=
18
+ 2?i():e.media.addEventListener("loadeddata",i,false);return this}}};c.p.init.prototype=c.p;c.forEach=function(a,b,d){if(!a||!b)return{};d=d||this;var e,g;if(u&&a.forEach===u)return a.forEach(b,d);if(A.call(a)==="[object NodeList]"){e=0;for(g=a.length;e<g;e++)b.call(d,a[e],e,a);return a}for(e in a)z.call(a,e)&&b.call(d,a[e],e,a);return a};c.extend=function(a){var b=q.call(arguments,1);c.forEach(b,function(d){for(var e in d)a[e]=d[e]});return a};c.extend(c,{noConflict:function(a){if(a)f.Popcorn=F;return c},
19
+ error:function(a){throw Error(a);},guid:function(a){c.guid.counter++;return(a?a:"")+(+new Date+c.guid.counter)},sizeOf:function(a){var b=0,d;for(d in a)b++;return b},isArray:Array.isArray||function(a){return A.call(a)==="[object Array]"},nop:function(){},position:function(a){a=a.getBoundingClientRect();var b={},d=h.documentElement,e=h.body,g,i,k;g=d.clientTop||e.clientTop||0;i=d.clientLeft||e.clientLeft||0;k=f.pageYOffset&&d.scrollTop||e.scrollTop;d=f.pageXOffset&&d.scrollLeft||e.scrollLeft;g=Math.ceil(a.top+
20
+ k-g);i=Math.ceil(a.left+d-i);for(var p in a)b[p]=Math.round(a[p]);return c.extend({},b,{top:g,left:i})},disable:function(a,b){var d=a.data.disabled;d.indexOf(b)===-1&&d.push(b);B(a);return a},enable:function(a,b){var d=a.data.disabled,e=d.indexOf(b);e>-1&&d.splice(e,1);B(a);return a},destroy:function(a){var b=a.data.events,d,e,g;for(e in b){d=b[e];for(g in d)delete d[g];b[e]=null}if(!a.isDestroyed){a.data.timeUpdate&&a.media.removeEventListener("timeupdate",a.data.timeUpdate,false);a.isDestroyed=
21
+ true}}});c.guid.counter=1;c.extend(c.p,function(){var a={};c.forEach("load play pause currentTime playbackRate volume duration preload playbackRate autoplay loop controls muted buffered readyState seeking paused played seekable ended".split(/\s+/g),function(b){a[b]=function(d){if(typeof this.media[b]==="function"){if(d!=null&&/play|pause/.test(b))this.media.currentTime=c.util.toSeconds(d);this.media[b]();return this}if(d!=null){this.media[b]=d;return this}return this.media[b]}});return a}());c.forEach("enable disable".split(" "),
22
+ function(a){c.p[a]=function(b){return c[a](this,b)}});c.extend(c.p,{roundTime:function(){return-~this.media.currentTime},exec:function(a,b){c.addTrackEvent(this,{start:a,end:a+1,_running:false,_natives:{start:b||c.nop,end:c.nop,type:"cue"}});return this},mute:function(a){a=a==null||a===true?"muted":"unmuted";if(a==="unmuted"){this.media.muted=false;this.media.volume=this.data.state.volume}if(a==="muted"){this.data.state.volume=this.media.volume;this.media.muted=true}this.emit(a);return this},unmute:function(a){return this.mute(a==
23
+ null?false:!a)},position:function(){return c.position(this.media)},toggle:function(a){return c[this.data.disabled.indexOf(a)>-1?"enable":"disable"](this,a)},defaults:function(a,b){if(c.isArray(a)){c.forEach(a,function(d){for(var e in d)this.defaults(e,d[e])},this);return this}if(!this.options.defaults)this.options.defaults={};this.options.defaults[a]||(this.options.defaults[a]={});c.extend(this.options.defaults[a],b);return this}});c.Events={UIEvents:"blur focus focusin focusout load resize scroll unload",
24
+ MouseEvents:"mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave click dblclick",Events:"loadstart progress suspend emptied stalled play pause loadedmetadata loadeddata waiting playing canplay canplaythrough seeking seeked timeupdate ended ratechange durationchange volumechange"};c.Events.Natives=c.Events.UIEvents+" "+c.Events.MouseEvents+" "+c.Events.Events;C.events.apiTypes=["UIEvents","MouseEvents","Events"];(function(a,b){for(var d=C.events.apiTypes,e=a.Natives.split(/\s+/g),
25
+ g=0,i=e.length;g<i;g++)b.hash[e[g]]=true;d.forEach(function(k){b.apis[k]={};for(var p=a[k].split(/\s+/g),n=p.length,v=0;v<n;v++)b.apis[k][p[v]]=true})})(c.Events,C.events);c.events={isNative:function(a){return!!C.events.hash[a]},getInterface:function(a){if(!c.events.isNative(a))return false;var b=C.events,d=b.apiTypes;b=b.apis;for(var e=0,g=d.length,i,k;e<g;e++){k=d[e];if(b[k][a]){i=k;break}}return i},all:c.Events.Natives.split(/\s+/g),fn:{trigger:function(a,b){var d;if(this.data.events[a]&&c.sizeOf(this.data.events[a])){if(d=
26
+ c.events.getInterface(a)){d=h.createEvent(d);d.initEvent(a,true,true,f,1);this.media.dispatchEvent(d);return this}c.forEach(this.data.events[a],function(e){e.call(this,b)},this)}return this},listen:function(a,b){var d=this,e=true,g=c.events.hooks[a],i;if(!this.data.events[a]){this.data.events[a]={};e=false}if(g){g.add&&g.add.call(this,{},b);if(g.bind)a=g.bind;if(g.handler){i=b;b=function(k){g.handler.call(d,k,i)}}e=true;if(!this.data.events[a]){this.data.events[a]={};e=false}}this.data.events[a][b.name||
27
+ b.toString()+c.guid()]=b;!e&&c.events.all.indexOf(a)>-1&&this.media.addEventListener(a,function(k){c.forEach(d.data.events[a],function(p){typeof p==="function"&&p.call(d,k)})},false);return this},unlisten:function(a,b){if(this.data.events[a]&&this.data.events[a][b]){delete this.data.events[a][b];return this}this.data.events[a]=null;return this}},hooks:{canplayall:{bind:"canplaythrough",add:function(a,b){var d=false;if(this.media.readyState){b.call(this,a);d=true}this.data.hooks.canplayall={fired:d}},
28
+ handler:function(a,b){if(!this.data.hooks.canplayall.fired){b.call(this,a);this.data.hooks.canplayall.fired=true}}}}};c.forEach([["trigger","emit"],["listen","on"],["unlisten","off"]],function(a){c.p[a[0]]=c.p[a[1]]=c.events.fn[a[0]]});c.addTrackEvent=function(a,b){if(b&&b._natives&&b._natives.type&&a.options.defaults&&a.options.defaults[b._natives.type])b=c.extend({},a.options.defaults[b._natives.type],b);if(b._natives){b._id=!b.id?c.guid(b._natives.type):b.id;a.data.history.push(b._id)}b.start=
29
+ c.util.toSeconds(b.start,a.options.framerate);b.end=c.util.toSeconds(b.end,a.options.framerate);var d=a.data.trackEvents.byStart,e=a.data.trackEvents.byEnd,g;for(g=d.length-1;g>=0;g--)if(b.start>=d[g].start){d.splice(g+1,0,b);break}for(d=e.length-1;d>=0;d--)if(b.end>e[d].end){e.splice(d+1,0,b);break}if(b._natives&&(c.registryByName[b._natives.type]||a[b._natives.type])){e=a.media.currentTime;if(b.end>e&&b.start<=e&&a.data.disabled.indexOf(b._natives.type)===-1){b._running=true;b._natives.start.call(a,
30
+ null,b);if(a.options.frameAnimation&&b._natives.frame){a.data.trackEvents.animating.push(b);b._natives.frame.call(a,null,b,e)}}}g<=a.data.trackEvents.startIndex&&b.start<=a.data.trackEvents.previousUpdateTime&&a.data.trackEvents.startIndex++;d<=a.data.trackEvents.endIndex&&b.end<a.data.trackEvents.previousUpdateTime&&a.data.trackEvents.endIndex++;this.timeUpdate(a,null,true);b._id&&c.addTrackEvent.ref(a,b)};c.addTrackEvent.ref=function(a,b){a.data.trackRefs[b._id]=b;return a};c.removeTrackEvent=function(a,
31
+ b){for(var d,e,g=a.data.history.length,i=a.data.trackEvents.byStart.length,k=0,p=0,n=[],v=[],t=[],l=[];--i>-1;){d=a.data.trackEvents.byStart[k];e=a.data.trackEvents.byEnd[k];if(!d._id){n.push(d);v.push(e)}if(d._id){d._id!==b&&n.push(d);e._id!==b&&v.push(e);if(d._id===b){p=k;d._natives._teardown&&d._natives._teardown.call(a,d)}}k++}i=a.data.trackEvents.animating.length;k=0;if(i)for(;--i>-1;){d=a.data.trackEvents.animating[k];d._id||t.push(d);d._id&&d._id!==b&&t.push(d);k++}p<=a.data.trackEvents.startIndex&&
32
+ a.data.trackEvents.startIndex--;p<=a.data.trackEvents.endIndex&&a.data.trackEvents.endIndex--;a.data.trackEvents.byStart=n;a.data.trackEvents.byEnd=v;a.data.trackEvents.animating=t;for(i=0;i<g;i++)a.data.history[i]!==b&&l.push(a.data.history[i]);a.data.history=l;c.removeTrackEvent.ref(a,b)};c.removeTrackEvent.ref=function(a,b){delete a.data.trackRefs[b];return a};c.getTrackEvents=function(a){var b=[];a=a.data.trackEvents.byStart;for(var d=a.length,e=0,g;e<d;e++){g=a[e];g._id&&b.push(g)}return b};
33
+ c.getTrackEvents.ref=function(a){return a.data.trackRefs};c.getTrackEvent=function(a,b){return a.data.trackRefs[b]};c.getTrackEvent.ref=function(a,b){return a.data.trackRefs[b]};c.getLastTrackEventId=function(a){return a.data.history[a.data.history.length-1]};c.timeUpdate=function(a,b){var d=a.media.currentTime,e=a.data.trackEvents.previousUpdateTime,g=a.data.trackEvents,i=g.animating,k=g.endIndex,p=g.startIndex,n=0,v=g.byStart.length,t=g.byEnd.length,l=c.registryByName,r,x,w;if(e<=d){for(;g.byEnd[k]&&
34
+ g.byEnd[k].end<=d;){r=g.byEnd[k];w=(e=r._natives)&&e.type;if(!e||l[w]||a[w]){if(r._running===true){r._running=false;e.end.call(a,b,r);a.emit("trackend",c.extend({},r,{plugin:w,type:"trackend"}))}k++}else{c.removeTrackEvent(a,r._id);return}}for(;g.byStart[p]&&g.byStart[p].start<=d;){x=g.byStart[p];w=(e=x._natives)&&e.type;if(!e||l[w]||a[w]){if(x.end>d&&x._running===false&&a.data.disabled.indexOf(w)===-1){x._running=true;e.start.call(a,b,x);a.emit("trackstart",c.extend({},x,{plugin:w,type:"trackstart"}));
35
+ a.options.frameAnimation&&x&&x._running&&x._natives.frame&&i.push(x)}p++}else{c.removeTrackEvent(a,x._id);return}}if(a.options.frameAnimation)for(;n<i.length;){l=i[n];if(l._running){l._natives.frame.call(a,b,l,d);n++}else i.splice(n,1)}}else if(e>d){for(;g.byStart[p]&&g.byStart[p].start>d;){x=g.byStart[p];w=(e=x._natives)&&e.type;if(!e||l[w]||a[w]){if(x._running===true){x._running=false;e.end.call(a,b,x);a.emit("trackend",c.extend({},r,{plugin:w,type:"trackend"}))}p--}else{c.removeTrackEvent(a,x._id);
36
+ return}}for(;g.byEnd[k]&&g.byEnd[k].end>d;){r=g.byEnd[k];w=(e=r._natives)&&e.type;if(!e||l[w]||a[w]){if(r.start<=d&&r._running===false&&a.data.disabled.indexOf(w)===-1){r._running=true;e.start.call(a,b,r);a.emit("trackstart",c.extend({},x,{plugin:w,type:"trackstart"}));a.options.frameAnimation&&r&&r._running&&r._natives.frame&&i.push(r)}k--}else{c.removeTrackEvent(a,r._id);return}}if(a.options.frameAnimation)for(;n<i.length;){l=i[n];if(l._running){l._natives.frame.call(a,b,l,d);n++}else i.splice(n,
37
+ 1)}}g.endIndex=k;g.startIndex=p;g.previousUpdateTime=d;g.byStart.length<v&&g.startIndex--;g.byEnd.length<t&&g.endIndex--};c.extend(c.p,{getTrackEvents:function(){return c.getTrackEvents.call(null,this)},getTrackEvent:function(a){return c.getTrackEvent.call(null,this,a)},getLastTrackEventId:function(){return c.getLastTrackEventId.call(null,this)},removeTrackEvent:function(a){c.removeTrackEvent.call(null,this,a);return this},removePlugin:function(a){c.removePlugin.call(null,this,a);return this},timeUpdate:function(a){c.timeUpdate.call(null,
38
+ this,a);return this},destroy:function(){c.destroy.call(null,this);return this}});c.manifest={};c.registry=[];c.registryByName={};c.plugin=function(a,b,d){if(c.protect.natives.indexOf(a.toLowerCase())>=0)c.error("'"+a+"' is a protected function name");else{var e=["start","end"],g={},i=typeof b==="function",k=["_setup","_teardown","start","end","frame"],p=function(t,l){t=t||c.nop;l=l||c.nop;return function(){t.apply(this,arguments);l.apply(this,arguments)}};c.manifest[a]=d=d||b.manifest||{};k.forEach(function(t){b[t]=
39
+ y(b[t]||c.nop,a)});var n=function(t,l){if(!l)return this;var r=l._natives={},x="",w;c.extend(r,t);l._natives.type=a;l._running=false;r.start=r.start||r["in"];r.end=r.end||r.out;r._teardown=p(function(){var H=q.call(arguments);H.unshift(null);H[1]._running&&r.end.apply(this,H)},r._teardown);l.compose=l.compose&&l.compose.split(" ")||[];l.effect=l.effect&&l.effect.split(" ")||[];l.compose=l.compose.concat(l.effect);l.compose.forEach(function(H){x=c.compositions[H]||{};k.forEach(function(J){r[J]=p(r[J],
40
+ x[J])})});l._natives.manifest=d;if(!("start"in l))l.start=l["in"]||0;if(!l.end&&l.end!==0)l.end=l.out||Number.MAX_VALUE;if(!z.call(l,"toString"))l.toString=function(){var H=["start: "+l.start,"end: "+l.end,"id: "+(l.id||l._id)];l.target!=null&&H.push("target: "+l.target);return a+" ( "+H.join(", ")+" )"};if(!l.target){w="options"in d&&d.options;l.target=w&&"target"in w&&w.target}l._natives._setup&&l._natives._setup.call(this,l);c.addTrackEvent(this,c.extend(l,l));c.forEach(t,function(H,J){J!=="type"&&
41
+ e.indexOf(J)===-1&&this.on(J,H)},this);return this};c.p[a]=g[a]=function(t){t=c.extend({},this.options.defaults&&this.options.defaults[a]||{},t);return n.call(this,i?b.call(this,t):b,t)};var v={fn:g[a],definition:b,base:b,parents:[],name:a};c.registry.push(c.extend(g,v,{type:a}));c.registryByName[a]=v;return g}};c.plugin.errors=[];c.plugin.debug=false;c.removePlugin=function(a,b){if(!b){b=a;a=c.p;if(c.protect.natives.indexOf(b.toLowerCase())>=0){c.error("'"+b+"' is a protected function name");return}var d=
42
+ c.registry.length,e;for(e=0;e<d;e++)if(c.registry[e].name===b){c.registry.splice(e,1);delete c.registryByName[b];delete c.manifest[b];delete a[b];return}}d=a.data.trackEvents.byStart;e=a.data.trackEvents.byEnd;var g=a.data.trackEvents.animating,i,k;i=0;for(k=d.length;i<k;i++){if(d[i]&&d[i]._natives&&d[i]._natives.type===b){d[i]._natives._teardown&&d[i]._natives._teardown.call(a,d[i]);d.splice(i,1);i--;k--;if(a.data.trackEvents.startIndex<=i){a.data.trackEvents.startIndex--;a.data.trackEvents.endIndex--}}e[i]&&
43
+ e[i]._natives&&e[i]._natives.type===b&&e.splice(i,1)}i=0;for(k=g.length;i<k;i++)if(g[i]&&g[i]._natives&&g[i]._natives.type===b){g.splice(i,1);i--;k--}};c.compositions={};c.compose=function(a,b,d){c.manifest[a]=d||b.manifest||{};c.compositions[a]=b};c.plugin.effect=c.effect=c.compose;var m=/\?/,s={url:"",data:"",dataType:"",success:c.nop,type:"GET",async:true,xhr:function(){return new f.XMLHttpRequest}};c.xhr=function(a){a.dataType=a.dataType&&a.dataType.toLowerCase()||null;if(a.dataType&&(a.dataType===
44
+ "jsonp"||a.dataType==="script"))c.xhr.getJSONP(a.url,a.success,a.dataType==="script");else{a=c.extend({},s,a);a.ajax=a.xhr();if(a.ajax){if(a.type==="GET"&&a.data){a.url+=(m.test(a.url)?"&":"?")+a.data;a.data=null}a.ajax.open(a.type,a.url,a.async);a.ajax.send(a.data||null);return c.xhr.httpData(a)}}};c.xhr.httpData=function(a){var b,d=null,e,g=null;a.ajax.onreadystatechange=function(){if(a.ajax.readyState===4){try{d=JSON.parse(a.ajax.responseText)}catch(i){}b={xml:a.ajax.responseXML,text:a.ajax.responseText,
45
+ json:d};if(!b.xml||!b.xml.documentElement){b.xml=null;try{e=new DOMParser;g=e.parseFromString(a.ajax.responseText,"text/xml");if(!g.getElementsByTagName("parsererror").length)b.xml=g}catch(k){}}if(a.dataType)b=b[a.dataType];a.success.call(a.ajax,b)}};return b};c.xhr.getJSONP=function(a,b,d){var e=h.head||h.getElementsByTagName("head")[0]||h.documentElement,g=h.createElement("script"),i=a.split("?")[1],k=false,p=[],n,v;if(i&&!d)p=i.split("&");if(p.length)v=p[p.length-1].split("=");n=p.length?v[1]?
46
+ v[1]:v[0]:"jsonp";if(!i&&!d)a+="?callback="+n;if(n&&!d){if(window[n])n=c.guid(n);window[n]=function(t){b&&b(t);k=true};a=a.replace(v.join("="),v[0]+"="+n)}g.addEventListener("load",function(){d&&b&&b();k&&delete window[n];e.removeChild(g)},false);g.src=a;e.insertBefore(g,e.firstChild)};c.getJSONP=c.xhr.getJSONP;c.getScript=c.xhr.getScript=function(a,b){return c.xhr.getJSONP(a,b,true)};c.util={toSeconds:function(a,b){var d=/^([0-9]+:){0,2}[0-9]+([.;][0-9]+)?$/,e,g,i;if(typeof a==="number")return a;
47
+ typeof a==="string"&&!d.test(a)&&c.error("Invalid time format");d=a.split(":");e=d.length-1;g=d[e];if(g.indexOf(";")>-1){g=g.split(";");i=0;if(b&&typeof b==="number")i=parseFloat(g[1],10)/b;d[e]=parseInt(g[0],10)+i}e=d[0];return{1:parseFloat(e,10),2:parseInt(e,10)*60+parseFloat(d[1],10),3:parseInt(e,10)*3600+parseInt(d[1],10)*60+parseFloat(d[2],10)}[d.length||1]}};c.p.cue=c.p.exec;c.protect={natives:function(a){return Object.keys?Object.keys(a):function(b){var d,e=[];for(d in b)z.call(b,d)&&e.push(d);
48
+ return e}(a)}(c.p).map(function(a){return a.toLowerCase()})};c.forEach({listen:"on",unlisten:"off",trigger:"emit",exec:"cue"},function(a,b){var d=c.p[b];c.p[b]=function(){if(typeof console!=="undefined"&&console.warn){console.warn("Deprecated method '"+b+"', "+(a==null?"do not use.":"use '"+a+"' instead."));c.p[b]=d}return c.p[a].apply(this,[].slice.call(arguments))}});f.Popcorn=c}else{f.Popcorn={isSupported:false};for(j="removeInstance addInstance getInstanceById removeInstanceById forEach extend effects error guid sizeOf isArray nop position disable enable destroyaddTrackEvent removeTrackEvent getTrackEvents getTrackEvent getLastTrackEventId timeUpdate plugin removePlugin compose effect xhr getJSONP getScript".split(/\s+/);j.length;)f.Popcorn[j.shift()]=
49
+ function(){}}})(window,window.document);
50
+ (function(f){var h=function(j,o){j=j||f.nop;o=o||f.nop;return function(){j.apply(this,arguments);o.apply(this,arguments)}},y=/^(#([\w\-\_\.]+))$/;f.player=function(j,o){if(!f[j]){o=o||{};var u=function(q,z,A){A=A||{};var F=new Date/1E3,I=F,D=0,E=0,C=1,G=false,B={},c=document.getElementById(y.exec(q)&&y.exec(q)[2])||document.getElementById(q)||q,m={};Object.prototype.__defineGetter__||(m=c||document.createElement("div"));for(var s in c)if(!(s in m))if(typeof c[s]==="object")m[s]=c[s];else if(typeof c[s]===
51
+ "function")m[s]=function(b){return"length"in c[b]&&!c[b].call?c[b]:function(){return c[b].apply(c,arguments)}}(s);else f.player.defineProperty(m,s,{get:function(b){return function(){return c[b]}}(s),set:f.nop,configurable:true});var a=function(){F=new Date/1E3;if(!m.paused){m.currentTime+=F-I;m.dispatchEvent("timeupdate");setTimeout(a,10)}I=F};m.play=function(){this.paused=false;if(m.readyState>=4){I=new Date/1E3;m.dispatchEvent("play");a()}};m.pause=function(){this.paused=true;m.dispatchEvent("pause")};
52
+ f.player.defineProperty(m,"currentTime",{get:function(){return D},set:function(b){D=+b;m.dispatchEvent("timeupdate");return D},configurable:true});f.player.defineProperty(m,"volume",{get:function(){return C},set:function(b){C=+b;m.dispatchEvent("volumechange");return C},configurable:true});f.player.defineProperty(m,"muted",{get:function(){return G},set:function(b){G=+b;m.dispatchEvent("volumechange");return G},configurable:true});f.player.defineProperty(m,"readyState",{get:function(){return E},set:function(b){return E=
53
+ b},configurable:true});m.addEventListener=function(b,d){B[b]||(B[b]=[]);B[b].push(d);return d};m.removeEventListener=function(b,d){var e,g=B[b];if(g){for(e=B[b].length-1;e>=0;e--)d===g[e]&&g.splice(e,1);return d}};m.dispatchEvent=function(b){var d,e=b.type;if(!e){e=b;if(b=f.events.getInterface(e)){d=document.createEvent(b);d.initEvent(e,true,true,window,1)}}if(B[e])for(b=B[e].length-1;b>=0;b--)B[e][b].call(this,d,this)};m.src=z||"";m.duration=0;m.paused=true;m.ended=0;A&&A.events&&f.forEach(A.events,
54
+ function(b,d){m.addEventListener(d,b,false)});if(o._canPlayType(c.nodeName,z)!==false)if(o._setup)o._setup.call(m,A);else{m.readyState=4;m.dispatchEvent("loadedmetadata");m.dispatchEvent("loadeddata");m.dispatchEvent("canplaythrough")}else m.dispatchEvent("error");m.addEventListener("loadedmetadata",function(){m.currentTime=D;m.volume=C;m.muted=G});m.addEventListener("loadeddata",function(){!m.paused&&m.play()});q=new f.p.init(m,A);if(o._teardown)q.destroy=h(q.destroy,function(){o._teardown.call(m,
55
+ A)});return q};u.canPlayType=o._canPlayType=o._canPlayType||f.nop;f[j]=f.player.registry[j]=u}};f.player.registry={};f.player.defineProperty=Object.defineProperty||function(j,o,u){j.__defineGetter__(o,u.get||f.nop);j.__defineSetter__(o,u.set||f.nop)};f.smart=function(j,o,u){var q=y.exec(j);q=q&&q.length&&q[2]?document.getElementById(q[2]):j;if(q.nodeType==="VIDEO"&&!o){if(typeof o==="object")u=o;return f(q,u)}for(var z in f.player.registry)if(f.player.registry.hasOwnProperty(z))if(f.player.registry[z].canPlayType(q.nodeName,
56
+ o))return f[z](j,o,u);if(q.nodeType!=="VIDEO"){j=document.createElement("video");q.appendChild(j);q=j}u&&u.events&&u.events.error&&q.addEventListener("error",u.events.error,false);q.src=o;return f(q,u)}})(Popcorn);var onYouTubePlayerReady=function(f){onYouTubePlayerReady[f]&&onYouTubePlayerReady[f]()};onYouTubePlayerReady.stateChangeEventHandler={};onYouTubePlayerReady.onErrorEventHandler={};
57
+ Popcorn.player("youtube",{_canPlayType:function(f,h){return/(?:http:\/\/www\.|http:\/\/|www\.|\.|^)(youtu)/.test(h)&&f.toLowerCase()!=="video"},_setup:function(f){var h=this,y=false,j=document.createElement("div"),o=0,u=0,q=true,z=false,A=false,F=100;h.paused=undefined;j.id=h.id+Popcorn.guid();f._container=j;h.appendChild(j);var I=function(){var D,E,C,G,B;onYouTubePlayerReady[j.id]=function(){f.youtubeObject=document.getElementById(j.id);onYouTubePlayerReady.stateChangeEventHandler[j.id]=function(s){if(!f.destroyed)if(s===
58
+ 2)if(z&&u===o&&u!==f.youtubeObject.getCurrentTime()){z=false;f.youtubeObject.seekTo(o)}else{o=f.youtubeObject.getCurrentTime();h.dispatchEvent("timeupdate");!h.paused&&h.pause()}else if(s===1&&!q)h.paused&&h.play();else if(s===-1)f.youtubeObject.playVideo();else if(s===1&&q){q=false;if(h.paused===true)h.pause();else if(h.paused===false)h.play();else if(y)h.play();else y||h.pause();h.duration=f.youtubeObject.getDuration();h.dispatchEvent("durationchange");m();h.dispatchEvent("loadedmetadata");h.dispatchEvent("loadeddata");
59
+ h.readyState=4;h.dispatchEvent("canplaythrough")}else s===0&&h.dispatchEvent("ended")};onYouTubePlayerReady.onErrorEventHandler[j.id]=function(s){[2,100,101,150].indexOf(s)!==-1&&h.dispatchEvent("error")};f.youtubeObject.addEventListener("onStateChange","onYouTubePlayerReady.stateChangeEventHandler."+j.id);f.youtubeObject.addEventListener("onError","onYouTubePlayerReady.onErrorEventHandler."+j.id);var c=function(){if(!f.destroyed)if(!h.paused){o=f.youtubeObject.getCurrentTime();h.dispatchEvent("timeupdate");
60
+ setTimeout(c,10)}},m=function(){if(!f.destroyed){if(A!==f.youtubeObject.isMuted()){A=f.youtubeObject.isMuted();h.dispatchEvent("volumechange")}if(F!==f.youtubeObject.getVolume()){F=f.youtubeObject.getVolume();h.dispatchEvent("volumechange")}setTimeout(m,250)}};h.play=function(){if(!f.destroyed){if(h.paused!==false||f.youtubeObject.getPlayerState()!==1){h.paused=false;h.dispatchEvent("play");h.dispatchEvent("playing")}c();f.youtubeObject.playVideo()}};h.pause=function(){if(!f.destroyed)if(h.paused!==
61
+ true||f.youtubeObject.getPlayerState()!==2){h.paused=true;h.dispatchEvent("pause");f.youtubeObject.pauseVideo()}};Popcorn.player.defineProperty(h,"currentTime",{set:function(s){o=u=+s;z=true;if(f.destroyed)return o;h.dispatchEvent("seeked");h.dispatchEvent("timeupdate");f.youtubeObject.seekTo(o);return o},get:function(){return o}});Popcorn.player.defineProperty(h,"muted",{set:function(s){if(f.destroyed)return s;if(f.youtubeObject.isMuted()!==s){s?f.youtubeObject.mute():f.youtubeObject.unMute();A=
62
+ f.youtubeObject.isMuted();h.dispatchEvent("volumechange")}return f.youtubeObject.isMuted()},get:function(){if(f.destroyed)return 0;return f.youtubeObject.isMuted()}});Popcorn.player.defineProperty(h,"volume",{set:function(s){if(f.destroyed)return s;if(f.youtubeObject.getVolume()/100!==s){f.youtubeObject.setVolume(s*100);F=f.youtubeObject.getVolume();h.dispatchEvent("volumechange")}return f.youtubeObject.getVolume()/100},get:function(){if(f.destroyed)return 0;return f.youtubeObject.getVolume()/100}})};
63
+ f.controls=+f.controls===0||+f.controls===1?f.controls:1;f.annotations=+f.annotations===1||+f.annotations===3?f.annotations:1;D={playerapiid:j.id};E=/^.*(?:\/|v=)(.{11})/.exec(h.src)[1];B=(h.src.split("?")[1]||"").replace(/v=.{11}/,"");y=/autoplay=1/.test(B);C=h.style.width?""+h.offsetWidth:"560";G=h.style.height?""+h.offsetHeight:"315";E={id:j.id,"data-youtube-player":"//www.youtube.com/e/"+E+"?"+B+"&enablejsapi=1&playerapiid="+j.id+"&version=3"};swfobject.embedSWF(E["data-youtube-player"],j.id,
64
+ C,G,"8",undefined,D,{wmode:"transparent",allowScriptAccess:"always"},E)};window.swfobject?I():Popcorn.getScript("//ajax.googleapis.com/ajax/libs/swfobject/2.2/swfobject.js",I)},_teardown:function(f){f.destroyed=true;f.youtubeObject.stopVideo();f.youtubeObject.clearVideo();this.removeChild(document.getElementById(f._container.id))}});