|  | /* | 
|  | @licstart  The following is the entire license notice for the | 
|  | JavaScript code in this file. | 
|  |  | 
|  | Copyright (C) 1997-2017 by Dimitri van Heesch | 
|  |  | 
|  | This program is free software; you can redistribute it and/or modify | 
|  | it under the terms of the GNU General Public License as published by | 
|  | the Free Software Foundation; either version 2 of the License, or | 
|  | (at your option) any later version. | 
|  |  | 
|  | This program is distributed in the hope that it will be useful, | 
|  | but WITHOUT ANY WARRANTY; without even the implied warranty of | 
|  | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | 
|  | GNU General Public License for more details. | 
|  |  | 
|  | You should have received a copy of the GNU General Public License along | 
|  | with this program; if not, write to the Free Software Foundation, Inc., | 
|  | 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. | 
|  |  | 
|  | @licend  The above is the entire license notice | 
|  | for the JavaScript code in this file | 
|  | */ | 
|  | 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'); | 
|  | } | 
|  | } | 
|  | /* @license-end */ |