extensions/net.sf.basedb.reggie/trunk/resources/sequencing/sequencing_started.jsp

Code
Comments
Other
Rev Date Author Line
2020 13 Sep 13 nicklas 1 <%@ page
2020 13 Sep 13 nicklas 2   pageEncoding="UTF-8"
2020 13 Sep 13 nicklas 3   session="false"
2020 13 Sep 13 nicklas 4   import="net.sf.basedb.core.User"
2020 13 Sep 13 nicklas 5   import="net.sf.basedb.core.DbControl"
2020 13 Sep 13 nicklas 6   import="net.sf.basedb.core.SessionControl"
2020 13 Sep 13 nicklas 7   import="net.sf.basedb.core.Application"
4293 11 Jan 17 nicklas 8   import="net.sf.basedb.util.formatter.DateFormatter"
4293 11 Jan 17 nicklas 9   import="net.sf.basedb.util.formatter.Formatter"
2020 13 Sep 13 nicklas 10   import="net.sf.basedb.clients.web.Base"  
2020 13 Sep 13 nicklas 11   import="net.sf.basedb.clients.web.util.HTML"  
2020 13 Sep 13 nicklas 12   import="net.sf.basedb.clients.web.extensions.ExtensionsControl"
4293 11 Jan 17 nicklas 13   import="java.util.Date"
2020 13 Sep 13 nicklas 14 %>
2020 13 Sep 13 nicklas 15 <%@ taglib prefix="base" uri="/WEB-INF/base.tld" %>
2020 13 Sep 13 nicklas 16 <%@ taglib prefix="p" uri="/WEB-INF/path.tld" %>
2020 13 Sep 13 nicklas 17 <%
3976 26 May 16 nicklas 18 final SessionControl sc = Base.getExistingSessionControl(request, "net.sf.basedb.reggie", true);
2020 13 Sep 13 nicklas 19 final String ID = sc.getId();
2020 13 Sep 13 nicklas 20 final float scale = Base.getScale(sc);
2020 13 Sep 13 nicklas 21 final String home = ExtensionsControl.getHomeUrl("net.sf.basedb.reggie");
5470 05 Jun 19 nicklas 22 final String pipeline = request.getParameter("pipeline");
2020 13 Sep 13 nicklas 23 DbControl dc = null;
2020 13 Sep 13 nicklas 24 try
2020 13 Sep 13 nicklas 25 {
2020 13 Sep 13 nicklas 26   dc = sc.newDbControl();
2020 13 Sep 13 nicklas 27   final User user = User.getById(dc, sc.getLoggedInUserId());
4293 11 Jan 17 nicklas 28   final Formatter dateFormat = new DateFormatter("yyyyMMdd");
2020 13 Sep 13 nicklas 29 %>
2020 13 Sep 13 nicklas 30 <base:page type="default" >
2650 10 Sep 14 nicklas 31 <base:head 
3633 30 Nov 15 nicklas 32   scripts="~../reggie-2.js,~sequencing_started.js" 
2650 10 Sep 14 nicklas 33   styles="path.css,~../css/reggie-2.css"
2650 10 Sep 14 nicklas 34 />
2650 10 Sep 14 nicklas 35 <base:body>
2020 13 Sep 13 nicklas 36
2020 13 Sep 13 nicklas 37   <p:path><p:pathelement 
2020 13 Sep 13 nicklas 38     title="Reggie" href="<%="../index.jsp?ID="+ID%>" 
3629 26 Nov 15 nicklas 39     /><p:pathelement title="Register sequencing started" 
2020 13 Sep 13 nicklas 40     /></p:path>
2020 13 Sep 13 nicklas 41
5470 05 Jun 19 nicklas 42   <div id="page-data" class="datacontainer"
5470 05 Jun 19 nicklas 43     data-pipeline="<%=HTML.encodeTags(pipeline)%>"
5470 05 Jun 19 nicklas 44   ></div>
5470 05 Jun 19 nicklas 45
2020 13 Sep 13 nicklas 46   <div class="content">
2650 10 Sep 14 nicklas 47   <form name="reggie" id="wizard" class="wizard">
2020 13 Sep 13 nicklas 48
2650 10 Sep 14 nicklas 49   <div class="step" id="step-1">
2650 10 Sep 14 nicklas 50     <div class="step-no">1</div>
2650 10 Sep 14 nicklas 51     <div class="step-title">Select flow cells</div>
2650 10 Sep 14 nicklas 52     <div class="step-content">
2059 11 Oct 13 nicklas 53
2650 10 Sep 14 nicklas 54       <table class="step-form">
2650 10 Sep 14 nicklas 55       <tr class="align-top">
2020 13 Sep 13 nicklas 56         <td class="prompt">Flow cells</td>
2650 10 Sep 14 nicklas 57         <td class="input">
3629 26 Nov 15 nicklas 58           <select class="required" name="flowcells" id="flowcells"></select>
2020 13 Sep 13 nicklas 59         </td>
2020 13 Sep 13 nicklas 60         <td class="status" id="flowcells.status"></td>
2650 10 Sep 14 nicklas 61         <td class="help">
2650 10 Sep 14 nicklas 62           <span id="flowcells.message" class="message"></span>
3629 26 Nov 15 nicklas 63           Select the flow cell. The list contain all flow cells that
3629 26 Nov 15 nicklas 64           has not yet been sequenced (determined by the absence of a 'creation' date).
2020 13 Sep 13 nicklas 65         </td>
2020 13 Sep 13 nicklas 66       </tr>
2650 10 Sep 14 nicklas 67       <tr>
2020 13 Sep 13 nicklas 68         <td class="prompt">Outcome</td>
2020 13 Sep 13 nicklas 69         <td class="input">
2650 10 Sep 14 nicklas 70           <label><input type="radio" name="outcome" id="outcomeSuccess" 
3629 26 Nov 15 nicklas 71             checked>Success</label> - the sequencing has been started<br>
2650 10 Sep 14 nicklas 72           <label><input type="radio" name="outcome" id="outcomeFailed" 
3629 26 Nov 15 nicklas 73             >Failure</label> - the sequencing could not be started
2020 13 Sep 13 nicklas 74         </td>
3629 26 Nov 15 nicklas 75         <td class="status" id="outcome.status"></td>
2020 13 Sep 13 nicklas 76         <td class="help">
3629 26 Nov 15 nicklas 77           <span id="outcome.message" class="message"></span>
2020 13 Sep 13 nicklas 78         </td>
2020 13 Sep 13 nicklas 79       </tr>
2020 13 Sep 13 nicklas 80       </table>
2650 10 Sep 14 nicklas 81     </div>
2020 13 Sep 13 nicklas 82   </div>
2020 13 Sep 13 nicklas 83   
2650 10 Sep 14 nicklas 84   <div class="step" id="step-2">
2650 10 Sep 14 nicklas 85     <div class="step-no">2</div>
3629 26 Nov 15 nicklas 86     <div class="step-title">Sequencing startup information</div>
2650 10 Sep 14 nicklas 87     <div class="step-content">
2650 10 Sep 14 nicklas 88
2650 10 Sep 14 nicklas 89       <table class="step-form">
2650 10 Sep 14 nicklas 90       <tr>
3629 26 Nov 15 nicklas 91         <td class="prompt">Flow cell ID</td>
3629 26 Nov 15 nicklas 92         <td class="input">
3629 26 Nov 15 nicklas 93           <input type="text" name="externalId" id="externalId"
3629 26 Nov 15 nicklas 94             class="required auto-init" data-auto-init="focus-on-enter" data-next-focus="startDate"
3629 26 Nov 15 nicklas 95             style="width: 12em;">
3629 26 Nov 15 nicklas 96         </td>
3629 26 Nov 15 nicklas 97         <td class="status" id="externalId.status"></td>
3629 26 Nov 15 nicklas 98         <td class="help">
3629 26 Nov 15 nicklas 99           <span id="externalId.message" class="message"></span>
3629 26 Nov 15 nicklas 100           The barcode of the flow cell.
3629 26 Nov 15 nicklas 101         </td>
3629 26 Nov 15 nicklas 102       </tr>
3629 26 Nov 15 nicklas 103       <tr>
2202 20 Jan 14 nicklas 104         <td class="prompt">Start date</td>
2202 20 Jan 14 nicklas 105         <td class="input">
3629 26 Nov 15 nicklas 106           <input type="text" name="startDate" id="startDate"
3629 26 Nov 15 nicklas 107             class="auto-init required" data-auto-init="focus-on-enter" data-next-focus="sequencingOperator"
4293 11 Jan 17 nicklas 108             value="<%=dateFormat.format(new Date()) %>"
2650 10 Sep 14 nicklas 109             style="width: 12em;" maxlength="10">
2650 10 Sep 14 nicklas 110         
2202 20 Jan 14 nicklas 111             <base:icon 
3629 26 Nov 15 nicklas 112               id="startDateCalendar"
2650 10 Sep 14 nicklas 113               subclass="auto-init"
2650 10 Sep 14 nicklas 114               data-auto-init="calendar"
3629 26 Nov 15 nicklas 115               data-textarea-id="startDate"
2650 10 Sep 14 nicklas 116               data-date-format="yyyyMMdd"
2202 20 Jan 14 nicklas 117               image="calendar.png" 
2202 20 Jan 14 nicklas 118               tooltip="Select a date from a calendar" 
2202 20 Jan 14 nicklas 119               tabindex="-1"
2202 20 Jan 14 nicklas 120             />
2202 20 Jan 14 nicklas 121         </td>
3629 26 Nov 15 nicklas 122         <td class="status" id="startDate.status"></td>
2202 20 Jan 14 nicklas 123         <td class="help">
3629 26 Nov 15 nicklas 124           <span id="startDate.message" class="message"></span>
3629 26 Nov 15 nicklas 125           Date the sequencing was started (YYYYMMDD or MMDD)
2202 20 Jan 14 nicklas 126         </td>
2202 20 Jan 14 nicklas 127       </tr>
2650 10 Sep 14 nicklas 128       <tr>
2202 20 Jan 14 nicklas 129         <td class="prompt">Operator</td>
2202 20 Jan 14 nicklas 130         <td class="input">
3629 26 Nov 15 nicklas 131           <input type="text" name="sequencingOperator" id="sequencingOperator" 
3629 26 Nov 15 nicklas 132             class="auto-init" data-auto-init="focus-on-enter" data-next-focus="sequencer"
2650 10 Sep 14 nicklas 133             value="<%=HTML.encodeTags(user.getName()) %>" 
2650 10 Sep 14 nicklas 134             maxlength="255">
2202 20 Jan 14 nicklas 135         </td>
3629 26 Nov 15 nicklas 136         <td class="status" id="sequencingOperator.status"></td>
2202 20 Jan 14 nicklas 137         <td class="help">
3629 26 Nov 15 nicklas 138           <span id="sequencingOperator.message" class="message"></span>
2202 20 Jan 14 nicklas 139         </td>
2202 20 Jan 14 nicklas 140       </tr>
2650 10 Sep 14 nicklas 141       <tr>
3629 26 Nov 15 nicklas 142         <td class="prompt">Sequencing machine</td>
2650 10 Sep 14 nicklas 143         <td class="input">
3629 26 Nov 15 nicklas 144           <select name="sequencer" id="sequencer"
3629 26 Nov 15 nicklas 145             class="auto-init" data-auto-init="focus-on-enter" data-next-focus="sequencerPosition.A"
2650 10 Sep 14 nicklas 146           ></select>
2650 10 Sep 14 nicklas 147         </td>
3629 26 Nov 15 nicklas 148         <td class="status" id="sequencer.status"></td>
2650 10 Sep 14 nicklas 149         <td class="help">
3629 26 Nov 15 nicklas 150           <span id="sequencer.message" class="message"></span>
3629 26 Nov 15 nicklas 151           Select the sequencing machine used to sequence the selected flow cells.
2202 20 Jan 14 nicklas 152         </td>
2202 20 Jan 14 nicklas 153       </tr>
2650 10 Sep 14 nicklas 154       <tr>
3629 26 Nov 15 nicklas 155         <td class="prompt">Sequencer position</td>
2650 10 Sep 14 nicklas 156         <td class="input">
3629 26 Nov 15 nicklas 157           <label><input type="radio" name="sequencerPosition" id="sequencerPosition.A"
3629 26 Nov 15 nicklas 158             class="auto-init" data-auto-init="focus-on-enter" data-next-focus="sequencingProtocol"
3629 26 Nov 15 nicklas 159             value="A" checked>A</label>
3629 26 Nov 15 nicklas 160           <label><input type="radio" name="sequencerPosition" id="sequencerPosition.B"
3629 26 Nov 15 nicklas 161             class="auto-init" data-auto-init="focus-on-enter" data-next-focus="sequencingProtocol"
3629 26 Nov 15 nicklas 162             value="B">B</label>
2650 10 Sep 14 nicklas 163         </td>
3629 26 Nov 15 nicklas 164         <td class="status" id="sequencerPosition.status"></td>
2650 10 Sep 14 nicklas 165         <td class="help">
3629 26 Nov 15 nicklas 166           <span id="sequencerPosition.message" class="message"></span>
3629 26 Nov 15 nicklas 167           NextSeq should always be <b>A</b>.
2059 11 Oct 13 nicklas 168         </td>
2059 11 Oct 13 nicklas 169       </tr>
2650 10 Sep 14 nicklas 170       <tr>
3629 26 Nov 15 nicklas 171         <td class="prompt">Protocol</td>
2650 10 Sep 14 nicklas 172         <td class="input">
3629 26 Nov 15 nicklas 173           <select name="sequencingProtocol" id="sequencingProtocol"
3629 26 Nov 15 nicklas 174             class="auto-init" data-auto-init="focus-on-enter" data-next-focus="comments"
3629 26 Nov 15 nicklas 175           ></select>
2650 10 Sep 14 nicklas 176         </td>
3629 26 Nov 15 nicklas 177         <td class="status" id="sequencingProtocoll.status"></td>
2650 10 Sep 14 nicklas 178         <td class="help">
3629 26 Nov 15 nicklas 179           <span id="sequencingProtocol.message" class="message"></span>
3629 26 Nov 15 nicklas 180           Select the protocol which was used for sequencing.
2079 17 Oct 13 nicklas 181         </td>
2079 17 Oct 13 nicklas 182       </tr>
2650 10 Sep 14 nicklas 183       <tr class="align-top">
3629 26 Nov 15 nicklas 184         <td class="prompt">Comments</td>
2650 10 Sep 14 nicklas 185         <td class="input">
3629 26 Nov 15 nicklas 186           <textarea name="comments" id="comments" rows="4"></textarea>
2650 10 Sep 14 nicklas 187         </td>
3629 26 Nov 15 nicklas 188         <td class="status" id="comments.status"></td>
2650 10 Sep 14 nicklas 189         <td class="help">
3629 26 Nov 15 nicklas 190           <span id="comments.message" class="message"></span>
3629 26 Nov 15 nicklas 191           Comments about the sequencing startup.
2059 11 Oct 13 nicklas 192         </td>
2059 11 Oct 13 nicklas 193       </tr>
3691 13 Jan 16 nicklas 194       <tbody id="auto-analyze-section" style="display: none;">
3691 13 Jan 16 nicklas 195         <tr class="section-header">
3691 13 Jan 16 nicklas 196           <td colspan="4">Auto-analyze options</td>
3691 13 Jan 16 nicklas 197         </tr>
3691 13 Jan 16 nicklas 198         <tr>
3691 13 Jan 16 nicklas 199           <td class="subprompt">Auto-analyze</td>
3691 13 Jan 16 nicklas 200           <td class="input">
3691 13 Jan 16 nicklas 201             <label><input type="radio" name="autoAnalyze" id="autoAnalyzeYes" disabled>Yes</label>
3691 13 Jan 16 nicklas 202             <label><input type="radio" name="autoAnalyze" id="autoAnalyzeNo" disabled>No</label>
3691 13 Jan 16 nicklas 203           </td>
3691 13 Jan 16 nicklas 204           <td class="status" id="autoAnalyze.status"></td>
3691 13 Jan 16 nicklas 205           <td class="help">
3691 13 Jan 16 nicklas 206             <span id="autoAnalyze.message" class="message"></span>
3691 13 Jan 16 nicklas 207             If the auto-analyze option is enabled, Reggie will automatically detect
5817 28 Jan 20 nicklas 208             when the sequencing has ended. If everything seems to be okay, 
5817 28 Jan 20 nicklas 209             secondary analysis is automatically started.
3691 13 Jan 16 nicklas 210           </td>
3691 13 Jan 16 nicklas 211         </tr>
3691 13 Jan 16 nicklas 212         <tr>
6735 09 May 22 nicklas 213           <td class="subprompt">Cluster</td>
3691 13 Jan 16 nicklas 214           <td class="input">
3691 13 Jan 16 nicklas 215             <select name="clusters" id="clusters" class="required" disabled></select>
3691 13 Jan 16 nicklas 216           </td>
3691 13 Jan 16 nicklas 217           <td class="status" id="clusters.status"></td>
3691 13 Jan 16 nicklas 218           <td class="help">
3691 13 Jan 16 nicklas 219             <span id="clusters.message" class="message"></span>
3691 13 Jan 16 nicklas 220             Select the cluster to use for running the analysis.
3691 13 Jan 16 nicklas 221           </td>
3691 13 Jan 16 nicklas 222         </tr>
6980 17 Jan 23 nicklas 223         <tr id="job-priority" style="display: none;">
3691 13 Jan 16 nicklas 224           <td class="subprompt">Job priority</td>
3691 13 Jan 16 nicklas 225           <td class="input">
3691 13 Jan 16 nicklas 226             <select name="priority" id="priority" disabled></select>
3691 13 Jan 16 nicklas 227           </td>
3691 13 Jan 16 nicklas 228           <td class="status" id="priority.status"></td>
3691 13 Jan 16 nicklas 229           <td class="help">
3691 13 Jan 16 nicklas 230             <span id="priority.message" class="message"></span>
3691 13 Jan 16 nicklas 231             Select the priority of the analysis jobs.
3691 13 Jan 16 nicklas 232           </td>
3691 13 Jan 16 nicklas 233         </tr>
6980 17 Jan 23 nicklas 234         <tr id="job-partition" style="display: none;">
6980 17 Jan 23 nicklas 235           <td class="subprompt">Job partition</td>
6980 17 Jan 23 nicklas 236           <td class="input">
6980 17 Jan 23 nicklas 237             <select name="partition" id="partition"></select>
6980 17 Jan 23 nicklas 238           </td>
6980 17 Jan 23 nicklas 239           <td class="status" id="partition.status"></td>
6980 17 Jan 23 nicklas 240           <td class="help">
6980 17 Jan 23 nicklas 241             <span id="partition.message" class="message"></span>
6980 17 Jan 23 nicklas 242             Select the partition/queue that the job should be submitted to.
6980 17 Jan 23 nicklas 243           </td>
6980 17 Jan 23 nicklas 244         </tr>
3691 13 Jan 16 nicklas 245         <tr>
3691 13 Jan 16 nicklas 246           <td class="subprompt">Debug</td>
3691 13 Jan 16 nicklas 247           <td class="input"><input type="checkbox" name="debug" disabled></td>
3691 13 Jan 16 nicklas 248           <td class="status" id="debug.status"></td>
3691 13 Jan 16 nicklas 249           <td class="help">
3691 13 Jan 16 nicklas 250             <span id="debug.message" class="message"></span>
3691 13 Jan 16 nicklas 251             When running in debug mode only part of the sequenced data is used and
3691 13 Jan 16 nicklas 252             temporary files are not removed from the cluster nodes.
3691 13 Jan 16 nicklas 253           </td>
3691 13 Jan 16 nicklas 254         </tr>
3691 13 Jan 16 nicklas 255       </tbody>
2059 11 Oct 13 nicklas 256       </table>
2650 10 Sep 14 nicklas 257     </div>
2059 11 Oct 13 nicklas 258   </div>
2059 11 Oct 13 nicklas 259   
2650 10 Sep 14 nicklas 260   <div id="wizard-status"></div>
2059 11 Oct 13 nicklas 261   
2650 10 Sep 14 nicklas 262   <table class="navigation" id="navigation">
2650 10 Sep 14 nicklas 263   <tr>
2650 10 Sep 14 nicklas 264     <td><base:button id="gocancel" title="Cancel" /></td>
2650 10 Sep 14 nicklas 265     <td><base:button id="gonext" title="Next" image="<%=home+"/images/gonext.png"%>" /></td>
2650 10 Sep 14 nicklas 266     <td><base:button id="goregister" title="Register" image="<%=home+"/images/import.png"%>"  /></td>
2650 10 Sep 14 nicklas 267     <td><base:button id="gorestart" title="Restart" image="<%=home+"/images/goback.png"%>" /></td>
2650 10 Sep 14 nicklas 268     <td id="gonext-message" class="message"></td>
2650 10 Sep 14 nicklas 269   </tr>
2020 13 Sep 13 nicklas 270   </table>
2020 13 Sep 13 nicklas 271   
2020 13 Sep 13 nicklas 272   </form>
2020 13 Sep 13 nicklas 273   </div>
2020 13 Sep 13 nicklas 274   
2020 13 Sep 13 nicklas 275 </base:body>
2020 13 Sep 13 nicklas 276 </base:page>
2020 13 Sep 13 nicklas 277 <%
2020 13 Sep 13 nicklas 278 }
2020 13 Sep 13 nicklas 279 finally
2020 13 Sep 13 nicklas 280 {
2020 13 Sep 13 nicklas 281   if (dc != null) dc.close();
2020 13 Sep 13 nicklas 282 }
2020 13 Sep 13 nicklas 283 %>