82f0eb1488c92654cdbbb94e4fa8a78d25d851b8 tdreszer Thu Feb 16 12:20:30 2012 -0800 Further tighten the screws on matrix checkboxes. ABC checkboxes will go to the cart but XY CBs should not. Since ABC CBs will get marked 'changed', then class accounting must exclude 'changed' class. This and last subCfg.js checkin are for redmine 7015 diff --git src/hg/js/subCfg.js src/hg/js/subCfg.js index 7e3f9b2..1341bd2 100644 --- src/hg/js/subCfg.js +++ src/hg/js/subCfg.js @@ -835,31 +835,32 @@ if (classList.length == 0) warn('DEBUG: View classlist is missing view class.'); else if (classList.length > 1) warn('DEBUG: View classlist contains unexpected classes:' + classList); else { subCfg.viewTags[i] = classList[0]; subCfg.viewInit(subCfg.viewTags[i]); } }); // Tricky for composite level controls. Could wrap cfg controls in new div. // DO THIS AFTER Views // NOTE: excluding sortOrder and showCfg which are special cases we don't care about in subCfg // Excluding views and subCBs because a {composite}_{subtrack} naming scheme may be used var compObjs = $('select,input').filter("[name^='"+subCfg.compositeName+"\\.'],[name^='"+subCfg.compositeName+"_']"); - compObjs = $(compObjs).not(".viewDD,.subCB,.matCB"); // viewDD, subCB already done. matCB not needed! + // viewDD, subCB already done. non-abc matCBs not needed, as they shouldn't go to the cart.! + compObjs = $(compObjs).not(".viewDD,.subCB,.matCB:not(.abc)"); if (compObjs.length > 0) { $(compObjs).each(function (i) { if (this.type != 'hidden') { // DEBUG ------------- if (this.id != undefined && this.id.length > 0 && $(this).hasClass('filterBy') == false && $(this).hasClass('filterComp') == false) warn('DEBUG: Unexpected control with name ['+this.name + '], and id #'+this.id); // DEBUG ------------- Helps find unexpected problems. $(this).change(function (e) { subCfg.markChange(e,this); subCfg.propagateSetting(this); });