WWT - Shoutbox Smileys

Adds customizable smileys to WWT shoutbox

目前為 2016-10-31 提交的版本,檢視 最新版本

// ==UserScript==
// @name        WWT - Shoutbox Smileys
// @namespace   Keka_Umans
// @description Adds customizable smileys to WWT shoutbox
// @require https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js
// @include     *worldwidetorrents.eu/index.php
// @include     *worldwidetorrents.eu/
// @version     1.5
// @grant       none
// ==/UserScript==

/************************/
// Customizable Settings
/************************/
// show account/message links in shout header
var accInfo = 'yes'; // yes=On/no=Off !NO CAPS!  default is On
// Icon color (if accInfo is set to yes)
var icoColor = '#FFF'; // hex code of any color you like   default is White
// New message color (if accInfo is set to yes)
var msgColor = '#FFF'; // hex code of any color you like   default is White

// Smiley Set Switches
// All switches are 1=On 0=Off
var KS = 1; // KAT Smileys
var WS = 1; // WWT Smileys
var ES = 1; // Extra Smileys
var HS = 1; // Holiday Smileys



$(window).load(function(){
// place holder crap DONT TOUCH
var smileys = ''; // leave as is
var buttons = ''; // leave as is
  
  
// KAT Smileys
if(KS==1){
  smileys += '    <img title="biggrin" class="cusSmile" href src="https://i.imgur.com/yrmrqBr.gif" />';
  smileys += '    <img title="cry" class="cusSmile" href src="https://i.imgur.com/31QyqdW.gif" />';
  smileys += '    <img title="dizzy" class="cusSmile" href src="https://i.imgur.com/Dab19mK.gif" />';
  smileys += '    <img title="funk" class="cusSmile" href src="https://i.imgur.com/OelvgkH.gif" />';
  smileys += '    <img title="huffy" class="cusSmile" href src="https://i.imgur.com/e1xCAZp.gif" />';
  smileys += '    <img title="lol" class="cusSmile" href src="https://i.imgur.com/Y2IB7c1.gif" />';
  smileys += '    <img title="lovliness" class="cusSmile" href src="https://i.imgur.com/OUzdHNF.gif" />';
  smileys += '    <img title="mad" class="cusSmile" href src="https://i.imgur.com/zZuLIGb.gif" />';
  smileys += '    <img title="sad" class="cusSmile" href src="https://i.imgur.com/xarqUB1.gif" />';
  smileys += '    <img title="shocked" class="cusSmile" href src="https://i.imgur.com/qi4A3nr.gif" />';
  smileys += '    <img title="shy" class="cusSmile" href src="https://i.imgur.com/xFFGTfU.gif" />';
  smileys += '    <img title="sleepy" class="cusSmile" href src="https://i.imgur.com/16gZbHY.gif" />';
  smileys += '    <img title="smile" class="cusSmile" href src="https://i.imgur.com/jDCmN5k.gif" />';
  smileys += '    <img title="sweat" class="cusSmile" href src="https://i.imgur.com/gOXCcif.gif" />';
  smileys += '    <img title="titter" class="cusSmile" href src="https://i.imgur.com/3mUNmP8.gif" />';
  smileys += '    <img title="tongue" class="cusSmile" href src="https://i.imgur.com/Au91JBC.gif" />';
  smileys += '    <img title="pirate" class="cusSmile" href src="https://i.imgur.com/c0gTgBS.gif" />';
  smileys += '    <img title="boo" class="cusSmile" href src="https://i.imgur.com/Rl6QHXw.gif" />';
  smileys += '    <img title="wink" class="cusSmile" href src="https://i.imgur.com/ZoWgkuV.gif" />';
  smileys += '    <img title="dull" class="cusSmile" href src="https://i.imgur.com/5T7B0wl.gif" />';
  smileys += '    <img title="chuckle" class="cusSmile" href src="https://i.imgur.com/UQxpJbL.gif" />';
  smileys += '    <img title="clap" class="cusSmile" href src="https://i.imgur.com/vBzTQec.gif" />';
  smileys += '    <img title="drunk" class="cusSmile" href src="https://i.imgur.com/6amPLB3.gif" />';
  smileys += '    <img title="finger" class="cusSmile" href src="https://i.imgur.com/Zcq1str.gif" />';
  smileys += '    <img title="inlove" class="cusSmile" href src="https://i.imgur.com/DjKkEX7.gif" />';
  smileys += '    <img title="nerd" class="cusSmile" href src="https://i.imgur.com/gu5gvMk.gif" />';
  smileys += '    <img title="no" class="cusSmile" href src="https://i.imgur.com/VKctnGI.gif" />';
  smileys += '    <img title="rofl" class="cusSmile" href src="https://i.imgur.com/BRNDUiY.gif" />';
  smileys += '    <img title="lipssealed" class="cusSmile" href src="https://i.imgur.com/S29lZ3e.gif" />';
  smileys += '    <img title="smirk" class="cusSmile" href src="https://i.imgur.com/8Bzq4I8.gif" />';
  smileys += '    <img title="think" class="cusSmile" href src="https://i.imgur.com/fLaLJRx.gif" />';
  smileys += '    <img title="yes" class="cusSmile" href src="https://i.imgur.com/1Mge3YI.gif" />';
  smileys += '    <img title="wait" class="cusSmile" href src="https://i.imgur.com/tkKjFsA.gif" />';
  smileys += '    <img title="wave" class="cusSmile" href src="https://i.imgur.com/vHrmADf.gif" />';
  smileys += '    <img title="cool" class="cusSmile" href src="https://i.imgur.com/bFSKaxa.gif" />';
  smileys += '    <img title="evil" class="cusSmile" href src="https://i.imgur.com/zX9yKQn.gif" />';
  smileys += '    <img title="punch" class="cusSmile" href src="https://i.imgur.com/jcSMOIz.gif" />';
  smileys += '    <img title="doh" class="cusSmile" href src="https://i.imgur.com/7iAX7kq.gif" />';
  smileys += '    <img title="yawn" class="cusSmile" href src="https://i.imgur.com/EItEozy.gif" />';
  smileys += '    <img title="tmi" class="cusSmile" href src="https://i.imgur.com/UHp9eQR.gif" />';
  smileys += '    <img title="fubar" class="cusSmile" href src="https://i.imgur.com/2S7ahGT.gif" />';
  smileys += '    <img title="rock" class="cusSmile" href src="https://i.imgur.com/jNciQTr.gif" />';
  smileys += '    <img title="bandit" class="cusSmile" href src="https://i.imgur.com/GS4Lctd.gif" />';
  smileys += '    <img title="swear" class="cusSmile" href src="https://i.imgur.com/Qef0xw8.gif" />';
  smileys += '    <img title="facepalm" class="cusSmile" href src="https://i.imgur.com/ky63riP.gif" />';
  smileys += '    <img title="thumbup" class="cusSmile" href src="https://i.imgur.com/xxtKctj.gif" />';
  smileys += '    <img title="thumbdown" class="cusSmile" href src="https://i.imgur.com/bkv4kfO.gif" />';
  smileys += '    <img title="HeadWall" class="cusSmile" href src="https://i.imgur.com/QnhNsQD.gif" />';  
}
  
// WWT Smileys
if(WS==1){
  smileys += '    <img data-code=":brb" title="BRB" class="cusSmile" alt="brb" src="https://worldwidetorrents.eu/images/smilies/brb.gif" />';
  smileys += '    <img data-code=":cwl" title="Crying While Laughing" class="cusSmile" alt=":cwl" src="https://worldwidetorrents.eu/images/smilies/cwl.gif" />';
  smileys += '    <img data-code=":love" title="Heart" class="cusSmile" alt=":love" src="https://worldwidetorrents.eu/images/smilies/heart.gif" />';
  smileys += '    <img data-code=":bandit" title="bandit" class="cusSmile" alt="bandit" src="https://worldwidetorrents.eu/images/smilies/bandit.gif" />';
  smileys += '    <img data-code=":brokenheart" title="brokenheart" class="cusSmile" alt="brokenheart" src="https://worldwidetorrents.eu/images/smilies/brokenheart.gif" />';
  smileys += '    <img data-code=":doh" title="doh" class="cusSmile" alt="doh" src="https://worldwidetorrents.eu/images/smilies/doh.gif" />';
  smileys += '    <img data-code=":envy" title="envy" class="cusSmile" alt="envy" src="https://worldwidetorrents.eu/images/smilies/envy.gif" />';
  smileys += '    <img data-code=":fubar" title="fubar" class="cusSmile" alt="fubar" src="https://worldwidetorrents.eu/images/smilies/fubar.gif" />';
  smileys += '    <img data-code=":headbang" title="headbang" class="cusSmile" alt="headbang" src="https://worldwidetorrents.eu/images/smilies/headbang.gif" />';
  smileys += '    <img data-code=":lipssealed" title="lipssealed" class="cusSmile" alt="lipssealed" src="https://worldwidetorrents.eu/images/smilies/lipssealed.gif" />';
  smileys += '    <img data-code=":smile" title="smile" class="cusSmile" alt="smile" src="https://worldwidetorrents.eu/images/smilies/smile.gif" />';
  smileys += '    <img data-code=":sad" title="sad" class="cusSmile" alt="sad" src="https://worldwidetorrents.eu/images/smilies/sad.gif" />';
  smileys += '    <img data-code=":wink" title="wink" class="cusSmile" alt="wink" src="https://worldwidetorrents.eu/images/smilies/wink.gif" />';
  smileys += '    <img data-code=":tongue" title="tongue" class="cusSmile" alt="tongue" src="https://worldwidetorrents.eu/images/smilies/tongueout.gif" />';
  smileys += '    <img data-code=":laugh" title="laugh" class="cusSmile" alt="laugh" src="https://worldwidetorrents.eu/images/smilies/laugh.gif" />';
  smileys += '    <img data-code=":dull" title="dull" class="cusSmile" alt="dull" src="https://worldwidetorrents.eu/images/smilies/dull.gif" />';
  smileys += '    <img data-code=":surprised" title="surprised" class="cusSmile" alt="surprised" src="https://worldwidetorrents.eu/images/smilies/surprised.gif" />';
  smileys += '    <img data-code=":confused" title="confused" class="cusSmile" alt="confused" src="https://worldwidetorrents.eu/images/smilies/confused.gif" />';
  smileys += '    <img data-code=":nerd" title="nerd" class="cusSmile" alt="nerd" src="https://worldwidetorrents.eu/images/smilies/nerdy.gif" />';
  smileys += '    <img data-code=":smirk" title="smirk" class="cusSmile" alt="smirk" src="https://worldwidetorrents.eu/images/smilies/smirk.gif" />';
  smileys += '    <img data-code=":cool" title="cool" class="cusSmile" alt="cool" src="https://worldwidetorrents.eu/images/smilies/cool.gif" />';
  smileys += '    <img data-code=":facepalm" title="facepalm" class="cusSmile" alt="facepalm" src="https://worldwidetorrents.eu/images/smilies/facepalm.gif" />';
  smileys += '    <img data-code=":cry" title="cry" class="cusSmile" alt="cry" src="https://worldwidetorrents.eu/images/smilies/cry.gif" />';
  smileys += '    <img data-code=":kiss" title="kiss" class="cusSmile" alt="kiss" src="https://worldwidetorrents.eu/images/smilies/kiss.gif" />';
  smileys += '    <img data-code=":finger" title="finger" class="cusSmile" alt="finger" src="https://worldwidetorrents.eu/images/smilies/finger.gif" />';
  smileys += '    <img data-code=":evil" title="evil" class="cusSmile" alt="evil" src="https://worldwidetorrents.eu/images/smilies/evil.gif" />';
  smileys += '    <img data-code=":angry" title="angry" class="cusSmile" alt="angry" src="https://worldwidetorrents.eu/images/smilies/angry.gif" />';
  smileys += '    <img data-code=":inlove" title="inlove" class="cusSmile" alt="inlove" src="https://worldwidetorrents.eu/images/smilies/inlove.gif" />';
  smileys += '    <img data-code=":blush" title="blush" class="cusSmile" alt="blush" src="https://worldwidetorrents.eu/images/smilies/blush.gif" />';
  smileys += '    <img data-code=":clap" title="clap" class="cusSmile" alt="clap" src="https://worldwidetorrents.eu/images/smilies/clap.gif" />';
  smileys += '    <img data-code=":think" title="think" class="cusSmile" alt="think" src="https://worldwidetorrents.eu/images/smilies/think.gif" />';
  smileys += '    <img data-code=":yes" title="yes" class="cusSmile" alt="yes" src="https://worldwidetorrents.eu/images/smilies/yes.gif" />';
  smileys += '    <img data-code=":no" title="no" class="cusSmile" alt="no" src="https://worldwidetorrents.eu/images/smilies/no.gif" />';
  smileys += '    <img data-code=":hi" title="hi" class="cusSmile" alt="hi" src="https://worldwidetorrents.eu/images/smilies/hi.gif" />';
  smileys += '    <img data-code=":drunk" title="drunk" class="cusSmile" alt="drunk" src="https://worldwidetorrents.eu/images/smilies/drunk.gif" />';
  smileys += '    <img data-code=":giggle" title="giggle" class="cusSmile" alt="giggle" src="https://worldwidetorrents.eu/images/smilies/giggle.gif" />';
  smileys += '    <img data-code=":punch" title="punch" class="cusSmile" alt="punch" src="https://worldwidetorrents.eu/images/smilies/punch.gif" />';
  smileys += '    <img data-code=":wait" title="wait" class="cusSmile" alt="wait" src="https://worldwidetorrents.eu/images/smilies/wait.gif" />';
  smileys += '    <img data-code=":swear" title="swear" class="cusSmile" alt="swear" src="https://worldwidetorrents.eu/images/smilies/swear.gif" />';
  smileys += '    <img data-code=":sweat" title="sweat" class="cusSmile" alt="sweat" src="https://worldwidetorrents.eu/images/smilies/sweat.gif" />';
  smileys += '    <img data-code=":tmi" title="tmi" class="cusSmile" alt="tmi" src="https://worldwidetorrents.eu/images/smilies/tmi.gif" />';
}

// Extra Smileys
if(ES==1){
  smileys += '    <img title="Darky" class="cusSmile" href src="https://i.imgur.com/NMq4OZg.gif" />';
  smileys += '    <img title="Sarcastic" class="cusSmile" alt="sarcastic" src="https://i.imgur.com/tciEnnj.gif" />';
  smileys += '    <img title="Smoking" class="cusSmile" alt="smoke" src="https://i.imgur.com/8NM4PSG.gif" />';
  smileys += '    <img title="Puke" class="cusSmile" alt="puke" src="https://i.imgur.com/q1OATGv.gif" />';
  smileys += '    <img title="Lalala" class="cusSmile" alt="lalala" src="https://i.imgur.com/Z6jgGZb.gif" />';
  smileys += '    <img title="Devil" class="cusSmile" alt="devil" src="https://i.imgur.com/6O0oZBV.gif" />';
  smileys += '    <img title="Mooning" class="cusSmile" alt="mooning" src="https://i.imgur.com/RP9b7FS.gif" />';
  smileys += '    <img title="Squirrel" class="cusSmile" alt="squirrel" src="https://i.imgur.com/xCBvpyM.gif" />';
  smileys += '    <img title="Ninja" class="cusSmile" alt="ninja" src="https://i.imgur.com/qAcWv6r.gif" />';
  smileys += '    <img title="Beer" class="cusSmile" alt="beer" src="https://i.imgur.com/oEkVt3Q.gif" />';
  smileys += '    <img title="Drink" class="cusSmile" alt="drink" src="https://i.imgur.com/Ny8qrd5.gif" />';
  smileys += '    <img title="Coffee" class="cusSmile" alt="coffee" src="https://i.imgur.com/VXVdBNW.gif" />';
  smileys += '    <img title="Cake" class="cusSmile" alt="cake" src="https://i.imgur.com/Qe18IlM.gif" />';
  smileys += '    <img title="Pizza" class="cusSmile" alt="pizza" src="https://i.imgur.com/5Lbz27k.gif" />';
  smileys += '    <img title="Rain" class="cusSmile" alt="rain" src="https://i.imgur.com/jcir7SZ.gif" />';
  smileys += '    <img title="Mail" class="cusSmile" alt="mail" src="https://i.imgur.com/u6mnOPE.gif" />';
  smileys += '    <img title="Music" class="cusSmile" alt="music" src="https://i.imgur.com/jE9cvcV.gif" />';
  smileys += '    <img title="Phone" class="cusSmile" alt="phone" src="https://i.imgur.com/uG1L8TY.gif" />';
  smileys += '    <img title="Weed" class="cusSmile" alt="weed" src="https://i.imgur.com/hAKWhAc.gif" />';
}

// Holiday Smileys
if(HS==1){
  smileys += '    <img title="Pumpkin" class="cusSmile" alt="pumpkin" src="https://i.imgur.com/lLxRQVF.gif" />';
  smileys += '    <img title="Ghost" class="cusSmile" alt="ghost" src="https://i.imgur.com/Y1JxeFL.gif" />';
  smileys += '    <img title="Vampire" class="cusSmile" alt="vampire" src="https://i.imgur.com/PFfpGR1.gif" />';
  smileys += '    <img title="Holiday Spirit" class="cusSmile" alt="holiday spirit" src="https://i.imgur.com/CKzSZGP.gif" />';
  smileys += '    <img title="Santa" class="cusSmile" alt="santa" src="https://i.imgur.com/d4TpzGE.gif" />';
  smileys += '    <img title="Xmas Tree" class="cusSmile" alt="xmas tree" src="https://i.imgur.com/SIc3x1x.gif" />';
}
  
  
/************************/
// this is where you can
// add your own custom images
// use the template below - just fill in and uncomment (remove // from the line)
/************************/
  // smileys += '    <img title="NAME" class="cusSmile" alt="NAME" src="https://URL.gif" />';

  
  
  
  
  
  

  
  
  
  
  
  

////// DO NOT EDIT BELOW THIS LINE /////
  
// Adding smiley sets
$('tr.shoutbox_messageboxback').after('<tr><td>'+smileys+'</td></tr>');

// Adding Account infos
if(accInfo == 'yes'){
  var uid = $('div.fltRight:nth-child(2) > a:nth-child(1)').attr('href'); // get user ID
  uid = uid.replace('/account-details.php?id=','');

// this is to get message count (needed for live count)
  function gmc() {
    'use strict';
    var msgCount = [];
    $.ajax({
      type: "GET",
      url: "/api/mail/?id="+uid,
      async: false,
      success: function (data) {
        msgCount = data.unread;
      },
      returnData: "json"
    });
    return msgCount;
  }

// get initial message count
  var ibox = ''; // leave as is
  var msg = gmc();
  // little fix for inbox link
  if(msg != 0){ibox='?inbox';}
  
// Setting the button
  buttons += '<a class="profile" href="/account-details.php?id='+uid+'"><span style="color:'+icoColor+';" title="Your Account" class="glyphicon glyphicon-user"></span></a>';
  buttons += '<a class="account" href="/account.php"><span style="color:'+icoColor+';" title="Account Settings" class="glyphicon glyphicon-wrench"></span></a>';
  buttons += '<a class="mail" href="/mailbox.php'+ibox+'"><span style="color:'+icoColor+';" title="Your Messages" class="glyphicon glyphicon-envelope"></span><sup id="lCount" style="font-weight:bold;color:'+msgColor+';margin-left:5px;">('+msg+')</sup></a>';
  // Adding the buttons
  $('div.myFrame:nth-child(6) > div:nth-child(1)').append(buttons);
  
// this will keep the count updated (big shoutout to PX for help here)
  function liveCount(){
    var newMsgCount = gmc();
    $('#lCount').text('('+newMsgCount+')');
    // fix link each time
    var ifix = '';
    if(newMsgCount != "0"){ifix = '?inbox';}
    $('a.mail').prop('href','/mailbox.php'+ifix+'');
  }
  setInterval(liveCount, 30000);
}

// to add smileys to form
jQuery.fn.extend({
  insertAtCaret: function(myValue){
    return this.each(function(i) {
      if (document.selection) {
        //For browsers like Internet Explorer
        this.focus();
        var sel = document.selection.createRange();
        sel.text = myValue;
        this.focus();
      }
      else if (this.selectionStart || this.selectionStart == '0') {
        //For browsers like Firefox and Webkit based
        var startPos = this.selectionStart;
        var endPos = this.selectionEnd;
        var scrollTop = this.scrollTop;
        this.value = this.value.substring(0, startPos)+myValue+this.value.substring(endPos,this.value.length);
        this.focus();
        this.selectionStart = startPos + myValue.length;
        this.selectionEnd = startPos + myValue.length;
        this.scrollTop = scrollTop;
      }
      else {
        this.value += myValue;
        this.focus();
      }
    });
  }
});

// click for smiley
  $('.cusSmile').click(function(){
    var code = $(this).data('code');
    if(code){code = code;}
    else{code = '[img]'+ $(this).attr('src') +'[/img]';}
    $('.shoutbox_msgbox').insertAtCaret(' '+code+'');
  });

// fix for ff submit
  if (navigator.userAgent.search("Firefox") >= 0) {
    $('.shoutbox_messageboxback').keydown(function(e) {
      if(e.keyCode == 13) {submit_shout();} // enter
    });
  }
  
// CSS for smileys
  $('.cusSmile').css({'cursor': 'pointer', 'max-height': '25px'});

});