98 lines
		
	
	
		
			3.1 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			98 lines
		
	
	
		
			3.1 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
function toggleVisibility(linkObj)
 | 
						|
{
 | 
						|
 var base = $(linkObj).attr('id');
 | 
						|
 var summary = $('#'+base+'-summary');
 | 
						|
 var content = $('#'+base+'-content');
 | 
						|
 var trigger = $('#'+base+'-trigger');
 | 
						|
 var src=$(trigger).attr('src');
 | 
						|
 if (content.is(':visible')===true) {
 | 
						|
   content.hide();
 | 
						|
   summary.show();
 | 
						|
   $(linkObj).addClass('closed').removeClass('opened');
 | 
						|
   $(trigger).attr('src',src.substring(0,src.length-8)+'closed.png');
 | 
						|
 } else {
 | 
						|
   content.show();
 | 
						|
   summary.hide();
 | 
						|
   $(linkObj).removeClass('closed').addClass('opened');
 | 
						|
   $(trigger).attr('src',src.substring(0,src.length-10)+'open.png');
 | 
						|
 } 
 | 
						|
 return false;
 | 
						|
}
 | 
						|
 | 
						|
function updateStripes()
 | 
						|
{
 | 
						|
  $('table.directory tr').
 | 
						|
       removeClass('even').filter(':visible:even').addClass('even');
 | 
						|
}
 | 
						|
 | 
						|
function toggleLevel(level)
 | 
						|
{
 | 
						|
  $('table.directory tr').each(function() {
 | 
						|
    var l = this.id.split('_').length-1;
 | 
						|
    var i = $('#img'+this.id.substring(3));
 | 
						|
    var a = $('#arr'+this.id.substring(3));
 | 
						|
    if (l<level+1) {
 | 
						|
      i.removeClass('iconfopen iconfclosed').addClass('iconfopen');
 | 
						|
      a.html('▼');
 | 
						|
      $(this).show();
 | 
						|
    } else if (l==level+1) {
 | 
						|
      i.removeClass('iconfclosed iconfopen').addClass('iconfclosed');
 | 
						|
      a.html('►');
 | 
						|
      $(this).show();
 | 
						|
    } else {
 | 
						|
      $(this).hide();
 | 
						|
    }
 | 
						|
  });
 | 
						|
  updateStripes();
 | 
						|
}
 | 
						|
 | 
						|
function toggleFolder(id)
 | 
						|
{
 | 
						|
  // the clicked row
 | 
						|
  var currentRow = $('#row_'+id);
 | 
						|
 | 
						|
  // all rows after the clicked row
 | 
						|
  var rows = currentRow.nextAll("tr");
 | 
						|
 | 
						|
  var re = new RegExp('^row_'+id+'\\d+_$', "i"); //only one sub
 | 
						|
 | 
						|
  // only match elements AFTER this one (can't hide elements before)
 | 
						|
  var childRows = rows.filter(function() { return this.id.match(re); });
 | 
						|
 | 
						|
  // first row is visible we are HIDING
 | 
						|
  if (childRows.filter(':first').is(':visible')===true) {
 | 
						|
    // replace down arrow by right arrow for current row
 | 
						|
    var currentRowSpans = currentRow.find("span");
 | 
						|
    currentRowSpans.filter(".iconfopen").removeClass("iconfopen").addClass("iconfclosed");
 | 
						|
    currentRowSpans.filter(".arrow").html('►');
 | 
						|
    rows.filter("[id^=row_"+id+"]").hide(); // hide all children
 | 
						|
  } else { // we are SHOWING
 | 
						|
    // replace right arrow by down arrow for current row
 | 
						|
    var currentRowSpans = currentRow.find("span");
 | 
						|
    currentRowSpans.filter(".iconfclosed").removeClass("iconfclosed").addClass("iconfopen");
 | 
						|
    currentRowSpans.filter(".arrow").html('▼');
 | 
						|
    // replace down arrows by right arrows for child rows
 | 
						|
    var childRowsSpans = childRows.find("span");
 | 
						|
    childRowsSpans.filter(".iconfopen").removeClass("iconfopen").addClass("iconfclosed");
 | 
						|
    childRowsSpans.filter(".arrow").html('►');
 | 
						|
    childRows.show(); //show all children
 | 
						|
  }
 | 
						|
  updateStripes();
 | 
						|
}
 | 
						|
 | 
						|
 | 
						|
function toggleInherit(id)
 | 
						|
{
 | 
						|
  var rows = $('tr.inherit.'+id);
 | 
						|
  var img = $('tr.inherit_header.'+id+' img');
 | 
						|
  var src = $(img).attr('src');
 | 
						|
  if (rows.filter(':first').is(':visible')===true) {
 | 
						|
    rows.css('display','none');
 | 
						|
    $(img).attr('src',src.substring(0,src.length-8)+'closed.png');
 | 
						|
  } else {
 | 
						|
    rows.css('display','table-row'); // using show() causes jump in firefox
 | 
						|
    $(img).attr('src',src.substring(0,src.length-10)+'open.png');
 | 
						|
  }
 | 
						|
}
 | 
						|
 |