extensions/net.sf.basedb.reggie/trunk/resources/sampleproc/extraction_registration.jsp

Code
Comments
Other
Rev Date Author Line
1639 09 May 12 nicklas 1 <%@ page
1639 09 May 12 nicklas 2   pageEncoding="UTF-8"
1639 09 May 12 nicklas 3   session="false"
1639 09 May 12 nicklas 4   import="net.sf.basedb.core.User"
1639 09 May 12 nicklas 5   import="net.sf.basedb.core.DbControl"
1639 09 May 12 nicklas 6   import="net.sf.basedb.core.SessionControl"
1639 09 May 12 nicklas 7   import="net.sf.basedb.core.Application"
1639 09 May 12 nicklas 8   import="net.sf.basedb.util.formatter.DateFormatter"
1639 09 May 12 nicklas 9   import="net.sf.basedb.util.formatter.Formatter"
1639 09 May 12 nicklas 10   import="net.sf.basedb.clients.web.Base"  
1639 09 May 12 nicklas 11   import="net.sf.basedb.clients.web.util.HTML"  
1639 09 May 12 nicklas 12   import="net.sf.basedb.clients.web.extensions.ExtensionsControl"
1639 09 May 12 nicklas 13   import="java.util.Date"
1639 09 May 12 nicklas 14 %>
1639 09 May 12 nicklas 15 <%@ taglib prefix="base" uri="/WEB-INF/base.tld" %>
1639 09 May 12 nicklas 16 <%@ taglib prefix="p" uri="/WEB-INF/path.tld" %>
1639 09 May 12 nicklas 17 <%
3976 26 May 16 nicklas 18 final SessionControl sc = Base.getExistingSessionControl(request, "net.sf.basedb.reggie", true);
1639 09 May 12 nicklas 19 final String ID = sc.getId();
1639 09 May 12 nicklas 20 final float scale = Base.getScale(sc);
1639 09 May 12 nicklas 21 final String home = ExtensionsControl.getHomeUrl("net.sf.basedb.reggie");
1639 09 May 12 nicklas 22 DbControl dc = null;
1639 09 May 12 nicklas 23 try
1639 09 May 12 nicklas 24 {
1639 09 May 12 nicklas 25   dc = sc.newDbControl();
1639 09 May 12 nicklas 26   final User user = User.getById(dc, sc.getLoggedInUserId());
1639 09 May 12 nicklas 27   final Formatter dateFormat = new DateFormatter("yyyyMMdd");
1639 09 May 12 nicklas 28 %>
1639 09 May 12 nicklas 29 <base:page type="default" >
2688 23 Sep 14 nicklas 30 <base:head 
2688 23 Sep 14 nicklas 31   scripts="~../reggie-2.js,~extraction_registration.js" 
2688 23 Sep 14 nicklas 32   styles="path.css,~../css/reggie-2.css"
2688 23 Sep 14 nicklas 33   >
1639 09 May 12 nicklas 34 <style>
1639 09 May 12 nicklas 35 tr.highlight
1639 09 May 12 nicklas 36 {
3026 11 Dec 14 nicklas 37   border-top-width: 1px;
3026 11 Dec 14 nicklas 38   border-top-style: dotted;
1639 09 May 12 nicklas 39 }
1642 10 May 12 nicklas 40
1648 16 May 12 nicklas 41 #detailsTable
1648 16 May 12 nicklas 42 {
1648 16 May 12 nicklas 43   width: 100%; 
1648 16 May 12 nicklas 44   border-collapse: collapse;
3026 11 Dec 14 nicklas 45   border-bottom-width: 1px;
3026 11 Dec 14 nicklas 46   border-top-width: 1px;
1648 16 May 12 nicklas 47 }
1648 16 May 12 nicklas 48
2688 23 Sep 14 nicklas 49 #detailsTable td, #detailsTable th
1642 10 May 12 nicklas 50 {
1642 10 May 12 nicklas 51   text-align: center;
2688 23 Sep 14 nicklas 52   min-width: 5%;
6725 04 May 22 nicklas 53   padding: 2px;
1642 10 May 12 nicklas 54 }
1642 10 May 12 nicklas 55
2688 23 Sep 14 nicklas 56 #detailsTable .comment
1658 21 May 12 nicklas 57 {
2688 23 Sep 14 nicklas 58   min-width: 10%;
1658 21 May 12 nicklas 59 }
1658 21 May 12 nicklas 60
1642 10 May 12 nicklas 61 #detailsTable .italic
1642 10 May 12 nicklas 62 {
1642 10 May 12 nicklas 63   font-style: italic;
1642 10 May 12 nicklas 64 }
1642 10 May 12 nicklas 65
3470 27 Aug 15 nicklas 66 #detailsTable .low-conc
3470 27 Aug 15 nicklas 67 {
3470 27 Aug 15 nicklas 68   background-image: url('../images/warning_small.png');
3470 27 Aug 15 nicklas 69   background-repeat: no-repeat;
3470 27 Aug 15 nicklas 70   background-position: 98% 50%;
3470 27 Aug 15 nicklas 71 }
3470 27 Aug 15 nicklas 72
1642 10 May 12 nicklas 73 .nondefault
1642 10 May 12 nicklas 74 {
1643 11 May 12 nicklas 75   background: #FFF066;
1642 10 May 12 nicklas 76 }
1642 10 May 12 nicklas 77 .nondefault:after
1642 10 May 12 nicklas 78 {
1642 10 May 12 nicklas 79   content: '›';
1642 10 May 12 nicklas 80 }
1642 10 May 12 nicklas 81 .nondefault:before
1642 10 May 12 nicklas 82 {
1642 10 May 12 nicklas 83   content: '‹';
1642 10 May 12 nicklas 84 }
2900 05 Nov 14 nicklas 85 span.status
2900 05 Nov 14 nicklas 86 {
2900 05 Nov 14 nicklas 87   width: 20px;
2900 05 Nov 14 nicklas 88   float: right;
2900 05 Nov 14 nicklas 89 }
6725 04 May 22 nicklas 90 .specimen, .label
3740 11 Feb 16 nicklas 91 {
3740 11 Feb 16 nicklas 92   white-space: nowrap;
3740 11 Feb 16 nicklas 93 }
6725 04 May 22 nicklas 94
6725 04 May 22 nicklas 95 .nolabels .label
6725 04 May 22 nicklas 96 {
6725 04 May 22 nicklas 97   display: none;
6725 04 May 22 nicklas 98 }
6725 04 May 22 nicklas 99
1639 09 May 12 nicklas 100 </style>
1639 09 May 12 nicklas 101 </base:head>
2688 23 Sep 14 nicklas 102 <base:body>
1639 09 May 12 nicklas 103
1639 09 May 12 nicklas 104   <p:path><p:pathelement 
1915 21 Mar 13 nicklas 105     title="Reggie" href="<%="../index.jsp?ID="+ID%>" 
1639 09 May 12 nicklas 106     /><p:pathelement title="DNA/RNA/FlowThrough registration" 
1639 09 May 12 nicklas 107     /></p:path>
1639 09 May 12 nicklas 108
1639 09 May 12 nicklas 109   <div class="content">
1639 09 May 12 nicklas 110
2688 23 Sep 14 nicklas 111   <form name="reggie" id="wizard" class="wizard">
1642 10 May 12 nicklas 112
2688 23 Sep 14 nicklas 113   <div class="step auto-hide" id="step-1">
2688 23 Sep 14 nicklas 114     <div class="step-no">1</div>
2688 23 Sep 14 nicklas 115     <div class="step-title">Select unprocessed lysate items</div>
2688 23 Sep 14 nicklas 116     <div class="step-content">
1639 09 May 12 nicklas 117   
2688 23 Sep 14 nicklas 118       <table class="step-form">
4099 14 Sep 16 nicklas 119       <tr class="align-top" id="regularFlowRow">
4099 14 Sep 16 nicklas 120         <td class="prompt">Lysates<div style="font-weight: normal;">(regular flow)</div></td>
2688 23 Sep 14 nicklas 121         <td class="input">
3740 11 Feb 16 nicklas 122           <select name="lysates" id="lysates" class="yellow-label-support" multiple size="15" data-current-user="<%=HTML.encodeTags(user.getName())%>"></select>
1639 09 May 12 nicklas 123         </td>
2688 23 Sep 14 nicklas 124         <td class="status" id="lysates.status"></td>
2688 23 Sep 14 nicklas 125         <td class="help">
2688 23 Sep 14 nicklas 126           <span id="lysates.message" class="message" ></span>
3468 26 Aug 15 nicklas 127           Select 1-12 items. The list contain Lysate items that has not yet been processed
3740 11 Feb 16 nicklas 128           (determined by absence of a 'creation' date).<br>
3740 11 Feb 16 nicklas 129           <base:icon image="<%=home+"/images/yellow-label.png"%>" /> = YellowLabel specimen
1639 09 May 12 nicklas 130         </td>
1639 09 May 12 nicklas 131       </tr>
4099 14 Sep 16 nicklas 132       <tr class="align-top" id="reExtractionRow" style="display: none;">
4099 14 Sep 16 nicklas 133         <td class="prompt">Lysates<div style="font-weight: normal;">(re-extraction)</div></td>
4099 14 Sep 16 nicklas 134         <td class="input">
4099 14 Sep 16 nicklas 135           <select name="reextraction" id="reextraction" multiple size="12" class="yellow-label-support"></select>
5304 15 Feb 19 nicklas 136           <b>Download labels</b>
5304 15 Feb 19 nicklas 137           <base:icon subclass="link" id="downloadLabelsCsv" image="<%=home + "/images/download.png"%>" 
5304 15 Feb 19 nicklas 138             data-format="csv" title="Download labels as a tab-separated text file (csv)">CSV</base:icon>
5304 15 Feb 19 nicklas 139           <base:icon subclass="link" id="downloadLabelsXlsx" image="<%=home + "/images/download.png"%>" 
5304 15 Feb 19 nicklas 140             data-format="xlsx" title="Download lables as an Excel worksheet file (xlsx)">Excel</base:icon>
4099 14 Sep 16 nicklas 141         </td>
4099 14 Sep 16 nicklas 142         <td class="status" id="reextraction.status"></td>
4099 14 Sep 16 nicklas 143         <td class="help">
4099 14 Sep 16 nicklas 144           <span id="reextraction.message" class="message"></span>
4099 14 Sep 16 nicklas 145           Select lysates that have been marked for re-extraction to include in this extraction.
5304 15 Feb 19 nicklas 146           <b>Download labels</b> in either <b>CSV</b> or <b>Excel</b> format for creating labels.
4099 14 Sep 16 nicklas 147         </td>
4099 14 Sep 16 nicklas 148       </tr>
1639 09 May 12 nicklas 149       </table>
2688 23 Sep 14 nicklas 150     </div>
2688 23 Sep 14 nicklas 151   </div>
1639 09 May 12 nicklas 152   
1639 09 May 12 nicklas 153   <!-- 2. Lysis + Qiacube information -->
2688 23 Sep 14 nicklas 154   <div class="step auto-hide" id="step-2">
2688 23 Sep 14 nicklas 155     <div class="step-no">2</div>
3468 26 Aug 15 nicklas 156     <div class="step-title">Common information from Lysate and QIAcube step</div>
2688 23 Sep 14 nicklas 157     <div class="step-content">
2688 23 Sep 14 nicklas 158     
2688 23 Sep 14 nicklas 159       <table class="step-form">
2688 23 Sep 14 nicklas 160       <tbody class="section-header">
2688 23 Sep 14 nicklas 161         <tr>
4094 12 Sep 16 nicklas 162           <td colspan="4">Lysis <span id="only-re-extraction"></span></td>
2688 23 Sep 14 nicklas 163         </tr>
2688 23 Sep 14 nicklas 164       </tbody>
1639 09 May 12 nicklas 165       <tr>
2688 23 Sep 14 nicklas 166         <td class="prompt">Date</td>
2688 23 Sep 14 nicklas 167         <td class="input">
2688 23 Sep 14 nicklas 168           <input type="text" name="lysisDate" id="lysisDate"
2688 23 Sep 14 nicklas 169             value="<%=dateFormat.format(new Date()) %>" 
2688 23 Sep 14 nicklas 170             class="auto-init" data-auto-init="focus-on-enter" data-next-focus="lysisProtocol"
2688 23 Sep 14 nicklas 171             style="width: 8em;" maxlength="10">
2688 23 Sep 14 nicklas 172             <base:icon 
2688 23 Sep 14 nicklas 173               id="lysisDateCalendar"
2688 23 Sep 14 nicklas 174               subclass="auto-init"
2688 23 Sep 14 nicklas 175               data-auto-init="calendar"
2688 23 Sep 14 nicklas 176               data-textarea-id="lysisDate"
2688 23 Sep 14 nicklas 177               data-date-format="yyyyMMdd"
2688 23 Sep 14 nicklas 178               data-title="Lysis date"
2688 23 Sep 14 nicklas 179               image="calendar.png" 
2688 23 Sep 14 nicklas 180               tooltip="Select a date from a calendar" 
2688 23 Sep 14 nicklas 181               tabindex="-1"
2688 23 Sep 14 nicklas 182             />
1639 09 May 12 nicklas 183         </td>
1639 09 May 12 nicklas 184         <td class="status" id="lysisDate.status"></td>
2688 23 Sep 14 nicklas 185         <td class="help">
2688 23 Sep 14 nicklas 186           <span id="lysisDate.message" class="message"></span>
2688 23 Sep 14 nicklas 187           (YYYYMMDD or MMDD)
2688 23 Sep 14 nicklas 188         </td>
1639 09 May 12 nicklas 189       </tr>
2690 24 Sep 14 nicklas 190       <tr>
2688 23 Sep 14 nicklas 191         <td class="prompt">Protocol</td>
2688 23 Sep 14 nicklas 192         <td class="input">
2688 23 Sep 14 nicklas 193           <select name="lysisProtocol" id="lysisProtocol" 
2690 24 Sep 14 nicklas 194             class="auto-init" data-auto-init="focus-on-enter" data-next-focus="rltPlusBuffer"
2688 23 Sep 14 nicklas 195           ></select>
2688 23 Sep 14 nicklas 196         </td>
1639 09 May 12 nicklas 197         <td class="status" id="lysisProtocol.status"></td>
2688 23 Sep 14 nicklas 198         <td class="help">
2688 23 Sep 14 nicklas 199           <span id="lysisProtocol.message" class="message"></span>
1639 09 May 12 nicklas 200           Select the protocol which was used in the lysis step.
1639 09 May 12 nicklas 201         </td>
1639 09 May 12 nicklas 202       </tr>
2690 24 Sep 14 nicklas 203       <tr>
2690 24 Sep 14 nicklas 204         <td class="subprompt" id="rltPlusBuffer.title">RLT Plus buffer</td>
2690 24 Sep 14 nicklas 205         <td class="input">
2690 24 Sep 14 nicklas 206           <input type="text" name="rltPlusBuffer" id="rltPlusBuffer" 
2690 24 Sep 14 nicklas 207             class="auto-init" data-auto-init="focus-on-enter" data-next-focus="betaMercaptoetanol"
2690 24 Sep 14 nicklas 208             maxlength="255">
2690 24 Sep 14 nicklas 209         </td>
2690 24 Sep 14 nicklas 210         <td class="status" id="rltPlusBuffer.status"></td>
2690 24 Sep 14 nicklas 211         <td class="help">
2690 24 Sep 14 nicklas 212           <span id="rltPlusBuffer.message" class="message"></span>
2690 24 Sep 14 nicklas 213           Lot numbers for the reagents used.
2690 24 Sep 14 nicklas 214         </td>
2690 24 Sep 14 nicklas 215       </tr>
2690 24 Sep 14 nicklas 216       <tr>
2690 24 Sep 14 nicklas 217         <td class="subprompt" id="betaMercaptoetanol.title">Beta-Mercaptoetanol</td>
2690 24 Sep 14 nicklas 218         <td class="input">
2690 24 Sep 14 nicklas 219           <input type="text" name="betaMercaptoetanol" id="betaMercaptoetanol" 
2690 24 Sep 14 nicklas 220             class="auto-init" data-auto-init="focus-on-enter" data-next-focus="reagentDx"
2690 24 Sep 14 nicklas 221             maxlength="255">
2690 24 Sep 14 nicklas 222         </td>
2690 24 Sep 14 nicklas 223         <td class="status" id="betaMercaptoetanol.status"></td>
2690 24 Sep 14 nicklas 224         <td class="help">
2690 24 Sep 14 nicklas 225           <span id="betaMercaptoetanol.message" class="message"></span>
2690 24 Sep 14 nicklas 226         </td>
2690 24 Sep 14 nicklas 227       </tr>
2690 24 Sep 14 nicklas 228       <tr>
2690 24 Sep 14 nicklas 229         <td class="subprompt" id="reagentDx.title">Reagent DX</td>
2690 24 Sep 14 nicklas 230         <td class="input">
2690 24 Sep 14 nicklas 231           <input type="text" name="reagentDx" id="reagentDx" 
2690 24 Sep 14 nicklas 232             class="auto-init" data-auto-init="focus-on-enter" data-next-focus="qiaShredderColumn"
2690 24 Sep 14 nicklas 233             maxlength="255">
2690 24 Sep 14 nicklas 234         </td>
2690 24 Sep 14 nicklas 235         <td class="status" id="reagentDx.status"></td>
2690 24 Sep 14 nicklas 236         <td class="help">
2690 24 Sep 14 nicklas 237           <span id="reagentDx.message" class="message"></span>
2690 24 Sep 14 nicklas 238         </td>
2690 24 Sep 14 nicklas 239       </tr>
2690 24 Sep 14 nicklas 240       <tr>
2690 24 Sep 14 nicklas 241         <td class="subprompt" id="qiaShredderColumn.title">QIAshredder column</td>
2690 24 Sep 14 nicklas 242         <td class="input">
2690 24 Sep 14 nicklas 243           <input type="text" name="qiaShredderColumn" id="qiaShredderColumn" 
2690 24 Sep 14 nicklas 244             class="auto-init" data-auto-init="focus-on-enter" data-next-focus="qiacubeDate"
2690 24 Sep 14 nicklas 245             maxlength="255">
2690 24 Sep 14 nicklas 246         </td>
2690 24 Sep 14 nicklas 247         <td class="status" id="qiaShredderColumn.status"></td>
2690 24 Sep 14 nicklas 248         <td class="help">
2690 24 Sep 14 nicklas 249           <span id="qiaShredderColumn.message" class="message"></span>
2690 24 Sep 14 nicklas 250         </td>
2690 24 Sep 14 nicklas 251       </tr>
3168 05 Mar 15 nicklas 252       <tr id="useLatestLysateReagents" style="display: none;">
3168 05 Mar 15 nicklas 253         <td class="prompt"></td>
3168 05 Mar 15 nicklas 254         <td class="input">
3168 05 Mar 15 nicklas 255           <base:button id="btnUseLatestLysateReagents"
3168 05 Mar 15 nicklas 256             title="Use latest lot numbers" data-which="lysate" />
3168 05 Mar 15 nicklas 257             <span id="latestLysisDate"></span>
3168 05 Mar 15 nicklas 258         </td>
3168 05 Mar 15 nicklas 259         <td class="status"></td>
3168 05 Mar 15 nicklas 260         <td class="help">
3168 05 Mar 15 nicklas 261           Click on the button to automatically fetch
3168 05 Mar 15 nicklas 262           and fill in reagent lot numbers from the latest
3468 26 Aug 15 nicklas 263           QIAcube run.
3168 05 Mar 15 nicklas 264         </td>
3168 05 Mar 15 nicklas 265       </tr>
2688 23 Sep 14 nicklas 266       <tbody class="section-header">
2688 23 Sep 14 nicklas 267         <tr>
3468 26 Aug 15 nicklas 268           <td colspan="4">QIAcube</td>
2688 23 Sep 14 nicklas 269         </tr>
2688 23 Sep 14 nicklas 270       </tbody>
1639 09 May 12 nicklas 271       <tr>
2688 23 Sep 14 nicklas 272         <td class="prompt">Date</td>
2688 23 Sep 14 nicklas 273         <td class="input">
2688 23 Sep 14 nicklas 274           <input type="text" name="qiacubeDate" id="qiacubeDate"
2688 23 Sep 14 nicklas 275             value="<%=dateFormat.format(new Date()) %>" 
2688 23 Sep 14 nicklas 276             class="auto-init" data-auto-init="focus-on-enter" data-next-focus="qiacubeRunNo"
2688 23 Sep 14 nicklas 277             style="width: 8em;" maxlength="10">
2688 23 Sep 14 nicklas 278             <base:icon 
2688 23 Sep 14 nicklas 279               id="qiacubeDateCalendar"
2688 23 Sep 14 nicklas 280               subclass="auto-init"
2688 23 Sep 14 nicklas 281               data-auto-init="calendar"
2688 23 Sep 14 nicklas 282               data-textarea-id="qiacubeDate"
2688 23 Sep 14 nicklas 283               data-date-format="yyyyMMdd"
3468 26 Aug 15 nicklas 284               data-title="QIAcube date"
2688 23 Sep 14 nicklas 285               image="calendar.png" 
2688 23 Sep 14 nicklas 286               tooltip="Select a date from a calendar" 
2688 23 Sep 14 nicklas 287               tabindex="-1"
2688 23 Sep 14 nicklas 288             />
1639 09 May 12 nicklas 289         </td>
1639 09 May 12 nicklas 290         <td class="status" id="qiacubeDate.status"></td>
2688 23 Sep 14 nicklas 291         <td class="help">
2688 23 Sep 14 nicklas 292           <span id="qiacubeDate.message" class="message"></span>
2688 23 Sep 14 nicklas 293           (YYYYMMDD or MMDD)
2688 23 Sep 14 nicklas 294         </td>
1639 09 May 12 nicklas 295       </tr>
1639 09 May 12 nicklas 296       <tr>
2688 23 Sep 14 nicklas 297         <td class="prompt">Run number</td>
2688 23 Sep 14 nicklas 298         <td class="input">
2688 23 Sep 14 nicklas 299           <input type="text" name="qiacubeRunNo" id="qiacubeRunNo"
2688 23 Sep 14 nicklas 300             class="auto-init" data-auto-init="focus-on-enter" data-next-focus="qiacubeOperator"
2688 23 Sep 14 nicklas 301             style="width: 8em;" maxlength="10" value="1">
1639 09 May 12 nicklas 302         </td>
1639 09 May 12 nicklas 303         <td class="status" id="qiacubeRunNo.status"></td>
2688 23 Sep 14 nicklas 304         <td class="help"><span id="qiacubeRunNo.message" class="message"></span></td>
1639 09 May 12 nicklas 305       </tr>
1639 09 May 12 nicklas 306       <tr>
2688 23 Sep 14 nicklas 307         <td class="prompt">Operator</td>
2688 23 Sep 14 nicklas 308         <td class="input">
2688 23 Sep 14 nicklas 309           <input type="text" name="qiacubeOperator" id="qiacubeOperator" 
2688 23 Sep 14 nicklas 310             class="auto-init" data-auto-init="focus-on-enter" data-next-focus="dnaProtocol"
2688 23 Sep 14 nicklas 311             value="<%=HTML.encodeTags(user.getName()) %>" maxlength="255">
1639 09 May 12 nicklas 312         </td>
1639 09 May 12 nicklas 313         <td class="status" id="qiacubeOperator.status"></td>
1639 09 May 12 nicklas 314         <td class="help">
2688 23 Sep 14 nicklas 315           <span id="qiacubeOperator.message" class="message"></span>
1639 09 May 12 nicklas 316         </td>
1639 09 May 12 nicklas 317       </tr>
2688 23 Sep 14 nicklas 318       <tr>
2688 23 Sep 14 nicklas 319         <td class="prompt">DNA protocol</td>
2688 23 Sep 14 nicklas 320         <td class="input">
2688 23 Sep 14 nicklas 321           <select name="dnaProtocol" id="dnaProtocol"
2688 23 Sep 14 nicklas 322             class="auto-init" data-auto-init="focus-on-enter" data-next-focus="rnaProtocol"
2688 23 Sep 14 nicklas 323           ></select>
2688 23 Sep 14 nicklas 324         </td>
1639 09 May 12 nicklas 325         <td class="status" id="dnaProtocol.status"></td>
2688 23 Sep 14 nicklas 326         <td class="help">
2688 23 Sep 14 nicklas 327           <span id="dnaProtocol.message" class="message"></span>
1639 09 May 12 nicklas 328           Select the protocol which was used for DNA extraction.
1639 09 May 12 nicklas 329         </td>
1639 09 May 12 nicklas 330       </tr>
2688 23 Sep 14 nicklas 331       <tr>
2688 23 Sep 14 nicklas 332         <td class="prompt">RNA protocol</td>
2688 23 Sep 14 nicklas 333         <td class="input">
2688 23 Sep 14 nicklas 334           <select name="rnaProtocol" id="rnaProtocol"
2688 23 Sep 14 nicklas 335             class="auto-init" data-auto-init="focus-on-enter" data-next-focus="ftProtocol"
2688 23 Sep 14 nicklas 336           ></select>
2688 23 Sep 14 nicklas 337         </td>
1639 09 May 12 nicklas 338         <td class="status" id="rnaProtocol.status"></td>
2688 23 Sep 14 nicklas 339         <td class="help">
2688 23 Sep 14 nicklas 340           <span id="rnaProtocol.message" class="message"></span>
1639 09 May 12 nicklas 341           Select the protocol which was used for RNA extraction.
1639 09 May 12 nicklas 342         </td>
1639 09 May 12 nicklas 343       </tr>
2688 23 Sep 14 nicklas 344       <tr>
2688 23 Sep 14 nicklas 345         <td class="prompt">FlowThrough protocol</td>
2688 23 Sep 14 nicklas 346         <td class="input">
2690 24 Sep 14 nicklas 347           <select name="ftProtocol" id="ftProtocol"
2690 24 Sep 14 nicklas 348             class="auto-init" data-auto-init="focus-on-enter" data-next-focus="allPrepMiniKit"
2690 24 Sep 14 nicklas 349           ></select>
2688 23 Sep 14 nicklas 350         </td>
1639 09 May 12 nicklas 351         <td class="status" id="ftProtocol.status"></td>
2688 23 Sep 14 nicklas 352         <td class="help">
2688 23 Sep 14 nicklas 353           <span id="ftProtocol.message" class="message"></span>
1639 09 May 12 nicklas 354           Select the protocol which was used for FlowThrough extraction.
1639 09 May 12 nicklas 355         </td>
1639 09 May 12 nicklas 356       </tr>
2690 24 Sep 14 nicklas 357       <tr>
2690 24 Sep 14 nicklas 358         <td class="subprompt" id="allPrepMiniKit.title">AllPrep DNA/RNA Mini kit</td>
2690 24 Sep 14 nicklas 359         <td class="input">
2690 24 Sep 14 nicklas 360           <input type="text" name="allPrepMiniKit" id="allPrepMiniKit" 
2690 24 Sep 14 nicklas 361             class="auto-init" data-auto-init="focus-on-enter" data-next-focus="etoh70"
2690 24 Sep 14 nicklas 362             maxlength="255">
2690 24 Sep 14 nicklas 363         </td>
2690 24 Sep 14 nicklas 364         <td class="status" id="allPrepMiniKit.status"></td>
2690 24 Sep 14 nicklas 365         <td class="help">
2690 24 Sep 14 nicklas 366           <span id="allPrepMiniKit.message" class="message"></span>
2690 24 Sep 14 nicklas 367           Lot numbers for the reagents used.
2690 24 Sep 14 nicklas 368         </td>
2690 24 Sep 14 nicklas 369       </tr>
2690 24 Sep 14 nicklas 370       <tr>
2690 24 Sep 14 nicklas 371         <td class="subprompt" id="etoh70.title">ETOH 70%</td>
2690 24 Sep 14 nicklas 372         <td class="input">
2690 24 Sep 14 nicklas 373           <input type="text" name="etoh70" id="etoh70" 
2690 24 Sep 14 nicklas 374             class="auto-init" data-auto-init="focus-on-enter" data-next-focus="bufferRw1"
2690 24 Sep 14 nicklas 375             maxlength="255">
2690 24 Sep 14 nicklas 376         </td>
2690 24 Sep 14 nicklas 377         <td class="status" id="etoh70.status"></td>
2690 24 Sep 14 nicklas 378         <td class="help">
2690 24 Sep 14 nicklas 379           <span id="etoh70.message" class="message"></span>
2690 24 Sep 14 nicklas 380         </td>
2690 24 Sep 14 nicklas 381       </tr>
2690 24 Sep 14 nicklas 382       <tr>
2690 24 Sep 14 nicklas 383         <td class="subprompt" id="bufferRw1.title">Buffer RW1</td>
2690 24 Sep 14 nicklas 384         <td class="input">
2690 24 Sep 14 nicklas 385           <input type="text" name="bufferRw1" id="bufferRw1" 
2690 24 Sep 14 nicklas 386             class="auto-init" data-auto-init="focus-on-enter" data-next-focus="bufferRpe"
2690 24 Sep 14 nicklas 387             maxlength="255">
2690 24 Sep 14 nicklas 388         </td>
2690 24 Sep 14 nicklas 389         <td class="status" id="bufferRw1.status"></td>
2690 24 Sep 14 nicklas 390         <td class="help">
2690 24 Sep 14 nicklas 391           <span id="bufferRw1.message" class="message"></span>
2690 24 Sep 14 nicklas 392         </td>
2690 24 Sep 14 nicklas 393       </tr>
2690 24 Sep 14 nicklas 394       <tr>
2690 24 Sep 14 nicklas 395         <td class="subprompt" id="bufferRpe.title">Buffer RPE</td>
2690 24 Sep 14 nicklas 396         <td class="input">
2690 24 Sep 14 nicklas 397           <input type="text" name="bufferRpe" id="bufferRpe" 
2690 24 Sep 14 nicklas 398             class="auto-init" data-auto-init="focus-on-enter" data-next-focus="bufferAw1"
2690 24 Sep 14 nicklas 399             maxlength="255">
2690 24 Sep 14 nicklas 400         </td>
2690 24 Sep 14 nicklas 401         <td class="status" id="bufferRpe.status"></td>
2690 24 Sep 14 nicklas 402         <td class="help">
2690 24 Sep 14 nicklas 403           <span id="bufferRpe.message" class="message"></span>
2690 24 Sep 14 nicklas 404         </td>
2690 24 Sep 14 nicklas 405       </tr>
2690 24 Sep 14 nicklas 406       <tr>
2690 24 Sep 14 nicklas 407         <td class="subprompt" id="bufferAw1.title">Buffer AW1</td>
2690 24 Sep 14 nicklas 408         <td class="input">
2690 24 Sep 14 nicklas 409           <input type="text" name="bufferAw1" id="bufferAw1" 
2690 24 Sep 14 nicklas 410             class="auto-init" data-auto-init="focus-on-enter" data-next-focus="bufferAw2"
2690 24 Sep 14 nicklas 411             maxlength="255">
2690 24 Sep 14 nicklas 412         </td>
2690 24 Sep 14 nicklas 413         <td class="status" id="bufferAw1.status"></td>
2690 24 Sep 14 nicklas 414         <td class="help">
2690 24 Sep 14 nicklas 415           <span id="bufferAw1.message" class="message"></span>
2690 24 Sep 14 nicklas 416         </td>
2690 24 Sep 14 nicklas 417       </tr>
2690 24 Sep 14 nicklas 418       <tr>
2690 24 Sep 14 nicklas 419         <td class="subprompt" id="bufferAw2.title">Buffer AW2</td>
2690 24 Sep 14 nicklas 420         <td class="input">
2690 24 Sep 14 nicklas 421           <input type="text" name="bufferAw2" id="bufferAw2" 
2690 24 Sep 14 nicklas 422             class="auto-init" data-auto-init="focus-on-enter" data-next-focus="bufferEb"
2690 24 Sep 14 nicklas 423             maxlength="255">
2690 24 Sep 14 nicklas 424         </td>
2690 24 Sep 14 nicklas 425         <td class="status" id="bufferAw2.status"></td>
2690 24 Sep 14 nicklas 426         <td class="help">
2690 24 Sep 14 nicklas 427           <span id="bufferAw2.message" class="message"></span>
2690 24 Sep 14 nicklas 428         </td>
2690 24 Sep 14 nicklas 429       </tr>
2690 24 Sep 14 nicklas 430       <tr>
2690 24 Sep 14 nicklas 431         <td class="subprompt" id="bufferEb.title">Buffer EB</td>
2690 24 Sep 14 nicklas 432         <td class="input">
2690 24 Sep 14 nicklas 433           <input type="text" name="bufferEb" id="bufferEb" 
2690 24 Sep 14 nicklas 434             class="auto-init" data-auto-init="focus-on-enter" data-next-focus="rnaseFreeWater"
2690 24 Sep 14 nicklas 435             maxlength="255">
2690 24 Sep 14 nicklas 436         </td>
2690 24 Sep 14 nicklas 437         <td class="status" id="bufferEb.status"></td>
2690 24 Sep 14 nicklas 438         <td class="help">
2690 24 Sep 14 nicklas 439           <span id="bufferEb.message" class="message"></span>
2690 24 Sep 14 nicklas 440         </td>
2690 24 Sep 14 nicklas 441       </tr>
2690 24 Sep 14 nicklas 442       <tr>
2690 24 Sep 14 nicklas 443         <td class="subprompt" id="rnaseFreeWater.title">RNase free water</td>
2690 24 Sep 14 nicklas 444         <td class="input">
2690 24 Sep 14 nicklas 445           <input type="text" name="rnaseFreeWater" id="rnaseFreeWater" 
2690 24 Sep 14 nicklas 446             class="auto-init" data-auto-init="focus-on-enter" data-next-focus="allPrepDnaColumn"
2690 24 Sep 14 nicklas 447             maxlength="255">
2690 24 Sep 14 nicklas 448         </td>
2690 24 Sep 14 nicklas 449         <td class="status" id="rnaseFreeWater.status"></td>
2690 24 Sep 14 nicklas 450         <td class="help">
2690 24 Sep 14 nicklas 451           <span id="rnaseFreeWater.message" class="message"></span>
2690 24 Sep 14 nicklas 452         </td>
2690 24 Sep 14 nicklas 453       </tr>
2690 24 Sep 14 nicklas 454       <tr>
2690 24 Sep 14 nicklas 455         <td class="subprompt" id="allPrepDnaColumn.title">AllPrep DNA Mini Spin Column</td>
2690 24 Sep 14 nicklas 456         <td class="input">
2690 24 Sep 14 nicklas 457           <input type="text" name="allPrepDnaColumn" id="allPrepDnaColumn" 
2690 24 Sep 14 nicklas 458             class="auto-init" data-auto-init="focus-on-enter" data-next-focus="rneasyColumn"
2690 24 Sep 14 nicklas 459             maxlength="255">
2690 24 Sep 14 nicklas 460         </td>
2690 24 Sep 14 nicklas 461         <td class="status" id="allPrepDnaColumn.status"></td>
2690 24 Sep 14 nicklas 462         <td class="help">
2690 24 Sep 14 nicklas 463           <span id="allPrepDnaColumn.message" class="message"></span>
2690 24 Sep 14 nicklas 464         </td>
2690 24 Sep 14 nicklas 465       </tr>
2690 24 Sep 14 nicklas 466       <tr>
2690 24 Sep 14 nicklas 467         <td class="subprompt" id="rneasyColumn.title">RNeasy Mini Spin Column</td>
2690 24 Sep 14 nicklas 468         <td class="input">
2690 24 Sep 14 nicklas 469           <input type="text" name="rneasyColumn" id="rneasyColumn" 
2690 24 Sep 14 nicklas 470             maxlength="255">
2690 24 Sep 14 nicklas 471         </td>
2690 24 Sep 14 nicklas 472         <td class="status" id="rneasyColumn.status"></td>
2690 24 Sep 14 nicklas 473         <td class="help">
2690 24 Sep 14 nicklas 474           <span id="rneasyColumn.message" class="message"></span>
2690 24 Sep 14 nicklas 475         </td>
2690 24 Sep 14 nicklas 476       </tr>
3168 05 Mar 15 nicklas 477       <tr id="useLatestRnaReagents" style="display: none;">
3168 05 Mar 15 nicklas 478         <td class="prompt"></td>
3168 05 Mar 15 nicklas 479         <td class="input">
3168 05 Mar 15 nicklas 480           <base:button id="btnUseLatestRnaReagents"
3168 05 Mar 15 nicklas 481             title="Use latest lot numbers" data-which="rna" />
3168 05 Mar 15 nicklas 482             <span id="latestQiacubeDate"></span>
3168 05 Mar 15 nicklas 483         </td>
3168 05 Mar 15 nicklas 484         <td class="status"></td>
3168 05 Mar 15 nicklas 485         <td class="help">
3168 05 Mar 15 nicklas 486           Click on the button to automatically fetch
3168 05 Mar 15 nicklas 487           and fill in reagent lot numbers from the latest
3468 26 Aug 15 nicklas 488           QIAcube run.
3168 05 Mar 15 nicklas 489         </td>
3168 05 Mar 15 nicklas 490       </tr>
1639 09 May 12 nicklas 491       </table>
2688 23 Sep 14 nicklas 492     </div>
2688 23 Sep 14 nicklas 493   </div>
1639 09 May 12 nicklas 494   
2688 23 Sep 14 nicklas 495   <!-- 3. DNA/RNA/FT information -->
2688 23 Sep 14 nicklas 496   <div class="step" id="step-3">
2688 23 Sep 14 nicklas 497     <div class="step-no">3</div>
2688 23 Sep 14 nicklas 498     <div class="step-title">RNA/DNA/FlowThrough details</div>
2688 23 Sep 14 nicklas 499     <div class="step-content">
2688 23 Sep 14 nicklas 500     
6725 04 May 22 nicklas 501       <div class="bg-filled-50" style="padding: 4px;">
3468 26 Aug 15 nicklas 502         The table below show values from the QIAcube run.
1643 11 May 12 nicklas 503         <span class="nondefault">Highlighted</span> values have been manually 
3468 26 Aug 15 nicklas 504         changed from their default values. If the QIAcube positions are not correct,
1643 11 May 12 nicklas 505         they must be fixed before the <i>NanoDrop Sample ID</i> file is downloaded
1643 11 May 12 nicklas 506         since the order in this file depends on the positions. The concentrations
1643 11 May 12 nicklas 507         and other values are loaded from the file after the NanoDrop has been completed.
1643 11 May 12 nicklas 508       </div>
6725 04 May 22 nicklas 509       <div id="label-info" class="bg-filled-50" style="padding: 0 4px 4px 4px; display: none;">
6725 04 May 22 nicklas 510         ¹ Some SCAN-B tubes have a non-standard label.
6725 04 May 22 nicklas 511       </div>
1643 11 May 12 nicklas 512
6725 04 May 22 nicklas 513       <div id="detailsSection" class="nolabels"></div>
1643 11 May 12 nicklas 514
2688 23 Sep 14 nicklas 515       <table class="step-form">
2688 23 Sep 14 nicklas 516       <tr class="align-top">
1639 09 May 12 nicklas 517         <td class="prompt">NanoDrop Sample ID</td>
1639 09 May 12 nicklas 518         <td class="input">
2688 23 Sep 14 nicklas 519           <base:button id="downloadSampleIdFile" title="Download..."
2688 23 Sep 14 nicklas 520             image="<%=home + "/images/download.png"%>" style="width:10em;" />
1639 09 May 12 nicklas 521         </td>
1639 09 May 12 nicklas 522         <td class="status" id="downloadSampleIdFile.status"></td>
2688 23 Sep 14 nicklas 523         <td class="help">
2688 23 Sep 14 nicklas 524           <span id="downloadSampleIdFile.message" class="message"></span>
1639 09 May 12 nicklas 525           Download and import this file to the NanoDrop software before analyzing the DNA/RNA.
3468 26 Aug 15 nicklas 526           <b>Note that the samples are sorted by QIAcube position!</b>
1639 09 May 12 nicklas 527         </td>
1639 09 May 12 nicklas 528       </tr>
1643 11 May 12 nicklas 529       <tr>
1639 09 May 12 nicklas 530         <td class="prompt">NanoDrop values</td>
1639 09 May 12 nicklas 531         <td class="input">
3026 11 Dec 14 nicklas 532           <input type="file" name="nanoDropFile" id="nanoDropFile" class="required" style="width: 95%;" accept="text/plain">
1639 09 May 12 nicklas 533         </td>
1639 09 May 12 nicklas 534         <td class="status" id="nanoDropFile.status"></td>
2688 23 Sep 14 nicklas 535         <td class="help">
2688 23 Sep 14 nicklas 536           <span id="nanoDropFile.message" class="message"></span>
1639 09 May 12 nicklas 537           Select the file containing measurements from the NanoDrop.
1639 09 May 12 nicklas 538         </td>
1639 09 May 12 nicklas 539       </tr>
1639 09 May 12 nicklas 540       </table>
2688 23 Sep 14 nicklas 541     </div>
2688 23 Sep 14 nicklas 542   </div>
1639 09 May 12 nicklas 543   
2688 23 Sep 14 nicklas 544   <div id="wizard-status"></div>
1639 09 May 12 nicklas 545   
2688 23 Sep 14 nicklas 546   <table class="navigation" id="navigation">
1639 09 May 12 nicklas 547   <tr>
2688 23 Sep 14 nicklas 548     <td><base:button id="gocancel" title="Cancel" /></td>
2688 23 Sep 14 nicklas 549     <td><base:button id="gonext" title="Next" image="<%=home+"/images/gonext.png"%>" /></td>
2688 23 Sep 14 nicklas 550     <td><base:button id="goregister" title="Register" image="<%=home+"/images/import.png"%>"  /></td>
2688 23 Sep 14 nicklas 551     <td><base:button id="gorestart" title="Restart" image="<%=home+"/images/goback.png"%>" /></td>
2688 23 Sep 14 nicklas 552     <td><base:button id="rnaQcWizard" title="Continue with RNA QC registration on Caliper plate" image="<%=home+"/images/gonext.png"%>" /></td>
2688 23 Sep 14 nicklas 553     <td id="gonext-message" class="message"></td>
1639 09 May 12 nicklas 554   </tr>
1639 09 May 12 nicklas 555   </table>
2688 23 Sep 14 nicklas 556   
1639 09 May 12 nicklas 557   </form>
2924 13 Nov 14 nicklas 558   
2924 13 Nov 14 nicklas 559   <div id="debug-tools">
2924 13 Nov 14 nicklas 560     <base:button 
2924 13 Nov 14 nicklas 561       id="btnFakeNanoFropFile" 
2924 13 Nov 14 nicklas 562       title="Fake NanoDrop file..." 
2924 13 Nov 14 nicklas 563       tooltip="Generates fake data for all NanoDrop measurements."
2925 13 Nov 14 nicklas 564       image="bug.png"
2924 13 Nov 14 nicklas 565     />
1639 09 May 12 nicklas 566   </div>
1639 09 May 12 nicklas 567   
2924 13 Nov 14 nicklas 568   </div>
2924 13 Nov 14 nicklas 569   
1639 09 May 12 nicklas 570 </base:body>
1639 09 May 12 nicklas 571 </base:page>
1639 09 May 12 nicklas 572 <%
1639 09 May 12 nicklas 573 }
1639 09 May 12 nicklas 574 finally
1639 09 May 12 nicklas 575 {
1639 09 May 12 nicklas 576   if (dc != null) dc.close();
1639 09 May 12 nicklas 577 }
1639 09 May 12 nicklas 578 %>