hwm_clickable_links

Кликабельные ссылки на форуме и в личной информации персонажей

目前为 2015-03-10 提交的版本。查看 最新版本

  1. // ==UserScript==
  2. // @name hwm_clickable_links
  3. // @namespace Demin
  4. // @description Кликабельные ссылки на форуме и в личной информации персонажей
  5. // @homepage https://greasyfork.org/users/1602-demin
  6. // @icon http://i.imgur.com/LZJFLgt.png
  7. // @version 1.1
  8. // @encoding utf-8
  9. // @include http://*heroeswm.ru/pl_info.php*
  10. // @include http://178.248.235.15/pl_info.php*
  11. // @include http://*lordswm.com/pl_info.php*
  12. // @include http://*heroeswm.ru/forum_messages.php*
  13. // @include http://178.248.235.15/forum_messages.php*
  14. // @include http://*lordswm.com/forum_messages.php*
  15. // ==/UserScript==
  16.  
  17. (function() {
  18.  
  19. var version = '1.1';
  20.  
  21. var url_cur = location.href;
  22.  
  23. pl_info();
  24. forum();
  25.  
  26. function pl_info() {
  27. if (url_cur.indexOf("pl_info.php") == -1) {return;}
  28. var td_arr = document.getElementsByTagName('td');
  29. td_arr[td_arr.length - 2].innerHTML = replaceAll(td_arr[td_arr.length - 2].innerHTML.split('<br>'));
  30. }
  31.  
  32. function forum() {
  33. if (url_cur.indexOf("forum_messages.php") == -1) {return;}
  34. var td_arr = document.getElementsByTagName('td');
  35. for (var i = 0; i < td_arr.length; i++) {
  36. var td = td_arr[i];
  37. var attr = td.getAttribute('style');
  38. if (attr == "color: #000000; padding: 5px; font-size: 13px;") {
  39. td_arr[i].innerHTML = replaceAll(td_arr[i].innerHTML.split('<br>'));
  40. }
  41. }
  42. }
  43.  
  44. function replaceAll(lines) {
  45. for (var i = 0; i < lines.length; i++) {
  46. var words = lines[i].split(' ');
  47. for (var j = 0; j < words.length; j++) {
  48. words[j] = replace(words[j]);
  49. }
  50. lines[i] = words.join(' ');
  51. }
  52. return lines.join('<br>');
  53. }
  54.  
  55. function replace(a) {
  56. var b = (a.indexOf("color=") == 0);
  57. var i = a.indexOf("http://");
  58. if (i > 1 && !b) {return a;}
  59. if (i != -1) {
  60. return a.substring(0, i) + "<a href=\"" + a.substring(i) + "\">" + a.substring(i) + "</a>";
  61. }
  62. i = a.indexOf("https://");
  63. if (i > 1) {return a;}
  64. if (i != -1 && !b) {
  65. return a.substring(0, i) + "<a href=\"" + a.substring(i) + "\">" + a.substring(i) + "</a>";
  66. }
  67. i = a.indexOf("ftp://");
  68. if (i > 1) {return a;}
  69. if (i != -1 && !b) {
  70. return a.substring(0, i) + "<a href=\"" + a.substring(i) + "\">" + a.substring(i) + "</a>";
  71. }
  72. return a;
  73. }
  74.  
  75. })();