8ac69aff6bb64719366b11329ee1bf64a1782d63
[plewww.git] / plekit / toggle / toggle.js
1 ////////// use jstorage to remember open/closed toggles
2 // store current status
3 function plekit_toggle_store(id) {
4     var area=$('toggle-area-'+id);
5     key='toggle.'+id;
6 //    window.console.log('storing toggle status for '+id);
7     $.jStorage.set(key,area.visible());
8 }
9 // restore last status
10 function plekit_toggle_from_store (id) {
11     var area=$('toggle-area-'+id);
12     key='toggle.'+id;
13     // on by default
14 //    window.console.log('retrieving toggle status for '+id+'=>got '+$.jStorage.get(key,undefined));
15     if ($.jStorage.get(key,true)) area.show();
16     else area.hide();
17 }
18
19 ////////// manage a toggle
20 // toggle it
21 function plekit_toggle(id){
22
23     var area=$('toggle-area-'+id);
24     area.toggle();
25     var visible=$('toggle-image-visible-'+id);
26     var hidden=$('toggle-image-hidden-'+id);
27     if (area.visible()) {
28         visible.show();
29         hidden.hide();
30     } else {
31         visible.hide();
32         hidden.show();
33     }
34     plekit_toggle_store(id);
35 }
36
37 // make sure it's open
38 function plekit_toggle_show(id) {
39     var area=$('toggle-area-'+id);
40     if (!area.visible()) plekit_toggle (id);
41 }
42
43 // toggle the attached info box
44 function plekit_toggle_info(id){
45
46     // need to take care of the area as well
47     var area=$('toggle-area-'+id);
48     var info=$('toggle-info-'+id);
49     if (area.visible() && info.visible()) {
50 //      window.console.log('PTI hiding');
51         info.hide();
52     } else {
53         // make sure area is visible, take of the triggers
54 //      window.console.log('PTI showing');
55         plekit_toggle_show(id);
56         info.show();
57     }
58 }
59