Changeset 2107


Ignore:
Timestamp:
Oct 29, 2013, 10:38:17 AM (9 years ago)
Author:
Nicklas Nordborg
Message:

References #481 and #501. Adding support for registering which cBot that was used when clustering.

Location:
extensions/net.sf.basedb.reggie/trunk
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • extensions/net.sf.basedb.reggie/trunk/resources/libprep/flowcell_protocol2.jsp

    r2087 r2107  
    283283      <th style="width: 15%;">Flow cell</th>
    284284      <td style="width: 35%;"><div id="flowCellName.<%=c%>" >Flow cell name <%=c%></div></td>
    285       <td style="width: 50%; padding: 0; vertical-align: top; border-left: 1px solid #000000;" rowspan="5">
     285      <td style="width: 50%; padding: 0; vertical-align: top; border-left: 1px solid #000000;" rowspan="6">
    286286        <table class="pools">
    287287        <tr>
     
    316316    </tr>
    317317    <tr>
     318      <th>Date</th>
     319      <td></td>
     320    </tr>
     321    <tr>
    318322      <th>Operator</th>
    319323      <td></td>
    320324    </tr>
    321325    <tr>
    322       <th>Date</th>
     326      <th>cBot</th>
    323327      <td></td>
    324328    </tr>
  • extensions/net.sf.basedb.reggie/trunk/resources/libprep/flowcell_registration.jsp

    r2094 r2107  
    260260    frm.clusterProtocol[0] = new Option('- none -', '');
    261261  }
     262 
     263  // Load cBot machines
     264  var cbots = getHardware('CLUSTER_GENERATOR');
     265  for (var i = 0; i < cbots.length; i++)
     266  {
     267    var cbot = cbots[i];
     268    frm['fc-0.cBot'][frm['fc-0.cBot'].length] = new Option(cbot.name, cbot.id, cbot.isDefault);
     269    frm['fc-1.cBot'][frm['fc-1.cBot'].length] = new Option(cbot.name, cbot.id, cbot.isDefault);
     270    setInputStatus('fc-0.cBot', '', 'valid');
     271    setInputStatus('fc-1.cBot', '', 'valid');
     272  }
     273  if (cbots.length == 0)
     274  {
     275    frm['fc-0.cBot'][0] = new Option('- none -', '');
     276    frm['fc-1.cBot'][0] = new Option('- none -', '');
     277  }
     278
    262279
    263280  var index = 0;
     
    295312  frm['fc-0.clusterDate'].disabled = true;
    296313  frm['fc-0.clusterOperator'].disabled = true;
     314  frm['fc-0.cBot'].disabled = true;
    297315  frm['fc-0.comments'].disabled = true;
    298316  frm['fc-1.externalId'].disabled = true;
    299317  frm['fc-1.clusterDate'].disabled = true;
    300318  frm['fc-1.clusterOperator'].disabled = true;
     319  frm['fc-1.cBot'].disabled = true;
    301320  frm['fc-1.comments'].disabled = true;
    302321
     
    395414  try
    396415  {
    397     showLoadingAnimation('Loading ' + subtype + ' protocols...');
     416    showLoadingAnimation('Loading ' + subtype + ' hardware...');
    398417    var url = '../Hardware.servlet?ID=<%=ID%>&cmd=GetHardware&subtype='+subtype;   
    399418    request.open("GET", url, false); 
     
    597616      fc.clusterDate = frm['fc-'+index+'.clusterDate'].value;
    598617      fc.clusterOperator = frm['fc-'+index+'.clusterOperator'].value;
     618      fc.cBot = parseInt(frm['fc-'+index+'.cBot'].value, 10);
    599619      fc.comments = frm['fc-'+index+'.comments'].value;
    600620      if (!failed)
     
    808828        <td class="input">
    809829          <input type="text" name="fc-0.clusterOperator" value="<%=HTML.encodeTags(user.getName()) %>"
    810             style="width: 90%;" maxlength="255" onkeypress="focusOnEnter(event, 'fc-0.comments')">
     830            style="width: 90%;" maxlength="255" onkeypress="focusOnEnter(event, 'fc-0.cBot')">
    811831        </td>
    812832        <td class="status" id="fc-0.clusterOperator.status"></td>
    813833        <td class="help">
    814834          <span id="fc-0.clusterOperator.message" class="message" style="display: none;"></span>
     835        </td>
     836      </tr>
     837      <tr valign="top">
     838        <td class="subprompt">cBot</td>
     839        <td class="input"><select style="width:90%" name="fc-0.cBot" 
     840          onkeypress="focusOnEnter(event, 'fc-0.comments')"></select></td>
     841        <td class="status" id="fc-0.cBot.status"></td>
     842        <td class="help"><span id="fc-0.cBot.message" class="message" style="display: none;"></span>
     843          Select the cBot which was used in the clustering.
    815844        </td>
    816845      </tr>
     
    858887        <td class="input">
    859888          <input type="text" name="fc-1.clusterOperator" value="<%=HTML.encodeTags(user.getName()) %>"
    860             style="width: 90%;" maxlength="255" onkeypress="focusOnEnter(event, 'fc-1.comments')">
     889            style="width: 90%;" maxlength="255" onkeypress="focusOnEnter(event, 'fc-1.cBot')">
    861890        </td>
    862891        <td class="status" id="fc-1.clusterOperator.status"></td>
    863892        <td class="help">
    864893          <span id="fc-1.clusterOperator.message" class="message" style="display: none;"></span>
     894        </td>
     895      </tr>
     896      <tr valign="top">
     897        <td class="subprompt">cBot</td>
     898        <td class="input"><select style="width:90%" name="fc-1.cBot" 
     899          onkeypress="focusOnEnter(event, 'fc-1.comments')"></select></td>
     900        <td class="status" id="fc-1.cBot.status"></td>
     901        <td class="help"><span id="fc-1.cBot.message" class="message" style="display: none;"></span>
     902          Select the cBot which was used in the clustering.
    865903        </td>
    866904      </tr>
  • extensions/net.sf.basedb.reggie/trunk/src/net/sf/basedb/reggie/dao/Subtype.java

    r2059 r2107  
    195195  public static final Subtype SEQUENCER = new Subtype("Sequencer", Item.HARDWARE, false);
    196196 
    197  
     197  /**
     198    The definition of the "Cluster generator" hardware subtype. Should already exist in BASE.
     199    @since 2.13
     200  */
     201  public static final Subtype CLUSTER_GENERATOR = new Subtype("Cluster generator", Item.HARDWARE, false);
     202
    198203  /**
    199204    The definition of the "mRNA preparation" protocol subtype.
  • extensions/net.sf.basedb.reggie/trunk/src/net/sf/basedb/reggie/servlet/FlowCellServlet.java

    r2094 r2107  
    400400          Number fcId = (Number)jsonFlowCell.get("id");
    401401
     402          Number cBotId = (Number)jsonFlowCell.get("cBot");     
     403          Hardware cBot = cBotId == null ? null : Hardware.getById(dc, cBotId.intValue());
     404
    402405          Date clusterDate = Reggie.CONVERTER_STRING_TO_DATE.convert((String)jsonFlowCell.get("clusterDate"));
    403406          String clusterOperator = Values.getStringOrNull((String)jsonFlowCell.get("clusterOperator"));
     
    407410          createEvent.setEventDate(clusterDate);
    408411          createEvent.setProtocol(clusterProtocol);
     412          createEvent.setHardware(cBot);
    409413
    410414          flowCell.setDescription((String)jsonFlowCell.get("comments"));
  • extensions/net.sf.basedb.reggie/trunk/src/net/sf/basedb/reggie/servlet/InstallServlet.java

    r2102 r2107  
    161161        jsonChecks.add(checkSubtype(dc, Subtype.POOLED_LIBRARY, createIfMissing, Subtype.LIBRARY, Subtype.POOLING_PROTOCOL));
    162162        jsonChecks.add(checkSubtype(dc, Subtype.CLUSTER_PROTOCOL, createIfMissing));
    163         jsonChecks.add(checkSubtype(dc, Subtype.FLOW_CELL, createIfMissing, Subtype.POOLED_LIBRARY, Subtype.CLUSTER_PROTOCOL));
     163        jsonChecks.add(checkSubtype(dc, Subtype.CLUSTER_GENERATOR, createIfMissing));
     164        jsonChecks.add(checkSubtype(dc, Subtype.FLOW_CELL, createIfMissing, Subtype.POOLED_LIBRARY, Subtype.CLUSTER_GENERATOR, Subtype.CLUSTER_PROTOCOL));
    164165        jsonChecks.add(checkSubtype(dc, Subtype.BIOANALYZER_PDF, createIfMissing));
    165166        jsonChecks.add(checkSubtype(dc, Subtype.CALIPER_PDF, createIfMissing));
Note: See TracChangeset for help on using the changeset viewer.