1b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosinefunction toggleVisibility(linkObj)
2b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine{
3b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine var base = $(linkObj).attr('id');
4b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine var summary = $('#'+base+'-summary');
5b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine var content = $('#'+base+'-content');
6b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine var trigger = $('#'+base+'-trigger');
7b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine var src=$(trigger).attr('src');
8b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine if (content.is(':visible')===true) {
9b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine   content.hide();
10b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine   summary.show();
11b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine   $(linkObj).addClass('closed').removeClass('opened');
12b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine   $(trigger).attr('src',src.substring(0,src.length-8)+'closed.png');
13b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine } else {
14b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine   content.show();
15b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine   summary.hide();
16b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine   $(linkObj).removeClass('closed').addClass('opened');
17b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine   $(trigger).attr('src',src.substring(0,src.length-10)+'open.png');
18b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine }
19b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine return false;
20b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine}
21b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine
22b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosinefunction updateStripes()
23b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine{
24b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine  $('table.directory tr').
25b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine       removeClass('even').filter(':visible:even').addClass('even');
26b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine}
27b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosinefunction toggleLevel(level)
28b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine{
29b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine  $('table.directory tr').each(function(){
30b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine    var l = this.id.split('_').length-1;
31b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine    var i = $('#img'+this.id.substring(3));
32b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine    var a = $('#arr'+this.id.substring(3));
33b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine    if (l<level+1) {
34b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine      i.attr('src','ftv2folderopen.png');
35b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine      a.attr('src','ftv2mnode.png');
36b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine      $(this).show();
37b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine    } else if (l==level+1) {
38b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine      i.attr('src','ftv2folderclosed.png');
39b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine      a.attr('src','ftv2pnode.png');
40b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine      $(this).show();
41b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine    } else {
42b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine      $(this).hide();
43b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine    }
44b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine  });
45b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine  updateStripes();
46b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine}
47b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine
48b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosinefunction toggleFolder(id)
49b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine{
50b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine  //The clicked row
51b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine  var currentRow = $('#row_'+id);
52b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine  var currentRowImages = currentRow.find("img");
53b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine
54b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine  //All rows after the clicked row
55b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine  var rows = currentRow.nextAll("tr");
56b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine
57b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine  //Only match elements AFTER this one (can't hide elements before)
58b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine  var childRows = rows.filter(function() {
59b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine    var re = new RegExp('^row_'+id+'\\d+_$', "i"); //only one sub
60b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine    return this.id.match(re);
61b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine  });
62b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine
63b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine  //First row is visible we are HIDING
64b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine  if (childRows.filter(':first').is(':visible')===true) {
65b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine    currentRowImages.filter("[id^=arr]").attr('src', 'ftv2pnode.png');
66b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine    currentRowImages.filter("[id^=img]").attr('src', 'ftv2folderclosed.png');
67b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine    rows.filter("[id^=row_"+id+"]").hide();
68b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine  } else { //We are SHOWING
69b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine    //All sub images
70b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine    var childImages = childRows.find("img");
71b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine    var childImg = childImages.filter("[id^=img]");
72b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine    var childArr = childImages.filter("[id^=arr]");
73b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine
74b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine    currentRow.find("[id^=arr]").attr('src', 'ftv2mnode.png'); //open row
75b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine    currentRow.find("[id^=img]").attr('src', 'ftv2folderopen.png'); //open row
76b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine    childImg.attr('src','ftv2folderclosed.png'); //children closed
77b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine    childArr.attr('src','ftv2pnode.png'); //children closed
78b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine    childRows.show(); //show all children
79b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine  }
80b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine  updateStripes();
81b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine}
82b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine
83b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine
84b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosinefunction toggleInherit(id)
85b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine{
86b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine  var rows = $('tr.inherit.'+id);
87b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine  var img = $('tr.inherit_header.'+id+' img');
88b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine  var src = $(img).attr('src');
89b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine  if (rows.filter(':first').is(':visible')===true) {
90b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine    rows.css('display','none');
91b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine    $(img).attr('src',src.substring(0,src.length-8)+'closed.png');
92b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine  } else {
93b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine    rows.css('display','table-row'); // using show() causes jump in firefox
94b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine    $(img).attr('src',src.substring(0,src.length-10)+'open.png');
95b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine  }
96b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine}
97b1baab685812365a673d00a7b8ef049ff07ba75dJohan Euphrosine
98