17db506073cd23d9d06b90386e2ab64b06da5d5e
tdreszer
  Tue Jun 7 14:29:52 2011 -0700
Fix for redmine 4206, toggle metadata background color gets lost.
diff --git src/hg/js/utils.js src/hg/js/utils.js
index 876b7a6..c79ad01 100644
--- src/hg/js/utils.js
+++ src/hg/js/utils.js
@@ -421,36 +421,40 @@
 function metadataShowHide(trackName,showLonglabel,showShortLabel)
 {
 // Will show subtrack specific configuration controls
 // Config controls not matching name will be hidden
     var divit = $("#div_"+trackName+"_meta");
     if($(divit).css('display') == 'none') {
         $("#div_"+trackName+"_cfg").hide();  // Hide any configuration when opening metadata
 
         if($(divit).find('table').length == 0) {
             lookupMetadata(trackName,showLonglabel,showShortLabel);
             return false;
         }
     }
     var tr = $(divit).parents('tr');
     if (tr.length > 0) {
-        if ($(tr).hasClass("bgLevel2")) {
-            $(divit).children('table').removeClass('bgLevel1');
-            $(divit).children('table').addClass('bgLevel2');
-        } else {
-            $(divit).children('table').removeClass('bgLevel2');
-            $(divit).children('table').addClass('bgLevel1');
+        tr = tr[0];
+        var bgClass = null;
+        var classes = $( tr ).attr("class").split(" ");
+        for (var ix=0;ix<classes.length;ix++) {
+            if (classes[ix].substring(0,'bgLevel'.length) == 'bgLevel')
+                bgClass = classes[ix];
+        }
+        if (bgClass) {
+            $(divit).children('table').removeClass('bgLevel1 bgLevel2 bgLevel3 bgLevel4');
+            $(divit).children('table').addClass(bgClass);
         }
     }
     $(divit).toggle();  // jQuery hide/show
     return false;
 }
 
 function setTableRowVisibility(button, prefix, hiddenPrefix, titleDesc, doAjax)
 {
 // Show or hide one or more table rows whose id's begin with prefix followed by "-".
 // This code also modifies the corresponding hidden field (cart variable) and the
 // src of the +/- img button.
     var retval = true;
     var hidden = $("input[name='"+hiddenPrefix+"_"+prefix+"_close']");
     if($(button) != undefined && $(hidden) != undefined && $(hidden).length > 0) {
         var oldSrc = $(button).attr("src");