// ==UserScript== // @name cutt.ly URL shorten button // @name:zh-TW cutt.ly 縮短網址按鈕 // @name:zh-CN cutt.ly 缩短网址按钮 // @description set a URL-shorten button at the bottom left corner. It will create a new window for the shortened URL of cutt.ly // @description:zh-TW 在頁面左下角設置一個縮短網址的按鈕,這會開個新視窗來檢視 cutt.ly 的縮址結果 // @description:zh-CN 在页面左下角设置一个缩短网址的按钮,这会开个新视窗来查看 cutt.ly 的缩址结果 // @namespace https://greasyfork.org/zh-TW/users/393133-evan-tseng // @version 0.12 // @author Evan Tseng // @run-at document-end // @include *://* // @exclude http://cutt.ly/* // @exclude https://cutt.ly/* // @grant none // @downloadURL none // ==/UserScript== (async function() { 'use strict'; const addCuttButton = function(){ if(document.body) { const newWindow = window.open, CuttURL = 'https://cutt.ly/?shortenit=' + encodeURIComponent(location.href); let strWindowFeatures = 'width=500,height=874,menubar=no,toolbar=no,location=no,status=no', shortenWrap = null, shortenButton = null, cssStyle = document.createElement('style'), css = `.__shorten_wrap__ {position: fixed; bottom:25mm; left:-24pt; z-index:2147483647} .__shorten_url__ {font: 400 11pt sans-serif; color:#334; text-shadow:1px -1px #fff; background:linear-gradient(3deg, rgba(170,170,175,.85) 0, rgba(210,210,215,.8) 50%, rgba(170,170,175,.85) 100%); padding: 3pt 6pt 6pt; margin:0; line-height:1.1; border:1px solid rgba(0,0,0,.4); border-radius:5pt; cursor:pointer; transform:rotate(90deg); transition:.15s} .__shorten_url__:hover {background:linear-gradient(5deg, rgba(190,190,190,.95) 0, rgba(230,230,230,.95) 50%, rgba(190,190,190,.95) 100%); box-shadow:1px 0 2mm rgba(0,0,0,.5)} .__shorten_url__:active {color:#cdf; text-shadow:-1px 1px #000; background:rgba(125,125,133,.8); border-color:rgba(255,255,255,.6); box-shadow:inset 1px 0 4px rgba(0,0,0,.7); transition:0s}}`; if(cssStyle.styleSheet) cssStyle.styleSheet.cssText = css; else cssStyle.appendChild(document.createTextNode(css)); document.querySelector('head').appendChild(cssStyle); shortenWrap = document.createElement('div'); shortenWrap.setAttribute("class", "__shorten_wrap__"); document.body.appendChild(shortenWrap); shortenButton = document.createElement('button'); shortenButton.setAttribute("class", "__shorten_url__"); shortenButton.innerText = "Cutt URL"; shortenWrap.appendChild(shortenButton); shortenButton.addEventListener("click", function(){ var cuttWindow = newWindow(CuttURL, "Cuttly URL", strWindowFeatures); }); } else setTimeout(addCuttButton, 500); }(); })();