Advertisement
Guest User

GIF Mashups pre gifnik na rouming.cz v0.2

a guest
Jul 7th, 2016
156
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. // ==UserScript==
  2. // @name         GIF Mashups pre gifnik na rouming.cz
  3. // @namespace    http://rouming.cz
  4. // @version      0.2
  5. // @description  license: WTFPL (Do What the Fuck You Want To Public License)
  6. // @author       janci
  7. // @match        http://www.rouming.cz/roumingGIF.php*
  8. // @grant        none
  9. // ==/UserScript==
  10.  
  11. /*
  12.   GIF Mashups pre gifnik na rouming.cz
  13.   autor: janci
  14.   license: WTFPL (Do What the Fuck You Want To Public License)
  15. */
  16. var komenty = document.querySelectorAll(".roumingForumMessage a");
  17. var miestecko = document.querySelector(".roumingForumMessage a").parentNode;
  18. var yt;
  19.  
  20. [].forEach.call(komenty, function(koment){
  21.   if(koment.href.search(/https?:\/\/(www\.)?(youtube\.com\/watch|youtu.be\/)/) >= 0){
  22.     var mashupator = document.createElement("a");
  23.     mashupator.innerHTML = "[MashItUp]";
  24.     mashupator.href="#";
  25.     mashupator.onclick = mashupHandler(koment.href);
  26.     koment.parentNode.appendChild(mashupator);
  27.     console.log(mashupator);
  28.   }
  29. });
  30.  
  31. function ytembedlink(url){
  32.     var regExp = /^.*((youtu.be\/)|(v\/)|(\/u\/\w\/)|(embed\/)|(watch\?))\??v?=?([^#\&\?]*).*/;
  33.     var match = url.match(regExp);
  34.     var starttime = 0;
  35.     var startmatch = url.match(/[\?&]t=([0-9]*)/);
  36.     if(startmatch && startmatch[1]>0){
  37.       starttime = startmatch[1];
  38.     }
  39.     return "https://www.youtube.com/embed/"+match[7]+"?autoplay=1&loop=1&playlist="+match[7]+"&showinfo=0&start="+starttime;
  40. }
  41.  
  42. function mashupHandler(url){
  43.   return function(){
  44.     if(!yt){
  45.       yt = document.createElement("iframe");
  46.       yt.width = 300;
  47.       yt.height = 50;
  48.       yt.frameBorder = 0;
  49.       yt.setAttribute("allowfullscreen", "allowfullscreen");
  50.       yt.setAttribute("mozallowfullscreen", "mozallowfullscreen");
  51.       yt.setAttribute("msallowfullscreen", "msallowfullscreen");
  52.       yt.setAttribute("oallowfullscreen", "oallowfullscreen");
  53.       yt.setAttribute("webkitallowfullscreen", "webkitallowfullscreen");
  54.       miestecko.appendChild(yt);
  55.       yt.onload = resetgif;
  56.     }
  57.     var link = ytembedlink(url);
  58.     yt.src = ytembedlink(url);
  59.   };
  60. }
  61.  
  62. function resetgif(){
  63.   var gif = document.querySelector(".roumingForumMessage img");
  64.   if(gif){
  65.     gif.src = gif.src;
  66.   }
  67.   var video = document.querySelector(".roumingForumMessage a video");
  68.   if(video){
  69.     video.currentTime = 0;
  70.   }
  71. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement