Adds "Copy Magnet URL" button next to magnet links and trims extra info from magnet links
// ==UserScript==// @name Copy Magnet URL// @name:uk Copy Magnet URL// @version 2.0// @description Adds "Copy Magnet URL" button next to magnet links and trims extra info from magnet links// @description:ru Добавляет кнопку «Копировать магнитный URL» рядом с магнитными ссылками и удаляет дополнительную информацию из магнитных ссылок.// @description:uk Додає кнопку «Копіювати URL-адресу магніту» поруч із магнітними посиланнями та обрізає додаткову інформацію з магнітних посилань// @author Sitego// @match *://rutor.info/*// @match *://nnmclub.to/*// @match *://rutracker.org/*// @match *://kinozal.tv/*// @icon https://ide.onl/img/script/magnet48.png// @homepageURL https://ide.onl/// @supportURL https://ide.onl/contact.html// @namespace https://greasyfork.org/users/1221433// @grant GM_setClipboard// @license MIT// @require https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.min.js// ==/UserScript==(function () {'use strict';function copyToClipboard(text) {const input = document.createElement('textarea');input.innerHTML = text;document.body.appendChild(input);input.select();document.execCommand('copy');document.body.removeChild(input);}function showTooltip(element, message) {var tooltip = $('<div class="tooltip"></div>').text(message).css({'position': 'absolute','background-color': '#108A34','color': '#fff','padding': '5px 10px','border-radius': '5px','top': element.offset().top - 30,'left': element.offset().left,'z-index': 1000,'white-space': 'nowrap'}).appendTo('body');setTimeout(function () {tooltip.remove();}, 1500);}function addCopyMagnetButton(link) {var magnetLink = link.split('&')[0];var copyButton = $('<button>Копировать Magnet</button>').css({'background-color': '#ff0000','color': '#ffffff','font-weight': 'bold','margin-bottom': '7px','border': 'none','padding': '5px 10px','margin-left': '10px','cursor': 'pointer','border-radius': '5px',}).click(function () {$(this).css({'background-color': '#cc0000',});copyToClipboard(magnetLink);showTooltip($(this), 'Скопировано!');setTimeout(function () {copyButton.css({'background-color': '#ff0000',});}, 200);});if (window.location.hostname === 'kinozal.tv') {$('#containerdata').append(copyButton);} else {$(this).after(copyButton);}}if (window.location.hostname === 'kinozal.tv') {$(document).on('click', 'a[onclick^="get_torm"]', function () {setTimeout(function () {var hashText = $('li:contains("Инфо хеш:")').text().replace('Инфо хеш:', '').trim();var magnetLink = 'magnet:?xt=urn:btih:' + hashText;addCopyMagnetButton(magnetLink);}, 1000);});} else {$('a[href^="magnet:"]').each(function () {addCopyMagnetButton.call(this, $(this).attr('href'));});}})();