extensions/net.sf.basedb.meludi/trunk/resources/libprep/add_new_libprep_kit.jsp

Code
Comments
Other
Rev Date Author Line
3554 20 Oct 15 olle 1 <%@ page
3554 20 Oct 15 olle 2   pageEncoding="UTF-8"
3554 20 Oct 15 olle 3   session="false"
3554 20 Oct 15 olle 4   import="net.sf.basedb.core.User"
3554 20 Oct 15 olle 5   import="net.sf.basedb.core.DbControl"
3554 20 Oct 15 olle 6   import="net.sf.basedb.core.SessionControl"
3554 20 Oct 15 olle 7   import="net.sf.basedb.core.Application"
3554 20 Oct 15 olle 8   import="net.sf.basedb.util.formatter.DateFormatter"
3554 20 Oct 15 olle 9   import="net.sf.basedb.util.formatter.Formatter"
3554 20 Oct 15 olle 10   import="net.sf.basedb.clients.web.Base"  
3554 20 Oct 15 olle 11   import="net.sf.basedb.clients.web.util.HTML"  
3554 20 Oct 15 olle 12   import="net.sf.basedb.clients.web.extensions.ExtensionsControl"
3554 20 Oct 15 olle 13   import="java.util.Date"
3554 20 Oct 15 olle 14 %>
3554 20 Oct 15 olle 15 <%@ taglib prefix="base" uri="/WEB-INF/base.tld" %>
3554 20 Oct 15 olle 16 <%@ taglib prefix="p" uri="/WEB-INF/path.tld" %>
3554 20 Oct 15 olle 17 <%
3554 20 Oct 15 olle 18 final SessionControl sc = Base.getExistingSessionControl(request, true);
3554 20 Oct 15 olle 19 final String ID = sc.getId();
3554 20 Oct 15 olle 20 final float scale = Base.getScale(sc);
3554 20 Oct 15 olle 21 final String home = ExtensionsControl.getHomeUrl("net.sf.basedb.meludi");
3554 20 Oct 15 olle 22 DbControl dc = null;
3554 20 Oct 15 olle 23 try
3554 20 Oct 15 olle 24 {
3554 20 Oct 15 olle 25   dc = sc.newDbControl();
3554 20 Oct 15 olle 26   final User user = User.getById(dc, sc.getLoggedInUserId());
3554 20 Oct 15 olle 27   final Formatter dateFormat = new DateFormatter("yyyyMMdd");
3554 20 Oct 15 olle 28 %>
3554 20 Oct 15 olle 29 <base:page type="default" >
3554 20 Oct 15 olle 30 <base:head 
3554 20 Oct 15 olle 31   scripts="~../meludi-2.js,~add_new_libprep_kit.js,~../sampleproc/extraction_utils.js" 
3554 20 Oct 15 olle 32   styles="path.css,~../css/meludi-2.css"
3554 20 Oct 15 olle 33   >
3554 20 Oct 15 olle 34 <style>
3554 20 Oct 15 olle 35 tr.highlight
3554 20 Oct 15 olle 36 {
3554 20 Oct 15 olle 37   border-top-width: 1px;
3554 20 Oct 15 olle 38   border-top-style: dotted;
3554 20 Oct 15 olle 39 }
3554 20 Oct 15 olle 40
3554 20 Oct 15 olle 41 #detailsTable
3554 20 Oct 15 olle 42 {
3554 20 Oct 15 olle 43   width: 100%; 
3554 20 Oct 15 olle 44   border-collapse: collapse;
3554 20 Oct 15 olle 45   border-bottom-width: 1px;
3554 20 Oct 15 olle 46   border-top-width: 1px;
3554 20 Oct 15 olle 47 }
3554 20 Oct 15 olle 48
3554 20 Oct 15 olle 49 #detailsTable td, #detailsTable th
3554 20 Oct 15 olle 50 {
3554 20 Oct 15 olle 51   text-align: center;
3554 20 Oct 15 olle 52   min-width: 5%;
3554 20 Oct 15 olle 53   padding-top: 1px;
3554 20 Oct 15 olle 54   padding-bottom: 1px;
3554 20 Oct 15 olle 55 }
3554 20 Oct 15 olle 56
3554 20 Oct 15 olle 57 #detailsTable .comment
3554 20 Oct 15 olle 58 {
3554 20 Oct 15 olle 59   min-width: 10%;
3554 20 Oct 15 olle 60 }
3554 20 Oct 15 olle 61
3554 20 Oct 15 olle 62 #detailsTable .italic
3554 20 Oct 15 olle 63 {
3554 20 Oct 15 olle 64   font-style: italic;
3554 20 Oct 15 olle 65 }
3554 20 Oct 15 olle 66
3554 20 Oct 15 olle 67 .nondefault
3554 20 Oct 15 olle 68 {
3554 20 Oct 15 olle 69   background: #FFF066;
3554 20 Oct 15 olle 70 }
3554 20 Oct 15 olle 71 .nondefault:after
3554 20 Oct 15 olle 72 {
3554 20 Oct 15 olle 73   content: '›';
3554 20 Oct 15 olle 74 }
3554 20 Oct 15 olle 75 .nondefault:before
3554 20 Oct 15 olle 76 {
3554 20 Oct 15 olle 77   content: '‹';
3554 20 Oct 15 olle 78 }
3554 20 Oct 15 olle 79 span.status
3554 20 Oct 15 olle 80 {
3554 20 Oct 15 olle 81   width: 20px;
3554 20 Oct 15 olle 82   float: right;
3554 20 Oct 15 olle 83 }
3554 20 Oct 15 olle 84 </style>
3554 20 Oct 15 olle 85 </base:head>
3554 20 Oct 15 olle 86 <base:body>
3554 20 Oct 15 olle 87
3554 20 Oct 15 olle 88   <p:path><p:pathelement 
3554 20 Oct 15 olle 89     title="MeLuDi" href="<%="../index.jsp?ID="+ID%>" 
3554 20 Oct 15 olle 90     /><p:pathelement title="Add new library preparation kit" 
3554 20 Oct 15 olle 91     /></p:path>
3554 20 Oct 15 olle 92
3554 20 Oct 15 olle 93   <div class="content">
3554 20 Oct 15 olle 94
3554 20 Oct 15 olle 95 <!--
3554 20 Oct 15 olle 96   <form name="meludi" action="extraction_protocol2.jsp" method="post" target="_blank" id="wizard" class="wizard">
3554 20 Oct 15 olle 97 -->
3554 20 Oct 15 olle 98   <form name="meludi" id="wizard" class="wizard">
3554 20 Oct 15 olle 99     <input type="hidden" name="ID" value="<%=ID%>">
3554 20 Oct 15 olle 100     <input type="hidden" name="hiddenSubmitInfo" value="">
3554 20 Oct 15 olle 101 <!--
3554 20 Oct 15 olle 102     <input type="hidden" name="hiddenNumItems" value="">
3554 20 Oct 15 olle 103     <input type="hidden" name="hiddenCounterBalanceInfoRow" value="">
3554 20 Oct 15 olle 104 -->
3554 20 Oct 15 olle 105
3554 20 Oct 15 olle 106   <div class="step auto-hide" id="step-1">
3554 20 Oct 15 olle 107     <div class="step-no">1</div>
3554 20 Oct 15 olle 108     <div class="step-title">Enter lot numbers etc. for the library preparation kit to add</div>
3554 20 Oct 15 olle 109     <div class="step-content">
3554 20 Oct 15 olle 110
3554 20 Oct 15 olle 111 <!--  
3554 20 Oct 15 olle 112       <div class="bg-filled-50" style="padding: 2px;">
3554 20 Oct 15 olle 113         A "Consumables lot number" file is a text file with rows of tab/comma/semicolon-separated values,<br>
3554 20 Oct 15 olle 114         where each row contains a specification key in first/second column, followed by data columns.<br>
3554 20 Oct 15 olle 115         The file is parsed, assuming known specification keys at the beginning of each row.<br>
3554 20 Oct 15 olle 116         <br>
3554 20 Oct 15 olle 117         The data is then presented in a table with specification keys in a header row, with data<br>
3554 20 Oct 15 olle 118         for each kit on a single row. (Basically, original rows/columns -> columns/rows.)<br>
3554 20 Oct 15 olle 119       </div>
3554 20 Oct 15 olle 120 -->
3554 20 Oct 15 olle 121
3554 20 Oct 15 olle 122       <table class="step-form">
3554 20 Oct 15 olle 123       <tbody class="section-header">
3554 20 Oct 15 olle 124         <tr>
3554 20 Oct 15 olle 125           <td colspan="4">General</td>
3554 20 Oct 15 olle 126         </tr>
3554 20 Oct 15 olle 127       </tbody>
3554 20 Oct 15 olle 128       <tr class="align-top">
3554 20 Oct 15 olle 129         <td class="prompt">Kit name</td>
3554 20 Oct 15 olle 130         <td class="input">
3554 20 Oct 15 olle 131           <input type="text" name="kitName" id="kitName" class="required" style="width: 95%;" accept="text/plain">
3554 20 Oct 15 olle 132         </td>
3554 20 Oct 15 olle 133         <td class="status" id="kitName.status"></td>
3554 20 Oct 15 olle 134         <td class="help">
3554 20 Oct 15 olle 135           <span id="kitName.message" class="message"></span>
5272 30 Jan 19 olle 136           <div id="kitNameText"></div>
3554 20 Oct 15 olle 137         </td>
3554 20 Oct 15 olle 138       </tr>
3554 20 Oct 15 olle 139       <tr class="align-top">
3554 20 Oct 15 olle 140         <td class="prompt">TruSight Tumor Library Prep Box 1</td>
3554 20 Oct 15 olle 141         <td class="input">
3554 20 Oct 15 olle 142           <input type="text" name="libraryPrepBox1" id="libraryPrepBox1" class="required" style="width: 95%;" accept="text/plain">
3554 20 Oct 15 olle 143         </td>
3554 20 Oct 15 olle 144         <td class="status" id="libraryPrepBox1.status"></td>
3554 20 Oct 15 olle 145         <td class="help">
3554 20 Oct 15 olle 146           <span id="libraryPrepBox1.message" class="message"></span>
3554 20 Oct 15 olle 147           TruSight Tumor Library Prep Box 1 lot number.
3554 20 Oct 15 olle 148         </td>
3554 20 Oct 15 olle 149       </tr>
3554 20 Oct 15 olle 150       <tr class="align-top">
3554 20 Oct 15 olle 151         <td class="prompt">TruSight Tumor Index Kit</td>
3554 20 Oct 15 olle 152         <td class="input">
3554 20 Oct 15 olle 153           <input type="text" name="indexKit" id="indexKit" class="required" style="width: 95%;" accept="text/plain">
3554 20 Oct 15 olle 154         </td>
3554 20 Oct 15 olle 155         <td class="status" id="indexKit.status"></td>
3554 20 Oct 15 olle 156         <td class="help">
3554 20 Oct 15 olle 157           <span id="indexKit.message" class="message"></span>
3554 20 Oct 15 olle 158           TruSight Tumor Index Kit lot number.
3554 20 Oct 15 olle 159         </td>
3554 20 Oct 15 olle 160       </tr>
3554 20 Oct 15 olle 161       <tr class="align-top">
3554 20 Oct 15 olle 162         <td class="prompt">TruSight Tumor Content Set Box 3</td>
3554 20 Oct 15 olle 163         <td class="input">
3554 20 Oct 15 olle 164           <input type="text" name="contentSetBox3" id="contentSetBox3" class="required" style="width: 95%;" accept="text/plain">
3554 20 Oct 15 olle 165         </td>
3554 20 Oct 15 olle 166         <td class="status" id="contentSetBox3.status"></td>
3554 20 Oct 15 olle 167         <td class="help">
3554 20 Oct 15 olle 168           <span id="contentSetBox3.message" class="message"></span>
3554 20 Oct 15 olle 169           TruSight Tumor Content Set Box 3 lot number.
3554 20 Oct 15 olle 170         </td>
3554 20 Oct 15 olle 171       </tr>
3554 20 Oct 15 olle 172       <tr class="align-top">
3554 20 Oct 15 olle 173         <td class="prompt">TruSight Tumor Oligo Pool A (FPA)</td>
3554 20 Oct 15 olle 174         <td class="input">
3554 20 Oct 15 olle 175           <input type="text" name="oligoPoolA_FPA" id="oligoPoolA_FPA" class="required" style="width: 95%;" accept="text/plain">
3554 20 Oct 15 olle 176         </td>
3554 20 Oct 15 olle 177         <td class="status" id="oligoPoolA_FPA.status"></td>
3554 20 Oct 15 olle 178         <td class="help">
3554 20 Oct 15 olle 179           <span id="oligoPoolA_FPA.message" class="message"></span>
3554 20 Oct 15 olle 180           TruSight Tumor Oligo Pool A (FPA) lot number.
3554 20 Oct 15 olle 181         </td>
3554 20 Oct 15 olle 182       </tr>
3554 20 Oct 15 olle 183       <tr class="align-top">
3554 20 Oct 15 olle 184         <td class="prompt">TruSight Tumor Oligo Pool B (FPB)</td>
3554 20 Oct 15 olle 185         <td class="input">
3554 20 Oct 15 olle 186           <input type="text" name="oligoPoolB_FPB" id="oligoPoolB_FPB" class="required" style="width: 95%;" accept="text/plain">
3554 20 Oct 15 olle 187         </td>
3554 20 Oct 15 olle 188         <td class="status" id="oligoPoolB_FPB.status"></td>
3554 20 Oct 15 olle 189         <td class="help">
3554 20 Oct 15 olle 190           <span id="oligoPoolB_FPB.message" class="message"></span>
3554 20 Oct 15 olle 191           TruSight Tumor Oligo Pool B (FPB) lot number.
3554 20 Oct 15 olle 192         </td>
3554 20 Oct 15 olle 193       </tr>
3554 20 Oct 15 olle 194       <tr class="align-top">
3554 20 Oct 15 olle 195         <td class="prompt">Oligo Hybridization for Sequencing Reagent 3 (OHS3)</td>
3554 20 Oct 15 olle 196         <td class="input">
3554 20 Oct 15 olle 197           <input type="text" name="oligoHybridizationSequencingReagent3" id="oligoHybridizationSequencingReagent3" class="required" style="width: 95%;" accept="text/plain">
3554 20 Oct 15 olle 198         </td>
3554 20 Oct 15 olle 199         <td class="status" id="oligoHybridizationSequencingReagent3.status"></td>
3554 20 Oct 15 olle 200         <td class="help">
3554 20 Oct 15 olle 201           <span id="oligoHybridizationSequencingReagent3.message" class="message"></span>
3554 20 Oct 15 olle 202           Oligo Hybridization for Sequencing Reagent 3 (OHS3) lot number.
3554 20 Oct 15 olle 203         </td>
3554 20 Oct 15 olle 204       </tr>
3554 20 Oct 15 olle 205       <tr class="align-top">
3554 20 Oct 15 olle 206         <td class="prompt">Stringent Wash 1 (SW1)</td>
3554 20 Oct 15 olle 207         <td class="input">
3554 20 Oct 15 olle 208           <input type="text" name="stringentWash1_SW1" id="stringentWash1_SW1" class="required" style="width: 95%;" accept="text/plain">
3554 20 Oct 15 olle 209         </td>
3554 20 Oct 15 olle 210         <td class="status" id="stringentWash1_SW1.status"></td>
3554 20 Oct 15 olle 211         <td class="help">
3554 20 Oct 15 olle 212           <span id="stringentWash1_SW1.message" class="message"></span>
3554 20 Oct 15 olle 213           Stringent Wash 1 (SW1) lot number.
3554 20 Oct 15 olle 214         </td>
3554 20 Oct 15 olle 215       </tr>
3554 20 Oct 15 olle 216       <tr class="align-top">
3554 20 Oct 15 olle 217         <td class="prompt">Extension Ligation Mix 3 (ELM3)</td>
3554 20 Oct 15 olle 218         <td class="input">
3554 20 Oct 15 olle 219           <input type="text" name="extensionLigationMix3" id="extensionLigationMix3" class="required" style="width: 95%;" accept="text/plain">
3554 20 Oct 15 olle 220         </td>
3554 20 Oct 15 olle 221         <td class="status" id="extensionLigationMix3.status"></td>
3554 20 Oct 15 olle 222         <td class="help">
3554 20 Oct 15 olle 223           <span id="extensionLigationMix3.message" class="message"></span>
3554 20 Oct 15 olle 224           Extension Ligation Mix 3 (ELM3) lot number.
3554 20 Oct 15 olle 225         </td>
3554 20 Oct 15 olle 226       </tr>
3554 20 Oct 15 olle 227       <tr class="align-top">
3554 20 Oct 15 olle 228         <td class="prompt">PCR Master Mix 2 (PMM2)</td>
3554 20 Oct 15 olle 229         <td class="input">
3554 20 Oct 15 olle 230           <input type="text" name="pcrMasterMix2_PMM2" id="pcrMasterMix2_PMM2" class="required" style="width: 95%;" accept="text/plain">
3554 20 Oct 15 olle 231         </td>
3554 20 Oct 15 olle 232         <td class="status" id="pcrMasterMix2_PMM2.status"></td>
3554 20 Oct 15 olle 233         <td class="help">
3554 20 Oct 15 olle 234           <span id="pcrMasterMix2_PMM2.message" class="message"></span>
3554 20 Oct 15 olle 235           PCR Master Mix 2 (PMM2) lot number.
3554 20 Oct 15 olle 236         </td>
3554 20 Oct 15 olle 237       </tr>
3554 20 Oct 15 olle 238       <tr class="align-top">
3554 20 Oct 15 olle 239         <td class="prompt">UB1</td>
3554 20 Oct 15 olle 240         <td class="input">
3554 20 Oct 15 olle 241           <input type="text" name="ub1" id="ub1" class="required" style="width: 95%;" accept="text/plain">
3554 20 Oct 15 olle 242         </td>
3554 20 Oct 15 olle 243         <td class="status" id="ub1.status"></td>
3554 20 Oct 15 olle 244         <td class="help">
3554 20 Oct 15 olle 245           <span id="ub1.message" class="message"></span>
3554 20 Oct 15 olle 246           UB1 lot number.
3554 20 Oct 15 olle 247         </td>
3554 20 Oct 15 olle 248       </tr>
3554 20 Oct 15 olle 249       <tr class="align-top">
3554 20 Oct 15 olle 250         <td class="prompt">TDP</td>
3554 20 Oct 15 olle 251         <td class="input">
3554 20 Oct 15 olle 252           <input type="text" name="tdp" id="tdp" class="required" style="width: 95%;" accept="text/plain">
3554 20 Oct 15 olle 253         </td>
3554 20 Oct 15 olle 254         <td class="status" id="tdp.status"></td>
3554 20 Oct 15 olle 255         <td class="help">
3554 20 Oct 15 olle 256           <span id="tdp.message" class="message"></span>
3554 20 Oct 15 olle 257           TDP lot number.
3554 20 Oct 15 olle 258         </td>
3554 20 Oct 15 olle 259       </tr>
3554 20 Oct 15 olle 260       <tr class="align-top">
3554 20 Oct 15 olle 261         <td class="prompt">Filterplate</td>
3554 20 Oct 15 olle 262         <td class="input">
3554 20 Oct 15 olle 263           <input type="text" name="filterplate" id="filterplate" class="required" style="width: 95%;" accept="text/plain">
3554 20 Oct 15 olle 264         </td>
3554 20 Oct 15 olle 265         <td class="status" id="filterplate.status"></td>
3554 20 Oct 15 olle 266         <td class="help">
3554 20 Oct 15 olle 267           <span id="filterplate.message" class="message"></span>
3554 20 Oct 15 olle 268           Filterplate lot number.
3554 20 Oct 15 olle 269         </td>
3554 20 Oct 15 olle 270       </tr>
3554 20 Oct 15 olle 271       <tbody class="section-header">
3554 20 Oct 15 olle 272         <tr>
3554 20 Oct 15 olle 273           <td colspan="4">Index 1 Primers Lot Numbers</td>
3554 20 Oct 15 olle 274         </tr>
3554 20 Oct 15 olle 275       </tbody>
3554 20 Oct 15 olle 276       <tr class="align-top">
3554 20 Oct 15 olle 277         <td class="prompt">ATCACGAC A701</td>
3554 20 Oct 15 olle 278         <td class="input">
3554 20 Oct 15 olle 279           <input type="text" name="indexPrimerA701" id="indexPrimerA701" class="required" style="width: 95%;" accept="text/plain">
3554 20 Oct 15 olle 280         </td>
3554 20 Oct 15 olle 281         <td class="status" id="indexPrimerA701.status"></td>
3554 20 Oct 15 olle 282         <td class="help">
3554 20 Oct 15 olle 283           <span id="indexPrimerA701.message" class="message"></span>
3554 20 Oct 15 olle 284           A701 lot number (ATCACGAC).
3554 20 Oct 15 olle 285         </td>
3554 20 Oct 15 olle 286       </tr>
3554 20 Oct 15 olle 287       <tr class="align-top">
3554 20 Oct 15 olle 288         <td class="prompt">ACAGTGGT A702</td>
3554 20 Oct 15 olle 289         <td class="input">
3554 20 Oct 15 olle 290           <input type="text" name="indexPrimerA702" id="indexPrimerA702" class="required" style="width: 95%;" accept="text/plain">
3554 20 Oct 15 olle 291         </td>
3554 20 Oct 15 olle 292         <td class="status" id="indexPrimerA702.status"></td>
3554 20 Oct 15 olle 293         <td class="help">
3554 20 Oct 15 olle 294           <span id="indexPrimerA702.message" class="message"></span>
3554 20 Oct 15 olle 295           A702 lot number (ACAGTGGT).
3554 20 Oct 15 olle 296         </td>
3554 20 Oct 15 olle 297       </tr>
3554 20 Oct 15 olle 298       <tr class="align-top">
3554 20 Oct 15 olle 299         <td class="prompt">CAGATCCA A703</td>
3554 20 Oct 15 olle 300         <td class="input">
3554 20 Oct 15 olle 301           <input type="text" name="indexPrimerA703" id="indexPrimerA703" class="required" style="width: 95%;" accept="text/plain">
3554 20 Oct 15 olle 302         </td>
3554 20 Oct 15 olle 303         <td class="status" id="indexPrimerA703.status"></td>
3554 20 Oct 15 olle 304         <td class="help">
3554 20 Oct 15 olle 305           <span id="indexPrimerA703.message" class="message"></span>
3554 20 Oct 15 olle 306           A703 lot number (CAGATCCA).
3554 20 Oct 15 olle 307         </td>
3554 20 Oct 15 olle 308       </tr>
3554 20 Oct 15 olle 309       <tr class="align-top">
3554 20 Oct 15 olle 310         <td class="prompt">ACAAACGG A704</td>
3554 20 Oct 15 olle 311         <td class="input">
3554 20 Oct 15 olle 312           <input type="text" name="indexPrimerA704" id="indexPrimerA704" class="required" style="width: 95%;" accept="text/plain">
3554 20 Oct 15 olle 313         </td>
3554 20 Oct 15 olle 314         <td class="status" id="indexPrimerA704.status"></td>
3554 20 Oct 15 olle 315         <td class="help">
3554 20 Oct 15 olle 316           <span id="indexPrimerA704.message" class="message"></span>
3554 20 Oct 15 olle 317           A704 lot number (ACAAACGG).
3554 20 Oct 15 olle 318         </td>
3554 20 Oct 15 olle 319       </tr>
3554 20 Oct 15 olle 320       <tr class="align-top">
3554 20 Oct 15 olle 321         <td class="prompt">ACCCAGCA A705</td>
3554 20 Oct 15 olle 322         <td class="input">
3554 20 Oct 15 olle 323           <input type="text" name="indexPrimerA705" id="indexPrimerA705" class="required" style="width: 95%;" accept="text/plain">
3554 20 Oct 15 olle 324         </td>
3554 20 Oct 15 olle 325         <td class="status" id="indexPrimerA705.status"></td>
3554 20 Oct 15 olle 326         <td class="help">
3554 20 Oct 15 olle 327           <span id="indexPrimerA705.message" class="message"></span>
3554 20 Oct 15 olle 328           A705 lot number (ACCCAGCA).
3554 20 Oct 15 olle 329         </td>
3554 20 Oct 15 olle 330       </tr>
3554 20 Oct 15 olle 331       <tr class="align-top">
3554 20 Oct 15 olle 332         <td class="prompt">AACCCCTC A706</td>
3554 20 Oct 15 olle 333         <td class="input">
3554 20 Oct 15 olle 334           <input type="text" name="indexPrimerA706" id="indexPrimerA706" class="required" style="width: 95%;" accept="text/plain">
3554 20 Oct 15 olle 335         </td>
3554 20 Oct 15 olle 336         <td class="status" id="indexPrimerA706.status"></td>
3554 20 Oct 15 olle 337         <td class="help">
3554 20 Oct 15 olle 338           <span id="indexPrimerA706.message" class="message"></span>
3554 20 Oct 15 olle 339           A706 lot number (AACCCCTC).
3554 20 Oct 15 olle 340         </td>
3554 20 Oct 15 olle 341       </tr>
3554 20 Oct 15 olle 342       <tr class="align-top">
3554 20 Oct 15 olle 343         <td class="prompt">CCCAACCT A707</td>
3554 20 Oct 15 olle 344         <td class="input">
3554 20 Oct 15 olle 345           <input type="text" name="indexPrimerA707" id="indexPrimerA707" class="required" style="width: 95%;" accept="text/plain">
3554 20 Oct 15 olle 346         </td>
3554 20 Oct 15 olle 347         <td class="status" id="indexPrimerA707.status"></td>
3554 20 Oct 15 olle 348         <td class="help">
3554 20 Oct 15 olle 349           <span id="indexPrimerA707.message" class="message"></span>
3554 20 Oct 15 olle 350           A707 lot number (CCCAACCT).
3554 20 Oct 15 olle 351         </td>
3554 20 Oct 15 olle 352       </tr>
3554 20 Oct 15 olle 353       <tr class="align-top">
3554 20 Oct 15 olle 354         <td class="prompt">CACCACAC A708</td>
3554 20 Oct 15 olle 355         <td class="input">
3554 20 Oct 15 olle 356           <input type="text" name="indexPrimerA708" id="indexPrimerA708" class="required" style="width: 95%;" accept="text/plain">
3554 20 Oct 15 olle 357         </td>
3554 20 Oct 15 olle 358         <td class="status" id="indexPrimerA708.status"></td>
3554 20 Oct 15 olle 359         <td class="help">
3554 20 Oct 15 olle 360           <span id="indexPrimerA708.message" class="message"></span>
3554 20 Oct 15 olle 361           A708 lot number (CACCACAC).
3554 20 Oct 15 olle 362         </td>
3554 20 Oct 15 olle 363       </tr>
3554 20 Oct 15 olle 364       <tr class="align-top">
3554 20 Oct 15 olle 365         <td class="prompt">GAAACCCA A709</td>
3554 20 Oct 15 olle 366         <td class="input">
3554 20 Oct 15 olle 367           <input type="text" name="indexPrimerA709" id="indexPrimerA709" class="required" style="width: 95%;" accept="text/plain">
3554 20 Oct 15 olle 368         </td>
3554 20 Oct 15 olle 369         <td class="status" id="indexPrimerA709.status"></td>
3554 20 Oct 15 olle 370         <td class="help">
3554 20 Oct 15 olle 371           <span id="indexPrimerA709.message" class="message"></span>
3554 20 Oct 15 olle 372           A709 lot number (GAAACCCA).
3554 20 Oct 15 olle 373         </td>
3554 20 Oct 15 olle 374       </tr>
3554 20 Oct 15 olle 375       <tr class="align-top">
3554 20 Oct 15 olle 376         <td class="prompt">TGTGACCA A710</td>
3554 20 Oct 15 olle 377         <td class="input">
3554 20 Oct 15 olle 378           <input type="text" name="indexPrimerA710" id="indexPrimerA710" class="required" style="width: 95%;" accept="text/plain">
3554 20 Oct 15 olle 379         </td>
3554 20 Oct 15 olle 380         <td class="status" id="indexPrimerA710.status"></td>
3554 20 Oct 15 olle 381         <td class="help">
3554 20 Oct 15 olle 382           <span id="indexPrimerA710.message" class="message"></span>
3554 20 Oct 15 olle 383           A710 lot number (TGTGACCA).
3554 20 Oct 15 olle 384         </td>
3554 20 Oct 15 olle 385       </tr>
3554 20 Oct 15 olle 386       <tr class="align-top">
3554 20 Oct 15 olle 387         <td class="prompt">AGGGTCAA A711</td>
3554 20 Oct 15 olle 388         <td class="input">
3554 20 Oct 15 olle 389           <input type="text" name="indexPrimerA711" id="indexPrimerA711" class="required" style="width: 95%;" accept="text/plain">
3554 20 Oct 15 olle 390         </td>
3554 20 Oct 15 olle 391         <td class="status" id="indexPrimerA711.status"></td>
3554 20 Oct 15 olle 392         <td class="help">
3554 20 Oct 15 olle 393           <span id="indexPrimerA711.message" class="message"></span>
3554 20 Oct 15 olle 394           A711 lot number (AGGGTCAA).
3554 20 Oct 15 olle 395         </td>
3554 20 Oct 15 olle 396       </tr>
3554 20 Oct 15 olle 397       <tr class="align-top">
3554 20 Oct 15 olle 398         <td class="prompt">AGGAGTGG A712</td>
3554 20 Oct 15 olle 399         <td class="input">
3554 20 Oct 15 olle 400           <input type="text" name="indexPrimerA712" id="indexPrimerA712" class="required" style="width: 95%;" accept="text/plain">
3554 20 Oct 15 olle 401         </td>
3554 20 Oct 15 olle 402         <td class="status" id="indexPrimerA712.status"></td>
3554 20 Oct 15 olle 403         <td class="help">
3554 20 Oct 15 olle 404           <span id="indexPrimerA712.message" class="message"></span>
3554 20 Oct 15 olle 405           A712 lot number (AGGAGTGG).
3554 20 Oct 15 olle 406         </td>
3554 20 Oct 15 olle 407       </tr>
3554 20 Oct 15 olle 408       <tbody class="section-header">
3554 20 Oct 15 olle 409         <tr>
3554 20 Oct 15 olle 410           <td colspan="4">Index 2 Primers Lot Numbers</td>
3554 20 Oct 15 olle 411         </tr>
3554 20 Oct 15 olle 412       </tbody>
3554 20 Oct 15 olle 413       <tr class="align-top">
3554 20 Oct 15 olle 414         <td class="prompt">TGAACCTT A501</td>
3554 20 Oct 15 olle 415         <td class="input">
3554 20 Oct 15 olle 416           <input type="text" name="indexPrimerA501" id="indexPrimerA501" class="required" style="width: 95%;" accept="text/plain">
3554 20 Oct 15 olle 417         </td>
3554 20 Oct 15 olle 418         <td class="status" id="indexPrimerA501.status"></td>
3554 20 Oct 15 olle 419         <td class="help">
3554 20 Oct 15 olle 420           <span id="indexPrimerA501.message" class="message"></span>
3554 20 Oct 15 olle 421           A501 lot number (TGAACCTT).
3554 20 Oct 15 olle 422         </td>
3554 20 Oct 15 olle 423       </tr>
3554 20 Oct 15 olle 424       <tr class="align-top">
3554 20 Oct 15 olle 425         <td class="prompt">TGCTAAGT A502</td>
3554 20 Oct 15 olle 426         <td class="input">
3554 20 Oct 15 olle 427           <input type="text" name="indexPrimerA502" id="indexPrimerA502" class="required" style="width: 95%;" accept="text/plain">
3554 20 Oct 15 olle 428         </td>
3554 20 Oct 15 olle 429         <td class="status" id="indexPrimerA502.status"></td>
3554 20 Oct 15 olle 430         <td class="help">
3554 20 Oct 15 olle 431           <span id="indexPrimerA502.message" class="message"></span>
3554 20 Oct 15 olle 432           A502 lot number (TGCTAAGT).
3554 20 Oct 15 olle 433         </td>
3554 20 Oct 15 olle 434       </tr>
3554 20 Oct 15 olle 435       <tr class="align-top">
3554 20 Oct 15 olle 436         <td class="prompt">TGTTCTCT A503</td>
3554 20 Oct 15 olle 437         <td class="input">
3554 20 Oct 15 olle 438           <input type="text" name="indexPrimerA503" id="indexPrimerA503" class="required" style="width: 95%;" accept="text/plain">
3554 20 Oct 15 olle 439         </td>
3554 20 Oct 15 olle 440         <td class="status" id="indexPrimerA503.status"></td>
3554 20 Oct 15 olle 441         <td class="help">
3554 20 Oct 15 olle 442           <span id="indexPrimerA503.message" class="message"></span>
3554 20 Oct 15 olle 443           A503 lot number (TGTTCTCT).
3554 20 Oct 15 olle 444         </td>
3554 20 Oct 15 olle 445       </tr>
3554 20 Oct 15 olle 446       <tr class="align-top">
3554 20 Oct 15 olle 447         <td class="prompt">TAAGACAC A504</td>
3554 20 Oct 15 olle 448         <td class="input">
3554 20 Oct 15 olle 449           <input type="text" name="indexPrimerA504" id="indexPrimerA504" class="required" style="width: 95%;" accept="text/plain">
3554 20 Oct 15 olle 450         </td>
3554 20 Oct 15 olle 451         <td class="status" id="indexPrimerA504.status"></td>
3554 20 Oct 15 olle 452         <td class="help">
3554 20 Oct 15 olle 453           <span id="indexPrimerA504.message" class="message"></span>
3554 20 Oct 15 olle 454           A504 lot number (TAAGACAC).
3554 20 Oct 15 olle 455         </td>
3554 20 Oct 15 olle 456       </tr>
3554 20 Oct 15 olle 457       <tr class="align-top">
3554 20 Oct 15 olle 458         <td class="prompt">CTAATCGA A505</td>
3554 20 Oct 15 olle 459         <td class="input">
3554 20 Oct 15 olle 460           <input type="text" name="indexPrimerA505" id="indexPrimerA505" class="required" style="width: 95%;" accept="text/plain">
3554 20 Oct 15 olle 461         </td>
3554 20 Oct 15 olle 462         <td class="status" id="indexPrimerA505.status"></td>
3554 20 Oct 15 olle 463         <td class="help">
3554 20 Oct 15 olle 464           <span id="indexPrimerA505.message" class="message"></span>
3554 20 Oct 15 olle 465           A505 lot number (CTAATCGA).
3554 20 Oct 15 olle 466         </td>
3554 20 Oct 15 olle 467       </tr>
3554 20 Oct 15 olle 468       <tr class="align-top">
3554 20 Oct 15 olle 469         <td class="prompt">CTAGAACA A506</td>
3554 20 Oct 15 olle 470         <td class="input">
3554 20 Oct 15 olle 471           <input type="text" name="indexPrimerA506" id="indexPrimerA506" class="required" style="width: 95%;" accept="text/plain">
3554 20 Oct 15 olle 472         </td>
3554 20 Oct 15 olle 473         <td class="status" id="indexPrimerA506.status"></td>
3554 20 Oct 15 olle 474         <td class="help">
3554 20 Oct 15 olle 475           <span id="indexPrimerA506.message" class="message"></span>
3554 20 Oct 15 olle 476           A506 lot number (CTAGAACA).
3554 20 Oct 15 olle 477         </td>
3554 20 Oct 15 olle 478       </tr>
3554 20 Oct 15 olle 479       <tr class="align-top">
3554 20 Oct 15 olle 480         <td class="prompt">TAAGTTCC A507</td>
3554 20 Oct 15 olle 481         <td class="input">
3554 20 Oct 15 olle 482           <input type="text" name="indexPrimerA507" id="indexPrimerA507" class="required" style="width: 95%;" accept="text/plain">
3554 20 Oct 15 olle 483         </td>
3554 20 Oct 15 olle 484         <td class="status" id="indexPrimerA507.status"></td>
3554 20 Oct 15 olle 485         <td class="help">
3554 20 Oct 15 olle 486           <span id="indexPrimerA507.message" class="message"></span>
3554 20 Oct 15 olle 487           A507 lot number (TAAGTTCC).
3554 20 Oct 15 olle 488         </td>
3554 20 Oct 15 olle 489       </tr>
3554 20 Oct 15 olle 490       <tr class="align-top">
3554 20 Oct 15 olle 491         <td class="prompt">TAGACCTA A508</td>
3554 20 Oct 15 olle 492         <td class="input">
3554 20 Oct 15 olle 493           <input type="text" name="indexPrimerA508" id="indexPrimerA508" class="required" style="width: 95%;" accept="text/plain">
3554 20 Oct 15 olle 494         </td>
3554 20 Oct 15 olle 495         <td class="status" id="indexPrimerA508.status"></td>
3554 20 Oct 15 olle 496         <td class="help">
3554 20 Oct 15 olle 497           <span id="indexPrimerA508.message" class="message"></span>
3554 20 Oct 15 olle 498           A508 lot number (TAGACCTA).
3554 20 Oct 15 olle 499         </td>
3554 20 Oct 15 olle 500       </tr>
3554 20 Oct 15 olle 501       <tbody class="section-header">
3554 20 Oct 15 olle 502         <tr>
3554 20 Oct 15 olle 503           <td colspan="4">Expiration date</td>
3554 20 Oct 15 olle 504         </tr>
3554 20 Oct 15 olle 505       </tbody>
3554 20 Oct 15 olle 506       <tr>
3554 20 Oct 15 olle 507         <td class="prompt">Expiration date</td>
3554 20 Oct 15 olle 508         <td class="input">
3554 20 Oct 15 olle 509           <input type="text" name="expirationDate" id="expirationDate"
3554 20 Oct 15 olle 510             value="<%=dateFormat.format(new Date()) %>" 
3554 20 Oct 15 olle 511             class="auto-init" data-auto-init="focus-on-enter" data-next-focus=""
3554 20 Oct 15 olle 512             style="width: 8em;" maxlength="10">
3554 20 Oct 15 olle 513             <base:icon 
3554 20 Oct 15 olle 514               id="expirationDateCalendar"
3554 20 Oct 15 olle 515               subclass="auto-init"
3554 20 Oct 15 olle 516               data-auto-init="calendar"
3554 20 Oct 15 olle 517               data-textarea-id="expirationDate"
3554 20 Oct 15 olle 518               data-date-format="yyyyMMdd"
3554 20 Oct 15 olle 519               data-title="Expiration date"
3554 20 Oct 15 olle 520               image="calendar.png" 
3554 20 Oct 15 olle 521               tooltip="Select a date from a calendar" 
3554 20 Oct 15 olle 522               tabindex="-1"
3554 20 Oct 15 olle 523             />
3554 20 Oct 15 olle 524         </td>
3554 20 Oct 15 olle 525         <td class="status" id="expirationDate.status"></td>
3554 20 Oct 15 olle 526         <td class="help">
3554 20 Oct 15 olle 527           <span id="expirationDate.message" class="message"></span>
3554 20 Oct 15 olle 528           (YYYYMMDD or MMDD) This date is also used in name of optional file to download
3554 20 Oct 15 olle 529         </td>
3554 20 Oct 15 olle 530       </tr>
3554 20 Oct 15 olle 531       <tbody class="section-header">
3554 20 Oct 15 olle 532         <tr>
3554 20 Oct 15 olle 533           <td colspan="4">Input options</td>
3554 20 Oct 15 olle 534         </tr>
3554 20 Oct 15 olle 535       </tbody>
3554 20 Oct 15 olle 536       <tr>
3554 20 Oct 15 olle 537         <td class="prompt">Reagent lot numbers</td>
3554 20 Oct 15 olle 538         <td class="input">
3554 20 Oct 15 olle 539           <base:button id="clearReagents" title="Clear"
3554 20 Oct 15 olle 540             style="width:10em;" />
3554 20 Oct 15 olle 541         </td>
3554 20 Oct 15 olle 542         <td class="status" id="clearReagents.status"></td>
3554 20 Oct 15 olle 543         <td class="help">
3554 20 Oct 15 olle 544           <span id="clearReagents.message" class="message"></span>
3554 20 Oct 15 olle 545           Clear reagents input fields.
3554 20 Oct 15 olle 546         </td>
3554 20 Oct 15 olle 547       </tr>
3554 20 Oct 15 olle 548       <tr>
3554 20 Oct 15 olle 549         <td class="subprompt">From file</td>
3554 20 Oct 15 olle 550         <td class="input">
3870 22 Apr 16 olle 551           <input type="file" name="reagentFile" id="reagentFile" class="required" style="width: 95%;" accept=".csv,.tsv">
3554 20 Oct 15 olle 552         </td>
3554 20 Oct 15 olle 553         <td class="status" id="reagentFile.status"></td>
3554 20 Oct 15 olle 554         <td class="help">
3554 20 Oct 15 olle 555           <span id="reagentFile.message" class="message"></span>
3554 20 Oct 15 olle 556           Select a CSV file containing lot numbers for the reagents.
3554 20 Oct 15 olle 557         </td>
3554 20 Oct 15 olle 558       </tr>
3554 20 Oct 15 olle 559       <tbody class="section-header">
3554 20 Oct 15 olle 560         <tr>
3554 20 Oct 15 olle 561           <td colspan="4">Output options</td>
3554 20 Oct 15 olle 562         </tr>
3554 20 Oct 15 olle 563       </tbody>
3554 20 Oct 15 olle 564       <tr>
3554 20 Oct 15 olle 565         <td class="prompt">Download reagent lot no. file</td>
3554 20 Oct 15 olle 566         <td class="input">
3554 20 Oct 15 olle 567           <base:button id="downloadReagentLotNoFile" title="Download..."
3554 20 Oct 15 olle 568             image="<%=home + "/images/download.png"%>" style="width:10em;" />
3554 20 Oct 15 olle 569         </td>
3554 20 Oct 15 olle 570         <td class="status" id="downloadReagentLotNoFile.status"></td>
3554 20 Oct 15 olle 571         <td class="help">
3554 20 Oct 15 olle 572           <span id="downloadReagentLotNoFile.message" class="message"></span>
3554 20 Oct 15 olle 573           Download CSV file with current lot numbers for future import/reference, with one row per kit.
3554 20 Oct 15 olle 574         </td>
3554 20 Oct 15 olle 575       </tr>
3554 20 Oct 15 olle 576       </table>
3554 20 Oct 15 olle 577     </div>
3554 20 Oct 15 olle 578   </div>
3554 20 Oct 15 olle 579   
3554 20 Oct 15 olle 580   <!-- 2. New library preparation kit lot number information -->
3554 20 Oct 15 olle 581 <!--
3554 20 Oct 15 olle 582   <div class="step" id="step-2">
3554 20 Oct 15 olle 583     <div class="step-no">2</div>
3554 20 Oct 15 olle 584     <div class="step-title">Consumables lot number details</div>
3554 20 Oct 15 olle 585     <div class="step-content">
3554 20 Oct 15 olle 586
3554 20 Oct 15 olle 587       <div class="bg-filled-50" id="detailsConsumablesFileName" style="padding: 2px;"></div>
3554 20 Oct 15 olle 588
3554 20 Oct 15 olle 589       <div id="detailsSection"></div>
3554 20 Oct 15 olle 590
3554 20 Oct 15 olle 591       <table class="step-form">
3554 20 Oct 15 olle 592       <tr>
3554 20 Oct 15 olle 593         <td class="prompt">Download reagent lot no. file</td>
3554 20 Oct 15 olle 594         <td class="input">
3554 20 Oct 15 olle 595           <base:button id="downloadReagentLotNoFile" title="Download..."
3554 20 Oct 15 olle 596             image="<%=home + "/images/download.png"%>" style="width:10em;" />
3554 20 Oct 15 olle 597         </td>
3554 20 Oct 15 olle 598         <td class="status" id="downloadReagentLotNoFile.status"></td>
3554 20 Oct 15 olle 599         <td class="help">
3554 20 Oct 15 olle 600           <span id="downloadReagentLotNoFile.message" class="message"></span>
3554 20 Oct 15 olle 601           Download file with current lot no.s for future import/reference, with one row per kit.
3554 20 Oct 15 olle 602         </td>
3554 20 Oct 15 olle 603       </tr>
3554 20 Oct 15 olle 604       </table>
3554 20 Oct 15 olle 605     </div>
3554 20 Oct 15 olle 606   </div>
3554 20 Oct 15 olle 607 -->
3554 20 Oct 15 olle 608   
3554 20 Oct 15 olle 609   <div id="wizard-status"></div>
3554 20 Oct 15 olle 610   
3554 20 Oct 15 olle 611   <table class="navigation" id="navigation">
3554 20 Oct 15 olle 612   <tr>
3554 20 Oct 15 olle 613     <td><base:button id="gocancel" title="Cancel" /></td>
3554 20 Oct 15 olle 614     <td><base:button id="gonext" title="Next" image="<%=home+"/images/gonext.png"%>" /></td>
3554 20 Oct 15 olle 615     <td><base:button id="goregister" title="Register" image="<%=home+"/images/import.png"%>"  /></td>
3554 20 Oct 15 olle 616     <td><base:button id="gorestart" title="Restart" image="<%=home+"/images/goback.png"%>" /></td>
3554 20 Oct 15 olle 617 <!--
3554 20 Oct 15 olle 618     <td><base:button id="gocreate" title="Create library reagents report" image="<%=home+"/images/import.png"%>" /></td>
3554 20 Oct 15 olle 619 -->
3554 20 Oct 15 olle 620     <td id="gonext-message" class="message"></td>
3554 20 Oct 15 olle 621   </tr>
3554 20 Oct 15 olle 622   </table>
3554 20 Oct 15 olle 623   
3554 20 Oct 15 olle 624   </form>
3554 20 Oct 15 olle 625
3554 20 Oct 15 olle 626   </div>
3554 20 Oct 15 olle 627   
3554 20 Oct 15 olle 628 </base:body>
3554 20 Oct 15 olle 629 </base:page>
3554 20 Oct 15 olle 630 <%
3554 20 Oct 15 olle 631 }
3554 20 Oct 15 olle 632 finally
3554 20 Oct 15 olle 633 {
3554 20 Oct 15 olle 634   if (dc != null) dc.close();
3554 20 Oct 15 olle 635 }
3554 20 Oct 15 olle 636 %>