WWT - Shoutbox Smileys

Adds customizable smileys to WWT shoutbox

当前为 2016-12-06 提交的版本,查看 最新版本

// ==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.7
// @grant       none
// ==/UserScript==

var smileys = ''; // leave this as is
var Csmileys = ''; // leave this as is

/************************/
// Customizable Settings
/************************/
// show account/message links in shout header
var accInfo = 'yes'; // yes=On/no=Off !NO CAPS!  default is On
// hide WWT .gif banner
var showBanner = 'no'; // yes shows banner/no hides it !NO CAPS!  default is yes
// 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
// Defealt text color and bold for colorize/autocolorize button
var bbColor = '#729ED4'; // hex code of any color you like   default is Black
var isBold = 'yes'; // yes posts bold/no does not !NO CAPS!  default is no
// Smiley Set Switches
// All switches are 1=On 0=Off
var KS = 1; // Show KAT Smileys
var WS = 1; // Show WWT Smileys
var ES = 1; // Show Extra Smileys
var HS = 1; // Show Holiday Smileys

/************************/
// this is where you can
// add your own custom images
// use the template below - just fill in and uncomment (remove // from the line)
// copy/paste as needed
/************************/
// Csmileys += '    <img title="NAME" class="cusSmile" alt="NAME" src="https://URL.gif" />';


Csmileys += '    <img title="Fart" class="cusSmile" alt="fart" src="https://i.imgur.com/QacAxmB.gif" />';
Csmileys += '    <img title="Drooling" class="cusSmile" alt="drooling" src="https://i.imgur.com/BqjaQxN.gif" />';
Csmileys += '    <img title="Waiting" class="cusSmile" alt="waiting" src="https://i.imgur.com/DwzaLem.gif" />';
Csmileys += '    <img title="Idiot" class="cusSmile" alt="idiot" src="https://i.imgur.com/JKcjc0W.gif" />';
Csmileys += '    <img title="Juggle" class="cusSmile" alt="juggle" src="http://i.imgur.com/63p7LNX.gif" />';
Csmileys += '    <img title="Keka-Sleep" class="cusSmile" alt="keka-sleep" src="https://i.imgur.com/mPfe8eH.gif" />';
Csmileys += '    <img title="Popcorn" class="cusSmile" alt="popcorn" src="https://i.imgur.com/uDpF8Qt.gif" />';
Csmileys += '    <img title="Monkey" class="cusSmile" alt="monkey" src="https://i.imgur.com/mTHgrj6.gif" />';
Csmileys += '    <img title="Monkey2" class="cusSmile" alt="monkey2" src="https://i.imgur.com/4clqIU5.gif" />';
Csmileys += '    <img title="Member" class="cusSmile" alt="member" src="https://i.imgur.com/GLcUroL.gif" />';








////////////////// DO NOT EDIT BELOW THIS LINE EXCEPT TO REMOVE A SMILEY /////////////////
// KAT Smileys
if(KS==1){
  smileys += '    <img title="Biggrin" class="cusSmile" alt="biggrin" src="https://i.imgur.com/yrmrqBr.gif" />';
  smileys += '    <img title="Cry" class="cusSmile" alt="cry" src="https://i.imgur.com/31QyqdW.gif" />';
  smileys += '    <img title="Dizzy" class="cusSmile" alt="dizzy" src="https://i.imgur.com/Dab19mK.gif" />';
  smileys += '    <img title="Funk" class="cusSmile" alt="funk" src="https://i.imgur.com/OelvgkH.gif" />';
  smileys += '    <img title="Huffy" class="cusSmile" alt="huffy" src="https://i.imgur.com/e1xCAZp.gif" />';
  smileys += '    <img title="LOL" class="cusSmile" alt="lol" src="https://i.imgur.com/Y2IB7c1.gif" />';
  smileys += '    <img title="Lovliness" class="cusSmile" alt="lovliness" src="https://i.imgur.com/OUzdHNF.gif" />';
  smileys += '    <img title="Mad" class="cusSmile" alt="mad" src="https://i.imgur.com/zZuLIGb.gif" />';
  smileys += '    <img title="Sad" class="cusSmile" alt="sad" src="https://i.imgur.com/xarqUB1.gif" />';
  smileys += '    <img title="Shocked" class="cusSmile" alt="shocked" src="https://i.imgur.com/qi4A3nr.gif" />';
  smileys += '    <img title="Shy" class="cusSmile" alt="shy" src="https://i.imgur.com/xFFGTfU.gif" />';
  smileys += '    <img title="Sleepy" class="cusSmile" alt="sleepy" src="https://i.imgur.com/16gZbHY.gif" />';
  smileys += '    <img title="Smile" class="cusSmile" alt="smile" src="https://i.imgur.com/jDCmN5k.gif" />';
  smileys += '    <img title="Sweat" class="cusSmile" alt="sweat" src="https://i.imgur.com/gOXCcif.gif" />';
  smileys += '    <img title="Titter" class="cusSmile" alt="titter" src="https://i.imgur.com/3mUNmP8.gif" />';
  smileys += '    <img title="Tongue" class="cusSmile" alt="tongue" src="https://i.imgur.com/Au91JBC.gif" />';
  smileys += '    <img title="Pirate" class="cusSmile" alt="pirate" src="https://i.imgur.com/c0gTgBS.gif" />';
  smileys += '    <img title="Boo" class="cusSmile" alt="boo" src="https://i.imgur.com/Rl6QHXw.gif" />';
  smileys += '    <img title="Wink" class="cusSmile" alt="wink" src="https://i.imgur.com/ZoWgkuV.gif" />';
  smileys += '    <img title="Dull" class="cusSmile" alt="dull" src="https://i.imgur.com/5T7B0wl.gif" />';
  smileys += '    <img title="Chuckle" class="cusSmile" alt="chuckle" src="https://i.imgur.com/UQxpJbL.gif" />';
  smileys += '    <img title="Clap" class="cusSmile" alt="clap" src="https://i.imgur.com/vBzTQec.gif" />';
  smileys += '    <img title="Drunk" class="cusSmile" alt="drunk" src="https://i.imgur.com/6amPLB3.gif" />';
  smileys += '    <img title="Finger" class="cusSmile" alt="finger" src="https://i.imgur.com/Zcq1str.gif" />';
  smileys += '    <img title="Inlove" class="cusSmile" alt="inlove" src="https://i.imgur.com/DjKkEX7.gif" />';
  smileys += '    <img title="Nerd" class="cusSmile" alt="nerd" src="https://i.imgur.com/gu5gvMk.gif" />';
  smileys += '    <img title="No" class="cusSmile" alt="no" src="https://i.imgur.com/VKctnGI.gif" />';
  smileys += '    <img title="ROFL" class="cusSmile" alt="rofl" src="https://i.imgur.com/BRNDUiY.gif" />';
  smileys += '    <img title="Lipssealed" class="cusSmile" alt="lipssealed" src="https://i.imgur.com/S29lZ3e.gif" />';
  smileys += '    <img title="Smirk" class="cusSmile" alt="smirk" src="https://i.imgur.com/8Bzq4I8.gif" />';
  smileys += '    <img title="Think" class="cusSmile" alt="think" src="https://i.imgur.com/fLaLJRx.gif" />';
  smileys += '    <img title="Yes" class="cusSmile" alt="yes" src="https://i.imgur.com/1Mge3YI.gif" />';
  smileys += '    <img title="Wait" class="cusSmile" alt="wait" src="https://i.imgur.com/tkKjFsA.gif" />';
  smileys += '    <img title="Wave" class="cusSmile" alt="wave" src="https://i.imgur.com/vHrmADf.gif" />';
  smileys += '    <img title="Cool" class="cusSmile" alt="cool" src="https://i.imgur.com/bFSKaxa.gif" />';
  smileys += '    <img title="Evil" class="cusSmile" alt="evil" src="https://i.imgur.com/zX9yKQn.gif" />';
  smileys += '    <img title="Punch" class="cusSmile" alt="punch" src="https://i.imgur.com/jcSMOIz.gif" />';
  smileys += '    <img title="DOH!" class="cusSmile" alt="doh" src="https://i.imgur.com/LQqhK7F.gif" />';
  smileys += '    <img title="Yawn" class="cusSmile" alt="yawn" src="https://i.imgur.com/EItEozy.gif" />';
  smileys += '    <img title="TMI" class="cusSmile" alt="tmi" src="https://i.imgur.com/UHp9eQR.gif" />';
  smileys += '    <img title="Fubar" class="cusSmile" alt="fubar" src="https://i.imgur.com/2S7ahGT.gif" />';
  smileys += '    <img title="Rock" class="cusSmile" alt="rock" src="https://i.imgur.com/jNciQTr.gif" />';
  smileys += '    <img title="Bandit" class="cusSmile" alt="bandit" src="https://i.imgur.com/GS4Lctd.gif" />';
  smileys += '    <img title="Swear" class="cusSmile" alt="swear" src="https://i.imgur.com/Qef0xw8.gif" />';
  smileys += '    <img title="Facepalm" class="cusSmile" alt="facepalm" src="https://i.imgur.com/ky63riP.gif" />';
  smileys += '    <img title="Thumbup" class="cusSmile" alt="thumbup" src="https://i.imgur.com/xxtKctj.gif" />';
  smileys += '    <img title="Thumbdown" class="cusSmile" alt="thumbdown" src="https://i.imgur.com/bkv4kfO.gif" />';
  smileys += '    <img title="HeadWall" class="cusSmile" alt="headwall" src="https://i.imgur.com/QnhNsQD.gif" />';  
}
// WWT Smileys
if(WS==1){
  smileys += '    <img data-code=":brb" title="BRB" class="cusSmile" alt="brb" src="/images/smilies/brb.gif" />';
  smileys += '    <img data-code=":cwl" title="Crying While Laughing" class="cusSmile" alt=":cwl" src="/images/smilies/cwl.gif" />';
  smileys += '    <img data-code=":love" title="Heart" class="cusSmile" alt=":love" src="/images/smilies/heart.gif" />';
  smileys += '    <img data-code=":bandit" title="bandit" class="cusSmile" alt="bandit" src="/images/smilies/bandit.gif" />';
  smileys += '    <img data-code=":brokenheart" title="brokenheart" class="cusSmile" alt="brokenheart" src="/images/smilies/brokenheart.gif" />';
  smileys += '    <img data-code=":doh" title="doh" class="cusSmile" alt="doh" src="/images/smilies/doh.gif" />';
  smileys += '    <img data-code=":envy" title="envy" class="cusSmile" alt="envy" src="/images/smilies/envy.gif" />';
  smileys += '    <img data-code=":fubar" title="fubar" class="cusSmile" alt="fubar" src="/images/smilies/fubar.gif" />';
  smileys += '    <img data-code=":headbang" title="headbang" class="cusSmile" alt="headbang" src="/images/smilies/headbang.gif" />';
  smileys += '    <img data-code=":lipssealed" title="lipssealed" class="cusSmile" alt="lipssealed" src="/images/smilies/lipssealed.gif" />';
  smileys += '    <img data-code=":smile" title="smile" class="cusSmile" alt="smile" src="/images/smilies/smile.gif" />';
  smileys += '    <img data-code=":sad" title="sad" class="cusSmile" alt="sad" src="/images/smilies/sad.gif" />';
  smileys += '    <img data-code=":wink" title="wink" class="cusSmile" alt="wink" src="/images/smilies/wink.gif" />';
  smileys += '    <img data-code=":tongue" title="tongue" class="cusSmile" alt="tongue" src="/images/smilies/tongueout.gif" />';
  smileys += '    <img data-code=":laugh" title="laugh" class="cusSmile" alt="laugh" src="/images/smilies/laugh.gif" />';
  smileys += '    <img data-code=":dull" title="dull" class="cusSmile" alt="dull" src="/images/smilies/dull.gif" />';
  smileys += '    <img data-code=":surprised" title="surprised" class="cusSmile" alt="surprised" src="/images/smilies/surprised.gif" />';
  smileys += '    <img data-code=":confused" title="confused" class="cusSmile" alt="confused" src="/images/smilies/confused.gif" />';
  smileys += '    <img data-code=":nerd" title="nerd" class="cusSmile" alt="nerd" src="/images/smilies/nerdy.gif" />';
  smileys += '    <img data-code=":smirk" title="smirk" class="cusSmile" alt="smirk" src="/images/smilies/smirk.gif" />';
  smileys += '    <img data-code=":cool" title="cool" class="cusSmile" alt="cool" src="/images/smilies/cool.gif" />';
  smileys += '    <img data-code=":facepalm" title="facepalm" class="cusSmile" alt="facepalm" src="/images/smilies/facepalm.gif" />';
  smileys += '    <img data-code=":cry" title="cry" class="cusSmile" alt="cry" src="/images/smilies/cry.gif" />';
  smileys += '    <img data-code=":kiss" title="kiss" class="cusSmile" alt="kiss" src="/images/smilies/kiss.gif" />';
  smileys += '    <img data-code=":finger" title="finger" class="cusSmile" alt="finger" src="/images/smilies/finger.gif" />';
  smileys += '    <img data-code=":evil" title="evil" class="cusSmile" alt="evil" src="/images/smilies/evil.gif" />';
  smileys += '    <img data-code=":angry" title="angry" class="cusSmile" alt="angry" src="/images/smilies/angry.gif" />';
  smileys += '    <img data-code=":inlove" title="inlove" class="cusSmile" alt="inlove" src="/images/smilies/inlove.gif" />';
  smileys += '    <img data-code=":blush" title="blush" class="cusSmile" alt="blush" src="/images/smilies/blush.gif" />';
  smileys += '    <img data-code=":clap" title="clap" class="cusSmile" alt="clap" src="/images/smilies/clap.gif" />';
  smileys += '    <img data-code=":think" title="think" class="cusSmile" alt="think" src="/images/smilies/think.gif" />';
  smileys += '    <img data-code=":yes" title="yes" class="cusSmile" alt="yes" src="/images/smilies/yes.gif" />';
  smileys += '    <img data-code=":no" title="no" class="cusSmile" alt="no" src="/images/smilies/no.gif" />';
  smileys += '    <img data-code=":hi" title="hi" class="cusSmile" alt="hi" src="/images/smilies/hi.gif" />';
  smileys += '    <img data-code=":drunk" title="drunk" class="cusSmile" alt="drunk" src="/images/smilies/drunk.gif" />';
  smileys += '    <img data-code=":giggle" title="giggle" class="cusSmile" alt="giggle" src="/images/smilies/giggle.gif" />';
  smileys += '    <img data-code=":punch" title="punch" class="cusSmile" alt="punch" src="/images/smilies/punch.gif" />';
  smileys += '    <img data-code=":wait" title="wait" class="cusSmile" alt="wait" src="/images/smilies/wait.gif" />';
  smileys += '    <img data-code=":swear" title="swear" class="cusSmile" alt="swear" src="/images/smilies/swear.gif" />';
  smileys += '    <img data-code=":sweat" title="sweat" class="cusSmile" alt="sweat" src="/images/smilies/sweat.gif" />';
  smileys += '    <img data-code=":tmi" title="tmi" class="cusSmile" alt="tmi" src="/images/smilies/tmi.gif" />';
}
// Extra Smileys
if(ES==1){
  smileys += '    <img title="Darky" class="cusSmile" alt="darky" src="https://i.imgur.com/NMq4OZg.gif" />';
  smileys += '    <img title="Eyebrows" class="cusSmile" alt="eyebrows" src="https://i.imgur.com/6lhvOK9.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="Poop" class="cusSmile" alt="poop" src="https://i.imgur.com/az3Ks2S.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){
// Halloween
  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" />';
// Christmas
  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" />';
  smileys += '    <img title="Gift" class="cusSmile" alt="gift" src="https://i.imgur.com/UBmdZqa.gif" />';
// other
  smileys += '    <img title="Clover" class="cusSmile" alt="clover" src="https://i.imgur.com/RwEcrA0.gif" />';
}
////////////////// DO NOT EDIT BELOW THIS LINE FOR ANY REASON /////////////////
////////////////// IF YOU BREAK THE SCRIPT, IT SUCKS TO BE YOU /////////////////
$(window).load(function(){
// Main Element classes
  var WWTBanner = $('div.myFrame:nth-child(2) > div:nth-child(2) > div:nth-child(1) > center:nth-child(1) > img:nth-child(1)');
  var userID = $('div.fltRight:nth-child(2) > a:nth-child(1)');
  var shoutHeader = $('div.myFrame:nth-child(6) > div:nth-child(1)');
  var shoutInput = $('.shoutbox_messageboxback');
  var shoutMsg = $('.shoutbox_msgbox');
  var shoutSubmit = $('#submit_shout');
////////////////////////
// to hide WWT banner
////////////////////////
  if(showBanner === 'no'){WWTBanner.remove();}
////////////////////////
// Shout Toolbar
////////////////////////
// Adding Account infos
  if(accInfo === 'yes'){
    var uid = userID.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 msgCount = gmc();
// Defining Buttons
    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="torrents" href="/account.php?action=mytorrents"><span style="color:'+icoColor+';" title="Your Torrents" class="glyphicon glyphicon-download-alt"></span></a>';
    buttons += '<a class="mail" href="/mailbox.php'+((msgCount != 0) ? '?inbox' : '')+'"><span style="color:'+icoColor+';" title="Your Messages" class="glyphicon glyphicon-envelope"></span><sup id="lCount" style="font-weight:bold;color:'+msgColor+';margin-left:5px;">('+msgCount+')</sup></a>';
// Adding the buttons
    shoutHeader.append(buttons);
// this will keep the count updated (big shoutout to PX for help here)
    function liveCount(){
      var newMsgCount = gmc();
      $('#lCount').text('('+newMsgCount+')');
      $('a.mail').prop('href','/mailbox.php'+((newMsgCount != 0) ? '?inbox' : '')+'');
    }
    setInterval(liveCount, 90000); // 90 seconds
  }
////////////////////////
// Add Smileys + Buttons
////////////////////////
// Adding smiley sets
  shoutInput.after('<tr><td id="cusSmileBox">'+smileys+'</td></tr>');
// Adding custom smileys
  $('#cusSmileBox').append(Csmileys);
// CSS for smileys
  $('.cusSmile').css({'cursor': 'pointer', 'max-height': '25px'});
// colorize button
  shoutSubmit.after('&nbsp;<input id="color_shout" value="AutoColorize" type="button" title="Wraps entire post in predefined color and submits">');
////////////////////////
// BBCode Box
////////////////////////
// Defining Buttons
  var bbButtons='<span style="line-height: 22px;height:25px;" class="myF-caption">BBCode Functions</span><br />';
  bbButtons += '<input class="bbImg" type="submit" value="IMG" title="Add an image" />&nbsp;';
  bbButtons += '<input class="bbUrl" type="submit" value="URL" title="Add a link" />&nbsp;';
  bbButtons += '<input class="bbCol" type="submit" value="Colorize" title="Wraps selected text in predefined color" />&nbsp;';
  bbButtons += '<input class="bbBold" type="submit" value="Bold" title="Wraps selected text in bold" />&nbsp;';
  bbButtons += '<input class="bbItal" type="submit" value="Italic" title="Wraps selected text in italics" />';
// Adding Buttons
  $('#cusSmileBox').after('<td colspan="2" style="vertical-align:top;text-align:center;border:1px solid #000;">'+bbButtons+'</td>');
////////////////////////
// Click Events
////////////////////////
// Click for smiley
  $('.cusSmile').click(function(){
    var code = $(this).data('code');
    if(code){code = code;}
    else{code = '[img]'+ $(this).attr('src') +'[/img]';}
    shoutMsg.insertAtCaret(' '+code+'');
  });
// Click for AutoColorize
  $('#color_shout').click(function(){
    var text = shoutMsg.val();
    if(text !== ''){
      if(isBold === 'yes'){text = '[b]'+text+'[/b]';}
      shoutMsg.val('[color='+bbColor+']'+text+'[/color]');
      submit_shout();
    }
  });
////////////////////////
// fix for ff submits
////////////////////////
  if (navigator.userAgent.search("Firefox") >= 0) {
    shoutInput.keydown(function(e) {
      if(e.keyCode === 13 && !e.shiftKey) { // enter not shift+enter
        e.preventDefault();
        submit_shout();
      }
    });
// Shift+Enter submit
    shoutInput.keydown(function(e) {
      if(e.keyCode === 13 && e.shiftKey) {
        e.preventDefault();
        $('#color_shout').click();
      }
    });
  }
////////////////////////
// BBCode clicks
////////////////////////
// Click for IMG
  $('.bbImg').click(function(){
    r=prompt('PLEASE_ENTER_THE_FULL_URL_FOR_YOUR_IMAGE\n\rONLY .png, .jpg, .gif images');
    if(r !== null && r !== ''){shoutMsg.insertAtCaret('[img]'+r+'[/img]');}
  });
// Click for URL
  $('.bbUrl').click(function(){
    l=prompt('PLEASE_ENTER_THE_FULL_URL');
    if(l !== null && l !== ''){
      t=prompt('PLEASE_ENTER_THE_TITLE');
      if(t === null || t === ''){shoutMsg.insertAtCaret('[url]'+l+'[/url]');}
      else{shoutMsg.insertAtCaret('[url='+l+']'+t+'[/url]');}
    }
  });
// Click for Color
  $('.bbCol').click(function(){
    var text = getSelectedText();
    if(text != ''){shoutMsg.insertAtCaret('[color='+bbColor+']'+text+'[/color]');}
  });
// Click for Bold
  $('.bbBold').click(function(){
    var text = getSelectedText();
    if(text != ''){shoutMsg.insertAtCaret('[b]'+text+'[/b]');}
  });
// Click for Italics
  $('.bbItal').click(function(){
    var text = getSelectedText();
    if(text != ''){shoutMsg.insertAtCaret('[i]'+text+'[/i]');}
  });
////////////////////////
// Insert Function
////////////////////////
  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;
        }
        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();
        }
      });
    }
  });
}); // all done

// needed for getting selected text
function getSelectedText(){
  var textComponent = document.getElementById("shout_message");
  var startPos = textComponent.selectionStart;
  var endPos = textComponent.selectionEnd;
  return textComponent.value.substring(startPos, endPos);
}