2 <!-- Application: Evergreen Staff Client -->
3 <!-- Screen: Example Template for remote xul -->
5 <!-- ///////////////////////////////////////////////////////////////////////////////////////////////////////////// -->
7 <?xml-stylesheet href="chrome://global/skin/" type="text/css"?>
8 <?xml-stylesheet href="chrome://open_ils_staff_client/skin/global.css" type="text/css"?>
9 <?xml-stylesheet href="/xul/server/skin/global.css" type="text/css"?>
11 <!-- ///////////////////////////////////////////////////////////////////////////////////////////////////////////// -->
13 <!DOCTYPE window PUBLIC "" ""[
14 <!--#include virtual="/opac/locale/en-US/lang.dtd"-->
18 <!-- ///////////////////////////////////////////////////////////////////////////////////////////////////////////// -->
20 <?xul-overlay href="/xul/server/OpenILS/util_overlay.xul"?>
22 <window id="cat_z3950_win"
23 onload="try { my_init(); } catch(E) { alert(E); }"
24 xmlns:html="http://www.w3.org/1999/xhtml"
25 xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
27 <!-- ///////////////////////////////////////////////////////////////////////////////////////////////////////////// -->
29 <script type="text/javascript">
30 var myPackageDir = 'open_ils_staff_client'; var IAMXUL = true; var g = {};
32 <scripts id="openils_util_scripts"/>
34 <script type="text/javascript" src="/xul/server/main/JSAN.js"/>
39 netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
40 if (typeof JSAN == 'undefined') { throw( "The JSAN library object is missing."); }
41 JSAN.errorLevel = "die"; // none, warn, or die
42 JSAN.addRepository('/xul/server/');
43 JSAN.use('util.error'); g.error = new util.error();
44 g.error.sdump('D_TRACE','my_init() for cat_z3950.xul');
48 JSAN.use('cat.z3950'); g.z3950 = new cat.z3950();
52 /* this guy grabs most things through the DOM, but I want to move JSAN libraries away from that,
53 or at the very least, push node ID's in through here. */
57 if (typeof window.xulG == 'object' && typeof window.xulG.set_tab_name == 'function') {
58 try { window.xulG.set_tab_name('Z39.50'); } catch(E) { alert(E); }
62 var err_msg = "!! This software has encountered an error. Please tell your friendly " +
63 "system administrator or software developer the following:\ncat/z3950.xul\n" + E + '\n';
64 try { g.error.sdump('D_ERROR',err_msg); } catch(E) { dump(err_msg); }
73 <commandset id="cat_z3950_cmds">
74 <command id="cmd_broken" />
78 <caption label="MARC Import via Z39.50"/>
79 <groupbox orient="horizontal">
80 <caption id="c2" label="Service and Credentials" class="shrinkable_groupbox"/>
81 <label value="Service:" />
82 <hbox id="menu_placeholder" flex="1"/>
83 <label value="Username:" control="username" accesskey="U"/>
84 <textbox id="username" />
85 <label value="Password:" control="password"/>
86 <textbox id="password" />
87 <button id="save_creds" label="Save as Default" accesskey="D"/>
90 <caption label="Query" class="shrinkable_groupbox"/>
94 Tip: Click a search field label and then the "Save as Default" button to have that field focused by default.
99 <columns><column /><column flex="1" /><column /><column flex="1"/><column /><column flex="1"/></columns>
100 <rows id="query_inputs">
102 <label value="&staff.z39_50.search_class.tcn;" control="tcn_input" onclick="g.z3950.default_attr = 'tcn'" accesskey="0"/>
103 <textbox id="tcn_input" mytype="search_class" search_class="tcn"/>
104 <label value="&staff.z39_50.search_class.isbn;" control="isbn_input" onclick="g.z3950.default_attr = 'isbn'"/>
105 <textbox id="isbn_input" mytype="search_class" search_class="isbn"/>
106 <label value="&staff.z39_50.search_class.issn;" control="issn_input" onclick="g.z3950.default_attr = 'issn'"/>
107 <textbox id="issn_input" mytype="search_class" search_class="issn"/>
110 <label value="&staff.z39_50.search_class.title;" control="title_input" onclick="g.z3950.default_attr = 'title'"/>
111 <textbox id="title_input" mytype="search_class" search_class="title"/>
112 <label value="&staff.z39_50.search_class.author;" control="author_input" onclick="g.z3950.default_attr = 'author'"/>
113 <textbox id="author_input" mytype="search_class" search_class="author"/>
116 <label value="&staff.z39_50.search_class.pubdate;" control="pubdate_input" onclick="g.z3950.default_attr = 'pubdate'"/>
117 <textbox id="pubdate_input" mytype="search_class" search_class="pubdate"/>
118 <label value="&staff.z39_50.search_class.publisher;" control="publisher_input" onclick="g.z3950.default_attr = 'publisher'"/>
119 <textbox id="publisher_input" mytype="search_class" search_class="publisher"/>
125 <button id="raw_search" label="Raw Search" accesskey="w"/>
127 <button id="clear" label="Clear Form" accesskey="C"/>
128 <button id="search" label="Search" accesskey="S"/>
131 <splitter><grippy/></splitter>
133 <caption label="Results" />
134 <vbox id="result_message" />
136 <button id="page_next" label="Fetch More Results" accesskey="M" disabled="true"/>
138 <button id="marc_view" label="MARC View" accesskey="V" disabled="true"/>
139 <button id="marc_import_overlay" label="MARC Editor for Overlay" accesskey="O" disabled="true"/>
140 <button id="marc_import" label="MARC Editor for Import" accesskey="I" disabled="true"/>
142 <deck id="deck" flex="1">
143 <tree id="results" flex="1" enableColumnDrag="true" seltype="single"/>
144 <iframe id="marc_frame" src="/xul/server/cat/marc_view.html" flex="1"/>