extensions/net.sf.basedb.reggie/trunk/resources/dnaseq-analysis/ascat_start.jsp

Code
Comments
Other
Rev Date Author Line
7267 21 Jun 23 nicklas 1 <%@ page
7267 21 Jun 23 nicklas 2   pageEncoding="UTF-8"
7267 21 Jun 23 nicklas 3   session="false"
7267 21 Jun 23 nicklas 4   import="net.sf.basedb.core.User"
7267 21 Jun 23 nicklas 5   import="net.sf.basedb.core.DbControl"
7267 21 Jun 23 nicklas 6   import="net.sf.basedb.core.SessionControl"
7267 21 Jun 23 nicklas 7   import="net.sf.basedb.core.Application"
7267 21 Jun 23 nicklas 8   import="net.sf.basedb.clients.web.Base"  
7267 21 Jun 23 nicklas 9   import="net.sf.basedb.clients.web.util.HTML"  
7267 21 Jun 23 nicklas 10   import="net.sf.basedb.clients.web.extensions.ExtensionsControl"
7267 21 Jun 23 nicklas 11 %>
7267 21 Jun 23 nicklas 12 <%@ taglib prefix="base" uri="/WEB-INF/base.tld" %>
7267 21 Jun 23 nicklas 13 <%@ taglib prefix="p" uri="/WEB-INF/path.tld" %>
7267 21 Jun 23 nicklas 14 <%
7267 21 Jun 23 nicklas 15 final SessionControl sc = Base.getExistingSessionControl(request, "net.sf.basedb.reggie", true);
7267 21 Jun 23 nicklas 16 final String ID = sc.getId();
7267 21 Jun 23 nicklas 17 final float scale = Base.getScale(sc);
7267 21 Jun 23 nicklas 18 final String home = ExtensionsControl.getHomeUrl("net.sf.basedb.reggie");
7267 21 Jun 23 nicklas 19 DbControl dc = null;
7267 21 Jun 23 nicklas 20 try
7267 21 Jun 23 nicklas 21 {
7267 21 Jun 23 nicklas 22   dc = sc.newDbControl();
7267 21 Jun 23 nicklas 23   final User user = User.getById(dc, sc.getLoggedInUserId());
7267 21 Jun 23 nicklas 24 %>
7267 21 Jun 23 nicklas 25 <base:page type="default" >
7267 21 Jun 23 nicklas 26 <base:head 
7267 21 Jun 23 nicklas 27   scripts="~../reggie-2.js,~ascat_start.js" 
7267 21 Jun 23 nicklas 28   styles="path.css,~../css/reggie-2.css"
7267 21 Jun 23 nicklas 29 />
7267 21 Jun 23 nicklas 30 <base:body>
7267 21 Jun 23 nicklas 31
7267 21 Jun 23 nicklas 32   <p:path><p:pathelement 
7267 21 Jun 23 nicklas 33     title="Reggie" href="<%="../index.jsp?ID="+ID%>" 
7267 21 Jun 23 nicklas 34     /><p:pathelement title="Start ASCAT analysis" 
7267 21 Jun 23 nicklas 35     /></p:path>
7267 21 Jun 23 nicklas 36
7267 21 Jun 23 nicklas 37   <div class="content">
7267 21 Jun 23 nicklas 38   <form name="reggie" id="wizard" class="wizard">
7267 21 Jun 23 nicklas 39
7267 21 Jun 23 nicklas 40   <div class="step auto-hide" id="step-1">
7267 21 Jun 23 nicklas 41     <div class="step-no">1</div>
7269 26 Jun 23 nicklas 42     <div class="step-title">Select tumor/normal aligned sequences</div>
7267 21 Jun 23 nicklas 43     <div class="step-content">
7267 21 Jun 23 nicklas 44     
7267 21 Jun 23 nicklas 45       <table class="step-form">
7267 21 Jun 23 nicklas 46       <tr class="align-top">
7269 26 Jun 23 nicklas 47         <td class="prompt">Tumor/normal pairs</td>
7267 21 Jun 23 nicklas 48         <td class="input">
7267 21 Jun 23 nicklas 49           <select class="required yellow-label-support" multiple size="30"
7267 21 Jun 23 nicklas 50             name="alignedSequences" id="alignedSequences"></select>
7267 21 Jun 23 nicklas 51             
7267 21 Jun 23 nicklas 52           <base:buttongroup style="margin-top: 0.5em;">
7267 21 Jun 23 nicklas 53             <base:button title="Select manually&hellip;" id="btnSelectAlignedSequences" />
7267 21 Jun 23 nicklas 54           </base:buttongroup>
7267 21 Jun 23 nicklas 55         </td>
7267 21 Jun 23 nicklas 56         <td class="status" id="alignedSequences.status"></td>
7267 21 Jun 23 nicklas 57         <td class="help"><span id="alignedSequences.message" class="message"></span>
7269 26 Jun 23 nicklas 58           Select the tumor and normal aligned sequences that should be processed. 
7267 21 Jun 23 nicklas 59           The list contains aligned sequences  from the <b>ASCAT pipeline</b> item list 
7269 26 Jun 23 nicklas 60           (max 50).<br><br> Items marked with <b>[R]</b> have been marked for re-processing 
7267 21 Jun 23 nicklas 61           due to a  previous failure.
7267 21 Jun 23 nicklas 62         </td>
7267 21 Jun 23 nicklas 63       </tr>
7267 21 Jun 23 nicklas 64       </table>
7267 21 Jun 23 nicklas 65
7267 21 Jun 23 nicklas 66     </div>
7267 21 Jun 23 nicklas 67   </div>
7267 21 Jun 23 nicklas 68   
7267 21 Jun 23 nicklas 69   
7267 21 Jun 23 nicklas 70   <div class="step" id="step-2">
7267 21 Jun 23 nicklas 71     <div class="step-no">2</div>
7267 21 Jun 23 nicklas 72     <div class="step-title">ASCAT information</div>
7267 21 Jun 23 nicklas 73     <div class="step-content">
7267 21 Jun 23 nicklas 74
7267 21 Jun 23 nicklas 75       <table class="step-form">
7267 21 Jun 23 nicklas 76       <tbody>
7267 21 Jun 23 nicklas 77         <tr>
7267 21 Jun 23 nicklas 78           <td class="prompt">Software</td>
7267 21 Jun 23 nicklas 79           <td class="input">
7341 11 Sep 23 nicklas 80             <select name="ascatSoftware" id="ascatSoftware" class="auto-init"
7341 11 Sep 23 nicklas 81               data-auto-init="focus-on-enter" data-next-focus="minDepth"></select>
7267 21 Jun 23 nicklas 82           </td>
7267 21 Jun 23 nicklas 83           <td class="status" id="ascatSoftware.status"></td>
7267 21 Jun 23 nicklas 84           <td class="help">
7267 21 Jun 23 nicklas 85             <span id="ascatSoftware.message" class="message"></span>
7267 21 Jun 23 nicklas 86             Select the software to use.
7267 21 Jun 23 nicklas 87           </td>
7267 21 Jun 23 nicklas 88         </tr>
7267 21 Jun 23 nicklas 89       </tbody>
7267 21 Jun 23 nicklas 90       <tbody class="info-section">
7267 21 Jun 23 nicklas 91         <tr>
7267 21 Jun 23 nicklas 92           <td class="subprompt">Parameter set</td>
7267 21 Jun 23 nicklas 93           <td class="info" colspan="2">
7267 21 Jun 23 nicklas 94             <span id="ascatSoftware.parameterSet"></span>
7267 21 Jun 23 nicklas 95             <div id="ascatSoftware.description" class="item-description"></div>
7267 21 Jun 23 nicklas 96           </td>
7267 21 Jun 23 nicklas 97           <td class="help">
7267 21 Jun 23 nicklas 98             Parameters are configured in 
7267 21 Jun 23 nicklas 99             the &lt;ascat&gt; section in reggie-config.xml.
7267 21 Jun 23 nicklas 100           </td>
7267 21 Jun 23 nicklas 101         </tr>
7267 21 Jun 23 nicklas 102       </tbody>
7267 21 Jun 23 nicklas 103       <tbody>
7341 11 Sep 23 nicklas 104         <tr class="section-header">
7341 11 Sep 23 nicklas 105           <td colspan="4">Filtering</td>
7341 11 Sep 23 nicklas 106         </tr>
7279 11 Aug 23 nicklas 107         <tr>
7341 11 Sep 23 nicklas 108           <td class="subprompt">Min depth</td>
7279 11 Aug 23 nicklas 109           <td class="input">
7341 11 Sep 23 nicklas 110             <input type="text" class="auto-init" name="minDepth" id="minDepth" style="width: 6em;" maxlength="6" placeholder="20"
7341 11 Sep 23 nicklas 111               data-auto-init="focus-on-enter" data-next-focus="penalty">
7279 11 Aug 23 nicklas 112           </td>
7341 11 Sep 23 nicklas 113           <td class="status" id="minDepth.status"></td>
7279 11 Aug 23 nicklas 114           <td class="help">
7341 11 Sep 23 nicklas 115             <span id="minDepth.message" class="message"></span>
7341 11 Sep 23 nicklas 116             Required depth for a SNP to be used by ASCAT. The default value is <b>20</b>.
7279 11 Aug 23 nicklas 117           </td>
7279 11 Aug 23 nicklas 118         </tr>
7341 11 Sep 23 nicklas 119         <tr class="section-header">
7341 11 Sep 23 nicklas 120           <td colspan="4">Segmentation</td>
7341 11 Sep 23 nicklas 121         </tr>
7279 11 Aug 23 nicklas 122         <tr>
7341 11 Sep 23 nicklas 123           <td class="subprompt">Penalty</td>
7341 11 Sep 23 nicklas 124           <td class="input">
7405 08 Nov 23 nicklas 125             <input type="text" class="auto-init" name="penalty" id="penalty" style="width: 6em;" maxlength="6" value="70"
7341 11 Sep 23 nicklas 126               data-auto-init="focus-on-enter" data-next-focus="imbalanceTest">
7341 11 Sep 23 nicklas 127           </td>
7341 11 Sep 23 nicklas 128           <td class="status" id="penalty.status"></td>
7341 11 Sep 23 nicklas 129           <td class="help">
7341 11 Sep 23 nicklas 130             <span id="penalty.message" class="message"></span>
7405 08 Nov 23 nicklas 131             The penalty of introducing an additional segment breakpoint. The default value is <b>70</b>.
7341 11 Sep 23 nicklas 132           </td>
7341 11 Sep 23 nicklas 133         </tr>
7341 11 Sep 23 nicklas 134         <tr>
7341 11 Sep 23 nicklas 135           <td class="subprompt">Allelic imbalance test</td>
7341 11 Sep 23 nicklas 136           <td class="input">
7341 11 Sep 23 nicklas 137             <select name="imbalanceTest" id="imbalanceTest" class="auto-init" style="width: 15em;"
7341 11 Sep 23 nicklas 138               data-auto-init="focus-on-enter" data-next-focus="tau">
7405 08 Nov 23 nicklas 139               <option value="BimodalityCoefficient" data-tau-min="0" data-tau-max="1" data-tau="0.4">BimodalityCoefficient
7341 11 Sep 23 nicklas 140               <option value="MadSegment" data-tau-min="1.5" data-tau-max="2" data-tau="1.78">MadSegment
7341 11 Sep 23 nicklas 141               <option value="Legacy" data-tau-min="1.5" data-tau-max="2" data-tau="1.73">Legacy
7341 11 Sep 23 nicklas 142             </select>
7341 11 Sep 23 nicklas 143           </td>
7341 11 Sep 23 nicklas 144           <td class="status" id="imbalanceTest.status"></td>
7341 11 Sep 23 nicklas 145           <td class="help">
7341 11 Sep 23 nicklas 146             <span id="imbalanceTest.message" class="message"></span>
7341 11 Sep 23 nicklas 147             Select the test to use when checking if a segment is in allelic imbalance or not.
7341 11 Sep 23 nicklas 148           </td>
7341 11 Sep 23 nicklas 149         </tr>
7341 11 Sep 23 nicklas 150         <tr>
7279 11 Aug 23 nicklas 151           <td class="subprompt">Tau</td>
7279 11 Aug 23 nicklas 152           <td class="input">
7341 11 Sep 23 nicklas 153             <input type="text" class="auto-init" name="tau" id="tau" style="width: 6em;" maxlength="6"
7341 11 Sep 23 nicklas 154               data-auto-init="focus-on-enter" data-next-focus="rho">
7341 11 Sep 23 nicklas 155             <i id="tau-range"></i>
7279 11 Aug 23 nicklas 156           </td>
7279 11 Aug 23 nicklas 157           <td class="status" id="tau.status"></td>
7279 11 Aug 23 nicklas 158           <td class="help">
7279 11 Aug 23 nicklas 159             <span id="tau.message" class="message"></span>
7341 11 Sep 23 nicklas 160             The tau parameter is used in the imbalance test. The default value depends on 
7405 08 Nov 23 nicklas 161             the selected test: <b>BiomodalityCoefficient=0.4</b>, <b>MadSegment=1.78</b>, <b>Legacy=√3 ≈ 1.73</b>.
7279 11 Aug 23 nicklas 162           </td>
7279 11 Aug 23 nicklas 163         </tr>
7341 11 Sep 23 nicklas 164         <tr class="section-header">
7341 11 Sep 23 nicklas 165           <td colspan="4">ASCAT</td>
7341 11 Sep 23 nicklas 166         </tr>
7279 11 Aug 23 nicklas 167         <tr>
7279 11 Aug 23 nicklas 168           <td class="subprompt">Rho</td>
7279 11 Aug 23 nicklas 169           <td class="input">
7341 11 Sep 23 nicklas 170             <input type="text" class="auto-init" name="rho" id="rho" style="width: 6em;" maxlength="6"
7341 11 Sep 23 nicklas 171               data-auto-init="focus-on-enter" data-next-focus="psi">
7279 11 Aug 23 nicklas 172             <i>0 ≤ ρ ≤ 1</i>
7279 11 Aug 23 nicklas 173           </td>
7279 11 Aug 23 nicklas 174           <td class="status" id="rho.status"></td>
7279 11 Aug 23 nicklas 175           <td class="help">
7279 11 Aug 23 nicklas 176             <span id="rho.message" class="message"></span>
7279 11 Aug 23 nicklas 177             Manually setting the <b>rho</b> parameter (purity) disables automatic ASCAT optimization.
7279 11 Aug 23 nicklas 178             If set, the <b>psi</b> parameter must also be set.
7279 11 Aug 23 nicklas 179           </td>
7279 11 Aug 23 nicklas 180         </tr>
7279 11 Aug 23 nicklas 181         <tr>
7279 11 Aug 23 nicklas 182           <td class="subprompt">Psi</td>
7279 11 Aug 23 nicklas 183           <td class="input">
7341 11 Sep 23 nicklas 184             <input type="text" class="auto-init" name="psi" id="psi" style="width: 6em;" maxlength="6">
7279 11 Aug 23 nicklas 185             <i>0 ≤ ψ ≤ 6</i>
7279 11 Aug 23 nicklas 186           </td>
7279 11 Aug 23 nicklas 187           <td class="status" id="psi.status"></td>
7279 11 Aug 23 nicklas 188           <td class="help">
7279 11 Aug 23 nicklas 189             <span id="psi.message" class="message"></span>
7279 11 Aug 23 nicklas 190             Manually setting the <b>psi</b> parameter (ploidy) disables automatic ASCAT optimization.
7279 11 Aug 23 nicklas 191             If set, the <b>rho</b> parameter must also be set.
7279 11 Aug 23 nicklas 192           </td>
7279 11 Aug 23 nicklas 193         </tr>
7290 18 Aug 23 nicklas 194         <tr id="existingResults" style="display: none;">
7290 18 Aug 23 nicklas 195           <td class="subprompt"></td>
7290 18 Aug 23 nicklas 196           <td class="input">
7290 18 Aug 23 nicklas 197             <base:button 
7290 18 Aug 23 nicklas 198               id="viewExistingResults" 
7290 18 Aug 23 nicklas 199               title="View&hellip;" 
7290 18 Aug 23 nicklas 200               image="zoom.png"
7290 18 Aug 23 nicklas 201             />
7290 18 Aug 23 nicklas 202              <span id="numExistingResults">?</span> existing ASCAT results
7290 18 Aug 23 nicklas 203           </td>
7290 18 Aug 23 nicklas 204           <td class="status"></td>
7290 18 Aug 23 nicklas 205           <td class="help">
7290 18 Aug 23 nicklas 206             
7290 18 Aug 23 nicklas 207           </td>
7290 18 Aug 23 nicklas 208           
7290 18 Aug 23 nicklas 209         </tr>
7279 11 Aug 23 nicklas 210       
7279 11 Aug 23 nicklas 211       </tbody>
7279 11 Aug 23 nicklas 212       <tbody>
7267 21 Jun 23 nicklas 213         <tr class="section-header">
7267 21 Jun 23 nicklas 214           <td colspan="4">Job scheduler</td>
7267 21 Jun 23 nicklas 215         </tr>
7267 21 Jun 23 nicklas 216         <tr>
7267 21 Jun 23 nicklas 217           <td class="subprompt">Cluster</td>
7267 21 Jun 23 nicklas 218           <td class="input">
7267 21 Jun 23 nicklas 219             <select name="clusters" id="clusters" class="required"></select></td>
7267 21 Jun 23 nicklas 220           <td class="status" id="clusters.status"></td>
7267 21 Jun 23 nicklas 221           <td class="help">
7267 21 Jun 23 nicklas 222             <span id="clusters.message" class="message"></span>
7267 21 Jun 23 nicklas 223             Select the cluster to use for running the software.
7267 21 Jun 23 nicklas 224           </td>
7267 21 Jun 23 nicklas 225         </tr>
7267 21 Jun 23 nicklas 226         <tr id="job-priority" style="display: none;">
7267 21 Jun 23 nicklas 227           <td class="subprompt">Job priority</td>
7267 21 Jun 23 nicklas 228           <td class="input">
7267 21 Jun 23 nicklas 229             <select name="priority" id="priority"></select>
7267 21 Jun 23 nicklas 230           </td>
7267 21 Jun 23 nicklas 231           <td class="status" id="priority.status"></td>
7267 21 Jun 23 nicklas 232           <td class="help">
7267 21 Jun 23 nicklas 233             <span id="priority.message" class="message"></span>
7267 21 Jun 23 nicklas 234             Select the priority of the job.
7267 21 Jun 23 nicklas 235           </td>
7267 21 Jun 23 nicklas 236         </tr>
7267 21 Jun 23 nicklas 237         <tr id="job-partition" style="display: none;">
7267 21 Jun 23 nicklas 238           <td class="subprompt">Job partition</td>
7267 21 Jun 23 nicklas 239           <td class="input">
7267 21 Jun 23 nicklas 240             <select name="partition" id="partition"></select>
7267 21 Jun 23 nicklas 241           </td>
7267 21 Jun 23 nicklas 242           <td class="status" id="partition.status"></td>
7267 21 Jun 23 nicklas 243           <td class="help">
7267 21 Jun 23 nicklas 244             <span id="partition.message" class="message"></span>
7267 21 Jun 23 nicklas 245             Select the partition/queue that the job should be submitted to.
7267 21 Jun 23 nicklas 246           </td>
7267 21 Jun 23 nicklas 247         </tr>
7372 06 Oct 23 nicklas 248       </tbody>
7372 06 Oct 23 nicklas 249       <tbody class="info-section">
7372 06 Oct 23 nicklas 250         <tr class="align-top">
7372 06 Oct 23 nicklas 251           <td class="subprompt">Job options</td>
7372 06 Oct 23 nicklas 252           <td class="info input">
7372 06 Oct 23 nicklas 253             <div id="submitOptions" class="item-description code"></div>
7372 06 Oct 23 nicklas 254             <textarea id="submitOptionsOverride" name="submitOptionsOverride" rows="4" style="display: none;"></textarea>
7372 06 Oct 23 nicklas 255           </td>
7372 06 Oct 23 nicklas 256           <td class="status" id="submitOptions.status">
7372 06 Oct 23 nicklas 257             <input type="checkbox" id="override" name="override" title="Override the default options" disabled>
7372 06 Oct 23 nicklas 258           </td>
7372 06 Oct 23 nicklas 259           <td class="help">
7372 06 Oct 23 nicklas 260             Parameters are configured in the &lt;ascat&gt;/&lt;submit&gt; 
7372 06 Oct 23 nicklas 261             section in reggie-config.xml. Select the checkbox to manually 
7372 06 Oct 23 nicklas 262             override the default options.
7372 06 Oct 23 nicklas 263           </td>
7372 06 Oct 23 nicklas 264         </tr>
7372 06 Oct 23 nicklas 265       </tbody>
7372 06 Oct 23 nicklas 266       <tbody>
7267 21 Jun 23 nicklas 267         <tr>
7290 18 Aug 23 nicklas 268           <td class="subprompt"><label for="autoConfirm">Auto-confirm</label></td>
7290 18 Aug 23 nicklas 269           <td class="input"><input type="checkbox" name="autoConfirm" id="autoConfirm" disabled></td>
7267 21 Jun 23 nicklas 270           <td class="status" id="autoConfirm.status"></td>
7267 21 Jun 23 nicklas 271           <td class="help">
7267 21 Jun 23 nicklas 272             <span id="autoConfirm.message" class="message"></span>
7290 18 Aug 23 nicklas 273             Auto-confirm is not possible since the results need to be manually inspected.
7267 21 Jun 23 nicklas 274           </td>
7267 21 Jun 23 nicklas 275         </tr>
7267 21 Jun 23 nicklas 276         <tr>
7267 21 Jun 23 nicklas 277           <td class="subprompt">Debug</td>
7372 06 Oct 23 nicklas 278           <td class="input"><input type="checkbox" name="debug" id="debug"></td>
7267 21 Jun 23 nicklas 279           <td class="status" id="debug.status"></td>
7267 21 Jun 23 nicklas 280           <td class="help">
7267 21 Jun 23 nicklas 281             <span id="debug.message" class="message"></span>
7267 21 Jun 23 nicklas 282             When running in debug mode temporary files are not removed from the
7267 21 Jun 23 nicklas 283             cluster node.
7267 21 Jun 23 nicklas 284           </td>
7267 21 Jun 23 nicklas 285         </tr>
7267 21 Jun 23 nicklas 286       </tbody>
7267 21 Jun 23 nicklas 287       </table>
7267 21 Jun 23 nicklas 288     </div>
7267 21 Jun 23 nicklas 289   </div>
7267 21 Jun 23 nicklas 290     
7267 21 Jun 23 nicklas 291     <div id="wizard-status"></div>
7267 21 Jun 23 nicklas 292   
7267 21 Jun 23 nicklas 293     <table class="navigation" id="navigation">
7267 21 Jun 23 nicklas 294     <tr>
7267 21 Jun 23 nicklas 295       <td><base:button id="gocancel" title="Cancel" /></td>
7267 21 Jun 23 nicklas 296       <td><base:button id="gonext" title="Next" image="<%=home+"/images/gonext.png"%>" /></td>
7267 21 Jun 23 nicklas 297       <td><base:button id="goregister" title="Register" image="<%=home+"/images/import.png"%>"  /></td>
7267 21 Jun 23 nicklas 298       <td><base:button id="gorestart" title="Restart" image="<%=home+"/images/goback.png"%>" /></td>
7267 21 Jun 23 nicklas 299       <td id="gonext-message" class="message"></td>
7267 21 Jun 23 nicklas 300     </tr>
7267 21 Jun 23 nicklas 301     </table>
7267 21 Jun 23 nicklas 302   
7267 21 Jun 23 nicklas 303   </form>
7267 21 Jun 23 nicklas 304   </div>
7267 21 Jun 23 nicklas 305   
7267 21 Jun 23 nicklas 306 </base:body>
7267 21 Jun 23 nicklas 307 </base:page>
7267 21 Jun 23 nicklas 308 <%
7267 21 Jun 23 nicklas 309 }
7267 21 Jun 23 nicklas 310 finally
7267 21 Jun 23 nicklas 311 {
7267 21 Jun 23 nicklas 312   if (dc != null) dc.close();
7267 21 Jun 23 nicklas 313 }
7267 21 Jun 23 nicklas 314 %>