commit 19763cc78a2a6a1fd49321c87e42036bfbf63357
parent a75c5df70c888a9a88ab46f3cde2108d380694a0
Author: Dan Stillman <dstillman@zotero.org>
Date: Wed, 30 Aug 2006 07:05:57 +0000
- Updated outward-facing "Scholar" references to "Zotero", along with a few of the internal ones that could be problematic to change later (DB, directory, GUID) -- let me know if I missed any
- About panel now gets version number automatically
- Change version from 1.0a1 to 1.0b1
* Important: If you're on an SVN install, you need to rename the scholar@chnm.gmu.edu text file in your profile extension directory to zotero@chnm.gmu.edu *
XPI installs will (I think) update automatically, since I kept an entry in updates.rdf with the old GUID
Diffstat:
13 files changed, 245 insertions(+), 217 deletions(-)
diff --git a/chrome/chromeFiles/content/scholar/about.xul b/chrome/chromeFiles/content/scholar/about.xul
@@ -29,13 +29,19 @@
]]>
</script>
+ <script src="include.js"/>
+
<vbox id="aboutcontent">
<label id="name" value="&scholar.name;"/>
- <label id="version" value="&scholar.version;"/>
-
+ <label id="version" value="&scholar.version; "/>
+ <script>
+ document.getElementById('version').value += Scholar.version;
+ </script>
<label class="subhead" value="&scholar.createdby;"/>
<vbox class="subcontent">
<label class="text-link" href="http://chnm.gmu.edu" value="Center for History and New Media"/>
+ <label value="George Mason University"/>
+ <label value="Fairfax, VA"/>
</vbox>
<label class="subhead" value="&scholar.directors;"/>
<vbox class="subcontent">
diff --git a/chrome/chromeFiles/content/scholar/include.js b/chrome/chromeFiles/content/scholar/include.js
@@ -1,5 +1,5 @@
-var Scholar = Components.classes["@chnm.gmu.edu/Scholar;1"]
+var Scholar = Components.classes["@chnm.gmu.edu/Zotero;1"]
// Currently uses only nsISupports
- //.getService(Components.interfaces.chnmIScholarService).
+ //.getService(Components.interfaces.chnmIZoteroService).
.getService(Components.interfaces.nsISupports)
.wrappedJSObject;
diff --git a/chrome/chromeFiles/content/scholar/itemPane.js b/chrome/chromeFiles/content/scholar/itemPane.js
@@ -4,7 +4,7 @@
http://chnm.gmu.edu/
*/
-ScholarItemPane = new function()
+var ScholarItemPane = new function()
{
var _dynamicFields;
var _creatorTypeMenu;
diff --git a/chrome/chromeFiles/content/scholar/xpcom/schema.js b/chrome/chromeFiles/content/scholar/xpcom/schema.js
@@ -401,7 +401,7 @@ Scholar.Schema = new function(){
//
// Change this value to match the schema version
//
- var toVersion = 43;
+ var toVersion = 44;
if (toVersion != _getSchemaSQLVersion()){
throw('Schema version does not match version in _migrateSchema()');
@@ -425,7 +425,7 @@ Scholar.Schema = new function(){
}
}
- if (i==43){
+ if (i==44){
// Clear storage directory
var file = Scholar.getStorageDirectory();
if (file.exists()){
diff --git a/chrome/chromeFiles/content/scholar/xpcom/scholar.js b/chrome/chromeFiles/content/scholar/xpcom/scholar.js
@@ -1,6 +1,6 @@
const SCHOLAR_CONFIG = {
- GUID: 'scholar@chnm.gmu.edu',
- DB_FILE: 'scholar.sqlite',
+ GUID: 'zotero@chnm.gmu.edu',
+ DB_FILE: 'zotero.sqlite',
DB_REBUILD: false, // erase DB and recreate from schema
DEBUG_LOGGING: true,
DEBUG_TO_CONSOLE: true, // dump debug messages to console rather than (much slower) Debug Logger
@@ -117,7 +117,7 @@ var Scholar = new function(){
function getScholarDirectory(){
var file = Scholar.getProfileDirectory();
- file.append('scholar');
+ file.append('zotero');
// If it doesn't exist, create
if (!file.exists() || !file.isDirectory()){
file.create(Components.interfaces.nsIFile.DIRECTORY_TYPE, 0755);
@@ -216,7 +216,7 @@ var Scholar = new function(){
var logManager =
Components.classes["@mozmonkey.com/debuglogger/manager;1"]
.getService(Components.interfaces.nsIDebugLoggerManager);
- var logger = logManager.registerLogger("Scholar for Firefox");
+ var logger = logManager.registerLogger("Zotero");
}
catch (e){}
}
@@ -225,7 +225,7 @@ var Scholar = new function(){
logger.log(level, message);
}
else {
- dump('scholar(' + level + '): ' + message + "\n\n");
+ dump('zotero(' + level + '): ' + message + "\n\n");
}
return true;
}
diff --git a/chrome/chromeFiles/locale/en-US/scholar/about.dtd b/chrome/chromeFiles/locale/en-US/scholar/about.dtd
@@ -1,5 +1,5 @@
-<!ENTITY scholar.name "Scholar">
-<!ENTITY scholar.version "version 1.0a1">
+<!ENTITY scholar.name "Zotero">
+<!ENTITY scholar.version "version">
<!ENTITY scholar.createdby "Created by:">
<!ENTITY scholar.directors "Directors:">
<!ENTITY scholar.developers "Developers:">
diff --git a/chrome/chromeFiles/locale/en-US/scholar/preferences.dtd b/chrome/chromeFiles/locale/en-US/scholar/preferences.dtd
@@ -1,11 +1,11 @@
-<!ENTITY scholar.name "Scholar">
-<!ENTITY scholar.preferences.title "Scholar Preferences">
+<!ENTITY scholar.name "Zotero">
+<!ENTITY scholar.preferences.title "Zotero Preferences">
<!ENTITY scholar.preferences.autoUpdate.label "Automatically check for updated scrapers">
-<!ENTITY scholar.preferences.position.label "Display Scholar">
+<!ENTITY scholar.preferences.position.label "Display Zotero">
<!ENTITY scholar.preferences.position.above "above">
<!ENTITY scholar.preferences.position.below "below">
<!ENTITY scholar.preferences.position.browser "browser content">
-<!ENTITY scholar.preferences.parseEndnote.label "Use Scholar for downloaded EndNote files">
+<!ENTITY scholar.preferences.parseEndnote.label "Use Zotero for downloaded EndNote files">
<!ENTITY scholar.preferences.openurl.caption "OpenURL">
<!ENTITY scholar.preferences.openurl.server "Resolver:">
<!ENTITY scholar.preferences.openurl.version "Version:">
\ No newline at end of file
diff --git a/chrome/chromeFiles/locale/en-US/scholar/scholar.dtd b/chrome/chromeFiles/locale/en-US/scholar/scholar.dtd
@@ -1,4 +1,4 @@
-<!ENTITY scholar.name "Scholar">
+<!ENTITY scholar.name "Zotero">
<!ENTITY tabs.info.label "Info">
<!ENTITY tabs.notes.label "Notes">
diff --git a/chrome/chromeFiles/locale/en-US/scholar/scholar.properties b/chrome/chromeFiles/locale/en-US/scholar/scholar.properties
@@ -90,9 +90,9 @@ ingester.scrapeComplete = Item Saved.
ingester.scrapeError = Could Not Save Item.
ingester.scrapeErrorDescription = An error occurred while saving this item. Please try again. If this error persists, contact the translator author.
-db.dbCorruptedNoBackup = The Scholar database appears to have become corrupted, and no automatic backup is available.\n\nA new database file has been created. The damaged file was saved in your Scholar directory.
-db.dbRestored = The Scholar database appears to have become corrupted.\n\nYour data was restored from the last automatic backup made on %1 at %2. The damaged file was saved in your Scholar directory.
-db.dbRestoreFailed = The Scholar database appears to have become corrupted, and an attempt to restore from the last automatic backup failed.\n\nA new database file has been created. The damaged file was saved in your Scholar directory.
+db.dbCorruptedNoBackup = The Zotero database appears to have become corrupted, and no automatic backup is available.\n\nA new database file has been created. The damaged file was saved in your Zotero directory.
+db.dbRestored = The Zotero database appears to have become corrupted.\n\nYour data was restored from the last automatic backup made on %1 at %2. The damaged file was saved in your Zotero directory.
+db.dbRestoreFailed = The Zotero database appears to have become corrupted, and an attempt to restore from the last automatic backup failed.\n\nA new database file has been created. The damaged file was saved in your Zotero directory.
fileInterface.itemsImported = Importing items...
fileInterface.itemsExported = Exporting items...
diff --git a/components/chnmIScholarService.js b/components/chnmIScholarService.js
@@ -1,188 +0,0 @@
-const SCHOLAR_CONTRACTID = '@chnm.gmu.edu/Scholar;1';
-const SCHOLAR_CLASSNAME = 'Scholar for Firefox';
-const SCHOLAR_CID = Components.ID('{e4c61080-ec2d-11da-8ad9-0800200c9a66}');
-const SCHOLAR_IID = Components.interfaces.chnmIScholarService;
-
-const Cc = Components.classes;
-const Ci = Components.interfaces;
-
-// Assign the global scope to a variable to passed via wrappedJSObject
-var ScholarWrapped = this;
-
-
-/********************************************************************
-* Include the core objects to be stored within XPCOM
-*********************************************************************/
-
-Cc["@mozilla.org/moz/jssubscript-loader;1"]
- .getService(Ci.mozIJSSubScriptLoader)
- .loadSubScript("chrome://scholar/content/xpcom/scholar.js");
-
-Cc["@mozilla.org/moz/jssubscript-loader;1"]
- .getService(Ci.mozIJSSubScriptLoader)
- .loadSubScript("chrome://scholar/content/xpcom/db.js");
-
-Cc["@mozilla.org/moz/jssubscript-loader;1"]
- .getService(Ci.mozIJSSubScriptLoader)
- .loadSubScript("chrome://scholar/content/xpcom/schema.js");
-
-Cc["@mozilla.org/moz/jssubscript-loader;1"]
- .getService(Ci.mozIJSSubScriptLoader)
- .loadSubScript("chrome://scholar/content/xpcom/data_access.js");
-
-Cc["@mozilla.org/moz/jssubscript-loader;1"]
- .getService(Ci.mozIJSSubScriptLoader)
- .loadSubScript("chrome://scholar/content/xpcom/notifier.js");
-
-Cc["@mozilla.org/moz/jssubscript-loader;1"]
- .getService(Ci.mozIJSSubScriptLoader)
- .loadSubScript("chrome://scholar/content/xpcom/history.js");
-
-Cc["@mozilla.org/moz/jssubscript-loader;1"]
- .getService(Ci.mozIJSSubScriptLoader)
- .loadSubScript("chrome://scholar/content/xpcom/search.js");
-
-Cc["@mozilla.org/moz/jssubscript-loader;1"]
- .getService(Ci.mozIJSSubScriptLoader)
- .loadSubScript("chrome://scholar/content/xpcom/ingester.js");
-
-Cc["@mozilla.org/moz/jssubscript-loader;1"]
- .getService(Ci.mozIJSSubScriptLoader)
- .loadSubScript("chrome://scholar/content/xpcom/translate.js");
-
-Cc["@mozilla.org/moz/jssubscript-loader;1"]
- .getService(Ci.mozIJSSubScriptLoader)
- .loadSubScript("chrome://scholar/content/xpcom/cite.js");
-
-Cc["@mozilla.org/moz/jssubscript-loader;1"]
- .getService(Ci.mozIJSSubScriptLoader)
- .loadSubScript("chrome://scholar/content/xpcom/utilities.js");
-
-Cc["@mozilla.org/moz/jssubscript-loader;1"]
- .getService(Ci.mozIJSSubScriptLoader)
- .loadSubScript("chrome://scholar/content/xpcom/integration.js");
-
-Cc["@mozilla.org/moz/jssubscript-loader;1"]
- .getService(Ci.mozIJSSubScriptLoader)
- .loadSubScript("chrome://scholar/content/xpcom/file.js");
-
-Cc["@mozilla.org/moz/jssubscript-loader;1"]
- .getService(Ci.mozIJSSubScriptLoader)
- .loadSubScript("chrome://scholar/content/xpcom/mime.js");
-
-Cc["@mozilla.org/moz/jssubscript-loader;1"]
- .getService(Ci.mozIJSSubScriptLoader)
- .loadSubScript("chrome://scholar/content/xpcom/itemTreeView.js");
-
-Cc["@mozilla.org/moz/jssubscript-loader;1"]
- .getService(Ci.mozIJSSubScriptLoader)
- .loadSubScript("chrome://scholar/content/xpcom/collectionTreeView.js");
-
-Cc["@mozilla.org/moz/jssubscript-loader;1"]
- .getService(Ci.mozIJSSubScriptLoader)
- .loadSubScript("chrome://global/content/nsTransferable.js");
-
-Cc["@mozilla.org/moz/jssubscript-loader;1"]
- .getService(Ci.mozIJSSubScriptLoader)
- .loadSubScript("chrome://global/content/nsDragAndDrop.js");
-
-/********************************************************************/
-
-
-// Initialize the Scholar service
-//
-// This runs when ScholarService is first requested.
-// Calls to other XPCOM components must be in here rather than in top-level
-// code, as other components may not have yet been initialized.
-function setupService(){
- Scholar.init();
-}
-
-function ScholarService(){
- this.wrappedJSObject = ScholarWrapped.Scholar;
- setupService();
-}
-
-
-/**
-* Convenience method to replicate window.alert()
-**/
-function alert(msg){
- Cc["@mozilla.org/embedcomp/prompt-service;1"]
- .getService(Ci.nsIPromptService)
- .alert(null, "", msg);
-}
-
-/**
-* Convenience method to replicate window.confirm()
-**/
-function confirm(msg){
- return Cc["@mozilla.org/embedcomp/prompt-service;1"]
- .getService(Ci.nsIPromptService)
- .confirm(null, "", msg);
-}
-
-//
-// XPCOM goop
-//
-ScholarService.prototype = {
- QueryInterface: function(iid){
- if (!iid.equals(Components.interfaces.nsISupports) &&
- !iid.equals(SCHOLAR_IID)){
- throw Components.results.NS_ERROR_NO_INTERFACE;
- }
- return this;
- }
-};
-
-
-var ScholarFactory = {
- createInstance: function(outer, iid){
- if (outer != null){
- throw Components.results.NS_ERROR_NO_AGGREGATION;
- }
- return new ScholarService().QueryInterface(iid);
- }
-};
-
-
-var ScholarModule = {
- _firstTime: true,
-
- registerSelf: function(compMgr, fileSpec, location, type){
- if (!this._firstTime){
- throw Components.results.NS_ERROR_FACTORY_REGISTER_AGAIN;
- }
- this._firstTime = false;
-
- compMgr =
- compMgr.QueryInterface(Components.interfaces.nsIComponentRegistrar);
-
- compMgr.registerFactoryLocation(SCHOLAR_CID,
- SCHOLAR_CLASSNAME,
- SCHOLAR_CONTRACTID,
- fileSpec,
- location,
- type);
- },
-
- unregisterSelf: function(compMgr, location, type){
- compMgr =
- compMgr.QueryInterface(Components.interfaces.nsIComponentRegistrar);
- compMgr.unregisterFactoryLocation(SCHOLAR_CID, location);
- },
-
- getClassObject: function(compMgr, cid, iid){
- if (!cid.equals(SCHOLAR_CID)){
- throw Components.results.NS_ERROR_NO_INTERFACE;
- }
- if (!iid.equals(Components.interfaces.nsIFactory)){
- throw Components.results.NS_ERROR_NOT_IMPLEMENTED;
- }
- return ScholarFactory;
- },
-
- canUnload: function(compMgr){ return true; }
-};
-
-function NSGetModule(comMgr, fileSpec){ return ScholarModule; }
diff --git a/components/chnmIZoteroService.js b/components/chnmIZoteroService.js
@@ -0,0 +1,188 @@
+const SCHOLAR_CONTRACTID = '@chnm.gmu.edu/Zotero;1';
+const SCHOLAR_CLASSNAME = 'Zotero';
+const SCHOLAR_CID = Components.ID('{e4c61080-ec2d-11da-8ad9-0800200c9a66}');
+const SCHOLAR_IID = Components.interfaces.chnmIZoteroService;
+
+const Cc = Components.classes;
+const Ci = Components.interfaces;
+
+// Assign the global scope to a variable to passed via wrappedJSObject
+var ScholarWrapped = this;
+
+
+/********************************************************************
+* Include the core objects to be stored within XPCOM
+*********************************************************************/
+
+Cc["@mozilla.org/moz/jssubscript-loader;1"]
+ .getService(Ci.mozIJSSubScriptLoader)
+ .loadSubScript("chrome://scholar/content/xpcom/scholar.js");
+
+Cc["@mozilla.org/moz/jssubscript-loader;1"]
+ .getService(Ci.mozIJSSubScriptLoader)
+ .loadSubScript("chrome://scholar/content/xpcom/db.js");
+
+Cc["@mozilla.org/moz/jssubscript-loader;1"]
+ .getService(Ci.mozIJSSubScriptLoader)
+ .loadSubScript("chrome://scholar/content/xpcom/schema.js");
+
+Cc["@mozilla.org/moz/jssubscript-loader;1"]
+ .getService(Ci.mozIJSSubScriptLoader)
+ .loadSubScript("chrome://scholar/content/xpcom/data_access.js");
+
+Cc["@mozilla.org/moz/jssubscript-loader;1"]
+ .getService(Ci.mozIJSSubScriptLoader)
+ .loadSubScript("chrome://scholar/content/xpcom/notifier.js");
+
+Cc["@mozilla.org/moz/jssubscript-loader;1"]
+ .getService(Ci.mozIJSSubScriptLoader)
+ .loadSubScript("chrome://scholar/content/xpcom/history.js");
+
+Cc["@mozilla.org/moz/jssubscript-loader;1"]
+ .getService(Ci.mozIJSSubScriptLoader)
+ .loadSubScript("chrome://scholar/content/xpcom/search.js");
+
+Cc["@mozilla.org/moz/jssubscript-loader;1"]
+ .getService(Ci.mozIJSSubScriptLoader)
+ .loadSubScript("chrome://scholar/content/xpcom/ingester.js");
+
+Cc["@mozilla.org/moz/jssubscript-loader;1"]
+ .getService(Ci.mozIJSSubScriptLoader)
+ .loadSubScript("chrome://scholar/content/xpcom/translate.js");
+
+Cc["@mozilla.org/moz/jssubscript-loader;1"]
+ .getService(Ci.mozIJSSubScriptLoader)
+ .loadSubScript("chrome://scholar/content/xpcom/cite.js");
+
+Cc["@mozilla.org/moz/jssubscript-loader;1"]
+ .getService(Ci.mozIJSSubScriptLoader)
+ .loadSubScript("chrome://scholar/content/xpcom/utilities.js");
+
+Cc["@mozilla.org/moz/jssubscript-loader;1"]
+ .getService(Ci.mozIJSSubScriptLoader)
+ .loadSubScript("chrome://scholar/content/xpcom/integration.js");
+
+Cc["@mozilla.org/moz/jssubscript-loader;1"]
+ .getService(Ci.mozIJSSubScriptLoader)
+ .loadSubScript("chrome://scholar/content/xpcom/file.js");
+
+Cc["@mozilla.org/moz/jssubscript-loader;1"]
+ .getService(Ci.mozIJSSubScriptLoader)
+ .loadSubScript("chrome://scholar/content/xpcom/mime.js");
+
+Cc["@mozilla.org/moz/jssubscript-loader;1"]
+ .getService(Ci.mozIJSSubScriptLoader)
+ .loadSubScript("chrome://scholar/content/xpcom/itemTreeView.js");
+
+Cc["@mozilla.org/moz/jssubscript-loader;1"]
+ .getService(Ci.mozIJSSubScriptLoader)
+ .loadSubScript("chrome://scholar/content/xpcom/collectionTreeView.js");
+
+Cc["@mozilla.org/moz/jssubscript-loader;1"]
+ .getService(Ci.mozIJSSubScriptLoader)
+ .loadSubScript("chrome://global/content/nsTransferable.js");
+
+Cc["@mozilla.org/moz/jssubscript-loader;1"]
+ .getService(Ci.mozIJSSubScriptLoader)
+ .loadSubScript("chrome://global/content/nsDragAndDrop.js");
+
+/********************************************************************/
+
+
+// Initialize the Scholar service
+//
+// This runs when ScholarService is first requested.
+// Calls to other XPCOM components must be in here rather than in top-level
+// code, as other components may not have yet been initialized.
+function setupService(){
+ Scholar.init();
+}
+
+function ScholarService(){
+ this.wrappedJSObject = ScholarWrapped.Scholar;
+ setupService();
+}
+
+
+/**
+* Convenience method to replicate window.alert()
+**/
+function alert(msg){
+ Cc["@mozilla.org/embedcomp/prompt-service;1"]
+ .getService(Ci.nsIPromptService)
+ .alert(null, "", msg);
+}
+
+/**
+* Convenience method to replicate window.confirm()
+**/
+function confirm(msg){
+ return Cc["@mozilla.org/embedcomp/prompt-service;1"]
+ .getService(Ci.nsIPromptService)
+ .confirm(null, "", msg);
+}
+
+//
+// XPCOM goop
+//
+ScholarService.prototype = {
+ QueryInterface: function(iid){
+ if (!iid.equals(Components.interfaces.nsISupports) &&
+ !iid.equals(SCHOLAR_IID)){
+ throw Components.results.NS_ERROR_NO_INTERFACE;
+ }
+ return this;
+ }
+};
+
+
+var ScholarFactory = {
+ createInstance: function(outer, iid){
+ if (outer != null){
+ throw Components.results.NS_ERROR_NO_AGGREGATION;
+ }
+ return new ScholarService().QueryInterface(iid);
+ }
+};
+
+
+var ScholarModule = {
+ _firstTime: true,
+
+ registerSelf: function(compMgr, fileSpec, location, type){
+ if (!this._firstTime){
+ throw Components.results.NS_ERROR_FACTORY_REGISTER_AGAIN;
+ }
+ this._firstTime = false;
+
+ compMgr =
+ compMgr.QueryInterface(Components.interfaces.nsIComponentRegistrar);
+
+ compMgr.registerFactoryLocation(SCHOLAR_CID,
+ SCHOLAR_CLASSNAME,
+ SCHOLAR_CONTRACTID,
+ fileSpec,
+ location,
+ type);
+ },
+
+ unregisterSelf: function(compMgr, location, type){
+ compMgr =
+ compMgr.QueryInterface(Components.interfaces.nsIComponentRegistrar);
+ compMgr.unregisterFactoryLocation(SCHOLAR_CID, location);
+ },
+
+ getClassObject: function(compMgr, cid, iid){
+ if (!cid.equals(SCHOLAR_CID)){
+ throw Components.results.NS_ERROR_NO_INTERFACE;
+ }
+ if (!iid.equals(Components.interfaces.nsIFactory)){
+ throw Components.results.NS_ERROR_NOT_IMPLEMENTED;
+ }
+ return ScholarFactory;
+ },
+
+ canUnload: function(compMgr){ return true; }
+};
+
+function NSGetModule(comMgr, fileSpec){ return ScholarModule; }
diff --git a/install.rdf b/install.rdf
@@ -4,17 +4,17 @@
<Description about="urn:mozilla:install-manifest">
- <em:id>scholar@chnm.gmu.edu</em:id>
- <em:name>Scholar</em:name>
- <em:version>1.0a1.SVN</em:version>
- <em:description>A bibliographic management and note-taking tool</em:description>
+ <em:id>zotero@chnm.gmu.edu</em:id>
+ <em:name>Zotero</em:name>
+ <em:version>1.0b1.SVN</em:version>
+ <em:description>The Next-Generation Research Tool</em:description>
<em:creator>Center for History and New Media<br/>George Mason University</em:creator>
<em:contributor>Dan Cohen</em:contributor>
<em:contributor>Josh Greenberg</em:contributor>
<em:developer>Simon Kornblith</em:developer>
<em:developer>David Norton</em:developer>
<em:developer>Dan Stillman</em:developer>
- <em:homepageURL>http://chnm.gmu.edu/tools/firefoxscholar/</em:homepageURL>
+ <em:homepageURL>http://chnm.gmu.edu/tools/zotero/</em:homepageURL>
<em:optionsURL>chrome://scholar/content/preferences.xul</em:optionsURL>
<em:aboutURL>chrome://scholar/content/about.xul</em:aboutURL>
<em:iconURL>chrome://scholar/skin/mainicon.png</em:iconURL>
diff --git a/update.rdf b/update.rdf
@@ -1,13 +1,35 @@
<?xml version="1.0"?>
<RDF:RDF xmlns:RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns="http://www.mozilla.org/2004/em-rdf#">
-<!-- Scholar for Firefox Extension -->
+<!-- Zotero Extension -->
+<RDF:Description about="urn:mozilla:extension:zotero@chnm.gmu.edu">
+ <updates>
+ <RDF:Seq>
+ <RDF:li>
+ <RDF:Description>
+ <version>1.0b1.SVN</version>
+ <targetApplication>
+ <RDF:Description>
+ <id>{ec8030f7-c20a-464f-9b0e-13a3a9e97384}</id>
+ <minVersion>2.0a1+</minVersion>
+ <maxVersion>3.0+</maxVersion>
+ <updateLink>http://chnm.gmu.edu/firefoxscholar/download/scholar.xpi</updateLink>
+ </RDF:Description>
+ </targetApplication>
+ </RDF:Description>
+ </RDF:li>
+ </RDF:Seq>
+ </updates>
+</RDF:Description>
+</RDF:RDF>
+
+<!-- This is just to accommodate users of the alpha before the guid changed -->
<RDF:Description about="urn:mozilla:extension:scholar@chnm.gmu.edu">
<updates>
<RDF:Seq>
<RDF:li>
<RDF:Description>
- <version>1.0a1.SVN</version>
+ <version>1.0b1.SVN</version>
<targetApplication>
<RDF:Description>
<id>{ec8030f7-c20a-464f-9b0e-13a3a9e97384}</id>