tinyurl.com - URL shorten button

Add a URL shorten button to the bottom left corner. It will create a new window for the shortened URL of cutt.ly

Versione datata 26/01/2021. Vedi la nuova versione l'ultima versione.

Dovrai installare un'estensione come Tampermonkey, Greasemonkey o Violentmonkey per installare questo script.

Dovrai installare un'estensione come Tampermonkey o Violentmonkey per installare questo script.

Dovrai installare un'estensione come Tampermonkey o Violentmonkey per installare questo script.

Dovrai installare un'estensione come Tampermonkey o Userscripts per installare questo script.

Dovrai installare un'estensione come ad esempio Tampermonkey per installare questo script.

Dovrai installare un gestore di script utente per installare questo script.

(Ho già un gestore di script utente, lasciamelo installare!)

Dovrai installare un'estensione come ad esempio Stylus per installare questo stile.

Dovrai installare un'estensione come ad esempio Stylus per installare questo stile.

Dovrai installare un'estensione come ad esempio Stylus per installare questo stile.

Dovrai installare un'estensione per la gestione degli stili utente per installare questo stile.

Dovrai installare un'estensione per la gestione degli stili utente per installare questo stile.

Dovrai installare un'estensione per la gestione degli stili utente per installare questo stile.

(Ho già un gestore di stile utente, lasciamelo installare!)

// ==UserScript==
// @name				tinyurl.com - URL shorten button
// @name:zh-TW			tinyurl.com 縮短網址按鈕
// @name:zh-CN			tinyurl.com 缩短网址按钮
// @description			Add a URL shorten button to the bottom left corner. It will create a new window for the shortened URL of cutt.ly
// @description:zh-TW	在頁面左下角設置一個縮短網址的按鈕,這會開個新視窗來檢視 tinyurl 的縮址結果
// @description:zh-CN	在页面左下角设置一个缩短网址的按钮,这会开个新视窗来查看 tinyurl 的缩址结果
// @namespace			https://greasyfork.org/zh-TW/users/393133-evan-tseng
// @version				0.21
// @author				Evan Tseng
// @run-at				document-end
// @include				*://*
// @exclude				*://tinyurl.com/*
// @grant				none
// ==/UserScript==

(function() {
	'use strict';
	if(self == top) {
		var addTinyButton = (function() {
			if(document.readyState !== "loading") {
				setTimeout(function(){
					const windowWidth = 800,
						  windowHeight = (navigator.appVersion.indexOf("Mac")!=-1)? 400 : 450;
					let strWindowFeatures = 'width=' + windowWidth + ',height=' + windowHeight + ',left=' + ((screen.width - windowWidth) / 2) + ',top=' + ((screen.height - windowHeight) / 3) + ',menubar=no,toolbar=no,location=no,status=no',
						cssStyle = document.createElement('style'),
						css = `
.__shorten_wrap__ { display:block; position:fixed; bottom:23mm; left:0; width:0; height:0; outline:1px solid #F00; z-index:2147483646; transform:rotate(90deg); }
.__shorten_btn__ { position:absolute!important; bottom:-10px!important; right:0!important; font:400 11pt sans-serif!important; width:auto!important; color:#334!important; text-shadow:1px -1px rgba(255,255,255,.6); background:linear-gradient(5deg, rgba(170,170,175,.85) 0, rgba(210,210,215,.8) 50%, rgba(170,170,175,.85) 100%)!important; padding:.3em .6em 1em!important; margin:0!important; line-height:1!important; border:1px solid rgba(0,0,0,.4)!important; border-radius:6px 6px 0 0!important; white-space:nowrap; cursor:pointer!important; transition:.15s!important }
.__shorten_btn__:hover { background:linear-gradient(5deg, rgba(190,190,190,.95) 0, rgba(230,230,230,.95) 50%, rgba(190,190,190,.95) 100%)!important; border:1px solid rgba(0,0,0,.4)!important; box-shadow:1px 0 4pt rgba(0,0,0,.5)!important }
.__shorten_btn__:active { color:#cdf!important; text-shadow:-1px 1px #666!important; background:rgba(125,125,133,.8)!important; border-color:rgba(255,255,255,.6)!important; box-shadow:inset 1px 0 4pt rgba(0,0,0,.7)!important; transition:0s!important }
@media not screen { .__shorten_wrap__ { display:none } }`;
					if(cssStyle.styleSheet)	cssStyle.styleSheet.cssText = css;
					else	cssStyle.appendChild(document.createTextNode(css));
					document.querySelector('head').appendChild(cssStyle);

					let shortenWrap = document.createElement('div');
					shortenWrap.setAttribute("class", "__shorten_wrap__");
					document.body.appendChild(shortenWrap);

					let shortenButton = document.createElement('button');
					shortenButton.setAttribute("class", "__shorten_btn__");
					shortenButton.innerText = "TinyURL";
					shortenWrap.appendChild(shortenButton);

					shortenButton.addEventListener("click", function(){
						window.open('https://tinyurl.com/create.php?app=scpt&url=' + encodeURIComponent(location.href), "", strWindowFeatures);
					});
				}, 500);
			}
			else setTimeout(addTinyButton, 500);
		})();
	}
})();