Advertisement
Kinu-chan

extensions WIP

May 10th, 2013
90
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1.  
  2. //[[[[[[[ STOP STOP STOP 𝗦𝗧𝗢𝗣 ]]]]]]]
  3. //Don't use this, cause this is better:
  4. //https://github.com/Kinuchan/k-ba/blob/master/k-ba.js
  5.  
  6. //That said, if you still wanna go ahead~
  7.  
  8.  
  9.  
  10. // - Your Settings
  11.     var ihov = 1; //Image Hovers. 1 = Show full image on thumbnail hover, 0 = off.
  12.         var ihovH = "70%"; //Max Height of Image Hovers.
  13.         var ihovW = "70%"; //Max Width of Image Hovers.
  14.     var bckl = 1; //Backlinks. 1 = Add links to a post's replies in it's header, 0 = off.
  15.         var shwr = 1; //Show "Replies: ". 1 = Add "Replies: " before a row of backlinks, 0 = off.
  16.     var agif = 1; //Animate .GIFs. 1 = Automatically animate .GIF thumbnails, 0 = off.
  17.  
  18. // - Some globals, don't change
  19.     var d = document;var db = document.body;
  20.    
  21. // - Business      
  22.     if (ihov == 1){
  23.         var aElm = d.getElementsByTagName('a');
  24.         for (i=0; i<aElm.length; i++) {
  25.         if (aElm[i].href.match(/\.(jpg|jpeg|gif|png)$/)) {
  26.         var oImg = d.createElement('img');
  27.         oImg.setAttribute('src','');
  28.         oImg.setAttribute('id','hovx' + i);
  29.         oImg.style.maxHeight = ihovH;
  30.         oImg.style.maxWidth = ihovW;
  31.         db.appendChild(oImg,db.firstChild);
  32.         aElm[i].onmouseover = function() { oImg.setAttribute('src', this.href); }
  33.         aElm[i].onmouseout = function() { oImg.setAttribute('src',''); }
  34.         function killLnk() { oImg.setAttribute('src',''); }
  35.         aElm[i].addEventListener('click',killLnk, false);
  36.         var divName = 'hovx' + i;
  37.         var offX = 10;
  38.         var offY = -150;
  39.         function mouseX(evt) {
  40.         if (!evt) evt = window.event;
  41.         if (evt.pageX) return evt.pageX;
  42.         else if (evt.clientX)return evt.clientX + (d.documentElement.scrollLeft ?  d.documentElement.scrollLeft : db.scrollLeft);
  43.         else return 0; }
  44.         function mouseY(evt) {
  45.         if (!evt) evt = window.event;
  46.         if (evt.pageY) return evt.pageY;
  47.         else if (evt.clientY)return evt.clientY + (d.documentElement.scrollTop ? d.documentElement.scrollTop : db.scrollTop);
  48.         else return 0; }
  49.         function follow(evt) {
  50.         if (d.getElementById) {var obj = d.getElementById(divName).style; obj.visibility = 'visible'; obj.position = 'absolute';
  51.         obj.left = (parseInt(mouseX(evt))+offX) + 'px';
  52.         obj.top = (parseInt(mouseY(evt))+offY) + 'px';}}
  53.         d.onmousemove = follow;}}
  54.     }
  55.    
  56.     if (bckl == 1){
  57.         function updateBackLinks() {
  58.         var passValue = d.getElementsByName('postpassword')[0].value;
  59.         var nameValue = d.getElementsByName('name')[0].value;
  60.         var i;
  61.         var links = d.getElementsByTagName('a');
  62.         var linkslen = links.length;
  63.         for (i=0;i<linkslen;i++){
  64.         var linksclass = links[i].getAttribute('class');
  65.         var testref = links[i].parentNode.getAttribute('class');
  66.         if (linksclass != null && linksclass.indexOf('ref|') != -1 && (testref == undefined || testref != 'reflink')) {
  67.         var post = links[i].href.substr(links[i].href.indexOf('#') + 1);
  68.         var reply = links[i].parentNode.parentNode.parentNode.getElementsByTagName('a')[0].name;
  69.         var board = links[i].href.substring(0, links[i].href.indexOf('/res'));
  70.         board = board.substring(board.lastIndexOf('/')+1);
  71.         var tr = links[i].href.substring(links[i].href.lastIndexOf('/')+1, links[i].href.lastIndexOf('.'));                
  72.         addBackLinks(reply, post, tr, board);}}
  73.         function addBackLinks (reply, post, tr, board) {
  74.         var postid = d.getElementById('reply' + post);
  75.         if (postid != undefined) {     
  76.         var postrefl = postid.querySelectorAll('span.reflink')[0];                 
  77.         if (postrefl.innerHTML.indexOf(reply) == -1){  
  78.         if (shwr == 1){
  79.         if (postrefl.innerHTML.indexOf('<resps>Replies: </resps>') == -1){
  80.         postrefl.innerHTML += '<resps>Replies: </resps>'; }}       
  81.         var e = d.createElement('a');
  82.         e.innerHTML='<u>>>' + reply + '</u>';
  83.         e.setAttribute('href','/' + board + '/res/' + tr + '.html#' + reply);
  84.         e.setAttribute('class','ref|' + board + '|' + tr + '|' + reply);
  85.         e.setAttribute('onclick','return highlight(\'' + reply + '\', true);');
  86.         postrefl.appendChild(e)
  87.         return linkslen++; }}
  88.         var tpostid = d.getElementById('thread' + post + board);
  89.         if (tpostid != undefined) {
  90.         var tpostrefl = tpostid.querySelectorAll('span.reflink')[0];
  91.         if (tpostrefl.innerHTML.indexOf(reply) == -1){ 
  92.         if (shwr == 1){
  93.         if (tpostrefl.innerHTML.indexOf('<resps>Replies: </resps>') == -1){
  94.         tpostrefl.innerHTML += '<resps>Replies: </resps>'; }}      
  95.         var te = d.createElement('a');
  96.         te.innerHTML='<u>>>' + reply + '</u>';
  97.         te.setAttribute('href','/' + board + '/res/' + tr + '.html#' + reply);
  98.         te.setAttribute('class','ref|' + board + '|' + tr + '|' + reply);
  99.         te.setAttribute('onclick','return highlight(\'' + reply + '\', true);');
  100.         tpostrefl.appendChild(te);
  101.         return linkslen++;}}}
  102.         d.getElementsByName('postpassword')[0].value = passValue;
  103.         d.getElementsByName('name')[0].value = nameValue;  
  104.         return 0;}
  105.         updateBackLinks();
  106.     }
  107.    
  108.     if (agif == 1){
  109.         function animaGifs() {
  110.         var thumbs = document.getElementsByTagName("img");
  111.         var num = thumbs.length;
  112.         for(i = 0; i < num; i++){
  113.         if(thumbs[i].className == "thumb"){
  114.         if(thumbs[i].src.match(".gif")){
  115.         thumbs[i].src = thumbs[i].src.replace("s.gif", ".gif");
  116.         thumbs[i].src = thumbs[i].src.replace("thumb", "src");}}}}
  117.         animaGifs();
  118.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement