extensions/net.sf.basedb.reggie/trunk/resources/libprep/external_protocol.jsp

Code
Comments
Other
Rev Date Author Line
5887 02 Apr 20 nicklas 1 <%@ page
5887 02 Apr 20 nicklas 2   pageEncoding="UTF-8"
5887 02 Apr 20 nicklas 3   session="false"
5887 02 Apr 20 nicklas 4   import="net.sf.basedb.core.User"
5887 02 Apr 20 nicklas 5   import="net.sf.basedb.core.DbControl"
5887 02 Apr 20 nicklas 6   import="net.sf.basedb.core.SessionControl"
5887 02 Apr 20 nicklas 7   import="net.sf.basedb.core.Application"
5887 02 Apr 20 nicklas 8   import="net.sf.basedb.clients.web.Base"  
5887 02 Apr 20 nicklas 9   import="net.sf.basedb.clients.web.extensions.ExtensionsControl"
5887 02 Apr 20 nicklas 10 %>
5887 02 Apr 20 nicklas 11 <%@ taglib prefix="base" uri="/WEB-INF/base.tld" %>
5887 02 Apr 20 nicklas 12 <%@ taglib prefix="p" uri="/WEB-INF/path.tld" %>
5887 02 Apr 20 nicklas 13 <%
5887 02 Apr 20 nicklas 14 final SessionControl sc = Base.getExistingSessionControl(request, "net.sf.basedb.reggie", true);
5887 02 Apr 20 nicklas 15 final String ID = sc.getId();
5887 02 Apr 20 nicklas 16 final float scale = Base.getScale(sc);
5887 02 Apr 20 nicklas 17 final String home = ExtensionsControl.getHomeUrl("net.sf.basedb.reggie");
5887 02 Apr 20 nicklas 18 DbControl dc = null;
5887 02 Apr 20 nicklas 19 try
5887 02 Apr 20 nicklas 20 {
5887 02 Apr 20 nicklas 21   dc = sc.newDbControl();
5887 02 Apr 20 nicklas 22   final User user = User.getById(dc, sc.getLoggedInUserId());
5887 02 Apr 20 nicklas 23 %>
5887 02 Apr 20 nicklas 24 <base:page type="default" >
5887 02 Apr 20 nicklas 25 <base:head 
5887 02 Apr 20 nicklas 26   scripts="~../reggie-2.js,~external_protocol.js" 
5887 02 Apr 20 nicklas 27   styles="path.css,~../css/reggie-2.css"
5888 03 Apr 20 nicklas 28   >
5888 03 Apr 20 nicklas 29 <style>
5888 03 Apr 20 nicklas 30 .wizard .step-form > tbody > tr.more-padding > td 
5888 03 Apr 20 nicklas 31 {
5888 03 Apr 20 nicklas 32     padding-top: 5px;
5888 03 Apr 20 nicklas 33     padding-bottom: 5px;
5888 03 Apr 20 nicklas 34     line-height: 150%;  
5888 03 Apr 20 nicklas 35 }
5888 03 Apr 20 nicklas 36 .wizard .step-form > tbody > tr.more-padding > td img
5888 03 Apr 20 nicklas 37 {
5888 03 Apr 20 nicklas 38   margin-right: 2px;
5888 03 Apr 20 nicklas 39 }
5888 03 Apr 20 nicklas 40 </style>
5888 03 Apr 20 nicklas 41 </base:head>
5887 02 Apr 20 nicklas 42 <base:body>
5887 02 Apr 20 nicklas 43
5887 02 Apr 20 nicklas 44   <p:path><p:pathelement 
5887 02 Apr 20 nicklas 45     title="Reggie" href="<%="../index.jsp?ID="+ID%>" 
5887 02 Apr 20 nicklas 46     /><p:pathelement title="Lab protocols for external sequencing" 
5887 02 Apr 20 nicklas 47     /></p:path>
5887 02 Apr 20 nicklas 48
5887 02 Apr 20 nicklas 49   <div class="content">
5887 02 Apr 20 nicklas 50
5887 02 Apr 20 nicklas 51   <form name="reggie" action="external_protocol2.jsp" method="post" target="_blank" id="wizard" class="wizard">
5887 02 Apr 20 nicklas 52   <input type="hidden" name="ID" value="<%=ID%>">
5887 02 Apr 20 nicklas 53   <input type="hidden" name="view" value="list">
5887 02 Apr 20 nicklas 54   <input type="hidden" name="poolSchema" value="5by24">
5887 02 Apr 20 nicklas 55   
5887 02 Apr 20 nicklas 56   <div class="step" id="step-1">
5887 02 Apr 20 nicklas 57     <div class="step-no">1</div>
5887 02 Apr 20 nicklas 58     <div class="step-title">Select external libplate</div>
5887 02 Apr 20 nicklas 59     <div class="step-content">
5887 02 Apr 20 nicklas 60
5887 02 Apr 20 nicklas 61       <table class="step-form">
5887 02 Apr 20 nicklas 62       <tr>
5887 02 Apr 20 nicklas 63         <td class="prompt">External libplate</td>
5887 02 Apr 20 nicklas 64         <td class="input">
5887 02 Apr 20 nicklas 65           <select name="bioplate" id="bioplate"></select>
5887 02 Apr 20 nicklas 66         </td>
5887 02 Apr 20 nicklas 67         <td class="status" id="bioplate.status"></td>
5887 02 Apr 20 nicklas 68         <td class="help" rowspan="2">
5887 02 Apr 20 nicklas 69           <span id="bioplate.message" class="message"></span>
5887 02 Apr 20 nicklas 70           Select an existing external library plate. The list contain all plates that
5887 02 Apr 20 nicklas 71           has not yet been processed (determined by the absence of a 'creation' date).
5887 02 Apr 20 nicklas 72         </td>
5887 02 Apr 20 nicklas 73       </tr>
5887 02 Apr 20 nicklas 74       <tbody class="info-section">
5887 02 Apr 20 nicklas 75       <tr>
5887 02 Apr 20 nicklas 76         <td class="prompt">Comments</td>
5887 02 Apr 20 nicklas 77         <td class="info" id="comments"></td>
5887 02 Apr 20 nicklas 78         <td class="status"></td>
5887 02 Apr 20 nicklas 79         <td class="help"></td>
5887 02 Apr 20 nicklas 80       </tr>
5887 02 Apr 20 nicklas 81       </tbody>
5888 03 Apr 20 nicklas 82       <tr class="align-top more-padding">
5887 02 Apr 20 nicklas 83         <td class="prompt">Lab protocols</td>
5887 02 Apr 20 nicklas 84         <td class="input">
5888 03 Apr 20 nicklas 85           <base:icon subclass="link" id="listview" image="<%=home + "/images/listview.png"%>" 
5888 03 Apr 20 nicklas 86             data-protocol-type="list" title="Lab protocol as a list">List layout</base:icon><br>
5888 03 Apr 20 nicklas 87           <base:icon subclass="link" id="plateview" image="<%=home + "/images/plateview.png"%>" 
5888 03 Apr 20 nicklas 88             data-protocol-type="plate" title="Lab protocol as a plate">Plate layout</base:icon>
5887 02 Apr 20 nicklas 89         </td>
5887 02 Apr 20 nicklas 90         <td class="status" id="protocol.status"></td>
5887 02 Apr 20 nicklas 91         <td class="help">
5887 02 Apr 20 nicklas 92           <span id="protocol.message" class="message"></span>
5887 02 Apr 20 nicklas 93           The 'list layout' generates a table with one row for each well on the work plate.
5887 02 Apr 20 nicklas 94           The 'plate layout' generates a grid with wells arranged according to row and column coordinates.
5887 02 Apr 20 nicklas 95         </td>
5887 02 Apr 20 nicklas 96       </tr>
5888 03 Apr 20 nicklas 97       <tr class="align-top more-padding">
5888 03 Apr 20 nicklas 98         <td class="prompt">Tube labels</td>
5888 03 Apr 20 nicklas 99         <td class="input">
5888 03 Apr 20 nicklas 100           <label><input type="checkbox" name="includeAll" id="includeAll" style="margin-left: 1px;">For all samples (including pre-normalized)</label><br>
5888 03 Apr 20 nicklas 101           <base:icon subclass="link" id="downloadLabelsCsv" image="<%=home + "/images/download.png"%>" 
5888 03 Apr 20 nicklas 102             data-format="csv" title="Download labels as a tab-separated text file (csv)">CSV</base:icon>
5888 03 Apr 20 nicklas 103           <base:icon subclass="link" id="downloadLabelsXlsx" image="<%=home + "/images/download.png"%>" 
5888 03 Apr 20 nicklas 104             data-format="xlsx" title="Download lables as an Excel worksheet file (xlsx)">Excel</base:icon>
5888 03 Apr 20 nicklas 105         </td>
5888 03 Apr 20 nicklas 106         <td class="status" id="labels.status"></td>
5888 03 Apr 20 nicklas 107         <td class="help">
5888 03 Apr 20 nicklas 108           <span id="labels.message" class="message"></span>
5888 03 Apr 20 nicklas 109           Tube labels are needed if delivering in tubes and there are samples that has not
5888 03 Apr 20 nicklas 110           been pre-normalized.
5888 03 Apr 20 nicklas 111         </td>
5888 03 Apr 20 nicklas 112       </tr>
5888 03 Apr 20 nicklas 113       <tr class="align-top more-padding">
5888 03 Apr 20 nicklas 114         <td class="prompt">Sample sheet</td>
5888 03 Apr 20 nicklas 115         <td class="input">
5888 03 Apr 20 nicklas 116           <base:icon subclass="link" id="ctgRnaSampleSheet" image="<%=home + "/images/excel.png"%>" 
5888 03 Apr 20 nicklas 117             data-template="ctg-rna" title="Download a sample sheet to send with the samples">CTG RNA Sample sheet (Excel)</base:icon><br>
5888 03 Apr 20 nicklas 118         </td>
5888 03 Apr 20 nicklas 119         <td class="status" id="samplesheet.status"></td>
5888 03 Apr 20 nicklas 120         <td class="help">
5888 03 Apr 20 nicklas 121           <span id="samplesheet.message" class="message"></span>
5888 03 Apr 20 nicklas 122           A sample sheet need to be delivered to the external operator.
5888 03 Apr 20 nicklas 123         </td>
5888 03 Apr 20 nicklas 124       </tr>
5887 02 Apr 20 nicklas 125       </table>
5887 02 Apr 20 nicklas 126     </div>
5887 02 Apr 20 nicklas 127   </div>
5887 02 Apr 20 nicklas 128   
5887 02 Apr 20 nicklas 129   <div id="wizard-status"></div>
5887 02 Apr 20 nicklas 130   
5887 02 Apr 20 nicklas 131   </form>
5887 02 Apr 20 nicklas 132   </div>
5887 02 Apr 20 nicklas 133   
5887 02 Apr 20 nicklas 134 </base:body>
5887 02 Apr 20 nicklas 135 </base:page>
5887 02 Apr 20 nicklas 136 <%
5887 02 Apr 20 nicklas 137 }
5887 02 Apr 20 nicklas 138 finally
5887 02 Apr 20 nicklas 139 {
5887 02 Apr 20 nicklas 140   if (dc != null) dc.close();
5887 02 Apr 20 nicklas 141 }
5887 02 Apr 20 nicklas 142 %>