project Websites / videos.bentasker.co.uk avatar

Websites / videos.bentasker.co.uk: dfb2adf7




Release V0.18

Release V0.18

Commit dfb2adf7.

Authored 2022-03-09T19:34:54.000+00:00 by B Tasker in project Websites / videos.bentasker.co.uk

+2 lines -1 lines

Commit Signature

Changes

diff --git a/resources/embed/embed.min.js b/resources/embed/embed.min.js
--- a/resources/embed/embed.min.js
+++ b/resources/embed/embed.min.js
# @@ -1 +1 @@
# -window.BensPlayerInstances=window.BensPlayerInstances===undefined?[]:window.BensPlayerInstances;window.BensPD="https://videos.bentasker.co.uk/";window.BensPlayerDomain="https://videos.bentasker.co.uk/";function cE(t){return document.createElement(t)}document.write=function(s){var scripts=document.getElementsByTagName("script");var lastScript=scripts[scripts.length-1];lastScript.insertAdjacentHTML("beforebegin",s)};function guessMimeFromUrl(vidurl){var segs=vidurl.split(".");var ext=segs[segs.length-1];if(!ext){return"video/mp4"}switch(ext.toLowerCase()){case"m3u8":return"application/x-mpegURL";break;case"avi":return"video/avi";break;case"mp3":return"audio/mpeg";break;case"mkv":return"video/x-matroska";break;case"webm":return"video/webm";break;case"mov":return"video/quicktime";break;case"mpg":return"video/mpeg";break;case"mpeg":return"video/mpeg";break;case"mp4":return"video/mp4";break;case"mp4a":return"audio/mp4";break;case"wav":return"audio/wav";break;case"ts":return"video/mp2t";break;case"m3u":return"special/m3uplaylist";break;default:console.log("Calculating mimetime failed for "+vidurl+" ext: "+ext.toLowerCase());return"video/mp4"}}function embedBensPlayer(vidurl,vidtype){vidtype=guessMimeFromUrl(vidurl);var vidid=0;while(true){if(window.BensPlayerInstances.includes(vidid)){vidid++}else{window.BensPlayerInstances.push(vidid);break}}if(vidurl.substring(0,31)!=window.BensPD){vidurl=window.BensPD+vidurl}document.write("<div id='BensplayerWrapper"+vidid+"' class='BensVideoCont'></div>");var c=document.getElementById("BensplayerWrapper"+vidid);var e=cE("link");e.setAttribute("rel","stylesheet");e.setAttribute("href",window.BensPD+"resources/js/videojs/video-js.min.css");c.appendChild(e);playerSettings={vidtype:vidtype,vidurl:vidurl,vidid:vidid};getBensToken(vidid,playerSettings)}function getBensToken(vidid,playerSettings){var ref=encodeURIComponent(window.location.href);var vurl=encodeURIComponent(playerSettings["vidurl"].replace(window.BensPD,""));var url=window.BensPD+"token_endpoint?ref="+ref+"&vidpath="+vurl;var xmlhttp;if(window.XMLHttpRequest){xmlhttp=new XMLHttpRequest}else{xmlhttp=new ActiveXObject("Microsoft.XMLHTTP")}xmlhttp.onreadystatechange=function(){if(xmlhttp.readyState==4){if(xmlhttp.status==200){var j=JSON.parse(xmlhttp.responseText);if(!j["status"]){console.log("Failed to retrieve token for video");embedFailedNotif(vidid);return false}playerSettings["vidurl"]+="?t="+encodeURIComponent(j["token"])+"&e="+encodeURIComponent(j["exp"]);loadVJS(vidid,playerSettings)}else{console.log("Failed to retrieve token for video");embedFailedNotif(vidid);return false}}};xmlhttp.open("GET",url,true);xmlhttp.send()}function writePlayer(vidid,playerSettings){var c=document.getElementById("BensplayerWrapper"+vidid);var width=c.parentNode.clientWidth;var d=cE("div");d.id="videowrapper"+vidid;v=cE("video");v.setAttribute("id","BensVideo"+vidid);v.setAttribute("class","video-js");v.setAttribute("controls","");v.setAttribute("preload","auto");v.setAttribute("width",width);if(window.playerSettings["vidtype"]!="special/m3uplaylist"){var src=cE("source");src.setAttribute("src",playerSettings["vidurl"]);src.setAttribute("type",playerSettings["vidtype"]);v.appendChild(src)}else{pllist=cE("div");pllist.className="vjs-playlist";v.appendChild(pllist);plliststl=cE("link");plliststl.setAttribute("rel","stylesheet");plliststl.setAttribute("href",window.BensPD+"resources/js/playlist-ui/videojs-playlist-ui.vertical.css");document.getElementsByTagName("head")[0].appendChild(plliststl)}d.appendChild(v);c.appendChild(d);var s=cE("script");s.setAttribute("type","text/javascript");ss="window.player"+vidid+" = videojs('BensVideo"+vidid+"',\"{'fluid':true}\", function onPlayerReady(){console.log('Player Ready'); submit(BensVidgatherInfo(window.player"+vidid+".currentSrc().split('?')[0],'ready'))});";ss+="window.player"+vidid+".on('playing', function() {submit(BensVidgatherInfo(window.player"+vidid+".currentSrc().split('?')[0],'playing'))});";s.innerHTML=ss;c.appendChild(s);if(window.playerSettings["vidtype"]=="special/m3uplaylist"){var s=cE("script");s.innerHTML='var VjsButton = videojs.getComponent("Button"); var nextButton = videojs.extend(VjsButton, { constructor: function(player, options){ VjsButton.call(this, player, options); this.controlText("Next"); }, handleClick: function() { window.player'+vidid+'.playlist.next(); }, buildCSSClass: function() { return "vjs-icon-next-item vjs-control vjs-button"; } }); var prevButton = videojs.extend(VjsButton, { constructor: function(player, options){ VjsButton.call(this, player, options); this.controlText("Previous"); }, handleClick: function() { window.player'+vidid+'.playlist.previous(); }, buildCSSClass: function() { return "vjs-icon-previous-item vjs-control vjs-button"; } }); videojs.registerComponent("prevButton", prevButton); videojs.registerComponent("NextButton", nextButton); window.player'+vidid+'.getChild("controlBar").addChild("prevButton", {}); window.player'+vidid+'.getChild("controlBar").addChild("nextButton", {});';c.appendChild(s);fetchM3U(playerSettings["vidurl"],vidid)}dirname=playerSettings["vidurl"].match(/.*\//);fetchPage(dirname+"details.json",BenswriteSchemaOrg,function(e){},playerSettings)}function loadVJS(vidid,playerSettings){var c=document.getElementById("BensplayerWrapper"+vidid);var e=cE("script");e.setAttribute("type","text/javascript");e.setAttribute("src",window.BensPD+"resources/js/videojs/video.min.js");if(window.playerSettings["vidtype"]=="application/x-mpegURL"){e.onload=function(){loadVJSHLS(vidid,playerSettings)}}else if(window.playerSettings["vidtype"]=="special/m3uplaylist"){e.onload=function(){loadVJSM3U(vidid,playerSettings)}}else{e.onload=function(){writePlayer(vidid,playerSettings)}}c.appendChild(e)}function loadVJSM3U(vidid,playerSettings){var c=document.getElementById("BensplayerWrapper"+vidid);var e=cE("script");e.setAttribute("type","text/javascript");e.setAttribute("src",window.BensPD+"resources/js/playlist/videojs-playlist.js");e.onload=function(){writePlayer(vidid,playerSettings)};c.appendChild(e)}function loadVJSHLS(vidid,playerSettings){var c=document.getElementById("BensplayerWrapper"+vidid);var e=cE("script");e.setAttribute("type","text/javascript");e.setAttribute("src",window.BensPD+"resources/js/videojs-contrib-hls.min.js");e.onload=function(){writePlayer(vidid,playerSettings)};c.appendChild(e)}function fetchPage(url,callback,errcallback,storage){var xmlhttp;if(window.XMLHttpRequest){xmlhttp=new XMLHttpRequest}else{xmlhttp=new ActiveXObject("Microsoft.XMLHTTP")}xmlhttp.onreadystatechange=function(){if(xmlhttp.readyState==4){if(xmlhttp.status==200){callback(xmlhttp.responseText,storage,url)}else{errcallback(xmlhttp.responseText)}}};xmlhttp.open("GET",url,true);xmlhttp.send()}function fetchM3U(vidurl,vidid){window.videoListid=vidid;var oReq=new XMLHttpRequest;oReq.addEventListener("load",parseM3U);oReq.open("GET",vidurl);oReq.send()}function parseM3U(){window.videoList=[];lines=this.responseText.split("\n");domain=window.location.hostname;var o;for(var i=0;i<lines.length;i++){if(lines[i][0]=="#"||lines[i]==""){continue}segs=lines[i].split(".");ext=segs[segs.length-1].toLowerCase();if(ext!="m3u"){playpath=lines[i];if(lines[i][0]=="/"){playpath="https://"+domain+lines[i]}o={sources:[{src:playpath,type:guessMimeFromUrl(lines[i])}]};window.videoList.push(o)}}vidid=window.videoListid;var s=cE("script");s.setAttribute("type","text/javascript");ss="window.player"+vidid+".playlist(window.videoList); window.player"+vidid+".playlist.autoadvance(0);window.player"+vidid+".playlist.first();";s.innerHTML=ss;var c=document.getElementById("BensVideo"+vidid);c.appendChild(s)}function embedFailedNotif(vidid){s=cE("img");s.setAttribute("src",window.BensPD+"resources/embed/failed.png");var c=document.getElementById("BensplayerWrapper"+vidid);var width=c.parentNode.clientWidth;s.setAttribute("style","max-width: "+width+"px");c.appendChild(s)}function BenswriteSchemaOrg(text,storage,url){if(!text||!storage||!url){return}var j=JSON.parse(text);var d=document.getElementById("BensplayerWrapper"+storage["vidid"]);d.setAttribute("itemscope","");d.setAttribute("itemtype","https://schema.org/VideoObject");m=cE("meta");var url=window.BensPlayerDomain+"Player.html?url="+encodeURIComponent(url.replace(window.BensPD,""));m.setAttribute("itemprop","url");m.setAttribute("content",url);d.appendChild(m);if(j.hasOwnProperty("title")){var m=cE("meta");m.setAttribute("itemprop","name");m.setAttribute("content",j["title"]);d.appendChild(m)}if(j.hasOwnProperty("description")){var m=cE("meta");m.setAttribute("itemprop","description");m.setAttribute("content",j["description"].replace(/'/g,""));d.appendChild(m)}if(j.hasOwnProperty("keywords")){var m=cE("meta");m.setAttribute("itemprop","keywords");m.setAttribute("content",j["keywords"].replace(/'/g,""));d.appendChild(m)}var m=cE("meta");m.setAttribute("itemprop","playerType");m.setAttribute("content","html5");d.appendChild(m)}function BensVidgatherInfo(vid,state){var tz=(new Date).getTimezoneOffset();return{domain:"videos.bentasker.co.uk",page:vid.replace("https://videos.bentasker.co.uk",""),referrer:document.location.href,referrer_domain:document.location.hostname,platform:navigator.platform,timezone:tz,sess_id:getSessionId(),state:state,responseTime:Date.now()-window.performance.timing.navigationStart}}function getSessionId(){if(!window.analytics_gen_psuedoid){return"none"}var n=randomInteger(1,10);var k=window.location.hostname+"_sess-id";var i=sessionStorage.getItem(k);if(!i||n==5){i=createUUID();sessionStorage.setItem(k,i)}return i}function createUUID(){return"xxxx-xxxx".replace(/[xy]/g,function(c){var r=Math.random()*16|0,v=c=="x"?r:r&3|8;return v.toString(16)})}function submit(info){var xml=new XMLHttpRequest;xml.onreadystatechange=function(){};if(window.location.hostname.toLowerCase().endsWith(".onion")){xml.open("POST",window.analytics_endpoint_onion+"/write")}else{xml.open("POST",window.analytics_endpoint)}xml.setRequestHeader("Content-Type","application/json");xml.send(JSON.stringify(info))}function ping(){if(window.location.hostname.toLowerCase().endsWith(".onion")){var xml=new XMLHttpRequest;xml.onreadystatechange=function(){};xml.open("GET",window.analytics_endpoint_onion+"/ping");xml.send()}}function randomInteger(min,max){return Math.floor(Math.random()*(max-min+1))+min}window.analytics_active=true;window.analytics_gen_psuedoid=true;window.analytics_endpoint="https://pfanalytics.bentasker.co.uk/write";window.analytics_endpoint_onion="http://wftlf4ke7xwqkjrrju4aok57pkr7kfks5t5uqmipxlyjucwjycdql7id.onion";
# +window.BensPlayerInstances=window.BensPlayerInstances===undefined?[]:window.BensPlayerInstances;window.BensPD="https://videos.bentasker.co.uk/";window.BensPlayerDomain="https://videos.bentasker.co.uk/";window.BensPDTor="http://dnkpodkuqowld7pnmpt5droubfzgv7tziz2fbiuufpvocbdonobq4xyd.onion/";window.BensPlayerDomainTor="http://dnkpodkuqowld7pnmpt5droubfzgv7tziz2fbiuufpvocbdonobq4xyd.onion/";function cE(t){return document.createElement(t)}document.write=function(s){var scripts=document.getElementsByTagName("script");var lastScript=scripts[scripts.length-1];lastScript.insertAdjacentHTML("beforebegin",s)};function guessMimeFromUrl(vidurl){var segs=vidurl.split(".");var ext=segs[segs.length-1];if(!ext){return"video/mp4"}switch(ext.toLowerCase()){case"m3u8":return"application/x-mpegURL";break;case"avi":return"video/avi";break;case"mp3":return"audio/mpeg";break;case"mkv":return"video/x-matroska";break;case"webm":return"video/webm";break;case"mov":return"video/quicktime";break;case"mpg":return"video/mpeg";break;case"mpeg":return"video/mpeg";break;case"mp4":return"video/mp4";break;case"mp4a":return"audio/mp4";break;case"wav":return"audio/wav";break;case"ts":return"video/mp2t";break;default:console.log("Calculating mimetype failed for "+vidurl+" ext: "+ext.toLowerCase());return"video/mp4"}}function embedBensPlayer(vidurl,vidtype){if(window.location.hostname.split(".").pop().toLowerCase()=="onion"){window.BensPD=window.BensPDTor;window.BensPlayerDomain=window.BensPlayerDomainTor}vidtype=guessMimeFromUrl(vidurl);var vidid=0;while(true){if(window.BensPlayerInstances.includes(vidid)){vidid++}else{window.BensPlayerInstances.push(vidid);break}}if(vidurl.substring(0,31)!=window.BensPD){vidurl=window.BensPD+vidurl}document.write("<div id='BensplayerWrapper"+vidid+"' class='BensVideoCont'></div>");var c=document.getElementById("BensplayerWrapper"+vidid);var e=cE("link");e.setAttribute("rel","stylesheet");e.setAttribute("href",window.BensPD+"resources/js/videojs/video-js.min.css");c.appendChild(e);playerSettings={vidtype:vidtype,vidurl:vidurl,vidid:vidid};getBensToken(vidid,playerSettings)}function getBensToken(vidid,playerSettings){var ref=encodeURIComponent(window.location.href);var vurl=encodeURIComponent(playerSettings["vidurl"].replace(window.BensPD,""));var url=window.BensPD+"token_endpoint?ref="+ref+"&vidpath="+vurl;var xmlhttp;if(window.XMLHttpRequest){xmlhttp=new XMLHttpRequest}else{xmlhttp=new ActiveXObject("Microsoft.XMLHTTP")}xmlhttp.onreadystatechange=function(){if(xmlhttp.readyState==4){if(xmlhttp.status==200){var j=JSON.parse(xmlhttp.responseText);if(!j["status"]){console.log("Failed to retrieve token for video");embedFailedNotif(vidid);return false}playerSettings["vidurl"]+="?t="+encodeURIComponent(j["token"])+"&e="+encodeURIComponent(j["exp"]);loadVJS(vidid,playerSettings)}else{console.log("Failed to retrieve token for video");embedFailedNotif(vidid);return false}}};xmlhttp.open("GET",url,true);xmlhttp.send()}function writePlayer(vidid,playerSettings){var c=document.getElementById("BensplayerWrapper"+vidid);var width=c.parentNode.clientWidth;var d=cE("div");d.id="videowrapper"+vidid;v=cE("video");v.setAttribute("id","BensVideo"+vidid);v.setAttribute("class","video-js");v.setAttribute("controls","");v.setAttribute("preload","auto");v.setAttribute("width",width);var src=cE("source");src.setAttribute("src",playerSettings["vidurl"]);src.setAttribute("type",playerSettings["vidtype"]);v.appendChild(src);d.appendChild(v);c.appendChild(d);var s=cE("script");s.setAttribute("type","text/javascript");ss="window.player"+vidid+" = videojs('BensVideo"+vidid+"',\"{'fluid':true}\", function onPlayerReady(){console.log('Player Ready'); submit(BensVidgatherInfo(window.player"+vidid+".currentSrc().split('?')[0],'ready'))});";ss+="window.player"+vidid+".on('playing', function() {submit(BensVidgatherInfo(window.player"+vidid+".currentSrc().split('?')[0],'playing'))});";s.innerHTML=ss;c.appendChild(s);dirname=playerSettings["vidurl"].match(/.*\//);fetchPage(dirname+"details.json",BenswriteSchemaOrg,function(e){},playerSettings)}function loadVJS(vidid,playerSettings){var c=document.getElementById("BensplayerWrapper"+vidid);var e=cE("script");e.setAttribute("type","text/javascript");e.setAttribute("src",window.BensPD+"resources/js/videojs/video.min.js");if(window.playerSettings["vidtype"]=="application/x-mpegURL"){e.onload=function(){loadVJSHLS(vidid,playerSettings)}}else{e.onload=function(){writePlayer(vidid,playerSettings)}}c.appendChild(e)}function loadVJSHLS(vidid,playerSettings){var c=document.getElementById("BensplayerWrapper"+vidid);var e=cE("script");e.setAttribute("type","text/javascript");e.setAttribute("src",window.BensPD+"resources/js/videojs-contrib-hls.min.js");e.onload=function(){writePlayer(vidid,playerSettings)};c.appendChild(e)}function fetchPage(url,callback,errcallback,storage){var xmlhttp;if(window.XMLHttpRequest){xmlhttp=new XMLHttpRequest}else{xmlhttp=new ActiveXObject("Microsoft.XMLHTTP")}xmlhttp.onreadystatechange=function(){if(xmlhttp.readyState==4){if(xmlhttp.status==200){callback(xmlhttp.responseText,storage,url)}else{errcallback(xmlhttp.responseText)}}};xmlhttp.open("GET",url,true);xmlhttp.send()}function embedFailedNotif(vidid){s=cE("img");s.setAttribute("src",window.BensPD+"resources/embed/failed.png");var c=document.getElementById("BensplayerWrapper"+vidid);var width=c.parentNode.clientWidth;s.setAttribute("style","max-width: "+width+"px");c.appendChild(s)}function BenswriteSchemaOrg(text,storage,url){if(!text||!storage||!url){return}var j=JSON.parse(text);var d=document.getElementById("BensplayerWrapper"+storage["vidid"]);d.setAttribute("itemscope","");d.setAttribute("itemtype","https://schema.org/VideoObject");m=cE("meta");var url=window.BensPlayerDomain+"Player.html?url="+encodeURIComponent(url.replace(window.BensPD,""));m.setAttribute("itemprop","url");m.setAttribute("content",url);d.appendChild(m);if(j.hasOwnProperty("title")){var m=cE("meta");m.setAttribute("itemprop","name");m.setAttribute("content",j["title"]);d.appendChild(m)}if(j.hasOwnProperty("description")){var m=cE("meta");m.setAttribute("itemprop","description");m.setAttribute("content",j["description"].replace(/'/g,""));d.appendChild(m)}if(j.hasOwnProperty("keywords")){var m=cE("meta");m.setAttribute("itemprop","keywords");m.setAttribute("content",j["keywords"].replace(/'/g,""));d.appendChild(m)}var m=cE("meta");m.setAttribute("itemprop","playerType");m.setAttribute("content","html5");d.appendChild(m)}function BensVidgatherInfo(vid,state){var tz=(new Date).getTimezoneOffset();return{domain:"videos.bentasker.co.uk",page:"/"+vid.replace(window.BensPD,""),referrer:document.location.href,referrer_domain:document.location.hostname,platform:navigator.platform,timezone:tz,sess_id:getSessionId(),state:state,responseTime:Date.now()-window.performance.timing.navigationStart}}function getSessionId(){if(!window.analytics_gen_psuedoid){return"none"}var n=randomInteger(1,10);var k=window.location.hostname+"_sess-id";var i=sessionStorage.getItem(k);if(!i||n==5){i=createUUID();sessionStorage.setItem(k,i)}return i}function createUUID(){return"xxxx-xxxx".replace(/[xy]/g,function(c){var r=Math.random()*16|0,v=c=="x"?r:r&3|8;return v.toString(16)})}function submit(info){var xml=new XMLHttpRequest;xml.onreadystatechange=function(){};if(window.location.hostname.toLowerCase().endsWith(".onion")){xml.open("POST",window.analytics_endpoint_onion+"/write")}else{xml.open("POST",window.analytics_endpoint)}xml.setRequestHeader("Content-Type","application/json");xml.send(JSON.stringify(info))}function ping(){if(window.location.hostname.toLowerCase().endsWith(".onion")){var xml=new XMLHttpRequest;xml.onreadystatechange=function(){};xml.open("GET",window.analytics_endpoint_onion+"/ping");xml.send()}}function randomInteger(min,max){return Math.floor(Math.random()*(max-min+1))+min}window.analytics_active=true;window.analytics_gen_psuedoid=true;window.analytics_endpoint="https://pfanalytics.bentasker.co.uk/write";window.analytics_endpoint_onion="http://wftlf4ke7xwqkjrrju4aok57pkr7kfks5t5uqmipxlyjucwjycdql7id.onion";
#
diff --git a/resources/embed/versions/embed.0.18.min.js b/resources/embed/versions/embed.0.18.min.js
--- a/resources/embed/versions/embed.0.18.min.js
+++ b/resources/embed/versions/embed.0.18.min.js
# @@ -0,0 +1 @@
# +window.BensPlayerInstances=window.BensPlayerInstances===undefined?[]:window.BensPlayerInstances;window.BensPD="https://videos.bentasker.co.uk/";window.BensPlayerDomain="https://videos.bentasker.co.uk/";window.BensPDTor="http://dnkpodkuqowld7pnmpt5droubfzgv7tziz2fbiuufpvocbdonobq4xyd.onion/";window.BensPlayerDomainTor="http://dnkpodkuqowld7pnmpt5droubfzgv7tziz2fbiuufpvocbdonobq4xyd.onion/";function cE(t){return document.createElement(t)}document.write=function(s){var scripts=document.getElementsByTagName("script");var lastScript=scripts[scripts.length-1];lastScript.insertAdjacentHTML("beforebegin",s)};function guessMimeFromUrl(vidurl){var segs=vidurl.split(".");var ext=segs[segs.length-1];if(!ext){return"video/mp4"}switch(ext.toLowerCase()){case"m3u8":return"application/x-mpegURL";break;case"avi":return"video/avi";break;case"mp3":return"audio/mpeg";break;case"mkv":return"video/x-matroska";break;case"webm":return"video/webm";break;case"mov":return"video/quicktime";break;case"mpg":return"video/mpeg";break;case"mpeg":return"video/mpeg";break;case"mp4":return"video/mp4";break;case"mp4a":return"audio/mp4";break;case"wav":return"audio/wav";break;case"ts":return"video/mp2t";break;default:console.log("Calculating mimetype failed for "+vidurl+" ext: "+ext.toLowerCase());return"video/mp4"}}function embedBensPlayer(vidurl,vidtype){if(window.location.hostname.split(".").pop().toLowerCase()=="onion"){window.BensPD=window.BensPDTor;window.BensPlayerDomain=window.BensPlayerDomainTor}vidtype=guessMimeFromUrl(vidurl);var vidid=0;while(true){if(window.BensPlayerInstances.includes(vidid)){vidid++}else{window.BensPlayerInstances.push(vidid);break}}if(vidurl.substring(0,31)!=window.BensPD){vidurl=window.BensPD+vidurl}document.write("<div id='BensplayerWrapper"+vidid+"' class='BensVideoCont'></div>");var c=document.getElementById("BensplayerWrapper"+vidid);var e=cE("link");e.setAttribute("rel","stylesheet");e.setAttribute("href",window.BensPD+"resources/js/videojs/video-js.min.css");c.appendChild(e);playerSettings={vidtype:vidtype,vidurl:vidurl,vidid:vidid};getBensToken(vidid,playerSettings)}function getBensToken(vidid,playerSettings){var ref=encodeURIComponent(window.location.href);var vurl=encodeURIComponent(playerSettings["vidurl"].replace(window.BensPD,""));var url=window.BensPD+"token_endpoint?ref="+ref+"&vidpath="+vurl;var xmlhttp;if(window.XMLHttpRequest){xmlhttp=new XMLHttpRequest}else{xmlhttp=new ActiveXObject("Microsoft.XMLHTTP")}xmlhttp.onreadystatechange=function(){if(xmlhttp.readyState==4){if(xmlhttp.status==200){var j=JSON.parse(xmlhttp.responseText);if(!j["status"]){console.log("Failed to retrieve token for video");embedFailedNotif(vidid);return false}playerSettings["vidurl"]+="?t="+encodeURIComponent(j["token"])+"&e="+encodeURIComponent(j["exp"]);loadVJS(vidid,playerSettings)}else{console.log("Failed to retrieve token for video");embedFailedNotif(vidid);return false}}};xmlhttp.open("GET",url,true);xmlhttp.send()}function writePlayer(vidid,playerSettings){var c=document.getElementById("BensplayerWrapper"+vidid);var width=c.parentNode.clientWidth;var d=cE("div");d.id="videowrapper"+vidid;v=cE("video");v.setAttribute("id","BensVideo"+vidid);v.setAttribute("class","video-js");v.setAttribute("controls","");v.setAttribute("preload","auto");v.setAttribute("width",width);var src=cE("source");src.setAttribute("src",playerSettings["vidurl"]);src.setAttribute("type",playerSettings["vidtype"]);v.appendChild(src);d.appendChild(v);c.appendChild(d);var s=cE("script");s.setAttribute("type","text/javascript");ss="window.player"+vidid+" = videojs('BensVideo"+vidid+"',\"{'fluid':true}\", function onPlayerReady(){console.log('Player Ready'); submit(BensVidgatherInfo(window.player"+vidid+".currentSrc().split('?')[0],'ready'))});";ss+="window.player"+vidid+".on('playing', function() {submit(BensVidgatherInfo(window.player"+vidid+".currentSrc().split('?')[0],'playing'))});";s.innerHTML=ss;c.appendChild(s);dirname=playerSettings["vidurl"].match(/.*\//);fetchPage(dirname+"details.json",BenswriteSchemaOrg,function(e){},playerSettings)}function loadVJS(vidid,playerSettings){var c=document.getElementById("BensplayerWrapper"+vidid);var e=cE("script");e.setAttribute("type","text/javascript");e.setAttribute("src",window.BensPD+"resources/js/videojs/video.min.js");if(window.playerSettings["vidtype"]=="application/x-mpegURL"){e.onload=function(){loadVJSHLS(vidid,playerSettings)}}else{e.onload=function(){writePlayer(vidid,playerSettings)}}c.appendChild(e)}function loadVJSHLS(vidid,playerSettings){var c=document.getElementById("BensplayerWrapper"+vidid);var e=cE("script");e.setAttribute("type","text/javascript");e.setAttribute("src",window.BensPD+"resources/js/videojs-contrib-hls.min.js");e.onload=function(){writePlayer(vidid,playerSettings)};c.appendChild(e)}function fetchPage(url,callback,errcallback,storage){var xmlhttp;if(window.XMLHttpRequest){xmlhttp=new XMLHttpRequest}else{xmlhttp=new ActiveXObject("Microsoft.XMLHTTP")}xmlhttp.onreadystatechange=function(){if(xmlhttp.readyState==4){if(xmlhttp.status==200){callback(xmlhttp.responseText,storage,url)}else{errcallback(xmlhttp.responseText)}}};xmlhttp.open("GET",url,true);xmlhttp.send()}function embedFailedNotif(vidid){s=cE("img");s.setAttribute("src",window.BensPD+"resources/embed/failed.png");var c=document.getElementById("BensplayerWrapper"+vidid);var width=c.parentNode.clientWidth;s.setAttribute("style","max-width: "+width+"px");c.appendChild(s)}function BenswriteSchemaOrg(text,storage,url){if(!text||!storage||!url){return}var j=JSON.parse(text);var d=document.getElementById("BensplayerWrapper"+storage["vidid"]);d.setAttribute("itemscope","");d.setAttribute("itemtype","https://schema.org/VideoObject");m=cE("meta");var url=window.BensPlayerDomain+"Player.html?url="+encodeURIComponent(url.replace(window.BensPD,""));m.setAttribute("itemprop","url");m.setAttribute("content",url);d.appendChild(m);if(j.hasOwnProperty("title")){var m=cE("meta");m.setAttribute("itemprop","name");m.setAttribute("content",j["title"]);d.appendChild(m)}if(j.hasOwnProperty("description")){var m=cE("meta");m.setAttribute("itemprop","description");m.setAttribute("content",j["description"].replace(/'/g,""));d.appendChild(m)}if(j.hasOwnProperty("keywords")){var m=cE("meta");m.setAttribute("itemprop","keywords");m.setAttribute("content",j["keywords"].replace(/'/g,""));d.appendChild(m)}var m=cE("meta");m.setAttribute("itemprop","playerType");m.setAttribute("content","html5");d.appendChild(m)}function BensVidgatherInfo(vid,state){var tz=(new Date).getTimezoneOffset();return{domain:"videos.bentasker.co.uk",page:"/"+vid.replace(window.BensPD,""),referrer:document.location.href,referrer_domain:document.location.hostname,platform:navigator.platform,timezone:tz,sess_id:getSessionId(),state:state,responseTime:Date.now()-window.performance.timing.navigationStart}}function getSessionId(){if(!window.analytics_gen_psuedoid){return"none"}var n=randomInteger(1,10);var k=window.location.hostname+"_sess-id";var i=sessionStorage.getItem(k);if(!i||n==5){i=createUUID();sessionStorage.setItem(k,i)}return i}function createUUID(){return"xxxx-xxxx".replace(/[xy]/g,function(c){var r=Math.random()*16|0,v=c=="x"?r:r&3|8;return v.toString(16)})}function submit(info){var xml=new XMLHttpRequest;xml.onreadystatechange=function(){};if(window.location.hostname.toLowerCase().endsWith(".onion")){xml.open("POST",window.analytics_endpoint_onion+"/write")}else{xml.open("POST",window.analytics_endpoint)}xml.setRequestHeader("Content-Type","application/json");xml.send(JSON.stringify(info))}function ping(){if(window.location.hostname.toLowerCase().endsWith(".onion")){var xml=new XMLHttpRequest;xml.onreadystatechange=function(){};xml.open("GET",window.analytics_endpoint_onion+"/ping");xml.send()}}function randomInteger(min,max){return Math.floor(Math.random()*(max-min+1))+min}window.analytics_active=true;window.analytics_gen_psuedoid=true;window.analytics_endpoint="https://pfanalytics.bentasker.co.uk/write";window.analytics_endpoint_onion="http://wftlf4ke7xwqkjrrju4aok57pkr7kfks5t5uqmipxlyjucwjycdql7id.onion";
#