]> git.evergreen-ils.org Git - working/Evergreen.git/blob - Open-ILS/src/javascript/lib/js/opac/init.js
web work
[working/Evergreen.git] / Open-ILS / src / javascript / lib / js / opac / init.js
1
2 function init() {
3         window.onunload = unload;
4
5         loadUIObjects();
6         initParams();
7         initSideBar();
8         searchBarInit();
9         G.ui.common.org_tree.innerHTML = buildOrgSelector().toString();
10
11         switch(findCurrentPage()) {
12                 case MRESULT: mresultDoSearch(); break;
13                 case RRESULT: rresultDoSearch(); break;
14         }
15 }
16
17 /* free whatever memory we can */
18 function unload() {
19         _tree_killer();
20         clearUIObjects();
21         cleanRemoteRequests();
22         try{mresultUnload();} catch(E){}
23         try{rresultUnload();} catch(E){}
24 }
25
26
27 /* set up the colors in the sidebar 
28         Disables/Enables certain components based on various state data */
29 function initSideBar() {
30
31         for( var p in G.ui.sidebar ) 
32                 removeCSSClass(p, config.css.color_2);
33
34         var page = findCurrentPage();
35         unHideMe(G.ui.sidebar[page]);
36         addCSSClass(G.ui.sidebar[page], config.css.color_2);
37
38         /* if we're logged in, show it and replace the Login link with the Logout link */
39         if(grabUser()) {
40                 G.ui.sidebar.username_dest.appendChild(text(G.user.usrname()));
41                 unHideMe(G.ui.sidebar.logoutbox);
42                 unHideMe(G.ui.sidebar.logged_in_as);
43                 hideMe(G.ui.sidebar.loginbox);
44         }
45
46         if(G.ui.sidebar.login) G.ui.sidebar.login.onclick = initLogin;
47         if(G.ui.sidebar.logout) G.ui.sidebar.logout.onclick = doLogout; 
48
49 }
50
51 /* sets up the login ui components */
52 var loginBoxVisible = false;
53 function initLogin() {
54
55         var loginDance = function() {
56                 if(doLogin()) {
57                         showCanvas();
58                         G.ui.sidebar.username_dest.appendChild(text(G.user.usrname()));
59                         unHideMe(G.ui.sidebar.logoutbox);
60                         unHideMe(G.ui.sidebar.logged_in_as);
61                         hideMe(G.ui.sidebar.loginbox);
62                 }
63         }
64
65         G.ui.login.button.onclick = loginDance;
66         G.ui.login.username.onkeydown = 
67                 function(evt) {if(userPressedEnter(evt)) loginDance();};
68         G.ui.login.password.onkeydown = 
69                 function(evt) {if(userPressedEnter(evt)) loginDance();};
70
71         if(loginBoxVisible) {
72                 showCanvas();
73         } else {
74                 swapCanvas(G.ui.login.box);
75                 G.ui.login.username.focus();
76         }
77         loginBoxVisible = !loginBoxVisible;
78         G.ui.login.cancel.onclick = showCanvas;
79 }
80
81
82
83 /* sets all of the params values */
84 var TERM,  STYPE,  LOCATION,  DEPTH,  FORM, OFFSET,  COUNT,  
85          HITCOUNT,  RANKS, SEARCHBAR_EXTRAS;
86
87 function initParams() {
88         var cgi = new CGI();    
89
90         TERM    = cgi.param(PARAM_TERM);
91         STYPE   = cgi.param(PARAM_STYPE);
92         FORM    = cgi.param(PARAM_FORM);
93
94         LOCATION        = parseInt(cgi.param(PARAM_LOCATION));
95         DEPTH           = parseInt(cgi.param(PARAM_DEPTH));
96         OFFSET  = parseInt(cgi.param(PARAM_OFFSET));
97         COUNT           = parseInt(cgi.param(PARAM_COUNT));
98         HITCOUNT        = parseInt(cgi.param(PARAM_HITCOUNT));
99         MRID            = parseInt(cgi.param(PARAM_MRID));
100         RID             = parseInt(cgi.param(PARAM_RID));
101
102         /* set up some sane defaults */
103         if(isNaN(LOCATION))     LOCATION        = 1;
104         if(isNaN(DEPTH))                DEPTH           = 0;
105         if(isNaN(OFFSET))               OFFSET  = 0;
106         if(isNaN(COUNT))                COUNT           = 10;
107         if(isNaN(HITCOUNT))     HITCOUNT        = 0;
108         if(isNaN(SEARCHBAR_EXTRAS))     SEARCHBAR_EXTRAS        = 0;
109         if(isNaN(MRID))         MRID            = 0;
110         if(isNaN(RID))                  RID             = 0;
111 }
112
113 /* URL param accessors */
114 function getTerm(){return TERM;}
115 function getStype(){return STYPE;}
116 function getLocation(){return LOCATION;}
117 function getDepth(){return DEPTH;}
118 function getForm(){return FORM;}
119 function getOffset(){return OFFSET;}
120 function getDisplayCount(){return COUNT;}
121 function getHitCount(){return HITCOUNT;}
122 function getSearchBarExtras(){return SEARCHBAR_EXTRAS;}
123 function getMrid(){return MRID;};
124 function getRid(){return RID;};
125
126
127