1 function spawn_interface(d,placement,place,chrome,label,passthru_params,clone) {
2 sdump('D_SPAWN',arg_dump(arguments,{0:true,1:true,2:true,3:true,4:true,5:true}));
7 w = spawn_interface(d,'replace_tab',place,chrome,label,passthru_params,clone); break;
10 w = mw.replace_tab(d,place,label,chrome); break;
13 w = new_window( chrome, { 'window_name' : label } ); break;
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,clone);
28 var el = placement.slice(4);
29 var frame = d.createElement( el );
30 frame.setAttribute('flex','1');
31 get_widget( d, place ).appendChild( frame );
32 w = spawn_interface(d,'set_frame',frame,chrome,label,passthru_params,clone);
36 var frame = get_widget( d, place );
38 frame.contentWindow.document = mw.G.test_win.document.cloneNode(true);
40 frame.setAttribute('src',chrome);
42 w = frame.contentWindow;
45 w.params = passthru_params;
47 if (placement == 'new_tab' || placement == 'replace_tab') w.app_shell = d;
51 /* developer utilities */
53 function spawn_javascript_console(d,placement,place,passthru_params,clone) {
54 var chrome = 'chrome://global/content/console.xul';
55 return spawn_interface(d,placement,place,chrome,getString('javascript_console_label'),passthru_params,clone);
58 function spawn_xuleditor(d,placement,place,passthru_params,clone) {
59 var chrome = 'chrome://evergreen/content/util/xuledit.xul';
60 return spawn_interface(d,placement,place,chrome,getString('xuleditor_label'),passthru_params,clone);
63 function spawn_javascript_shell(d,placement,place,passthru_params,clone) {
64 var chrome = 'chrome://evergreen/content/util/shell.html';
65 return spawn_interface(d,placement,place,chrome,getString('javascript_shell_label'),passthru_params,clone);
68 function spawn_filter_console(d,placement,place,passthru_params,clone) {
69 var chrome = 'chrome://evergreen/content/util/filter_console.xul';
70 return spawn_interface(d,placement,place,chrome,getString('filter_console_label'),passthru_params,clone);
73 function spawn_fieldmapper(d,placement,place,passthru_params,clone) {
74 var chrome = 'chrome://evergreen/content/util/fm_view.xul';
75 return spawn_interface(d,placement,place,chrome,getString('fieldmapper_label'),passthru_params,clone);
80 function spawn_main() {
81 sdump('D_SPAWN','trying to spawn app_shell\n');
83 var w = new_window('chrome://evergreen/content/main/app_shell.xul');
84 if (!w) { throw('window ref == null'); }
86 w.document.title = G.user.usrname() + '@' + G.user_ou.name();
89 alert('Hrmm. ' + pretty_print( js2JSON(E) ) );
92 dump(js2JSON(E)+'\n');
96 function spawn_checkin(d,placement,place,passthru_params,clone) {
97 var chrome = 'chrome://evergreen/content/circ/checkin.xul';
98 return spawn_interface(d,placement,place,chrome,getString('checkin_interface_label'),passthru_params,clone);
101 function spawn_hold_capture(d,placement,place,passthru_params,clone) {
102 var chrome = 'chrome://evergreen/content/circ/hold_capture.xul';
103 return spawn_interface(d,placement,place,chrome,getString('hold_capture_interface_label'),passthru_params,clone);
106 function spawn_opac_navigator(d,placement,place,passthru_params,clone) {
107 var chrome = 'chrome://evergreen/content/opac/opac.xul';
108 //var chrome = 'http://google.com/';
109 return spawn_interface(d,placement,place,chrome,getString('opac_navigator_interface_label'),passthru_params,clone);
112 function spawn_patron_display(d,placement,place,passthru_params,clone) {
113 var chrome = 'chrome://evergreen/content/patron/patron_display.xul';
114 return spawn_interface(d,placement,place,chrome,getString('patron_display_interface_label'),passthru_params,clone);
117 function spawn_patron_search(d,placement,place,passthru_params,clone) {
118 var chrome = 'chrome://evergreen/content/patron/patron_search.xul';
119 return spawn_interface(d,placement,place,chrome,getString('patron_search_interface_label'),passthru_params,clone);
122 /* legacy code, may be removed or refactored */
124 function spawn_batch_copy_editor(d,placement,place,passthru_params,clone) {
125 var chrome = 'chrome://evergreen/content/cat/copy_edit.xul';
126 return spawn_interface(d,placement,place,chrome,getString('copies_editor_interface_label'),passthru_params,clone);
129 function spawn_bill_pay(d,placement,place,passthru_params,clone) {
130 var chrome = 'chrome://evergreen/content/bill/bill.xul';
131 return spawn_interface(d,placement,place,chrome,getString('bills_interface_label'),passthru_params,clone);
134 function spawn_copy_browser(d,placement,place,passthru_params,clone) {
135 var chrome = 'chrome://evergreen/content/cat/browse_list.xul';
136 return spawn_interface(d,placement,place,chrome,getString('copy_browser_interface_label'),passthru_params,clone);
139 function spawn_marc_editor(d,placement,place,passthru_params,clone) {
140 var chrome = 'chrome://evergreen/content/cat/marc.xul';
141 return spawn_interface(d,placement,place,chrome,getString('marc_editor_interface_label'),passthru_params,clone);
144 function spawn_oclc_import(d,placement,place,passthru_params,clone) {
145 sdump('D_SPAWN','trying to spawn_oclc_import('+js2JSON(passthru_params)+')\n');
146 // sample TCN: 03715963
148 if (params.tcn.length < 6) {
149 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. :)");
151 var result = user_request(
153 'open-ils.search.z3950.import',
154 [ G.auth_ses[0], params.tcn ]
156 if (typeof result == 'object') {
157 if (result.records.length > 0) {
158 params['import_tree'] = result.records[0];
160 throw('no records. result = ' + js2JSON(result) + '\n');
163 throw('result: ' + js2JSON(result) + '\n');
165 spawn_marc_editor(d,placement,place,params);
171 function spawn_patron_edit(d,placement,place,passthru_params,clone) {
172 var chrome = 'chrome://evergreen/content/patron/patron_edit.xul';
173 return spawn_interface(d,placement,place,chrome,getString('patron_editor_interface_label'),passthru_params,clone);
176 function spawn_patron_register(d,placement,place,passthru_params,clone) {
177 var chrome = 'chrome://evergreen/content/patron/patron_new.xul';
178 return spawn_interface(d,placement,place,chrome,getString('patron_register_interface_label'),passthru_params,clone);
181 function spawn_copy_stat_cat_edit(d,placement,place,passthru_params,clone) {
182 var chrome = 'chrome://evergreen/content/stat_cat/copy_stat_cat_editor.xul';
183 return spawn_interface(d,placement,place,chrome,getString('copy_stat_cat_editor_interface'),passthru_params,clone);
186 function spawn_patron_stat_cat_edit(d,placement,place,passthru_params,clone) {
187 var chrome = 'chrome://evergreen/content/stat_cat/patron_stat_cat_editor.xul';
188 return spawn_interface(d,placement,place,chrome,getString('patron_stat_cat_editor_interface'),passthru_params,clone);
191 function spawn_survey_admin_wizard(d,placement,place,passthru_params,clone) {
192 var chrome = 'chrome://evergreen/content/survey/survey_wizard.xul';
193 return spawn_interface(d,placement,place,chrome,getString('survey_admin_interface_label'),passthru_params,clone);
196 function spawn_z3950_import(d,placement,place,passthru_params,clone) {
197 var chrome = 'chrome://evergreen/content/z39_50/z39_50.xul';
198 return spawn_interface(d,placement,place,chrome,getString('z39_50_import_interface_label'),passthru_params,clone);