extensions/net.sf.basedb.meludi/trunk/resources/personal/consentform.jsp

Code
Comments
Other
Rev Date Author Line
4785 27 Apr 18 olle 1 <%@ page
4785 27 Apr 18 olle 2   pageEncoding="UTF-8"
4785 27 Apr 18 olle 3   session="false"
4785 27 Apr 18 olle 4   import="net.sf.basedb.core.Application"
4785 27 Apr 18 olle 5   import="net.sf.basedb.core.User"
4785 27 Apr 18 olle 6   import="net.sf.basedb.core.DbControl"
4785 27 Apr 18 olle 7   import="net.sf.basedb.core.SessionControl"
4785 27 Apr 18 olle 8   import="net.sf.basedb.clients.web.Base"
4785 27 Apr 18 olle 9   import="net.sf.basedb.clients.web.util.HTML"
4785 27 Apr 18 olle 10   import="net.sf.basedb.clients.web.extensions.ExtensionsControl"
4785 27 Apr 18 olle 11   import="net.sf.basedb.util.Values"
4785 27 Apr 18 olle 12 %>
4785 27 Apr 18 olle 13 <%@ taglib prefix="base" uri="/WEB-INF/base.tld" %>
4785 27 Apr 18 olle 14 <%@ taglib prefix="p" uri="/WEB-INF/path.tld" %>
4785 27 Apr 18 olle 15 <%
4785 27 Apr 18 olle 16 //final SessionControl sc = Base.getExistingSessionControl(request, "net.sf.basedb.meludi", true);
4785 27 Apr 18 olle 17 final SessionControl sc = Base.getExistingSessionControl(request, true);
4785 27 Apr 18 olle 18 final String ID = sc.getId();
4785 27 Apr 18 olle 19 final float scale = Base.getScale(sc);
4785 27 Apr 18 olle 20 final String home = ExtensionsControl.getHomeUrl("net.sf.basedb.meludi");
4785 27 Apr 18 olle 21 DbControl dc = null;
4785 27 Apr 18 olle 22 try
4785 27 Apr 18 olle 23 {
4785 27 Apr 18 olle 24   dc = sc.newDbControl();
4785 27 Apr 18 olle 25   final User user = User.getById(dc, sc.getLoggedInUserId());
4785 27 Apr 18 olle 26 %>
4785 27 Apr 18 olle 27 <base:page type="default" >
4785 27 Apr 18 olle 28 <base:head 
4785 27 Apr 18 olle 29   scripts="~../meludi-2.js,~consentform.js" 
4785 27 Apr 18 olle 30   styles="path.css,~../css/meludi-2.css" 
4785 27 Apr 18 olle 31 />
4785 27 Apr 18 olle 32 <base:body>
4785 27 Apr 18 olle 33
4785 27 Apr 18 olle 34   <p:path><p:pathelement id="meludi-index"
4785 27 Apr 18 olle 35     title="Meludi" href="<%="../index.jsp?ID="+ID%>" 
4785 27 Apr 18 olle 36     /><p:pathelement title="Consent form registration" 
4785 27 Apr 18 olle 37     /></p:path>
4785 27 Apr 18 olle 38
4785 27 Apr 18 olle 39   <div class="content">
4785 27 Apr 18 olle 40   <form name="meludi" id="wizard" class="wizard">
4785 27 Apr 18 olle 41
4785 27 Apr 18 olle 42     <div class="step" id="step-1">
4785 27 Apr 18 olle 43       <div class="step-no">1</div>
4785 27 Apr 18 olle 44       <div class="step-title">Enter Case Name</div>
4785 27 Apr 18 olle 45       <div class="step-content">
4785 27 Apr 18 olle 46
4785 27 Apr 18 olle 47         <table class="step-form">
4785 27 Apr 18 olle 48         <tr>
4785 27 Apr 18 olle 49           <td class="prompt">Case name</td>
4785 27 Apr 18 olle 50           <td class="input"><input type="text" name="caseName" id="caseName"
4785 27 Apr 18 olle 51             class="required auto-init" data-auto-init="focus"
4785 27 Apr 18 olle 52             style="width: 12em;" maxlength="12"></td>
4785 27 Apr 18 olle 53           <td class="status" id="caseName.status"></td>
4785 27 Apr 18 olle 54           <td class="help">
4785 27 Apr 18 olle 55             <span id="caseName.message" class="message"></span>
4785 27 Apr 18 olle 56 <!--
4785 27 Apr 18 olle 57             The 7-digit case (barcode) associated with the case.
4785 27 Apr 18 olle 58 -->
4785 27 Apr 18 olle 59             <div id="caseNameText"></div>
4785 27 Apr 18 olle 60           </td>
4785 27 Apr 18 olle 61         </tr>
4785 27 Apr 18 olle 62         </table>
4785 27 Apr 18 olle 63
4785 27 Apr 18 olle 64       </div>
4785 27 Apr 18 olle 65     </div>
4785 27 Apr 18 olle 66   
4785 27 Apr 18 olle 67     <div class="step" id="step-2">
4785 27 Apr 18 olle 68       <div class="step-no">2</div>
4785 27 Apr 18 olle 69       <div class="step-title">Consent form</div>
4785 27 Apr 18 olle 70       <div class="step-content">
4785 27 Apr 18 olle 71       
4785 27 Apr 18 olle 72       <table class="step-form">
4785 27 Apr 18 olle 73       <tr>
4785 27 Apr 18 olle 74         <td class="prompt">Date</td>
4785 27 Apr 18 olle 75         <td class="input"><input type="text" name="consentDate" id="consentDate"
4785 27 Apr 18 olle 76             style="width: 12em;" maxlength="10" data-allow-six-digits="1"></td>
4785 27 Apr 18 olle 77         <td class="status" id="consentDate.status"></td>
4785 27 Apr 18 olle 78         <td class="help">
4785 27 Apr 18 olle 79           <span id="consentDate.message" class="message"></span>
4785 27 Apr 18 olle 80           (YYYYMMDD or MMDD)
4785 27 Apr 18 olle 81         </td>
4785 27 Apr 18 olle 82       </tr>
4785 27 Apr 18 olle 83       <tr>
4785 27 Apr 18 olle 84         <td class="prompt">Consent</td>
4785 27 Apr 18 olle 85         <td class="input">
4785 27 Apr 18 olle 86           
4785 27 Apr 18 olle 87           <label id="consent.no.label" class="disabled">
4785 27 Apr 18 olle 88             <input id="consent.no" type="radio" name="consent" value="No" disabled>
4785 27 Apr 18 olle 89             No</label><br>
4785 27 Apr 18 olle 90           <label id="consent.yes.label" class="disabled">
4785 27 Apr 18 olle 91             <input id="consent.yes" type="radio" name="consent" value="Yes" disabled>
4785 27 Apr 18 olle 92             Yes</label><br>
4785 27 Apr 18 olle 93           <div id="moreCasesSection" style="display: none;">
4785 27 Apr 18 olle 94             <table>
4785 27 Apr 18 olle 95             <tr valign="baseline">
4785 27 Apr 18 olle 96               <td><img src="../images/joinbottom.gif"></td>
4785 27 Apr 18 olle 97               <td id="moreCases"></td>
4785 27 Apr 18 olle 98             </tr>
4785 27 Apr 18 olle 99             </table>
4785 27 Apr 18 olle 100           </div>
4785 27 Apr 18 olle 101           <label id="consent.notAsked.label" class="disabled">
4785 27 Apr 18 olle 102             <input id="consent.notAsked" type="radio" name="consent" value="Not asked" disabled>
4785 27 Apr 18 olle 103             Not asked</label>
4785 27 Apr 18 olle 104             
4785 27 Apr 18 olle 105         </td>
4785 27 Apr 18 olle 106         <td class="status" id="consent.status"></td>
4785 27 Apr 18 olle 107         <td class="help" rowspan="2">
4785 27 Apr 18 olle 108           <span id="consent.message" class="message"></span>
4785 27 Apr 18 olle 109           <span id="morehelp.multiple" style="display:none;">
4785 27 Apr 18 olle 110             Select the cases and blood samples to register.
4785 27 Apr 18 olle 111           </span>
4785 27 Apr 18 olle 112           <span id="morehelp.yesonly" style="display: none;">
4785 27 Apr 18 olle 113             <b>Yes</b> is the only option supported by this wizard. The other alternatives 
4785 27 Apr 18 olle 114             may require manual deletion of already registered information.
4785 27 Apr 18 olle 115           </span>
4785 27 Apr 18 olle 116           <span id="morehelp.any" style="display: none;">
4785 27 Apr 18 olle 117             There is currently no information about this case.
4785 27 Apr 18 olle 118           </span>
4785 27 Apr 18 olle 119         </td>
4785 27 Apr 18 olle 120       </tr>
4785 27 Apr 18 olle 121       <tr>
4785 27 Apr 18 olle 122         <td class="subprompt">Reason if not asked</td>
4785 27 Apr 18 olle 123         <td class="input">
4785 27 Apr 18 olle 124           <table>
4785 27 Apr 18 olle 125           <tr valign="baseline">
4785 27 Apr 18 olle 126             <td><img src="../images/joinbottom.gif"></td>
4785 27 Apr 18 olle 127             <td><input id="notAsked.forgot" type="checkbox" name="reasonIfNotAsked" disabled></td>
4785 27 Apr 18 olle 128             <td><label id="notAsked.forgot.label" for="notAsked.forgot" class="disabled">Forgot to ask the patient</label></td>
4785 27 Apr 18 olle 129           </tr>
4785 27 Apr 18 olle 130           
4785 27 Apr 18 olle 131           <tr valign="baseline">
4785 27 Apr 18 olle 132             <td></td>
4785 27 Apr 18 olle 133             <td><input id="notAsked.language" type="checkbox" name="reasonIfNotAsked" disabled></td>
4785 27 Apr 18 olle 134             <td><label id="notAsked.language.label" for="notAsked.language" class="disabled">Language problems</label></td>
4785 27 Apr 18 olle 135           </tr>
4785 27 Apr 18 olle 136
4785 27 Apr 18 olle 137           <tr valign="baseline">
4785 27 Apr 18 olle 138             <td></td>
4785 27 Apr 18 olle 139             <td><input id="notAsked.condition" type="checkbox" name="reasonIfNotAsked" disabled></td>
4785 27 Apr 18 olle 140             <td><label id="notAsked.condition.label" for="notAsked.condition" class="disabled">Patient can't decide due to physical and/or mental condition</label></td>
4785 27 Apr 18 olle 141           </tr>
4785 27 Apr 18 olle 142
4785 27 Apr 18 olle 143           <tr valign="baseline">
4785 27 Apr 18 olle 144             <td></td>
4785 27 Apr 18 olle 145             <td><input id="notAsked.other" type="checkbox" name="reasonIfNotAsked" disabled></td>
4785 27 Apr 18 olle 146             <td><label id="notAsked.other.label" for="notAsked.other" class="disabled">Other:</label></td>
4785 27 Apr 18 olle 147           </tr>
4785 27 Apr 18 olle 148
4785 27 Apr 18 olle 149           <tr valign="baseline">
4785 27 Apr 18 olle 150             <td></td>
4785 27 Apr 18 olle 151             <td colspan="2">
4785 27 Apr 18 olle 152             <textarea name="otherReasonIfNotAsked" id="otherReasonIfNotAsked" rows="4" disabled></textarea>
4785 27 Apr 18 olle 153             </td>
4785 27 Apr 18 olle 154           </tr>
4785 27 Apr 18 olle 155           </table>
4785 27 Apr 18 olle 156         </td>
4785 27 Apr 18 olle 157         <td class="status" id="notAsked.status"></td>
4785 27 Apr 18 olle 158       </tr>
4785 27 Apr 18 olle 159       </table>
4785 27 Apr 18 olle 160       </div>
4785 27 Apr 18 olle 161     </div>
4785 27 Apr 18 olle 162   
4785 27 Apr 18 olle 163     <div id="wizard-status"></div>
4785 27 Apr 18 olle 164   
4785 27 Apr 18 olle 165     <table class="navigation" id="navigation">
4785 27 Apr 18 olle 166     <tr>
4785 27 Apr 18 olle 167       <td><base:button id="gocancel" title="Cancel" /></td>
4785 27 Apr 18 olle 168       <td><base:button id="gonext" title="Next" image="<%=home+"/images/gonext.png"%>" /></td>
4785 27 Apr 18 olle 169       <td><base:button id="goregister" title="Register" image="<%=home+"/images/gonext.png"%>" /></td>
4785 27 Apr 18 olle 170       <td><base:button id="gorestart" title="Restart" image="<%=home+"/images/goback.png"%>" /></td>
4785 27 Apr 18 olle 171       <td id="gonext-message" class="message"></td>
4785 27 Apr 18 olle 172     </tr>
4785 27 Apr 18 olle 173     </table>
4785 27 Apr 18 olle 174   </form>
4785 27 Apr 18 olle 175   </div>
4785 27 Apr 18 olle 176   
4785 27 Apr 18 olle 177 </base:body>
4785 27 Apr 18 olle 178 </base:page>
4785 27 Apr 18 olle 179 <%
4785 27 Apr 18 olle 180 }
4785 27 Apr 18 olle 181 finally
4785 27 Apr 18 olle 182 {
4785 27 Apr 18 olle 183   if (dc != null) dc.close();
4785 27 Apr 18 olle 184 }
4785 27 Apr 18 olle 185 %>