]> git.evergreen-ils.org Git - Evergreen.git/blob - Open-ILS/xul/staff_client/server/cat/opac.js
clean up and more mvr columns
[Evergreen.git] / Open-ILS / xul / staff_client / server / cat / opac.js
1 dump('entering cat.opac.js\n');
2
3 if (typeof cat == 'undefined') cat = {};
4 cat.opac = function (params) {
5         try {
6                 netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
7                 JSAN.use('util.error'); this.error = new util.error();
8         } catch(E) {
9                 dump('cat.opac: ' + E + '\n');
10         }
11 }
12
13 cat.opac.prototype = {
14
15         'init' : function( params ) {
16
17                 try {
18                         netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
19
20                         var obj = this;
21
22                         obj.session = params['session'];
23                         obj.url = params['url'];
24
25                         JSAN.use('util.controller'); obj.controller = new util.controller();
26                         obj.controller.init(
27                                 {
28                                         control_map : {
29                                                 'cmd_broken' : [
30                                                         ['command'],
31                                                         function() { alert('Not Yet Implemented'); }
32                                                 ],
33                                         }
34                                 }
35                         );
36                         obj.controller.view.opac_browser = document.getElementById('opac_browser');
37
38                         obj.buildProgressListener();
39                         dump('obj.controller.view.opac_browser.addProgressListener = ' 
40                                 + obj.controller.view.opac_browser.addProgressListener + '\n');
41                         obj.controller.view.opac_browser.addProgressListener(obj.progressListener,
42                                         Components.interfaces.nsIWebProgress.NOTIFY_ALL );
43
44                         obj.controller.view.opac_browser.setAttribute('src',obj.url);
45                         dump('url = ' + obj.url + '\n');
46
47                 } catch(E) {
48                         this.error.sdump('D_ERROR','cat.opac.init: ' + E + '\n');
49                 }
50         },
51
52         'push_variables' : function() {
53
54                 try {
55                         netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
56                         this.controller.view.opac_browser.contentWindow.IAMXUL = true;
57                         if (window.xulG) {
58                                 this.controller.view.opac_browser.contentWindow.xulG = xulG;
59                                 dump('xulG = ' + js2JSON(xulG) + '\n');
60                                 dump('xulG = ' + js2JSON(this.controller.view.opac_browser.contentWindow.xulG) + '\n');
61                         }
62                 } catch(E) {
63                         this.error.sdump('D_ERROR','cat.opac.push_variables: ' + E + '\n');
64                 }
65         },
66         
67         'buildProgressListener' : function() {
68
69                 try {
70                         netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
71
72                         var obj = this;
73                         obj.progressListener = {
74                                 onProgressChange        : function(){},
75                                 onLocationChange        : function(){},
76                                 onStatusChange          : function(){},
77                                 onSecurityChange        : function(){},
78                                 onStateChange           : function ( webProgress, request, stateFlags, status) {
79                                         netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
80                                         var s = '';
81                                         const nsIWebProgressListener = Components.interfaces.nsIWebProgressListener;
82                                         const nsIChannel = Components.interfaces.nsIChannel;
83                                         if (stateFlags == 65540 || stateFlags == 65537 || stateFlags == 65552) { return; }
84                                         s = ('onStateChange: stateFlags = ' + stateFlags + ' status = ' + status + '\n');
85                                         if (stateFlags & nsIWebProgressListener.STATE_IS_REQUEST) {
86                                                 s += ('\tSTATE_IS_REQUEST\n');
87                                         }
88                                         if (stateFlags & nsIWebProgressListener.STATE_IS_DOCUMENT) {
89                                                 s += ('\tSTATE_IS_DOCUMENT\n');
90                                                 if( stateFlags & nsIWebProgressListener.STATE_STOP ) obj.push_variables(); 
91                                         }
92                                         if (stateFlags & nsIWebProgressListener.STATE_IS_NETWORK) {
93                                                 s += ('\tSTATE_IS_NETWORK\n');
94                                         }
95                                         if (stateFlags & nsIWebProgressListener.STATE_IS_WINDOW) {
96                                                 s += ('\tSTATE_IS_WINDOW\n');
97                                         }
98                                         if (stateFlags & nsIWebProgressListener.STATE_START) {
99                                                 s += ('\tSTATE_START\n');
100                                         }
101                                         if (stateFlags & nsIWebProgressListener.STATE_REDIRECTING) {
102                                                 s += ('\tSTATE_REDIRECTING\n');
103                                         }
104                                         if (stateFlags & nsIWebProgressListener.STATE_TRANSFERING) {
105                                                 s += ('\tSTATE_TRANSFERING\n');
106                                         }
107                                         if (stateFlags & nsIWebProgressListener.STATE_NEGOTIATING) {
108                                                 s += ('\tSTATE_NEGOTIATING\n');
109                                         }
110                                         if (stateFlags & nsIWebProgressListener.STATE_STOP) {
111                                                 s += ('\tSTATE_STOP\n');
112                                         }
113                                         obj.error.sdump('D_OPAC',s);    
114                                 }
115                         }
116                         obj.progressListener.QueryInterface = function(){return this;};
117                 } catch(E) {
118                         this.error.sdump('D_ERROR','cat.opac.buildProgressListener: ' + E + '\n');
119                 }
120         },
121 }
122
123 dump('exiting cat.opac.js\n');