]> git.evergreen-ils.org Git - Evergreen.git/blob - Evergreen/staff_client/chrome/content/evergreen/util/spawn_win.js
patron search
[Evergreen.git] / Evergreen / staff_client / chrome / content / evergreen / util / spawn_win.js
1 function spawn_interface(d,placement,place,chrome,label,passthru_params) {
2         sdump('D_SPAWN',arg_dump(arguments,{0:true,1:true,2:true,3:true,4:true,5:true}));
3         var w;
4         switch(placement) {
5                 case 'new_tab' : 
6                         new_tab(d,place); 
7                         w = spawn_interface(d,'replace_tab',place,chrome,label,passthru_params); break;
8
9                 case 'replace_tab' : 
10                         w = replace_tab(d,place,label,chrome); break;
11
12                 case 'new_window' : 
13                         w = new_window( chrome, { 'window_name' : label } ); break;
14
15
16                 case 'replace_iframe' :
17                 case 'replace_browser' :
18                 case 'replace_editor' :
19                         var el = placement.slice(8);
20                         var container = get_widget( d, place );
21                         empty_widget( d, container );
22                         w = spawn_interface(d,'new_' + el,place,chrome,label,passthru_params); break;
23
24                 case 'new_iframe' :
25                 case 'new_browser' :
26                 case 'new_editor' :
27                         var el = placement.slice(4);
28                         var frame = d.createElement( el );
29                         frame.setAttribute('flex','1');
30                         get_widget( d, place ).appendChild( frame );
31                         w = spawn_interface(d,'set_frame',frame,chrome,label,passthru_params); break;
32
33                 case 'set_frame' :
34                         var frame = get_widget( d, place );
35                         frame.setAttribute('src',chrome); 
36                         w = frame.contentWindow;
37                         break;
38         }
39         w.params = passthru_params;
40         w.mw = mw;
41         return w;
42 }
43
44 function spawn_batch_copy_editor(d,placement,place,passthru_params) {
45         var chrome = 'chrome://evergreen/content/cat/copy_edit.xul';
46         return spawn_interface(d,placement,place,chrome,getString('copies_editor_interface_label'),passthru_params);
47 }
48
49 function spawn_bill_pay(d,placement,place,passthru_params) {
50         var chrome = 'chrome://evergreen/content/bill/bill.xul';
51         return spawn_interface(d,placement,place,chrome,getString('bills_interface_label'),passthru_params);
52 }
53
54 function spawn_check_in(d,placement,place,passthru_params) {
55         var chrome = 'chrome://evergreen/content/circ/checkin.xul';
56         return spawn_interface(d,placement,place,chrome,getString('checkin_interface_label'),passthru_params);
57 }
58
59 function spawn_check_out(d,placement,place,passthru_params) {
60         var chrome = 'chrome://evergreen/content/circ/checkout.xul';
61         return spawn_interface(d,placement,place,chrome,getString('checkout_interface_label'),passthru_params);
62 }
63
64 function spawn_circ_display(d,placement,place,passthru_params) {
65         var chrome = 'chrome://evergreen/content/circ/circ_deck_patron.xul';
66         return spawn_interface(d,placement,place,chrome,getString('display_patron_interface_label'),passthru_params);
67 }
68
69 function spawn_circ_list(d,placement,place,passthru_params) {
70         var chrome = 'chrome://evergreen/content/circ/circ_list.xul';
71         return spawn_interface(d,placement,place,chrome,getString('items_out_interface_label'),passthru_params);
72 }
73
74 function spawn_circ_search(d,placement,place,passthru_params) {
75         var chrome = 'chrome://evergreen/content/circ/circ_deck_search.xul';
76         return spawn_interface(d,placement,place,chrome,getString('patron_search_interface_label'),passthru_params);
77 }
78
79 function spawn_clamshell(d,placement,place,passthru_params) {
80         var chrome = 'chrome://evergreen/content/main/clam_shell.xul';
81         return spawn_interface(d,placement,place,chrome,'clamshell',passthru_params);
82 }
83
84 function spawn_copy_browser(d,placement,place,passthru_params) {
85         var chrome = 'chrome://evergreen/content/cat/browse_list.xul';
86         return spawn_interface(d,placement,place,chrome,getString('copy_browser_interface_label'),passthru_params);
87 }
88
89 function spawn_main() {
90         sdump('D_SPAWN','trying to spawn app_shell\n');
91         try {
92                 var w = new_window('chrome://evergreen/content/main/app_shell.xul');
93                 if (!w) { throw('window ref == null'); }
94                 try {
95                         w.document.title = G.user.usrname() + '@' + G.user_ou.name();
96                         w.params = {};
97                 } catch(E) {
98                         alert('Hrmm. ' + pretty_print( js2JSON(E) ) );
99                 }
100         } catch(E) {
101                 dump(js2JSON(E)+'\n');
102                 //incr_progressmeter('auth_meter',-100);
103                 //alert('Login failed on new_window: ' + js2JSON(E)); enable_login_prompts(); return;
104         }
105         //incr_progressmeter('auth_meter',100);
106 }
107
108 function spawn_marc_editor(d,placement,place,passthru_params) {
109         var chrome = 'chrome://evergreen/content/cat/marc.xul';
110         return spawn_interface(d,placement,place,chrome,getString('marc_editor_interface_label'),passthru_params);
111 }
112
113 function spawn_opac_navigator(d,placement,place,passthru_params) {
114         var chrome = 'chrome://evergreen/content/opac/opac.xul';
115         //var chrome = 'http://google.com/';
116         return spawn_interface(d,placement,place,chrome,getString('opac_navigator_interface_label'),passthru_params);
117 }
118
119 function spawn_oclc_import(d,placement,place,params) {
120         sdump('D_SPAWN','trying to spawn_oclc_import('+js2JSON(passthru_params)+')\n');
121         // sample TCN: 03715963 
122         try {
123                 if (params.tcn.length < 6) {
124                         throw("Too short.  At the moment, we're really doing a search rather than a retrieve, and it's a substring search at that.  We grab the result that matches exactly.  But sending a short query would just be mean. :)");
125                 }
126                 var result = user_request(
127                         'open-ils.search',
128                         'open-ils.search.z3950.import',
129                         [ G.auth_ses[0], params.tcn ]
130                 )[0];
131                 if (typeof result == 'object') {
132                         if (result.records.length > 0) {        
133                                 params['import_tree'] = result.records[0];
134                         } else {
135                                 throw('no records. result = ' + js2JSON(result) + '\n');
136                         }
137                 } else {
138                         throw('result: ' + js2JSON(result) + '\n');
139                 }
140                 spawn_marc_editor(d,placement,place,params);
141         } catch(E) {
142                 handle_error(E);
143         }
144 }
145
146 function spawn_patron_edit(d,placement,place,passthru_params) {
147         var chrome = 'chrome://evergreen/content/patron/patron_edit.xul';
148         return spawn_interface(d,placement,place,chrome,getString('patron_editor_interface_label'),passthru_params);
149 }
150
151 function spawn_patron_register(d,placement,place,passthru_params) {
152         var chrome = 'chrome://evergreen/content/patron/patron_new.xul';
153         return spawn_interface(d,placement,place,chrome,getString('patron_register_interface_label'),passthru_params);
154 }
155
156 function spawn_patron_search(d,placement,place,passthru_params) {
157         var chrome = 'chrome://evergreen/content/patron/patron_search.xul';
158         return spawn_interface(d,placement,place,chrome,getString('patron_interface_label'),passthru_params);
159 }
160
161 function spawn_patron_search_form(d,placement,place,passthru_params) {
162         var chrome = 'chrome://evergreen/content/patron/patron_search_form.xul';
163         return spawn_interface(d,placement,place,chrome,getString('patron_search_interface_label'),passthru_params);
164 }
165
166 function spawn_copy_stat_cat_edit(d,placement,place,passthru_params) {
167         var chrome = 'chrome://evergreen/content/stat_cat/copy_stat_cat_editor.xul';
168         return spawn_interface(d,placement,place,chrome,getString('copy_stat_cat_editor_interface'),passthru_params);
169 }
170
171 function spawn_patron_stat_cat_edit(d,placement,place,passthru_params) {
172         var chrome = 'chrome://evergreen/content/stat_cat/patron_stat_cat_editor.xul';
173         return spawn_interface(d,placement,place,chrome,getString('patron_stat_cat_editor_interface'),passthru_params);
174 }
175
176 function spawn_survey_admin_wizard(d,placement,place,passthru_params) {
177         var chrome = 'chrome://evergreen/content/survey/survey_wizard.xul';
178         return spawn_interface(d,placement,place,chrome,getString('survey_admin_interface_label'),passthru_params);
179 }
180
181
182 function spawn_z3950_import(d,placement,place,passthru_params) {
183         var chrome = 'chrome://evergreen/content/z39_50/z39_50.xul';
184         return spawn_interface(d,placement,place,chrome,getString('z39_50_import_interface_label'),passthru_params);
185 }
186
187 function spawn_javascript_console(d,placement,place,passthru_params) {
188         var chrome = 'chrome://global/cotnent/console.xul';
189         return spawn_interface(d,placement,place,chrome,getString('javascript_console_label'),passthru_params);
190 }
191
192 function spawn_xuleditor(d,placement,place,passthru_params) {
193         var chrome = 'chrome://evergreen/content/util/xuledit.xul';
194         return spawn_interface(d,placement,place,chrome,getString('xuleditor_label'),passthru_params);
195 }
196
197 function spawn_javascript_shell(d,placement,place,passthru_params) {
198         var chrome = 'chrome://evergreen/content/util/shell.html';
199         return spawn_interface(d,placement,place,chrome,getString('javascript_shell_label'),passthru_params);
200 }