2 <!-- Application: Evergreen Staff Client -->
3 <!-- Screen: Brief Bib Display -->
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"-->
17 <!-- ///////////////////////////////////////////////////////////////////////////////////////////////////////////// -->
19 <?xul-overlay href="/xul/server/OpenILS/util_overlay.xul"?>
21 <window id="cat_bib_brief_win"
22 onload="try { my_init(); font_helper(); } catch(E) { alert(E); }"
23 xmlns:html="http://www.w3.org/1999/xhtml"
24 xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
26 <!-- ///////////////////////////////////////////////////////////////////////////////////////////////////////////// -->
28 <script type="text/javascript">
29 var myPackageDir = 'open_ils_staff_client'; var IAMXUL = true; var g = {};
31 <scripts id="openils_util_scripts"/>
33 <script type="text/javascript" src="/xul/server/main/JSAN.js"/>
41 netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
42 if (typeof JSAN == 'undefined') { throw( "The JSAN library object is missing."); }
43 JSAN.errorLevel = "die"; // none, warn, or die
44 JSAN.addRepository('/xul/server/');
45 JSAN.use('util.error'); g.error = new util.error();
46 g.error.sdump('D_TRACE','my_init() for cat_bib_brief.xul');
49 docid = g.cgi.param('docid');
51 JSAN.use('util.network'); g.network = new util.network();
52 JSAN.use('util.date');
54 document.getElementById('caption').setAttribute('tooltiptext','Record ID = ' + docid);
58 JSAN.use('OpenILS.data'); var data = new OpenILS.data(); data.init({'via':'stash'});
59 data.last_record = docid; data.stash('last_record');
62 api.MODS_SLIM_RECORD_RETRIEVE.app,
63 api.MODS_SLIM_RECORD_RETRIEVE.method,
66 var mods = req.getResultObject();
68 if (mods.title()) document.getElementById('title').appendChild(
69 document.createTextNode(String(mods.title()).substr(0,50))
71 if (mods.author()) document.getElementById('author').appendChild(
72 document.createTextNode(mods.author())
74 if (mods.edition()) document.getElementById('edition').appendChild(
75 document.createTextNode(mods.edition())
77 if (mods.pubdate()) document.getElementById('pubdate').appendChild(
78 document.createTextNode(mods.pubdate())
80 if (mods.tcn()) document.getElementById('tcn').appendChild(
81 document.createTextNode(mods.tcn())
84 if (window.xulG && typeof window.xulG.set_tab_name == 'function') {
86 window.xulG.set_tab_name(mods.tcn());
88 g.error.sdump('D_ERROR','bib_brief.xul, set_tab: ' + E);
93 api.FM_BRE_RETRIEVE_VIA_ID.app,
94 api.FM_BRE_RETRIEVE_VIA_ID.method,
98 var meta = req.getResultObject();
99 if (typeof meta.ilsevent != 'undefined') throw(meta);
101 document.getElementById('tcn_source').appendChild(
102 document.createTextNode(meta.tcn_source())
104 g.network.simple_request('FM_AU_FLESHED_RETRIEVE_VIA_ID',[ses(),meta.creator().id()],
106 var creator_au = rreq.getResultObject();
107 document.getElementById('creator_bc').appendChild(
108 document.createTextNode(creator_au.card().barcode())
112 g.network.simple_request('FM_AU_FLESHED_RETRIEVE_VIA_ID',[ses(),meta.editor().id()],
114 var editor_au = rreq.getResultObject();
115 document.getElementById('editor_bc').appendChild(
116 document.createTextNode(editor_au.card().barcode())
120 document.getElementById('creator').appendChild(
121 document.createTextNode('('+data.hash.aou[meta.creator().home_ou()].shortname()+') ')
123 document.getElementById('creator_bc').setAttribute('au_id',meta.creator().id());
124 document.getElementById('editor').appendChild(
125 document.createTextNode('('+data.hash.aou[meta.editor().home_ou()].shortname()+') ')
127 document.getElementById('editor_bc').setAttribute('au_id',meta.editor().id());
128 document.getElementById('edit_date').appendChild(
129 document.createTextNode(
130 util.date.formatted_date(meta.edit_date(),"%D")
133 var t = document.getElementById('caption').getAttribute('label');
134 if (get_bool( meta.deleted() )) {
136 document.getElementById('caption').setAttribute('style','background: red; color: white;');
138 if ( ! get_bool( meta.active() ) ) {
140 document.getElementById('caption').setAttribute('style','background: red; color: white;');
142 document.getElementById('caption').setAttribute('label',t);
144 g.error.standard_unexpected_error_alert('meta retrieve',E);
152 var t = document.getElementById('caption').getAttribute('label');
153 t += ' (Not Cataloged) ';
154 document.getElementById('caption').setAttribute('style','background: red; color: white;');
155 document.getElementById('caption').setAttribute('label',t);
159 var err_msg = "!! This software has encountered an error. Please tell your friendly " +
160 "system administrator or software developer the following:\ncat/bib_brief.xul\n" + E + '\n';
161 try { g.error.sdump('D_ERROR',err_msg); } catch(E) { dump(err_msg); }
166 function view_marc() {
167 JSAN.use('util.window'); var win = new util.window();
169 alert('Item not cataloged.');
171 win.open( urls.XUL_MARC_VIEW + '?noprint=1&docid=' + docid, 'marc_view', 'chrome,resizable,modal,width=400,height=400');
175 function spawn_patron(span) {
177 var loc = urls.XUL_PATRON_DISPLAY; // + '?barcode=' + window.escape(barcode);
179 if (typeof window.xulG == 'object' && typeof window.xulG.set_tab == 'function') {
180 window.xulG.set_tab( loc, {}, { 'id' : span.getAttribute('au_id') } );
182 copy_to_clipboard( span.textContent );
185 g.error.standard_unexpected_error_alert('spawning patron display',E);
192 <groupbox id="groupbox" flex="1" style="overflow: auto; min-height: 100px;">
193 <caption label="Record Summary" id="caption"/>
194 <html:table width="90%">
195 <html:tr valign="top">
196 <html:td colspan="3">
197 <html:span style="font-weight: bold;">Title: </html:span><html:span id="title" />
200 (<html:a href="javascript:view_marc();" style="text-decoration: underline; color: blue;">View MARC</html:a>)
203 <html:tr valign="top">
204 <html:td colspan="2">
205 <html:span style="font-weight: bold;">Author: </html:span><html:span id="author" />
208 <html:span style="font-weight: bold;">Edition: </html:span><html:span id="edition" />
211 <html:span style="font-weight: bold;">Pub Date: </html:span><html:span id="pubdate" />
214 <html:tr valign="top">
216 <html:span style="font-weight: bold;">TCN: (</html:span><html:span id="tcn_source"/><html:span style="font-weight: bold;">) </html:span><html:span id="tcn" style="text-decoration: underline; color: blue;" onclick="copy_to_clipboard(event)"/>
219 <html:span style="font-weight: bold;">Created By: </html:span><html:span id="creator" />
220 <html:span id="creator_bc" style="text-decoration: underline; color: blue;" onclick="try{spawn_patron(this);}catch(E){alert(E);}"/>
223 <html:span style="font-weight: bold;">Last Edited By: </html:span><html:span id="editor" />
224 <html:span id="editor_bc" style="text-decoration: underline; color: blue;" onclick="try{spawn_patron(this);}catch(E){alert(E);}"/>
227 <html:span style="font-weight: bold;">Last Edited On: </html:span><html:span id="edit_date" />