diff --git a/luminex/src/org/labkey/luminex/LuminexUploadWizardAction.java b/luminex/src/org/labkey/luminex/LuminexUploadWizardAction.java index 7468acdd7..7fc218bd8 100644 --- a/luminex/src/org/labkey/luminex/LuminexUploadWizardAction.java +++ b/luminex/src/org/labkey/luminex/LuminexUploadWizardAction.java @@ -91,6 +91,7 @@ import static org.labkey.api.util.DOM.Attribute.style; import static org.labkey.api.util.DOM.TD; import static org.labkey.api.util.DOM.at; +import static org.labkey.api.util.DOM.cl; /** * Adds Analyte Properties as third wizard step, handles analyte and titration definition input view UI and post, saves @@ -435,10 +436,9 @@ public void writeSameCheckboxCell(RenderContext ctx, HtmlWriter out) String id = groupName + "CheckBox"; TD( - at(style, "display:" + (hideCell ? "none" : "table-cell")). - name(titrationCellName), - new Input.InputBuilder<>().type("checkbox").name(id).id(id) - + at(style, "display:" + (hideCell ? "none" : "table-cell")). + name(titrationCellName), + new Input.InputBuilder<>().type("checkbox").name(id).id(id) ).appendTo(out); StringBuilder onchange = new StringBuilder("b = this.checked;"); @@ -579,22 +579,13 @@ public HtmlString getTitle(RenderContext ctx) @Override public void renderDetailsCaptionCell(RenderContext ctx, HtmlWriter out, @Nullable String cls) { - Writer oldWriter = out.unwrap(); - - try - { - oldWriter.write(""); - - oldWriter.write(getTitle(ctx).toString()); - String sb = "Type: " + getBoundColumn().getFriendlyTypeName() + "\n"; - PageFlowUtil.popupHelp(HtmlString.of(sb), displayName).appendTo(oldWriter); + String sb = "Type: " + getBoundColumn().getFriendlyTypeName() + "\n"; - oldWriter.write(""); - } - catch (IOException e) - { - throw new RuntimeException(e); - } + TD( + cl("control-header-label"), + getTitle(ctx), + PageFlowUtil.popupHelp(HtmlString.of(sb), displayName) + ).appendTo(out); } }; } diff --git a/luminex/src/org/labkey/luminex/query/AnalytePropStandardsDisplayColumn.java b/luminex/src/org/labkey/luminex/query/AnalytePropStandardsDisplayColumn.java index b0e61d811..2a40c978a 100644 --- a/luminex/src/org/labkey/luminex/query/AnalytePropStandardsDisplayColumn.java +++ b/luminex/src/org/labkey/luminex/query/AnalytePropStandardsDisplayColumn.java @@ -37,7 +37,9 @@ import static org.labkey.api.util.DOM.Attribute.name; import static org.labkey.api.util.DOM.Attribute.style; +import static org.labkey.api.util.DOM.TD; import static org.labkey.api.util.DOM.at; +import static org.labkey.api.util.DOM.cl; public class AnalytePropStandardsDisplayColumn extends SimpleDisplayColumn { @@ -129,19 +131,12 @@ public DOM._Attributes getInputAttributes() @Override public void renderDetailsCaptionCell(RenderContext ctx, HtmlWriter out, @Nullable String cls) { - String titrationCellName = PageFlowUtil.filter(LuminexUploadWizardAction.getTitrationColumnCellName(_titration.getName())); - Writer oldWriter = out.unwrap(); - try - { - oldWriter.write(""); - oldWriter.write(getTitle(ctx).toString()); - oldWriter.write(""); - } - catch (IOException e) - { - throw new RuntimeException(e); - } + String titrationCellName = LuminexUploadWizardAction.getTitrationColumnCellName(_titration.getName()); + + TD( + cl(cls).at(style, "display:" + (_hideCell ? "none" : "table-cell") + ";").name(titrationCellName), + getTitle(ctx) + ).appendTo(out); } @Override diff --git a/luminex/src/org/labkey/luminex/query/NegativeBeadDisplayColumnFactory.java b/luminex/src/org/labkey/luminex/query/NegativeBeadDisplayColumnFactory.java index d3815e0e5..6b97101a8 100644 --- a/luminex/src/org/labkey/luminex/query/NegativeBeadDisplayColumnFactory.java +++ b/luminex/src/org/labkey/luminex/query/NegativeBeadDisplayColumnFactory.java @@ -28,14 +28,15 @@ import org.labkey.api.util.HtmlStringBuilder; import org.labkey.api.util.JavaScriptFragment; import org.labkey.api.util.PageFlowUtil; +import org.labkey.api.util.element.Select.SelectBuilder; import org.labkey.api.writer.HtmlWriter; import org.labkey.luminex.LuminexDataHandler; -import java.io.IOException; -import java.io.Writer; import java.util.Set; import static org.labkey.api.util.DOM.SCRIPT; +import static org.labkey.api.util.DOM.TD; +import static org.labkey.api.util.DOM.cl; public class NegativeBeadDisplayColumnFactory implements DisplayColumnFactory { @@ -80,54 +81,41 @@ public String getFormFieldName(RenderContext ctx) @Override public void renderDetailsCaptionCell(RenderContext ctx, HtmlWriter out, @Nullable String cls) { - Writer oldWriter = out.unwrap(); - try - { - oldWriter.write(""); + HtmlStringBuilder builder = HtmlStringBuilder.of(""" + The analyte to use in the FI-Bkgd-Neg transform script calculation. Available options are \ + those selected as Negative Control analytes. + """) + .append("Type: ") + .append(getBoundColumn().getFriendlyTypeName()) + .append("\n"); - oldWriter.write(getTitle(ctx).toString()); - StringBuilder sb = new StringBuilder(); - sb.append("The analyte to use in the FI-Bkgd-Neg transform script calculation. Available options are " + - "those selected as Negative Control analytes.\n\n"); - sb.append("Type: ").append(getBoundColumn().getFriendlyTypeName()).append("\n"); - PageFlowUtil.popupHelp(HtmlString.of(sb), _displayName).appendTo(oldWriter); + TD( + cl("control-header-label"), + getTitle(ctx), + PageFlowUtil.popupHelp(builder, _displayName) - oldWriter.write(""); - } - catch (IOException e) - { - throw new RuntimeException(e); - } + ).appendTo(out); } @Override - public void renderInputHtml(RenderContext ctx, Writer oldWriter, HtmlWriter out, Object value) throws IOException + public void renderInputHtml(RenderContext ctx, HtmlWriter out, Object value) { String strValue = ConvertUtils.convert(value); boolean hidden = _initNegativeControlAnalytes.contains(_analyteName); - oldWriter.write(""); + builder + .addOption("") + .addOptions(_initNegativeControlAnalytes) + .selected(strValue); + + builder.appendTo(out); } }; } diff --git a/luminex/webapp/luminex/NegativeBeadPopulation.js b/luminex/webapp/luminex/NegativeBeadPopulation.js index 059e1bc7c..99d53bdaa 100644 --- a/luminex/webapp/luminex/NegativeBeadPopulation.js +++ b/luminex/webapp/luminex/NegativeBeadPopulation.js @@ -27,7 +27,7 @@ function getAnalyteSelectedNegativeControls() { var negControlEl = getAnalyteNegativeControlEl(negBeadEls[i].name); if (negControlEl != null && negControlEl.checked) - negControlAnalytes.push(negBeadEls[i].getAttribute("analytename")); + negControlAnalytes.push(negBeadEls[i].getAttribute("data-analytename")); } return negControlAnalytes.sort(); } @@ -69,7 +69,7 @@ function updateAnalyteNegativeBeadInputs() { var negBeadEl = negBeadEls[i]; var prevValue = negBeadEl.value; - var analyteName = negBeadEl.getAttribute("analytename"); + var analyteName = negBeadEl.getAttribute("data-analytename"); var hidden = negControlAnalytes.indexOf(analyteName) > -1; negBeadEl.value = null; diff --git a/viability/src/org/labkey/viability/data/MultiValueInputColumn.java b/viability/src/org/labkey/viability/data/MultiValueInputColumn.java index 8b7ed8ada..fb7b2ed57 100644 --- a/viability/src/org/labkey/viability/data/MultiValueInputColumn.java +++ b/viability/src/org/labkey/viability/data/MultiValueInputColumn.java @@ -19,21 +19,19 @@ import org.labkey.api.data.ColumnInfo; import org.labkey.api.data.DataColumn; import org.labkey.api.data.RenderContext; +import org.labkey.api.util.JavaScriptFragment; import org.labkey.api.util.PageFlowUtil; -import org.labkey.api.view.HttpView; import org.labkey.api.writer.HtmlWriter; -import java.io.Writer; -import java.io.IOException; import java.util.List; -/** - * User: kevink - * Date: Sep 19, 2009 - */ +import static org.labkey.api.util.DOM.DIV; +import static org.labkey.api.util.DOM.SCRIPT; +import static org.labkey.api.util.DOM.id; + public class MultiValueInputColumn extends DataColumn { - private List _values; + private final List _values; public MultiValueInputColumn(ColumnInfo col, List values) { @@ -42,34 +40,36 @@ public MultiValueInputColumn(ColumnInfo col, List values) } @Override - public void renderInputHtml(RenderContext ctx, Writer oldWriter, HtmlWriter out, Object value) throws IOException + public void renderInputHtml(RenderContext ctx, HtmlWriter out, Object value) { - String id = ctx.getForm().getFormFieldName(getColumnInfo()); + String colId = ctx.getForm().getFormFieldName(getColumnInfo()); - oldWriter.write("
"); - oldWriter.write("\n"); + script.append(");\n});\n"); + + SCRIPT( + JavaScriptFragment.unsafe(script.toString()) + ).appendTo(out); } @Override