extensions/net.sf.basedb.meludi/trunk/resources/sampleproc/labelgeneration.jsp

Code
Comments
Other
Rev Date Author Line
2964 20 Nov 14 olle 1 <%@ page
2964 20 Nov 14 olle 2   pageEncoding="UTF-8"
2964 20 Nov 14 olle 3   session="false"
2964 20 Nov 14 olle 4   import="net.sf.basedb.core.User"
2964 20 Nov 14 olle 5   import="net.sf.basedb.core.DbControl"
2964 20 Nov 14 olle 6   import="net.sf.basedb.core.SessionControl"
2964 20 Nov 14 olle 7   import="net.sf.basedb.core.Application"
2964 20 Nov 14 olle 8   import="net.sf.basedb.clients.web.Base"
2964 20 Nov 14 olle 9   import="net.sf.basedb.clients.web.extensions.ExtensionsControl"
2964 20 Nov 14 olle 10   import="java.util.Date"
2964 20 Nov 14 olle 11 %>
2964 20 Nov 14 olle 12 <%@ taglib prefix="base" uri="/WEB-INF/base.tld" %>
2964 20 Nov 14 olle 13 <%@ taglib prefix="p" uri="/WEB-INF/path.tld" %>
2964 20 Nov 14 olle 14 <%
2964 20 Nov 14 olle 15 final SessionControl sc = Base.getExistingSessionControl(request, true);
2964 20 Nov 14 olle 16 final String ID = sc.getId();
2964 20 Nov 14 olle 17 final String home = ExtensionsControl.getHomeUrl("net.sf.basedb.meludi");
2964 20 Nov 14 olle 18 DbControl dc = null;
2964 20 Nov 14 olle 19 try
2964 20 Nov 14 olle 20 {
2964 20 Nov 14 olle 21   dc = sc.newDbControl();
2964 20 Nov 14 olle 22   final User user = User.getById(dc, sc.getLoggedInUserId());
2964 20 Nov 14 olle 23 %>
2964 20 Nov 14 olle 24 <base:page type="default" >
2964 20 Nov 14 olle 25 <base:head 
2964 20 Nov 14 olle 26   scripts="~../meludi-2.js,~labelgeneration.js" 
2964 20 Nov 14 olle 27   styles="path.css,~../css/meludi-2.css"
2964 20 Nov 14 olle 28   >
2964 20 Nov 14 olle 29 <style>
2964 20 Nov 14 olle 30 tr.highlight
2964 20 Nov 14 olle 31 {
2964 20 Nov 14 olle 32   border-top: 1px dotted #A0A0A0;
2964 20 Nov 14 olle 33   border-bottom: 1px solid transparent;
2964 20 Nov 14 olle 34 }
2964 20 Nov 14 olle 35
2964 20 Nov 14 olle 36 .dottedleft
2964 20 Nov 14 olle 37 {
2964 20 Nov 14 olle 38   border-left: 1px dotted #A0A0A0;
2964 20 Nov 14 olle 39 }
2964 20 Nov 14 olle 40 </style>
2964 20 Nov 14 olle 41 </base:head>
2964 20 Nov 14 olle 42 <base:body>
2964 20 Nov 14 olle 43
2964 20 Nov 14 olle 44   <p:path><p:pathelement 
2964 20 Nov 14 olle 45     title="" href="<%="../index.jsp?ID="+ID%>" 
2964 20 Nov 14 olle 46     /><p:pathelement title="Label generation" 
2964 20 Nov 14 olle 47     /></p:path>
2964 20 Nov 14 olle 48
2964 20 Nov 14 olle 49   <div class="content">
2964 20 Nov 14 olle 50
2964 20 Nov 14 olle 51   <form name="meludi" id="wizard" class="wizard">
2964 20 Nov 14 olle 52   
2964 20 Nov 14 olle 53   <div class="step" id="step-1">
2964 20 Nov 14 olle 54     <div class="step-no">1</div>
2964 20 Nov 14 olle 55     <div class="step-title">Select label parameters</div>
2964 20 Nov 14 olle 56     <div class="step-content">
2964 20 Nov 14 olle 57   
2964 20 Nov 14 olle 58       <table class="step-form">
2964 20 Nov 14 olle 59       <tr>
2964 20 Nov 14 olle 60         <td class="prompt">Number of cases</td>
2964 20 Nov 14 olle 61         <td class="input">
2964 20 Nov 14 olle 62           <input type="text" name="nofCases" id="nofCases"
2964 20 Nov 14 olle 63             class="required auto-init" data-auto-init="focus-on-enter" data-next-focus="nofTubesPerCase"
2964 20 Nov 14 olle 64               style="width: 12em;" maxlength="4" value="1">
2964 20 Nov 14 olle 65         </td>
2964 20 Nov 14 olle 66         <td class="status" id="nofCases.status"></td>
2964 20 Nov 14 olle 67         <td class="help">
2964 20 Nov 14 olle 68           <span id="nofCases.message" class="message"></span>
2964 20 Nov 14 olle 69           Number of cases to generate labels for.
2964 20 Nov 14 olle 70         </td>
2964 20 Nov 14 olle 71       </tr>
2964 20 Nov 14 olle 72       <tr>
4960 03 Sep 18 olle 73         <td class="prompt">Tube content type</td>
4960 03 Sep 18 olle 74         <td class="input">
4960 03 Sep 18 olle 75           <select name="tubeContentType" id="tubeContentType"
4960 03 Sep 18 olle 76             class="auto-init" data-auto-init="focus-on-enter" data-next-focus="extractsFromFirstSpecimenOnly">
4960 03 Sep 18 olle 77             <option selected value="Specimen" >Specimen
4960 03 Sep 18 olle 78             <option value="Blood">Blood
4960 03 Sep 18 olle 79           </select>
4960 03 Sep 18 olle 80         </td>
4960 03 Sep 18 olle 81         <td class="status" id="tubeContentType.status"></td>
4960 03 Sep 18 olle 82         <td class="help">
4960 03 Sep 18 olle 83           <span id="tubeContentType.message" class="message"></span>
4960 03 Sep 18 olle 84           Tube content type (Affects the item name prefix)
4960 03 Sep 18 olle 85         </td>
4960 03 Sep 18 olle 86       </tr>
4960 03 Sep 18 olle 87       <tr>
2964 20 Nov 14 olle 88         <td class="prompt">Max number of tubes/case</td>
2964 20 Nov 14 olle 89         <td class="input">
4960 03 Sep 18 olle 90 <!--
2964 20 Nov 14 olle 91           <select name="nofTubesPerCase" id="nofTubesPerCase"
2964 20 Nov 14 olle 92             class="auto-init" data-auto-init="focus-on-enter" data-next-focus="caseName">
3669 17 Dec 15 olle 93             <option selected value="1">1
3669 17 Dec 15 olle 94             <option value="2">2
2964 20 Nov 14 olle 95             <option value="3">3
2964 20 Nov 14 olle 96             <option value="4">4
2964 20 Nov 14 olle 97             <option value="5">5
2964 20 Nov 14 olle 98             <option value="6">6
2964 20 Nov 14 olle 99             <option value="7">7
2964 20 Nov 14 olle 100             <option value="8">8
2964 20 Nov 14 olle 101             <option value="9">9
2964 20 Nov 14 olle 102           </select>
4960 03 Sep 18 olle 103 -->
4960 03 Sep 18 olle 104           <input type="text" name="nofTubesPerCase" id="nofTubesPerCase"
4960 03 Sep 18 olle 105             class="required auto-init" data-auto-init="focus-on-enter" data-next-focus="caseName"
4960 03 Sep 18 olle 106               style="width: 12em;" maxlength="4" value="1">
2964 20 Nov 14 olle 107         </td>
2964 20 Nov 14 olle 108         <td class="status" id="nofTubesPerCase.status"></td>
2964 20 Nov 14 olle 109         <td class="help">
2964 20 Nov 14 olle 110           <span id="nofTubesPerCase.message" class="message"></span>
2964 20 Nov 14 olle 111           Max number of tubes per case.
2964 20 Nov 14 olle 112         </td>
2964 20 Nov 14 olle 113       </tr>
2964 20 Nov 14 olle 114       <tr>
2964 20 Nov 14 olle 115         <td class="prompt">Start case name</td>
2964 20 Nov 14 olle 116         <td class="input">
2964 20 Nov 14 olle 117           <input type="text" name="caseName" id="caseName"
2964 20 Nov 14 olle 118             class="required auto-init" data-auto-init="focus" data-next-focus="gopreview"
2964 20 Nov 14 olle 119             style="width: 12em;" maxlength="12">
2964 20 Nov 14 olle 120         </td>
2964 20 Nov 14 olle 121         <td class="status" id="caseName.status"></td>
2964 20 Nov 14 olle 122         <td class="help">
2964 20 Nov 14 olle 123           <span id="caseName.message" class="message"></span>
2964 20 Nov 14 olle 124           Start case (barcode) for generated labels.
2964 20 Nov 14 olle 125         </td>
2964 20 Nov 14 olle 126       </tr>
4252 25 Nov 16 olle 127       <tr>
4252 25 Nov 16 olle 128         <td class="prompt">Extract creation options</td>
4252 25 Nov 16 olle 129         <td class="input">
4252 25 Nov 16 olle 130           <label id="extractsFromFirstSpecimenOnly"><input type="checkbox" name="extractsFromFirstSpecimenOnlyCB" id="extractsFromFirstSpecimenOnlyCB">Extracts from first specimen only</label><br>
4252 25 Nov 16 olle 131         </td>
4252 25 Nov 16 olle 132         <td class="status" id="extractsFromFirstSpecimenOnly.status"></td>
4252 25 Nov 16 olle 133         <td class="help">
4252 25 Nov 16 olle 134           <span id="extractsFromFirstSpecimenOnly.message" class="message"></span>
4252 25 Nov 16 olle 135           Extracts from first specimen only, otherwise all specimens.
4252 25 Nov 16 olle 136         </td>
4252 25 Nov 16 olle 137       </tr>
2964 20 Nov 14 olle 138       </table>
2964 20 Nov 14 olle 139     </div>
2964 20 Nov 14 olle 140   </div>
2964 20 Nov 14 olle 141   
2964 20 Nov 14 olle 142   <div id="wizard-status"></div>
2964 20 Nov 14 olle 143
2964 20 Nov 14 olle 144   <table class="navigation" id="navigation">
2964 20 Nov 14 olle 145   <tr>
2964 20 Nov 14 olle 146     <td><base:button id="gopreview" title="Preview" image="<%=home+"/images/export.png"%>" /></td>
2964 20 Nov 14 olle 147     <td><base:button id="goexport" title="Download" image="<%=home+"/images/download.png"%>" /></td>
2964 20 Nov 14 olle 148   </tr>
2964 20 Nov 14 olle 149   </table>
2964 20 Nov 14 olle 150   
2964 20 Nov 14 olle 151   <div id="previewWrapper" style="display: none;">
2964 20 Nov 14 olle 152     <div>
2964 20 Nov 14 olle 153       <span id="previewTitle">Preview</span>
2964 20 Nov 14 olle 154       <span id="previewWarning"></span>
2964 20 Nov 14 olle 155     </div>
2964 20 Nov 14 olle 156     <div id="previewList"></div>
2964 20 Nov 14 olle 157   </div>
2964 20 Nov 14 olle 158   </form>
2964 20 Nov 14 olle 159   </div>
2964 20 Nov 14 olle 160   
2964 20 Nov 14 olle 161 </base:body>
2964 20 Nov 14 olle 162 </base:page>
2964 20 Nov 14 olle 163 <%
2964 20 Nov 14 olle 164 }
2964 20 Nov 14 olle 165 finally
2964 20 Nov 14 olle 166 {
2964 20 Nov 14 olle 167   if (dc != null) dc.close();
2964 20 Nov 14 olle 168 }
2964 20 Nov 14 olle 169 %>