var bMsie = (document.all) ? true : false; var sExpandString = ''; var sCollapseString = ''; var sCollapseButton = './images/close_all.gif'; var sExpandButton = './images/open_all.gif'; function init(transOpen, transClose) { sCollapseString = transClose; sExpandString = transOpen; var aStatrows = document.getElementsByTagName('tr'); var sDisplay = ''; if (bMsie) { sDisplay = 'block'; } else { sDisplay = 'table-row'; } var preButton = null; var preAIds = null; var level = 1; for (var i = 0; i < aStatrows.length; i++) { if (aStatrows[i].id) { aStatrows[i].style.display = sDisplay; var oButton = aStatrows[i].getElementsByTagName('img')[1]; var aIds = aStatrows[i].id.split('_'); if (oButton && oButton.id == aStatrows[i].id+'_img') { if (aIds.length > level ) { preButton.src = sCollapseButton; preButton.title = sCollapseString; preButton.alt = sCollapseString; preButton.parentNode.href = 'javascript:changeVisibility(\''+aStatrows[(i-1)].id+'\', '+(preAIds.length-1)+', '+aIds[preAIds.length-1]+');'; } preButton = oButton; preAIds = aIds; level = aIds.length; } } } } function changeVisibility (sIdClicked, iLevel, iIdCat) { var sDisplay = ''; var aIdsClicked = sIdClicked.split('_'); var oButton = document.getElementById (sIdClicked+'_img'); if (oButton.src.match(/open_all.gif/)) { oButton.src = sCollapseButton; oButton.title = sCollapseString; oButton.alt = sCollapseString; if (bMsie) { sDisplay = 'block'; } else { sDisplay = 'table-row'; } } else { oButton.src = sExpandButton; oButton.title = sExpandString; oButton.alt = sExpandString; sDisplay = 'none'; } var preButton = null; var level = iLevel; var aStatrows = document.getElementsByTagName('tr'); for (var i = 0; i < aStatrows.length; i++) { var aIds = aStatrows[i].id.split('_'); if (aIds[iLevel] == iIdCat) { if (sDisplay == 'none' && aIds.length > aIdsClicked.length) { aStatrows[i].style.display = sDisplay; var oButton = aStatrows[i].getElementsByTagName('img')[1]; if (oButton && oButton.id == aStatrows[i].id+'_img') { if (aIds.length > level && preButton) { preButton.src = sExpandButton; preButton.title = sExpandString; preButton.alt = sExpandString; } preButton = oButton; level = aIds.length; } } else if ((aIdsClicked.length+1) == aIds.length) { aStatrows[i].style.display = sDisplay; } } } }