1function videoAutoPlay(videoId, isFullscreen) { 2 var vid = null; 3 if (videoId) 4 vid = videoId; 5 var vidEl = document.getElementById(vid); 6 if (vidEl && vidEl.nodeName == "VIDEO") { 7 var wrapper = wrap(vidEl); 8 vidEl.setAttribute('playsinline', 'playsinline'); 9 vidEl.muted = true; 10 vidEl.play(); 11 var overlay = createOverlay(vidEl, wrapper); 12 if (overlay) { 13 overlay.addEventListener("click", function () { 14 playOrResumeVideoOnClick(overlay, vidEl, isFullscreen); 15 }); 16 } 17 } 18} 19 20function FindVideoAndAutoPlay() { 21 var vidTags = document.getElementsByTagName('VIDEO'); 22 for (var i = 0; i < vidTags.length; i++) { 23 var video = vidTags[i]; 24 if (video.getAttribute('videoid')) { 25 if(!location.href.includes("#" + video.id)) 26 location.href = location.href + "#" + video.id; 27 videoAutoPlay(video.id); 28 break; 29 } 30 } 31} 32 33function wrap(vidEl) { 34 var wrapper = document.createElement('div'); 35 vidEl.insertAdjacentElement('beforebegin', wrapper); 36 wrapper.setAttribute('style', 'position:relative;display:inline-block;font-size:0;line-height:0;'); 37 wrapper.appendChild(vidEl); 38 return wrapper; 39} 40function createOverlay(vidEl, wrapper) { 41 var overlay = document.createElement('DIV'); 42 overlay.setAttribute('id', 'ovl' + vidEl.id); 43 overlay.setAttribute('style', 'position:absolute;display:block;background-color:rgba(0,0,0,0.2);z-index:10;top:0;bottom:0;left:0;right:0;cursor:pointer;'); 44 wrapper.insertBefore(overlay, wrapper.firstChild); 45 var playIcon = createPlayIcon(); 46 var playIconWrapper = wrapPlayIcon(playIcon); 47 overlay.appendChild(playIconWrapper); 48 49 var muteIcon = createMuteIcon(); 50 overlay.appendChild(muteIcon); 51 52 return overlay; 53} 54function wrapPlayIcon(playIcon) { 55 var wrapper = document.createElement('div'); 56 playIcon.insertAdjacentElement('beforebegin', wrapper); 57 wrapper.setAttribute('style', 'position:absolute;top:56%;left:0;right:0;'); 58 wrapper.appendChild(playIcon); 59 return wrapper; 60} 61function createPlayIcon() { 62 var playIcon = document.createElement('img'); 63 playIcon.src = "https://nearest.tm00.com/tmvideoresource/v3/btn-tap-for-sound.png"; 64 playIcon.setAttribute('style', 'position:relative;display:block;margin:0 auto;width:76%;max-width:300px !important;-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;user-select:none;'); 65 return playIcon; 66} 67function createMuteIcon() { 68 var muteIcon = document.createElement('img'); 69 muteIcon.src = "https://nearest.tm00.com/tmvideoresource/v3/icon-muted.png"; 70 muteIcon.setAttribute('style', 'position:absolute;display:block;top:15px;left:15px;width:14%;max-width:50px !important;-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;user-select:none;'); 71 return muteIcon; 72} 73 74function playOrResumeVideoOnClick(overlay, vidEl, isFullscreen) { 75 76 if (isMobileDevice() || isFullscreen) { 77 goFullScreen(vidEl); 78 } 79 vidEl.muted = false; 80 vidEl.load(); 81 vidEl.play(); 82 overlay.style.display = "none"; 83} 84function isMobileDevice() { 85 var userAgent = navigator.userAgent || navigator.vendor || window.opera; 86 if ((/android/i.test(userAgent)) || (/iPhone/.test(userAgent))) { 87 return true; 88 } 89 else { 90 return false; 91 } 92} 93function goFullScreen(vidEl) { 94 vidEl.removeAttribute('playsinline'); 95 if (vidEl.requestFullscreen) { 96 vidEl.requestFullscreen(); 97 } else if (vidEl.mozRequestFullScreen) { /* Firefox */ 98 vidEl.mozRequestFullScreen(); 99 } else if (vidEl.webkitRequestFullscreen) { /* Chrome, Safari and Opera */ 100 vidEl.webkitRequestFullscreen(); 101 } else if (vidEl.msRequestFullscreen) { /* IE/Edge */ 102 vidEl.msRequestFullscreen(); 103 } 104} 105 106document.addEventListener("DOMContentLoaded", function(event) { 107 if (document.referrer.indexOf('facebook')>0){ 108 var v = document.getElementsByTagName("video"); 109 if (v.length) { 110 p=v[0].getBoundingClientRect(); 111 if (!p || isNaN(p.x) || isNaN(p.y)) return; 112 var sx= p.x-p.width/2, sy = p.y-p.height/2 113 scrollTo(sx, sy); 114 } 115 } 116});
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.