Skip to content

Instantly share code, notes, and snippets.

@SLAPaper
Created November 2, 2018 03:02
Show Gist options
  • Save SLAPaper/9c175f5f66c4097aa3b4becf3b5135b8 to your computer and use it in GitHub Desktop.
Save SLAPaper/9c175f5f66c4097aa3b4becf3b5135b8 to your computer and use it in GitHub Desktop.
Save to Zotero
// ==UserScript==
// @name Save to Zotero
// @namespace http://tampermonkey.net/
// @version 0.1
// @description Make Zotero's boorkmarklet a user script (click the button 'Zotero!' on bottom right)
// @author SLAPaper
// @match *://*/*
// @grant none
// ==/UserScript==
function loader() {
// content of https://www.zotero.org/bookmarklet/loader.js
var a = document.getElementById('zotero-iframe');
if (a) {
return void a.contentWindow.postMessage(['progressWindow.reopen', null], '*');
}
a = document.createElement('iframe');
a.id = 'zotero-iframe';
a.style.display = 'none';
a.style.borderStyle = 'none';
a.setAttribute('frameborder', '0');
a.src = (
'javascript:(function(){document.open();try{window.parent.document;}catch(e){document.domain="' +
document.domain.replace(/[\\\"]/g, '\\$0') +
'";}document.write(\'<!DOCTYPE html><html><head><script src="' +
'https://www.zotero.org/bookmarklet/common.js' +
'"></script><script src="' +
'https://www.zotero.org/bookmarklet/inject.js' +
'"></script></head><body></body></html>\');document.close();})()'
);
var tag = document.body || document.documentElement;
tag.appendChild(a);
}
(function () {
'use strict';
var d = document;
var div = d.createElement('div');
div.id = 'div-save-to-zotero';
div.style.position = 'fixed';
div.style.bottom = '-0.1rem';
div.style.right = '-0.2rem';
div.style.zIndex = '999';
var btn = d.createElement('button');
btn.id = 'btn-save-to-zotero';
btn.innerText = 'Zotero!';
btn.onclick = loader;
div.appendChild(btn);
(d.body ? d.body : d.documentElement).appendChild(div);
})();
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment