8c2cb1c8c9bd1fed4d0c0a434cbc8fb2406066d9
[plewww.git] / plekit / toggle / toggle.js
1 ////////// use jstorage to remember open/closed toggles
2 // store current status
3 function pletoggle_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 pletoggle_from_store (id) {
11     key='toggle.'+id;
12     // don't do anything if nothing stored
13     var stored=$.jStorage.get(key,undefined);
14     if (stored==true || stored==false) {
15         //    window.console.log('retrieved toggle status for '+id+'=> '+stored);
16         pletoggle_set_visible(id,stored);
17     }
18 }
19
20 ////////// manage a toggle
21 // toggle it
22 function pletoggle_toggle(id){
23
24     var area=$('toggle-area-'+id);
25     area.toggle();
26     var visible=$('toggle-image-visible-'+id);
27     var hidden=$('toggle-image-hidden-'+id);
28     if (area.visible()) {
29         visible.show();
30         hidden.hide();
31     } else {
32         visible.hide();
33         hidden.show();
34     }
35     pletoggle_store(id);
36 }
37
38 // make sure it's open or closed
39 function pletoggle_set_visible(id, status) {
40     var area=$('toggle-area-'+id);
41     if (area.visible()!=status) pletoggle_toggle (id);
42 }
43
44 // toggle the attached info box
45 function pletoggle_toggle_info(id){
46
47     // need to take care of the area as well
48     var area=$('toggle-area-'+id);
49     var info=$('toggle-info-'+id);
50     if (area.visible() && info.visible()) {
51 //      window.console.log('PTI hiding');
52         info.hide();
53     } else {
54         // make sure area is visible, take of the triggers
55 //      window.console.log('PTI showing');
56         pletoggle_set_visible(id,true);
57         info.show();
58     }
59 }
60