Copy content of a PasteBin snippet with a single click
Versión del día
// ==UserScript==
// @name CopyPasteBin
// @namespace https://github.com/KeyWeeUsr/Userscripts
// @version 0.2
// @description Copy content of a PasteBin snippet with a single click
// @author Peter Badida
// @copyright 2017+, Peter Badida
// @license GNU GPLv3
// @homepage https://github.com/KeyWeeUsr/Userscripts/tree/master/CopyPasteBin
// @supportURL https://github.com/KeyWeeUsr/Userscripts/issues
// @icon https://pastebin.com/favicon.ico
// @include *pastebin.com*
// @contributionURL https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=ACVM74AYCXVWQ
// ==/UserScript==
/* jshint -W097 */
'use strict';
(function () {
function selectText(element) {
var range;
// select raw textarea contents
if (document.body.createTextRange) {
range = document.body.createTextRange();
range.moveToElementText(element);
range.select();
} else if (window.getSelection) {
var selection = window.getSelection();
range = document.createRange();
range.selectNode(element);
selection.removeAllRanges();
selection.addRange(range);
}
// copy to clipboard
document.execCommand('copy');
}
function addButton() {
var codeContainer = document.getElementById(
"code_buttons"
).children[0];
// create COPY button on mouse enter
var codeButton = document.createElement("a");
codeButton.setAttribute("id", "cpb_button");
codeButton.setAttribute("class", "buttonsm");
codeButton.innerHTML = "copy";
codeButton.style = "cursor: pointer; display: inline;" +
"font-style: italic;";
// insert COPY button in front of the right side buttons
codeContainer.insertBefore(codeButton, codeContainer.children[0]);
codeButton.addEventListener("click", function () {
selectText(document.getElementById("paste_code"))
});
}
function appendMe() {
var codeContainer = document.getElementById(
"code_buttons"
).children[0];
// create AV
var av = document.createElement("a");
av.setAttribute(
"href",
"https://github.com/KeyWeeUsr/Userscripts"
);
av.setAttribute("id", "kwu_av");
av.style = "display: inline;";
// create AV image
var avImg = document.createElement("img");
avImg.setAttribute(
"src",
"https://github.com/identicons/KeyWeeUsr.png"
);
avImg.style = "width: 20px; vertical-align: middle;" +
"margin: 0px 0px 0px 8px; opacity: 0.3";
avImg.addEventListener("mouseover", function() {
avImg.style.opacity = "1";
});
avImg.addEventListener("mouseout", function() {
avImg.style.opacity = "0.3";
});
av.appendChild(avImg);
codeContainer.insertBefore(av, codeContainer.children[0]);
}
// run
if (!document.getElementById('kwu_av')){
appendMe();
}
addButton();
})();