more fixes for myopac and record details
[Evergreen.git] / Open-ILS / web / opac / skin / default / js / sidebar.js
1 /* set up the colors in the sidebar 
2         Disables/Enables certain components based on various state data */
3
4 attachEvt("common", "init", initSideBar);
5 attachEvt("common", "init", setSidebarLinks);
6
7 function initSideBar() {
8         var page = findCurrentPage();
9
10         if( page == MRESULT ) 
11                 unHideMe(getId("sidebar_results_wrapper"));
12
13         if( page == RRESULT ) {
14                 unHideMe(getId("sidebar_results_wrapper"));
15                 unHideMe(G.ui.sidebar[MRESULT]);
16                 getId("sidebar_title_group_results").setAttribute("href", buildOPACLink({ page: MRESULT }));
17         }
18
19         if( page == RDETAIL ) {
20                 unHideMe(getId("sidebar_results_wrapper"));
21                 getId("sidebar_title_group_results").setAttribute("href", buildOPACLink({ page: MRESULT }));
22                 unHideMe(G.ui.sidebar[MRESULT]);
23                 getId("sidebar_title_results").setAttribute("href", buildOPACLink({ page : RRESULT }));
24                 unHideMe(G.ui.sidebar[RRESULT]);
25         }
26
27         unHideMe(G.ui.sidebar[page]);
28         addCSSClass(G.ui.sidebar[page], "sidebar_item_active");
29
30         /* if we're logged in, show it and replace the Login link with the Logout link */
31         if(grabUser()) {
32                 G.ui.sidebar.username_dest.appendChild(text(G.user.usrname()));
33                 unHideMe(G.ui.sidebar.logoutbox);
34                 unHideMe(G.ui.sidebar.logged_in_as);
35                 hideMe(G.ui.sidebar.loginbox);
36         }
37
38         if(G.ui.sidebar.login) G.ui.sidebar.login.onclick = initLogin;
39         if(G.ui.sidebar.logout) G.ui.sidebar.logout.onclick = doLogout; 
40 }
41
42 /* sets up the login ui components */
43 var loginBoxVisible = false;
44
45 function loginDance() {
46         if(doLogin()) {
47                 showCanvas();
48                 G.ui.sidebar.username_dest.appendChild(text(G.user.usrname()));
49                 unHideMe(G.ui.sidebar.logoutbox);
50                 unHideMe(G.ui.sidebar.logged_in_as);
51                 hideMe(G.ui.sidebar.loginbox);
52                 runEvt("common", "loggedIn");
53         }
54 }
55
56 function initLogin() {
57
58         G.ui.login.button.onclick = loginDance;
59         G.ui.login.username.onkeydown = 
60                 function(evt) {if(userPressedEnter(evt)) loginDance();};
61         G.ui.login.password.onkeydown = 
62                 function(evt) {if(userPressedEnter(evt)) loginDance();};
63
64         if(loginBoxVisible) {
65                 showCanvas();
66         } else {
67                 swapCanvas(G.ui.login.box);
68                 try{G.ui.login.username.focus();}catch(e){}
69         }
70
71         loginBoxVisible = !loginBoxVisible;
72         G.ui.login.cancel.onclick = showCanvas;
73 }
74
75 function setSidebarLinks() {
76         G.ui.sidebar.home_link.setAttribute("href", buildOPACLink({page:HOME}));
77         G.ui.sidebar.advanced_link.setAttribute("href", buildOPACLink({page:ADVANCED}));
78         G.ui.sidebar.myopac_link.setAttribute("href", buildOPACLink({page:MYOPAC}, false, true));
79 }
80
81