commit ee943c0d2c9c577ab473def9b52b5063d5e8a086
parent 3ac311e85aaa8af7f126d74d422ec7159cc20654
Author: David Norton <david@nortoncrew.com>
Date: Mon, 21 Aug 2006 21:10:40 +0000
Closes #169, add OpenURL interface hooks
- Added menu, uses OCLC database. (someone should test from GMU or another institution)
Diffstat:
2 files changed, 41 insertions(+), 2 deletions(-)
diff --git a/chrome/chromeFiles/content/scholar/preferences.js b/chrome/chromeFiles/content/scholar/preferences.js
@@ -21,6 +21,8 @@
var autoUpdateBox;
var positionMenu;
var parseEndnoteBox;
+var openURLMenu;
+var openURLResolvers;
var openURLServerField;
var openURLVersionMenu;
@@ -52,6 +54,16 @@ function init()
openURLServerField.value = Scholar.Prefs.get('openURL.resolver');
openURLVersionMenu = document.getElementById('openURLVersionMenu');
openURLVersionMenu.value = Scholar.Prefs.get('openURL.version');
+
+ openURLMenu = document.getElementById('openURLMenu');
+
+ openURLResolvers = Scholar.OpenURL.discoverResolvers();
+ for(var i in openURLResolvers)
+ {
+ openURLMenu.insertItemAt(i,openURLResolvers[i]['name']);
+ if(openURLResolvers[i]['url'] == Scholar.Prefs.get('openURL.resolver') && openURLResolvers[i]['version'] == Scholar.Prefs.get('openURL.version'))
+ openURLMenu.selectedIndex = i;
+ }
}
function accept()
@@ -64,6 +76,25 @@ function accept()
Scholar.Prefs.set('parseEndNoteMIMETypes', parseEndnoteBox.checked);
Scholar.Ingester.MIMEHandler.init();
}
+
Scholar.Prefs.set('openURL.resolver', openURLServerField.value);
Scholar.Prefs.set('openURL.version', openURLVersionMenu.value);
+}
+
+function onOpenURLSelected()
+{
+ if(openURLMenu.value == "custom")
+ {
+ openURLServerField.focus();
+ }
+ else
+ {
+ openURLServerField.value = openURLResolvers[openURLMenu.selectedIndex]['url'];
+ openURLVersionMenu.value = openURLResolvers[openURLMenu.selectedIndex]['version'];
+ }
+}
+
+function onOpenURLCustomized()
+{
+ openURLMenu.value = "custom";
}
\ No newline at end of file
diff --git a/chrome/chromeFiles/content/scholar/preferences.xul b/chrome/chromeFiles/content/scholar/preferences.xul
@@ -48,14 +48,22 @@
<groupbox>
<caption label="&scholar.preferences.openurl.caption;"/>
+
+ <menulist id="openURLMenu" oncommand="onOpenURLSelected();">
+ <menupopup>
+ <menuseparator/>
+ <menuitem label="Custom..." value="custom" selected="true"/>
+ </menupopup>
+ </menulist>
+
<hbox align="center">
<label value="&scholar.preferences.openurl.server;"/>
- <textbox id="openURLServerField" flex="1"/>
+ <textbox id="openURLServerField" flex="1" oninput="onOpenURLCustomized();"/>
</hbox>
<hbox align="center">
<label value="&scholar.preferences.openurl.version;"/>
- <menulist id="openURLVersionMenu">
+ <menulist id="openURLVersionMenu" oncommand="onOpenURLCustomized();">
<menupopup>
<menuitem label="0.1" value="0.1"/>
<menuitem label="1.0" value="1.0"/>