Neoboard Quick User Links

Adds some icons on message form that make it easier to get your links

  1. // ==UserScript==
  2. // @name Neoboard Quick User Links
  3. // @version 2.0.1
  4. // @description Adds some icons on message form that make it easier to get your links
  5. // @author Nyu (clraik)
  6. // @match *://*.neopets.com/neoboards/*
  7. // @require https://code.jquery.com/jquery-3.5.1.min.js
  8. // @grant GM_setValue
  9. // @grant GM_getValue
  10. // @grant GM_addStyle
  11. // @namespace https://greasyfork.org/users/98713
  12. // ==/UserScript==
  13.  
  14.  
  15.  
  16.  
  17.  
  18. var user = $('[class="nav-profile-dropdown-text"]>a')[0] ? $('[class="nav-profile-dropdown-text"]>a')[0].innerText : $('[class="user medText"]>a')[0].innerText;
  19. var savedUser=GM_getValue("savedUser", user);
  20. //username will be added to neomail, trading post, auctions and gallery links.
  21. var savedNC=GM_getValue("savedNC", "");//"";
  22. // http://impress.openneo.net/user/EXAMPLE_USER/closet
  23. // or http://items.jellyneo.net/mywishes/EXAMPLE_USER/
  24. var savedPP=GM_getValue("savedPP", "http://www.neopets.com/~") || "http://www.neopets.com/~";
  25.  
  26.  
  27. var z=0;
  28. var neomailLink="http://www.neopets.com/neomessages.phtml?type=send&recipient="+savedUser;
  29. var tpLink="http://www.neopets.com/island/tradingpost.phtml?type=browse&criteria=owner&search_string="+savedUser;
  30. var aucLink="http://www.neopets.com/genie.phtml?type=find_user&auction_username="+savedUser;
  31. var galleryLink="http://www.neopets.com/gallery/index.phtml?gu="+savedUser;
  32. //if(document.URL.indexOf("http://www.neopets.com/neoboards/create_topic.phtml?") != -1) {
  33. var htex = $('[class="replySmilies-neoboards"]')[0] || $('[class="topicCreateSmilies-neoboards"]')[0];
  34. //var htex=document.getElementsByTagName("form")[1].getElementsByTagName("table")[1].getElementsByTagName("tbody")[0].getElementsByTagName("tr")[0].getElementsByTagName("td")[0].getElementsByTagName("table")[0].getElementsByTagName("tbody")[0].getElementsByTagName("tr")[0].getElementsByTagName("td")[1].getElementsByTagName("td")[0];
  35.  
  36. var a = document.createElement ('a');
  37. var b = document.createElement('a');
  38. var c = document.createElement('a');
  39. var d = document.createElement ('a');
  40. var e = document.createElement ('a');
  41. var f = document.createElement ('a');
  42. var au = document.createElement ('a');
  43. var settings = document.createElement ('a');
  44.  
  45. a.setAttribute('href', 'javascript:;');
  46. a.setAttribute('onclick', 'insertSmiley("'+neomailLink+'")');
  47. a.setAttribute('return', 'false:;');
  48. a.innerHTML = '<img src="http://images.neopets.com/neocircles/envelope.gif" width="21" height="21" alt="Paragraph" border="0" title="Add neomail link"></a>';
  49. htex.appendChild(a);
  50. z++;
  51. if (savedNC!==""){
  52. b.setAttribute('href', 'javascript:;');
  53. b.setAttribute('onclick', 'insertSmiley("'+savedNC+'")');
  54. b.setAttribute('return', 'false:;');
  55. b.innerHTML='<img src="http://images.neopets.com/games/arcade/nav_buttons/posting.png" width="21" height="21" alt="Paragraph" border="0" title="Add NC TL link"></a>';
  56. htex.appendChild(b);
  57. z++;
  58. }
  59.  
  60.  
  61. if (savedPP!==""&&savedPP!=="http://www.neopets.com/~"){
  62. c.setAttribute('href', 'javascript:;');
  63. c.setAttribute('onclick', 'insertSmiley("'+savedPP+'")');
  64. c.setAttribute('return', 'false:;');
  65.  
  66.  
  67. c.innerHTML='<img src="http://images.neopets.com/games/arcade/nav_buttons/star.png" width="21" height="21" alt="Paragraph" border="0" title="Add petpage link"></a>';
  68. if (z!==2){
  69. htex.appendChild(c);
  70. z++;
  71. }
  72. else{
  73. c.innerHTML="<br>"+c.innerHTML;
  74. htex.appendChild(c);
  75. z++;
  76. }
  77. }
  78. d.setAttribute('href', 'javascript:;');
  79. d.setAttribute('onclick', 'insertSmiley("'+tpLink+'")');
  80. d.setAttribute('return', 'false:;');
  81. d.innerHTML = '<img src="http://images.neopets.com/games/arcade/nav_buttons/background.png" width="21" height="21" alt="Paragraph" border="0" title="Add trading post link"></a>';
  82.  
  83.  
  84. if(z!==2){
  85. htex.appendChild(d);
  86. z++;
  87. }else{
  88. d.innerHTML="<br>"+d.innerHTML;
  89. htex.appendChild(d);
  90. z++;
  91. }
  92. e.setAttribute('href', 'javascript:;');
  93. e.setAttribute('onclick', 'insertSmiley("'+aucLink+'")');
  94. e.setAttribute('return', 'false:;');
  95.  
  96.  
  97. e.innerHTML = '<img src="http://images.neopets.com/games/arcade/cat/world_brv.png" width="21" height="21" alt="Paragraph" border="0" title="Add auction link"></a>';
  98.  
  99.  
  100. if(z!==2){
  101. htex.appendChild(e);
  102. z++;
  103. }else{
  104. e.innerHTML="<br>"+e.innerHTML;
  105. htex.appendChild(e);
  106. z++;
  107. }
  108. f.setAttribute('href', 'javascript:;');
  109. f.setAttribute('onclick', 'insertSmiley("'+galleryLink+'")');
  110. f.setAttribute('return', 'false:;');
  111.  
  112.  
  113. f.innerHTML = '<img src="http://images.neopets.com/games/arcade/nav_buttons/site_item.png" width="21" height="21" alt="Paragraph" border="0" title="Add gallery link"></a>';
  114.  
  115.  
  116. if(z!==2){
  117. htex.appendChild(f);
  118. z++;
  119. }else{
  120. f.innerHTML="<br>"+f.innerHTML;
  121. htex.appendChild(f);
  122. z++;
  123. }
  124.  
  125. au.setAttribute('href', 'javascript:;');
  126. au.setAttribute('onclick', 'insertSmiley("Bidding on:\\n\\n\\nOffering:\\n\\n\\n@'+savedUser+'")');
  127. au.setAttribute('return', 'false:;');
  128. au.innerHTML = '<img src="http://images.neopets.com/games/arcade/nav_buttons/dictionary.png" width="21" height="21" alt="Paragraph" border="0" title="Bidding template"></a>';
  129. if(z!==2){
  130. htex.appendChild(au);
  131. z++;
  132. }else{
  133. au.innerHTML="<br>"+au.innerHTML;
  134. htex.appendChild(au);
  135. z++;
  136. }
  137.  
  138. settings.setAttribute('href', 'javascript:;');
  139. settings.setAttribute('id', 'NBsettings');
  140. settings.setAttribute('return', 'false:;');
  141. settings.innerHTML = '<br><div id="imgSetCont"><img src="http://images.neopets.com/games/pages/buttons/settings.png" id="imgSettings"alt="Paragraph" border="0" title="Change links"></div></a>';
  142. htex.appendChild(settings);
  143. // height= "42" width="21"
  144. $('[id="NBsettings"]').on('click', function() {
  145. popSettings();
  146. });
  147.  
  148. GM_addStyle ( ""+
  149. "#imgSetCont {"+
  150. "width: 21px;"+
  151. "height: 21px;"+
  152. "overflow: hidden;"+
  153. " }"+
  154. "#imgSettings:hover{"+
  155. "margin-top: -21px;"+
  156. "}"+
  157. "#imgSetCont img {"+
  158. "width: 21px;"+
  159. "height: 42px;"+
  160. "} .maxH{height:100%;}"
  161. );
  162.  
  163. var popSettings = function(){
  164. //alert('ajajjaja'),
  165.  
  166. savedUser=GM_getValue("savedUser", savedUser);
  167. savedNC=GM_getValue("savedNC", "");
  168. savedPP=GM_getValue("savedPP", "http://www.neopets.com/~");
  169.  
  170. var popupHTML = '<div id="neoboardPopup" class="nav-text__2020 nav-top__2020 maxH">'+
  171. '<button id="closeNeoboardConf" type="button"style="height:29px; width:29px; background: none; position: fixed; margin-top: -26px; margin-left: 160px; ">'+
  172. '<img src="http://images.neopets.com/games/aaa/dailydare/2010/popup/buttons/close-x_ov.png" style="margin-top:-100px;margin-left:-20px;"></button>'+
  173. '<form style="text-align:left;">'+
  174. '<table><tr><td>'+
  175. '<h3>Username:</h3></td><td><input type="text" id="f_user" value="' + savedUser + '" ></td></tr><tr><td>'+
  176. '<h3>NC Tradelist:</h3></td><td><input type="text" id="f_nc" value="' + savedNC + '" ></td></tr><tr><td>'+
  177. '<h3>Petpage:</h3></td><td><input type="text" id="f_pp" value="' + savedPP + '" ></td>'+
  178. '</tr><table>'+
  179. '<br><br><button id="saveNeoboardConf" type="button"style="height:29px; width:163px; background: url(http://images.neopets.com/trousers/play/prank_but.png)">'+
  180. '<img src="https://secure.nc.neopets.com/np/images/label/btn-save.png" style="margin-top:-10px;" height="43px" width="151px"></button>'+
  181. '</form></div>';
  182. $("body").append (popupHTML);
  183.  
  184. $("#saveNeoboardConf").click ( function () {
  185. var u = f_user.value;
  186. var n = f_nc.value;
  187. var p = f_pp.value;
  188.  
  189. GM_setValue("savedUser",u);
  190. GM_setValue("savedNC",n);
  191. GM_setValue("savedPP",p);
  192. $('[id="neoboardPopup"]').empty().remove();
  193. document.location.reload();
  194. } );
  195.  
  196. $("#closeNeoboardConf").click ( function () {
  197. $('[id="neoboardPopup"]').empty().remove();
  198. } );
  199.  
  200.  
  201.  
  202. GM_addStyle ( ""+
  203. "#neoboardPopup {"+
  204. "position: fixed;"+
  205. "height: 350px;"+
  206. "top: 30%;"+
  207. "left: 25%;"+
  208. "padding: 10px;"+
  209. "border: 5px outset;"+
  210. "border-radius: 10px;"+
  211. "z-index: 100;"+
  212. "}"+
  213. "#neoboardPopup button{"+
  214. "cursor: pointer;"+
  215. "margin: 10px 10px 0;"+
  216. "border: none;"+
  217. " }"+
  218. "#saveNeoboardConf:hover{"+
  219. "cursor: pointer;"+
  220. "}" );
  221.  
  222. }
  223.