From 14862edb2ccbf74812386533f7dddad72b0ecd47 Mon Sep 17 00:00:00 2001 From: Simon Kornblith Date: Sat, 11 Apr 2009 04:03:23 +0000 Subject: [PATCH] commit missing files --- chrome/content/zotero/lookup.js | 44 ++++++++++++++++++++++++++++++++ chrome/content/zotero/lookup.xul | 25 ++++++++++++++++++ 2 files changed, 69 insertions(+) create mode 100644 chrome/content/zotero/lookup.js create mode 100644 chrome/content/zotero/lookup.xul diff --git a/chrome/content/zotero/lookup.js b/chrome/content/zotero/lookup.js new file mode 100644 index 000000000..7efa58333 --- /dev/null +++ b/chrome/content/zotero/lookup.js @@ -0,0 +1,44 @@ +const Zotero_Lookup = new function () { + this.accept = function() { + document.getElementById("progress").setAttribute("status", "animate"); + var identifier = document.getElementById("lookup-textbox").value; + if(identifier.substr(0, 3) == "10.") { + // DOI + var item = {itemType:"journalArticle", DOI:identifier}; + } else { + identifier = identifier.replace("-", "", "g"); + if(identifier.length == 10 || identifier.length == 13) { + // ISBN + var item = {itemType:"book", ISBN:identifier}; + } else { + // PMID; right now, PMIDs are 8 digits, so there doesn't seem like we will need to + // discriminate for a fairly long time + var item = {itemType:"journalArticle", contextObject:"rft_id=info:pmid/"+identifier}; + } + } + + translate = new Zotero.Translate("search", true, false); + translate.setSearch(item); + // be lenient about translators + var translators = translate.getTranslators(); + Zotero.debug(translators[0].label); + translate.setTranslator(translators); + translate.setHandler("done", function(translate, success) { + if(success) { + window.close(); + } else { + document.getElementById("progress").setAttribute("status", "error"); + var prompts = Components.classes["@mozilla.org/embedcomp/prompt-service;1"] + .getService(Components.interfaces.nsIPromptService); + prompts.alert(window, Zotero.getString("lookup.failure.title"), + Zotero.getString("lookup.failure.description")); + } + }); + try { + var saveLocation = window.opener.ZoteroPane.getSelectedCollection(); + } catch(e) {} + translate.setHandler("itemDone", function(obj, item) { window.opener.Zotero_Browser.itemDone(obj, item, saveLocation) }); + translate.translate(); + return false; + } +} diff --git a/chrome/content/zotero/lookup.xul b/chrome/content/zotero/lookup.xul new file mode 100644 index 000000000..1d0bd4ec1 --- /dev/null +++ b/chrome/content/zotero/lookup.xul @@ -0,0 +1,25 @@ + + + + + + + + +