]> git.evergreen-ils.org Git - Evergreen.git/blob - Open-ILS/xul/staff_client/server/main/data.xul
xul_param and modal xulG conversion
[Evergreen.git] / Open-ILS / xul / staff_client / server / main / data.xul
1 <?xml version="1.0"?>
2 <!-- Application: Evergreen Staff Client -->
3 <!-- Screen: Main, Authentication Window -->
4
5 <!-- ///////////////////////////////////////////////////////////////////////////////////////////////////////////// -->
6 <!-- PRESENTATION -->
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="chrome://open_ils_staff_client/skin/auth.css" type="text/css"?>
10 <!-- Load these just to cache them -->
11 <?xml-stylesheet href="/xul/server/skin/global.css" type="text/css"?>
12 <?xml-stylesheet href="/xul/server/skin/cat.css" type="text/css"?>
13 <?xml-stylesheet href="/xul/server/skin/circ.css" type="text/css"?>
14 <?xml-stylesheet href="/xul/server/skin/patron_display.css" type="text/css"?>
15 <?xml-stylesheet href="/xul/server/skin/patron_summary.css" type="text/css"?>
16 <?xml-stylesheet href="/xul/server/skin/simple_auth.css" type="text/css"?>
17
18
19 <!-- ///////////////////////////////////////////////////////////////////////////////////////////////////////////// -->
20 <!-- LOCALIZATION -->
21 <!DOCTYPE window PUBLIC "" ""[
22         <!--#include virtual="/opac/locale/en-US/lang.dtd"-->
23 ]>
24
25 <!-- ///////////////////////////////////////////////////////////////////////////////////////////////////////////// -->
26 <!-- OVERLAYS -->
27 <?xul-overlay href="/xul/server/OpenILS/util_overlay.xul"?>
28
29 <window id="data_win" 
30         onload="try { data_init(); } catch(E) { alert(E); }"
31         title="&staff.auth.title;"
32         xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
33
34
35         <!-- ///////////////////////////////////////////////////////////////////////////////////////////////////////////// -->
36         <!-- BEHAVIOR -->
37         <script type="text/javascript">var myPackageDir = 'open_ils_staff_client'; var IAMXUL = true; var g = {};</script>
38         <scripts id="openils_util_scripts"/>
39
40         <script type="text/javascript" src="chrome://open_ils_staff_client/content/main/lang.js"/>
41         <script type="text/javascript" src="/xul/server/main/lang.js"/>
42         <script type="text/javascript" src="chrome://open_ils_staff_client/content/main/JSAN.js"/>
43         <script>
44         <![CDATA[
45                 dump("entities['lang.version'] = " + entities['lang.version'] + '\n');
46
47                 function data_init() {
48
49                         netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
50
51                         if (typeof JSAN == 'undefined') {
52                                 throw(
53                                         "The JSAN library object is missing."
54                                 );
55                         }
56                         /////////////////////////////////////////////////////////////////////////////
57
58                         JSAN.errorLevel = "die"; // none, warn, or die
59                         JSAN.addRepository('/xul/server/');
60
61                         function cache_me(msg,how) {
62                                 try {
63                                         switch(how) {
64                                                 case 'jsan' : JSAN.use(msg); break;
65                                                 case 'http' :
66                                                         var x = new XMLHttpRequest();
67                                                         x.open("GET",msg,true);
68                                                         x.send(null);
69                                                 break;
70                                         }
71                                         dump(msg + '\n');
72                                         var x = document.getElementById('data_progress');
73                                         if (x) {
74                                                 x.appendChild( document.createTextNode( msg + ' ') );
75                                         }
76                                 } catch(E) {
77                                         dump(msg + '\n' + E);
78                                 }
79                         }
80
81                         // load these just so they'll get cached
82                         cache_me('/xul/server//util/exec.js','http');
83                         cache_me('/xul/server//util/barcode.js','http');  
84                         cache_me('/xul/server//util/controller.js','http');  
85                         cache_me('/xul/server//util/deck.js','http');  
86                         cache_me('/xul/server//util/fm_utils.js','http');  
87                         cache_me('/xul/server//util/list.js','http');  
88                         cache_me('/xul/server//util/network.js','http'); 
89                         cache_me('/xul/server//util/sound.js','http'); 
90                         cache_me('/xul/server//util/widgets.js','http');  
91                         cache_me('/xul/server//util/browser.js','http');  
92                         cache_me('/xul/server//util/error.js','http');  
93                         cache_me('/xul/server//util/file.js','http'); 
94                         cache_me('/xul/server//util/functional.js','http');  
95                         cache_me('/xul/server//util/money.js','http');  
96                         cache_me('/xul/server//util/print.js','http');  
97                         cache_me('/xul/server//util/text.js','http'); 
98                         cache_me('/xul/server//util/window.js','http'); 
99
100                         cache_me('/xul/server/util/fancy_prompt.xul','http');
101                         cache_me('/xul/server/util/browser.xul','http');
102                         cache_me('/xul/server/util/rbrowser.xul','http');
103
104                         cache_me('/xul/server//patron/display.js','http');  
105                         cache_me('/xul/server//patron/bills.js','http');  
106                         cache_me('/xul/server//patron/holds.js','http');  
107                         cache_me('/xul/server//patron/items.js','http'); 
108                         cache_me('/xul/server//patron/search_form.js','http');  
109                         cache_me('/xul/server//patron/search_result.js','http');  
110                         cache_me('/xul/server//patron/summary.js','http'); 
111                         cache_me('/xul/server//patron/util.js','http'); 
112
113                         cache_me('/xul/server/patron/display.xul','http');  
114                         cache_me('/xul/server/patron/display_overlay.xul','http');  
115                         cache_me('/xul/server/patron/bills.xul','http');  
116                         cache_me('/xul/server/patron/bills_overlay.xul','http');  
117                         cache_me('/xul/server/patron/holds.xul','http');  
118                         cache_me('/xul/server/patron/holds_overlay.xul','http');  
119                         cache_me('/xul/server/patron/items.xul','http'); 
120                         cache_me('/xul/server/patron/items_overlay.xul','http'); 
121                         cache_me('/xul/server/patron/search_form.xul','http');  
122                         cache_me('/xul/server/patron/search_form_overlay.xul','http');  
123                         cache_me('/xul/server/patron/search_result.xul','http');  
124                         cache_me('/xul/server/patron/search_result_overlay.xul','http');  
125                         cache_me('/xul/server/patron/summary.xul','http'); 
126                         cache_me('/xul/server/patron/summary_overlay.xul','http'); 
127                         cache_me('/xul/server/patron/barcode_entry.xul','http');
128
129                         cache_me('/xul/server/patron/ue.xhtml','http');
130                         cache_me('/xul/server/admin/adminlib.js','http');
131                         cache_me('/xul/server/admin/admin.css','http');
132                         cache_me('/xul/server/patron/ue_config.js','http');
133                         cache_me('/xul/server/patron/ue_ui.js','http');
134                         cache_me('/xul/server/patron/ue.js','http');
135                         cache_me('/opac/common/js//config.js','http');
136                         cache_me('/opac/common/js/Cookie.js','http');
137                         cache_me('/opac/common/js/Cookies.js','http');
138                         cache_me('/opac/common/js/opac_utils.js','http');
139                         cache_me('/opac/common/js/init.js','http');
140                         cache_me('/opac/common/js/jscalendar/calendar-brown.css','http');
141                         cache_me('/opac/common/js/jscalendar/calendar.js','http');
142                         cache_me('/opac/common/js/jscalendar/lang/calendar-en.js','http');
143                         cache_me('/opac/common/js/jscalendar/calendar-setup.js','http');
144                         cache_me('/opac/common/js/jscalendar/img.gif','http');
145
146                         cache_me('/xul/server/skin/media/images/stop_sign.png','http');
147                         cache_me('/xul/server/skin/media/images/bad_barcode.png','http');
148                         cache_me('/xul/server/skin/media/images/grinder.gif','http');     
149                         cache_me('/xul/server/skin/media/images/patron_left_arrow.png','http');
150                         cache_me('/xul/server/skin/media/images/skull.png','http');
151                         cache_me('/xul/server/skin/media/images/tools.png','http');
152                         cache_me('/xul/server/skin/media/images/up_arrow.gif','http');
153                         cache_me('/xul/server/skin/media/images/book_question.png','http');
154                         cache_me('/xul/server/skin/media/images/down_arrow.gif','http');
155                         cache_me('/xul/server/skin/media/images/icon_delete.gif','http');
156                         cache_me('/xul/server/skin/media/images/patron_right_arrow.png','http');
157                         cache_me('/xul/server/skin/media/images/turtle.gif','http');
158                         cache_me('/xul/server/skin/media/audio/bonus.wav','http');
159                         cache_me('/xul/server/skin/media/audio/question.wav','http');
160                         cache_me('/xul/server/skin/media/audio/redalert.wav','http');
161                         cache_me('/xul/server/skin/media/audio/toggled.wav','http');
162
163                         cache_me('/xul/server//circ/checkin.js','http');  
164                         cache_me('/xul/server//circ/checkout.js','http');  
165                         cache_me('/xul/server//circ/copy_status.js','http'); 
166                         cache_me('/xul/server//circ/hold_capture.js','http'); 
167                         cache_me('/xul/server//circ/in_house_use.js','http');  
168                         cache_me('/xul/server//circ/util.js','http'); 
169
170                         cache_me('/xul/server/circ/checkout_overlay.xul','http');
171                         cache_me('/xul/server/circ/checkout.xul','http');
172                         cache_me('/xul/server/circ/checkin_overlay.xul','http');
173                         cache_me('/xul/server/circ/checkin.xul','http');
174                         cache_me('/xul/server/circ/circ_brief.xul','http');
175                         cache_me('/xul/server/circ/circ_summary.xul','http');
176                         cache_me('/xul/server/circ/copy_status.xul','http');
177                         cache_me('/xul/server/circ/copy_status_overlay.xul','http');
178
179                         // ----
180
181                         JSAN.use('OpenILS.data');
182                         g.data = new OpenILS.data()
183                         g.data.on_error = xulG.auth.logoff;
184                         g.data.entities = entities;
185                         g.data.stash('entities');
186
187                         g.data.session = {};
188                         g.data.session.key = xulG.auth.session.key;
189                         g.data.session.authtime = xulG.auth.session.authtime;
190                         g.data.stash('session');
191                         g.data.on_complete = function () {
192
193                                 g.data.stash('list','hash','tree','temp','cached_request');
194
195                                 setInterval(
196                                         function() {
197                                                 try {
198                                                         var remove_me = [];
199                                                         var n = Number( new Date() );
200                                                         for (var i in g.data.cached_request) {
201                                                                 if (g.data.cached_request[i].expire_time < n && g.data.cached_request[i].status != 'pending') remove_me.push(i);
202                                                         }
203                                                         dump('trimming ' + remove_me.length + ' requests from cache\n');
204                                                         for (var i in remove_me) delete g.data.cached_request[i];
205                                                 } catch(E) {
206                                                         alert(E);
207                                                 }
208                                         }, 180000
209                                 );
210
211                                 g.data._debug_stash();
212
213                                 document.getElementById('iframe').setAttribute(
214                                         'src',
215                                         urls.XUL_OFFLINE_GENERATE_WIDGETS       
216                                 );
217
218                                 document.getElementById('caption').setAttribute('label','Data loaded.');
219
220                                 xulG.window.open(urls.XUL_MENU_FRAME
221                                         + '?server='+window.escape(xulG.url),
222                                         'main'+xulG.window.window_name_increment(),'chrome,resizable'
223                                 );
224
225                         }
226
227                         g.data.init();
228         
229                         g.data.init_observer_functions();
230
231                 }
232         ]]>
233         </script>
234
235         <groupbox id="data_groupbox" flex="1" class="my_overflow"> 
236                 <caption id="caption" label="Loading data..."/> 
237                 <description id="data_progress"/>
238                 <iframe id="iframe" />
239         </groupbox>
240
241 </window>
242