Tweaking cart and lists buttons for non-javascript users
[koha_fer] / koha-tmpl / opac-tmpl / prog / en / js / script.js
1         /**
2          * this function checks all checkbox 
3          * or uncheck all if there are already checked.
4          */
5         function CheckAll(){
6                 var checkboxes = document.getElementsByTagName('input');
7                 var nbCheckbox = checkboxes.length;
8                 var check = areAllChecked();
9                 for(var i=0;i<nbCheckbox;i++){
10                         if(checkboxes[i].getAttribute('type') == "checkbox" ){
11                                 checkboxes[i].checked = (check) ? 0 : 1;
12                         }
13                 }
14         }
15         /**
16          * this function return true if all checkbox are checked
17          */
18         function areAllChecked(){
19                 var checkboxes = document.getElementsByTagName('input');
20                 var nbCheckbox = checkboxes.length;
21                 for(var i=0;i<nbCheckbox;i++){
22                         if(checkboxes[i].getAttribute('type') == "checkbox" ){
23                                 if(checkboxes[i].checked == 0){
24                                         return false;
25                                 }
26                         }
27                 }
28                 return true;
29         }
30
31 function confirmDelete(message) {
32         return (confirm(message) ? true : false);
33 }
34
35 function Dopop(link) {
36         newin=window.open(link,'popup','width=500,height=400,toolbar=false,scrollbars=yes');
37 }
38
39 $(document).ready(function(){
40         $(".close").click(function(){
41                 window.close();
42         });
43         $("#logout").click(function(){
44                 alert("logging out!");
45                 var nameCookie = "bib_list";
46             var valCookie = readCookie(nameCookie);
47                 if (valCookie) { // basket has contents
48                         if(confirm("Are you sure you want to log out? The contents of your cart will be lost")){
49                                 delBasket();
50                                 return true;
51                         } else {
52                                 return false;
53                         }
54                 } else {
55                         return true;
56                 }
57         });
58 });
59         
60 YAHOO.util.Event.onContentReady("changelanguage", function () {
61                 var oMenu = new YAHOO.widget.Menu("sublangs", { zindex: 2 });
62                     function positionoMenu() {
63                     oMenu.align("bl", "tl");
64                 }
65                 oMenu.subscribe("beforeShow", function () {
66                     if (this.getRoot() == this) {
67                                                 positionoMenu();
68                     }
69                 });
70                 oMenu.render();
71                                 oMenu.cfg.setProperty("context", ["showlang", "bl", "tl"]);
72                                 function onYahooClick(p_oEvent) {
73                     // Position and display the menu        
74                     positionoMenu();
75                     oMenu.show();
76                     // Stop propagation and prevent the default "click" behavior
77                     YAHOO.util.Event.stopEvent(p_oEvent);
78                 }
79                                 YAHOO.util.Event.addListener("showlang", "click", onYahooClick);
80                                 YAHOO.widget.Overlay.windowResizeEvent.subscribe(positionoMenu);
81             });
82 YAHOO.util.Event.onContentReady("listsmenu", function () {
83     $("#listsmenu").css("display","block").css("visibility","hidden");
84     $("#cartDetails").css("display","block").css("visibility","hidden");
85
86         $("#cmspan").html("<a href=\"#\" id=\"cartmenulink\" class=\"\"><i></i><span><i></i><span></span><img src=\"/opac-tmpl/prog/images/cart.gif\" width=\"14\" height=\"14\" alt=\"\" border=\"0\" /> Cart<span id=\"basket\"></span></span></a>");
87         $("#listsmenulink").attr("href","#").find("span:eq(0)").append("<img src=\"/opac-tmpl/prog/images/list.gif\" width=\"5\" height=\"6\" alt=\"\" border=\"0\" />");
88         $("#searchsubmit").click(function(){
89                 $("#searchform").submit();
90         })
91
92           if(basketcount){ updateBasket(basketcount,document) } 
93    
94         var listMenu = new YAHOO.widget.Menu("listsmenu", { lazyload: true });
95                 listMenu.render();
96                 listMenu.cfg.setProperty("context", ["listsmenulink", "tr", "br"]);
97                 listMenu.cfg.setProperty("effect",{effect:YAHOO.widget.ContainerEffect.FADE,duration:0.05});
98                 listMenu.subscribe("show", listMenu.focus);
99         function positionlistMenu() {
100                     listMenu.align("tr", "br");
101                 }
102                 YAHOO.util.Event.addListener("listsmenulink", "click", listMenu.show, null, listMenu);
103                 YAHOO.widget.Overlay.windowResizeEvent.subscribe(positionlistMenu);
104         
105         if(basketcount){ updateBasket(basketcount,document) }   
106    
107         
108     });
109     
110 function init() {
111                 $('#cartmenulink').click(function(){
112                         openBasket(); return false;
113                 });
114                                         // Build cartOverlay based on markup
115                                         cartOverlay = new YAHOO.widget.Overlay("cartDetails", { context:["cartmenulink","tr","br"],
116                                                                                                                                                                                           visible:false,
117                                                                                                                                                                                           width:"200px",
118                                                                                                                                                                                           effect:{effect:YAHOO.widget.ContainerEffect.FADE,duration:0.25} } );
119                                         cartOverlay.render();
120                                         YAHOO.util.Event.addListener("cartmenulink", "mouseover", cartOverlay.show, cartOverlay, true);
121                                         YAHOO.util.Event.addListener("cartmenulink", "mouseout", cartOverlay.hide, cartOverlay, true);
122                                         YAHOO.util.Event.addListener("cartmenulink", "click", cartOverlay.hide, cartOverlay, true);
123                                 }
124                                 YAHOO.util.Event.addListener(window, "load", init);