Direct Image Link Multi

Переработка переработки переработки Zendillo's Gelbooru Thumb to Image script. Показывает прямые ссылки под эскизами

  1. // ==UserScript==
  2. // @name Direct Image Link Multi
  3. // @description Переработка переработки переработки Zendillo's Gelbooru Thumb to Image script. Показывает прямые ссылки под эскизами
  4. // @icon http://www.faunaurbana.com.br/wp-content/uploads/2010/09/20100531083526E621Logo.png
  5. // @include https://e621.net/*
  6. // @include http://*gelbooru.com*
  7. // @include http://*gocomics.com*
  8. // @include http://*rule34.xxx*
  9. // @include http://*tapastic.com*
  10. // @include http*://twitter.com*
  11. // @grant none
  12. // @version 0.0.1.20150201183309
  13. // @namespace https://greasyfork.org/users/7568
  14. // ==/UserScript==
  15.  
  16. // переключатели
  17. var s_e621 = 1,
  18. s_gelb = 1,
  19. s_goco = 1,
  20. s_rule = 1,
  21. s_tapa = 1,
  22. s_twit = 1;
  23.  
  24. if ((s_e621)&&(window.location.href.indexOf('e621') !== -1)) {
  25. var spans = document.getElementsByTagName("span");
  26. for (x in spans) {
  27. if (spans[x].className=="thumb") {
  28. var dir = [];
  29. dir[0] = spans[x].getElementsByTagName("img")[0].getAttribute('src').replace("preview/","");
  30. if ((dir[0].indexOf("/download-preview.png") < 0)&&(dir[0].indexOf("/webm-preview.png") < 0)) {
  31. dir[1] = dir[0].replace(".jpg",".gif");
  32. dir[2] = dir[0].replace(".jpg",".png");
  33. var dlink = [], text = ["jpg ", "gif ", "png"];
  34. for (i=0; i<= 2; i++) {
  35. dlink[i] = document.createElement('a');
  36. dlink[i].setAttribute('href', dir[i]);
  37. dlink[i].innerHTML = text[i];
  38. spans[x].appendChild(dlink[i]);
  39. }
  40. }
  41. }
  42. }
  43. }
  44.  
  45. if ((s_gelb)&&(window.location.href.indexOf('gelbooru') !== -1)) {
  46. var spans = document.getElementsByTagName("span");
  47. for (x in spans) {
  48. if (spans[x].className=="thumb") {
  49. var dir = [], dlink = [], text = ["jpg ", "jpeg ", "gif ", "png"];
  50. dir[0] = spans[x].getElementsByTagName("img")[0].getAttribute('src').split('?')[0].replace("\/\/gel","//simg3.gel").replace("thumbnails","images").replace("thumbnail_","");
  51. dir[1] = dir[0].replace(".jpg",".jpeg");
  52. dir[2] = dir[0].replace(".jpg",".gif");
  53. dir[3] = dir[0].replace(".jpg",".png");
  54. spans[x].appendChild(document.createElement('br'));
  55. for (i=0; i<= 3; i++) {
  56. dlink[i] = document.createElement('a');
  57. dlink[i].setAttribute('href', dir[i]);
  58. dlink[i].innerHTML = text[i];
  59. spans[x].appendChild(dlink[i]);
  60. }
  61. }
  62. }
  63. }
  64.  
  65. if ((s_goco)&&(window.location.href.indexOf('gocomics') !== -1)) {
  66. var strip = document.getElementsByClassName('strip'), img = strip[1].getAttribute('src'), dlink = document.createElement('a');
  67. dlink.setAttribute('href', img+'.gif');
  68. dlink.setAttribute('style', 'font-size: 20px');
  69. dlink.innerHTML = "Прямая cсылка";
  70. strip[0].parentNode.appendChild(dlink);
  71. }
  72.  
  73. if ((s_rule)&&(window.location.href.indexOf('rule34') !== -1)) {
  74. var spans = document.getElementsByClassName("preview");
  75. for (x in spans) {
  76. var dir = [], dlink = [], text = ["jpg ", "jpeg ", "gif ", "png"];
  77. dir[0] = spans[x].getAttribute('src').split('?')[0].replace("thumbnails","images").replace("thumbnail_","");
  78. dir[1] = dir[0].replace(".jpg",".jpeg");
  79. dir[2] = dir[0].replace(".jpg",".gif");
  80. dir[3] = dir[0].replace(".jpg",".png");
  81. spans[x].parentNode.appendChild(document.createElement('br'));
  82. for (i=0; i<= 3; i++) {
  83. dlink[i] = document.createElement('a');
  84. dlink[i].setAttribute('href', dir[i]);
  85. dlink[i].innerHTML = text[i];
  86. spans[x].parentNode.appendChild(dlink[i]);
  87. }
  88. }
  89. }
  90.  
  91. if ((s_tapa)&&(window.location.href.indexOf('tapastic') !== -1)) {
  92. var strip = document.getElementsByClassName('art-image'), img = strip[0].getAttribute('src'), dlink = document.createElement('a');
  93. dlink.setAttribute('href', img);
  94. dlink.setAttribute('style', 'font-size: 20px');
  95. dlink.innerHTML = "Прямая ссылка";
  96. strip[0].parentNode.appendChild(dlink);
  97. }
  98.  
  99. if ((s_twit)&&(window.location.href.indexOf('twitter') !== -1)) {
  100. var parentdiv = document.getElementsByClassName("TwitterPhoto-container"); //найти все места картинок
  101. for (x in parentdiv) {
  102. var image = parentdiv[x].getElementsByClassName("TwitterPhoto-mediaSource"); //найти картинку
  103. var source = image[0].getAttribute('src').split(':l')[0]; //найти и подрезать её путь
  104. var dlink = document.createElement('a'); //смастерить ссылку
  105. dlink.setAttribute('href', source); //вставить путь
  106. dlink.setAttribute('target', '_blank'); //и чтоб в другом окне открывалась
  107. dlink.innerHTML = "Прямая ссылка"; //обозвать
  108. parentdiv[x].appendChild(dlink); //и присобачить
  109. }
  110. }