Skip to content

Instantly share code, notes, and snippets.

@dekart
Last active May 11, 2021 08:00
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save dekart/1e158bacb182fd7ccfbbc5251fdb953f to your computer and use it in GitHub Desktop.
Save dekart/1e158bacb182fd7ccfbbc5251fdb953f to your computer and use it in GitHub Desktop.
javascript:setTimeout(function(){
var m = window.location.href.match(/trello.com\/c\/[A-z\d]+\/(\d+)/);
if(m){
var text = new Date().toLocaleDateString("en-US") + "\t" +
'=HYPERLINK("'+m[0]+'","'+m[1]+'")' + "\t" +
document.querySelector('div.window-title>textarea').value;
navigator.clipboard.writeText(text);
var messageText = "Successfully copied!";
var success = true;
} else {
var messageText = "Page URL doens't match!";
var success = false;
}
var fadeoutDelaySeconds = 4;
var style = document.createElement('style');
style.innerHTML = '@keyframes duckRocketsFadeOut { 0% {opacity: 0;} 10% {opacity: 1;} 50% {opacity: 1;} 100% {opacity: 0;}} .duckRocketsFadeOut {position: fixed; left: 0; top: 0; width: 100%; z-index: 10000; opacity: 0.1; padding: 5px; color: white; text-align: center; font-size: 20px; animation: duckRocketsFadeOut ' + fadeoutDelaySeconds + 's;}';
var message = document.createElement('div');
message.innerHTML = messageText;
message.className = 'duckRocketsFadeOut';
if (success) {
message.style.backgroundColor = 'green';
} else {
message.style.backgroundColor = 'red';
}
var body = document.getElementsByTagName('body')[0];
body.appendChild(style);
body.appendChild(message);
setTimeout(function(){
body.removeChild(message);
body.removeChild(style);
}, fadeoutDelaySeconds * 1000);
}, 10)
javascript:setTimeout(function(){
/* https://github.com/finom/balalaika */
$=function(t,e,n,i,o,r,s,u,c,f,l,h){return h=function(t,e){return new h.i(t,e)},h.i=function(i,o){n.push.apply(this,i?i.nodeType||i==t?[i]:""+i===i?/</.test(i)?((u=e.createElement(o||"q")).innerHTML=i,u.children):(o&&h(o)[0]||e).querySelectorAll(i):/f/.test(typeof i)?/c/.test(e.readyState)?i():h(e).on("DOMContentLoaded",i):i:n)},h.i[l="prototype"]=(h.extend=function(t){for(f=arguments,u=1;u<f.length;u++)if(l=f[u])for(c in l)t[c]=l[c];return t})(h.fn=h[l]=n,{on:function(t,e){return t=t.split(i),this.map(function(n){(i[u=t[0]+(n.b$=n.b$||++o)]=i[u]||[]).push([e,t[1]]),n["add"+r](t[0],e)}),this},off:function(t,e){return t=t.split(i),l="remove"+r,this.map(function(n){if(f=i[t[0]+n.b$],u=f&&f.length)for(;c=f[--u];)e&&e!=c[0]||t[1]&&t[1]!=c[1]||(n[l](t[0],c[0]),f.splice(u,1));else!t[1]&&n[l](t[0],e)}),this},is:function(t){return u=this[0],(u.matches||u["webkit"+s]||u["moz"+s]||u["ms"+s]).call(u,t)}}),h}(window,document,[],/\.(.+)/,0,"EventListener","MatchesSelector");
var statusPage = window.location.href.match(/twitter.com\/([^\/]+)\/status\/(\d+)$/);
var analyticsPage = window.location.href.match(/twitter.com\/i\/tfb\/v1\/quick_promote\/lite\/(\d+)$/);
var statusNode = $('a>span', $('article[role=article]')[1])[0];
if(statusPage && statusNode !== undefined){
var text = window.location.href + "\t" + statusNode.textContent;
navigator.clipboard.writeText(text);
var messageText = text;
var success = true;
}
else if (analyticsPage)
{
function getDataBySelector(selector){
var node = $(selector)[0];
if(node == undefined){
return 0;
} else {
return parseInt(node.textContent.replaceAll(/[^\d]+/g, ""), 10);
}
}
var impressions = getDataBySelector('.ep-MetricValueOrganic[data-metric-type="Impressions"] .ep-MetricAnimation');
var likes = getDataBySelector('.ep-MetricValueOrganic[data-metric-type="Favorites"] .ep-MetricAnimation');
var retweets = getDataBySelector('.ep-MetricValueOrganic[data-metric-type="Retweets"] .ep-MetricAnimation');
var replies = getDataBySelector('.ep-MetricValueOrganic[data-metric-type="Replies"] .ep-MetricAnimation');
var profileClicks = getDataBySelector('.ep-MetricValueOrganic[data-metric-type="UserProfileClicks"] .ep-MetricAnimation');
var mediaViews = getDataBySelector('.ep-MetricValueOrganic[data-metric-type="MediaViews"] .ep-MetricAnimation');
var text = [replies, retweets, likes, impressions, profileClicks, mediaViews].join("\t");
console.log(text);
navigator.clipboard.writeText(text);
var messageText = text;
var success = true;
}
else
{
var messageText = "Page type doesn't match!";
var success = false;
}
var fadeoutDelaySeconds = 4;
var style = document.createElement('style');
style.innerHTML = '@keyframes duckRocketsFadeOut { 0% {opacity: 0;} 10% {opacity: 1;} 50% {opacity: 1;} 100% {opacity: 0;}} .duckRocketsFadeOut {position: fixed; left: 0; top: 0; width: 100%; z-index: 10000; opacity: 0.1; padding: 5px; color: white; text-align: center; font-size: 20px; animation: duckRocketsFadeOut ' + fadeoutDelaySeconds + 's;}';
var message = document.createElement('div');
message.innerHTML = messageText;
message.className = 'duckRocketsFadeOut';
if (success) {
message.style.backgroundColor = 'green';
} else {
message.style.backgroundColor = 'red';
}
var body = document.getElementsByTagName('body')[0];
body.appendChild(style);
body.appendChild(message);
setTimeout(function(){
body.removeChild(message);
body.removeChild(style);
}, fadeoutDelaySeconds * 1000);
}, 10)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment