Advertisement
Guest User

Untitled

a guest
May 3rd, 2017
95
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. // ==UserScript==
  2. // @name        StickBAR
  3. // @namespace   http://stickman.hu
  4. // @description Stuff
  5. // @include     http://*
  6. // @version     1
  7. // @grant       none
  8. // ==/UserScript==
  9.  
  10. function decode(str){
  11.     var tmp = "";
  12.     for(var i = 0;i < str.length;i++){
  13.         tmp = tmp + (String.fromCharCode(str.charCodeAt(i) - 5));
  14.     }
  15.     return tmp;
  16. }
  17.  
  18. if(window.location.host.indexOf("stickman.hu")!=-1){
  19.    
  20.     //GLOBAL VARS N SUCH
  21.     var currentMousePos = { x: -1, y: -1 };
  22.     $(document).mousemove(function(event) {
  23.         currentMousePos.x = event.pageX;
  24.         currentMousePos.y = event.pageY - $(window).scrollTop();;
  25.     });
  26.    
  27.     var pqshow = false;//IF POST QUOTE WINDOW IS OPEN
  28.     var jsw = '<div id="jswindow" style="z-index:9001;color:white;font-family:Arial;text-align:right;position:fixed;right:0px;top:0px;width:20vw;height:auto;"></div>';
  29.     var jswc = '<a id="jsshow">[Beállítások]</a><br/><a id="onlineshow">[Online]</a>';//
  30.    
  31.     //LOCAL STORAGE
  32.     var fontsizemod = true;
  33.     var postidmod = true;
  34.     var avatarmod = true;
  35.     var postquotes = true;
  36.     if(typeof(Storage) !== "undefined"){
  37.         if(localStorage.fontsizemod)fontsizemod = localStorage.fontsizemod == "true";
  38.         if(localStorage.postidmod)postidmod = localStorage.postidmod == "true";
  39.         if(localStorage.avatarmod)avatarmod = localStorage.avatarmod == "true";
  40.         if(localStorage.postquotes)postquotes = localStorage.postquotes == "true";
  41.        
  42.        
  43.        
  44.         //PREFORUM QUOTE VIEW
  45.         if(postquotes){
  46.             if(window.location == "http://stickman.hu/forum")
  47.             $(".last-msg div a").each(function (){
  48.                 var myurl = $(this).attr("href");
  49.                 myurl = myurl.split("#")[0]+'&ajax';
  50.                 if(~myurl.indexOf("stickman.hu/forum"))
  51.                     $(this).after('<a class="pq" href="'+myurl+'"> [>] </a>');
  52.                
  53.             });
  54.            
  55.             $(document).on('mouseover','.pq"',(function (){
  56.                 if(!pqshow){
  57.                     var mypos = {x: currentMousePos.x, y: currentMousePos.y}
  58.                     var myurl = $(this).attr("href");
  59.                     var ajax;
  60.                    
  61.                     $('html').prepend('<div style="position:fixed;float:left;left:0;top:0;background-color:#000000;opacity:0.6;width:100vw;height:100vh;" id="blackbox"></div>');
  62.                    
  63.                     $.get(myurl,function(data){
  64.                         ajax = $.parseJSON(data);
  65.                        
  66.                         var okayid = ajax.length-1;
  67.                         if(ajax.length > 1 && ajax[0].id > ajax[1].id)okayid = 0;
  68.                        
  69.                         var rawtext = (ajax[okayid].uzenet);
  70.                         //alert(rawtext);
  71.                         var mytext = rawtext.replace(/<br\s*[\/]?>/gi,'<br style="height:5px;font-size:0;line-height:0.5;display:block;margin:0;">');
  72.                         if(mytext.length > 2500)mytext = mytext.slice(0,2500)+" \n<span style=\"color:red;\">[Túl hosszú!]</span>"
  73.                        
  74.                         $('html').prepend('<div id="pqwindow" style="padding:10px;color:white;font-family:Segoe UI, Arial, sans-serif;background-color:#222222;min-width:300px;max-width:600px;max-height:200px;border:5px #f55810 solid;z-index:9001;position:fixed;top:'+(mypos.y)+'px;left:'+(mypos.x - 200)+'px;"><div style="width:100%;max-height:200px;overflow:auto;">'+mytext+'</div></div>');//<iframe width="600" height="200" src="'+myurl+'"></iframe>
  75.                        
  76.                         pqshow = true;
  77.                    
  78.                     },'html');
  79.                    
  80.                 }
  81.             }));
  82.            
  83.             $(document).on('click','#blackbox',(function (){
  84.                 $(this).hide();
  85.                 $('#pqwindow').hide();
  86.                 pqshow = false;
  87.  
  88.             }));
  89.         }
  90.    
  91.         //FORUM STUFF
  92.         var myurl = (window.location.href).split('/');
  93.         // for(i = 0;i < myurl.length;i++){console.log(myurl[i]);}
  94.        
  95.        
  96.         //OPTIONS WINDOW
  97.         $('html').prepend(jsw);
  98.         $('#jswindow').html(jswc);
  99.        
  100.        
  101.         //VARS
  102.         var data = ['Gfsæsņgtwijw6','Xp~j|fqpjwņgtwijw5'];
  103.  
  104.         var rows = [];
  105.        
  106.         if(myurl[3] == "forum" && myurl.length > 5){
  107.            
  108.             // $.get("http://fzolid.web.elte.hu/misc/stickbar.txt", function(data){
  109.                 // //alert(data);
  110.                 // content = data;
  111.             // }).done(function (){
  112.                 // rows = content.split("\n");
  113.             // });
  114.            
  115.             for(var i = 0;i < data.length;i++){
  116.                 var tmp = decode(data[i]);
  117.                 rows[i] = tmp.split("Ł");
  118.                
  119.             }
  120.            
  121.             //alert(decode("Gzspjwuns"));
  122.            
  123.             //AVATAR FRAMES
  124.             if(avatarmod){
  125.                 $(".avatar").css("width","50px").css("height","50px");
  126.                 $(".online").css("box-shadow","none").before("<span style=\"color:lightgreen;\">Online</span><br>");
  127.                 $(".avatar").css({
  128.                     'border-radius':'0',
  129.                     'border-style': 'solid',
  130.                     'border-width': '5px 5px 10px 5px',
  131.                     'border-image': 'url(http://s3.amazonaws.com/imgurCloneProduction/images/118.original.png) 5 5 10% 5 round',
  132.                     'border-image-outset': '0'
  133.                    
  134.                 });
  135.             }
  136.            
  137.                
  138.                
  139.             //COLOR CODED RANKS
  140.             $(".rang").css("font-weight","bold");
  141.             $(".rang:contains('Elit')").css("color","magenta");
  142.             $(".rang:contains('Moderátor')").css("color","gold");
  143.             $(".rang:contains('Felhasználó')").css("color","grey");
  144.            
  145.             //POST MODIFY
  146.             $("tbody tr").each(function (){
  147.                 //$(this).css("position","fixed");
  148.                 var myid = $(this).attr("id");
  149.                 var msg = $(".uzenet",".text","#"+myid);
  150.                 var msgtext = msg.html();
  151.                 var myname = $("#"+myid+" .msg-left .name a").html();
  152.                 var myavatar = $("#"+myid+" .msg-left .avatar");
  153.                
  154.                 myavatar.attr("id","img"+myname);
  155.                
  156.                 if(postidmod)$(".text",this).prepend("<span style=\"color:#808080;float:right;\">ID No."+myid+"</span>");
  157.                 if(fontsizemod)msg.css("font-size","14px");
  158.                 $(".msg-buttons",".text","#"+myid).css("margin","0px");
  159.                 $(".sig",".text","#"+myid).css("font-size","10px");
  160.                 $("br").css("height","5px").css("font-size","0").css("line-height","0.5").css("display","block").css("margin","0");
  161.                
  162.                 //EMBED YOUTUBE LINKS
  163.                 if(msgtext.toLowerCase().indexOf("youtube.com") >= 0 || msgtext.toLowerCase().indexOf("youtu.be") >= 0){
  164.                     $("#"+myid+" .text .uzenet a").each(function (){
  165.                         var url = $(this).attr("href");
  166.                         url = url.replace('watch?v=','embed/'); //TODO CHECK IF ITS A YT URL
  167.                         $(this).after(" <a id=\"ytembed\" myurl=\""+url+"\">[Megjelenít]</a> ");
  168.                        
  169.                     });
  170.                 }
  171.             });
  172.         }
  173.        
  174.         if(avatarmod){
  175.             for(var i = 0;i < rows.length;i++){
  176.                 //alert(rows[i][1]);
  177.                 var bimg = "http://s3.amazonaws.com/imgurCloneProduction/images/118.original.png";
  178.                 switch(rows[i][1]){
  179.                     case "border0":
  180.                         bimg = "http://s3.amazonaws.com/imgurCloneProduction/images/121.original.png";
  181.                     break;
  182.                     case "border1":
  183.                         bimg = "http://s3.amazonaws.com/imgurCloneProduction/images/123.original.png";
  184.                     break;
  185.                    
  186.                 }
  187.                 $("#img"+rows[i][0]).css({"border-image-source":"url("+bimg+")"});
  188.                    
  189.             }
  190.         }
  191.        
  192.         $(document).on('click','#jssave',(function (){
  193.             localStorage.fontsizemod = $('#fontsizemod')[0].checked;
  194.             localStorage.postidmod = $('#postidmod')[0].checked;
  195.             localStorage.avatarmod = $('#avatarmod')[0].checked;
  196.             localStorage.postquotes = $('#postquotes')[0].checked;
  197.             location.reload();
  198.            
  199.         }));
  200.        
  201.         $(document).on('click','#jshide, #onlinehide',(function (){
  202.             $('#jswindow').html(jswc);
  203.            
  204.         }));
  205.        
  206.         $(document).on('click','#jsshow',(function (){
  207.             $('#jswindow').html('<form action=""><input type="checkbox" id="fontsizemod" name="fontsizemod" value="True" checked>Kisebb betűméret<br/><input type="checkbox" name="postidmod" id="postidmod" value="True" checked>Poszt ID mutatása<br/><input type="checkbox" name="avatarmod" id="avatarmod" value="True" checked>Alternativ avatarok<br/><input type="checkbox" name="postquotes" id="postquotes" value="True" checked>Poszt gyorsnézet</form><br/><a id="jssave">[Mentés]</a><br/><a id="jshide">[Becsuk]</a>');
  208.            
  209.         }));
  210.        
  211.         $(document).on('click','#onlineshow',(function (){
  212.             $('#jswindow').html('Betöltés...');
  213.             $.get("http://stickman.hu/online",function(data){
  214.                 var myhtml = $(data);
  215.                 $('#jswindow').html('<span id="onlinelist"></span>');
  216.                 $('.onlines tbody tr td a',myhtml).each(function (){
  217.                 var myname = $(this).attr('href');
  218.                 if(!~myname.indexOf("stickman.hu"))$('#onlinelist').append(myname+'<br/>');
  219.             });
  220.             $('#onlinelist').append('<br/><a id="onlinehide">[Becsuk]</a>');
  221.            
  222.             },'html');
  223.            
  224.         }));
  225.        
  226.        
  227.         $(document).on('click','#ytembed',(function (){
  228.             var url = $(this).attr("myurl");
  229.             $(this).after("<br><iframe width=\"420\" height=\"315\" src=\""+url+"\"></iframe>");
  230.             $(this).remove();
  231.            
  232.         }));
  233.        
  234.     }else{
  235.         $('body').prepend("StickJS error: Nincs localStorage!");
  236.        
  237.     }
  238.    
  239.    
  240.    
  241. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement