Changeset 43
- Timestamp:
- Apr 5, 2011, 4:50:39 PM (11 years ago)
- Location:
- trunk
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/grails-app/views/assay/_enterTagsDialog.gsp
r24 r43 1 1 <div id="enterTagsDialog" class="tabbedDialog"> 2 <div id="tagsTabs"> 3 <ul> 4 <li><a href="#manual">Manual</a></li> 5 <li><a href="#excel">Excel</a></li> 6 </ul> 7 <div id="manual"> 8 <h2>Edit sample data manually</h2> 9 <p> 10 Enter tag sequence and oligo number for samples mentioned below. 11 </p> 12 <g:form name="updateTagsManually" action="updateTagsManually" id="${assay.id}"> 13 <table> 14 <thead> 15 <tr> 16 <th>Sample</th> 17 <th>Run</th> 18 <th></th> 19 <th>Oligo number</th> 20 <th>Mid name</th> 21 <th>Total sequence</th> 22 <th>Mid sequence</th> 23 <th>Primer sequence</th> 24 </tr> 25 </thead> 26 <g:each in="${sortedAssaySamples}" var="assaySample" status="i"> 27 <tr> 28 <td>${assaySample.sample?.name}</td> 29 <td><g:select name="assaySample.${assaySample.id}.run" from="${assaySample.assay.runs}" value="${assaySample.run?.id}" optionKey="id" optionValue="name" /></td> 30 <td>fw</td> 31 <td><g:textField name="assaySample.${assaySample.id}.fwOligo" value="${assaySample.fwOligo}" /></td> 32 <td><g:textField name="assaySample.${assaySample.id}.fwMidName" value="${assaySample.fwMidName}" /></td> 33 <td><g:textField name="assaySample.${assaySample.id}.fwTotalSeq" value="${assaySample.fwTotalSeq}" /></td> 34 <td><g:textField name="assaySample.${assaySample.id}.fwMidSeq" value="${assaySample.fwMidSeq}" /></td> 35 <td><g:textField name="assaySample.${assaySample.id}.fwPrimerSeq" value="${assaySample.fwPrimerSeq}" /></td> 36 </tr> 37 <tr> 38 <td></td> 39 <td></td> 40 <td>rev</td> 41 <td><g:textField name="assaySample.${assaySample.id}.revOligo" value="${assaySample.revOligo}" /></td> 42 <td><g:textField name="assaySample.${assaySample.id}.revMidName" value="${assaySample.revMidName}" /></td> 43 <td><g:textField name="assaySample.${assaySample.id}.revTotalSeq" value="${assaySample.revTotalSeq}" /></td> 44 <td><g:textField name="assaySample.${assaySample.id}.revMidSeq" value="${assaySample.revMidSeq}" /></td> 45 <td><g:textField name="assaySample.${assaySample.id}.revPrimerSeq" value="${assaySample.revPrimerSeq}" /></td> 46 </tr> 47 </g:each> 48 </table> 49 </g:form> 50 </div> 51 <div id="excel"> 52 <h2>Edit sample data by excel file</h2> 53 <p> 54 Enter tag sequence and oligo number for samples in an excel file. <g:link action="downloadTagsExcel" id="${assay.id}">Download an example</g:link> 55 </p> 56 <g:form name="uploadExcel" action="parseTagExcel" id="${assay.id}"> 57 <g:fileUpload name="tagExcel" value="" onUpload="handleTagExcel"></g:fileUpload> 58 </g:form> 59 </div> 2 <div id="excel"> 3 <h2>Edit sample data by excel file</h2> 4 <p> 5 Enter tag sequence and oligo number for samples in an excel file. <g:link action="downloadTagsExcel" id="${assay.id}">Download an example</g:link> 6 </p> 7 <g:form name="uploadExcel" action="parseTagExcel" id="${assay.id}"> 8 <g:fileUpload name="tagExcel" value="" onUpload="handleTagExcel"></g:fileUpload> 9 </g:form> 60 10 </div> 61 11 </div> -
trunk/grails-app/views/assay/show.gsp
r34 r43 69 69 <th nowrap># sequences</th> 70 70 <th nowrap># qual</th> 71 <th class="nonsortable"></th> 71 72 </tr> 72 73 </thead> … … 92 93 <g:else> 93 94 - 95 </g:else> 96 </td> 97 <td class="button"> 98 <g:if test="${!assaySample.assay.study.canWrite(session.user)}"> 99 <img src="${fam.icon(name: 'pencil')}" class="disabled" title="You can't edit this sample because you don't have sufficient privileges." /> 100 </g:if> 101 <g:else> 102 <a onClick="openEditSampleDialog(${assaySample.id});" href="#"><img src="${fam.icon(name: 'pencil')}" /></a> 94 103 </g:else> 95 104 </td> -
trunk/grails-app/views/run/_enterTagsDialog.gsp
r24 r43 1 <div id="enterTagsDialog" class="tabbedDialog"> 2 <div id="tagsTabs"> 3 <ul> 4 <li><a href="#manual">Manual</a></li> 5 <li><a href="#excel">Excel</a></li> 6 </ul> 7 <div id="manual"> 8 <h2>Edit sample data manually</h2> 9 <p> 10 Enter tag sequence and oligo number for samples mentioned below. 11 </p> 12 <g:form name="updateTagsManually" action="updateTagsManually" id="${run.id}"> 13 <table> 14 <thead> 15 <tr> 16 <th>Sample</th> 17 <th></th> 18 <th>Oligo number</th> 19 <th>Mid name</th> 20 <th>Total sequence</th> 21 <th>Mid sequence</th> 22 <th>Primer sequence</th> 23 </tr> 24 </thead> 25 <g:each in="${writableAssaySamples}" var="assaySample" status="i"> 26 <tr> 27 <td>${assaySample.sample?.name}</td> 28 <td>fw</td> 29 <td><g:textField name="assaySample.${assaySample.id}.fwOligo" value="${assaySample.fwOligo}" /></td> 30 <td><g:textField name="assaySample.${assaySample.id}.fwMidName" value="${assaySample.fwMidName}" /></td> 31 <td><g:textField name="assaySample.${assaySample.id}.fwTotalSeq" value="${assaySample.fwTotalSeq}" /></td> 32 <td><g:textField name="assaySample.${assaySample.id}.fwMidSeq" value="${assaySample.fwMidSeq}" /></td> 33 <td><g:textField name="assaySample.${assaySample.id}.fwPrimerSeq" value="${assaySample.fwPrimerSeq}" /></td> 34 </tr> 35 <tr> 36 <td></td> 37 <td>rev</td> 38 <td><g:textField name="assaySample.${assaySample.id}.revOligo" value="${assaySample.revOligo}" /></td> 39 <td><g:textField name="assaySample.${assaySample.id}.revMidName" value="${assaySample.revMidName}" /></td> 40 <td><g:textField name="assaySample.${assaySample.id}.revTotalSeq" value="${assaySample.revTotalSeq}" /></td> 41 <td><g:textField name="assaySample.${assaySample.id}.revMidSeq" value="${assaySample.revMidSeq}" /></td> 42 <td><g:textField name="assaySample.${assaySample.id}.revPrimerSeq" value="${assaySample.revPrimerSeq}" /></td> 43 </tr> 44 </g:each> 45 </table> 46 </g:form> 47 </div> 48 <div id="excel"> 49 <h2>Edit sample data by excel file</h2> 50 <p> 51 Enter tag sequence and oligo number for samples in an excel file. <g:link action="downloadTagsExcel" id="${run.id}">Download an example</g:link> 52 </p> 53 <g:form name="uploadExcel" action="parseTagExcel" id="${run.id}"> 54 <g:fileUpload name="tagExcel" value="" onUpload="handleTagExcel"></g:fileUpload> 55 </g:form> 56 </div> 1 <div id="enterTagsDialog" class="dialog"> 2 <div id="excel"> 3 <h2>Edit sample data by excel file</h2> 4 <p> 5 Enter tag sequence and oligo number for samples in an excel file. <g:link action="downloadTagsExcel" id="${run.id}">Download an example</g:link> 6 </p> 7 <g:form name="uploadExcel" action="parseTagExcel" id="${run.id}"> 8 <g:fileUpload name="tagExcel" value="" onUpload="handleTagExcel"></g:fileUpload> 9 </g:form> 57 10 </div> 58 11 </div> -
trunk/grails-app/views/run/show.gsp
r34 r43 99 99 <th nowrap># qual</th> 100 100 <th class="nonsortable"></th> 101 <th class="nonsortable"></th> 101 102 </tr> 102 103 </thead> … … 122 123 <g:else> 123 124 - 125 </g:else> 126 </td> 127 <td class="button"> 128 <g:if test="${!assaySample.assay.study.canWrite(session.user)}"> 129 <img src="${fam.icon(name: 'pencil')}" class="disabled" title="You can't edit this sample because you don't have sufficient privileges." /> 130 </g:if> 131 <g:else> 132 <a onClick="openEditSampleDialog(${assaySample.id});" href="#"><img src="${fam.icon(name: 'pencil')}" /></a> 124 133 </g:else> 125 134 </td> -
trunk/web-app/js/enterTagsDialog.js
r24 r43 1 1 $(function() { 2 $( "#enterTagsDialog" ). tabbedDialog({2 $( "#enterTagsDialog" ).dialog({ 3 3 height: 450, 4 4 width: 960, … … 7 7 buttons: { 8 8 "Save": function() { 9 var $tabs = $('#enterTagsDialog').tabs(); 10 var selectedTab = $tabs.tabs('option', 'selected' ); 11 12 if( selectedTab == 0 ) { // Tab 'manual input' selected 13 $( 'form[name=updateTagsManually]' ).submit(); 14 } else if( selectedTab == 1 ) { // Tab 'excel input' selected 15 // Check whether we are in step 1 (uploading a file) or step 2 (matching columns) 16 // Step 1 has a form[name=uploadExcel], step 2 has a form[name=matchColumns] 17 if( $( 'form[name=uploadExcel]' ).length == 1 ) { 18 // Step 1: save shouldn't be used. The upload is handled in the onUpload handler of 19 // the upload object. See also handleTagExcel method 20 return; 21 } else { 22 $( 'form[name=matchColumns]' ).submit(); 23 } 9 // Check whether we are in step 1 (uploading a file) or step 2 (matching columns) 10 // Step 1 has a form[name=uploadExcel], step 2 has a form[name=matchColumns] 11 if( $( 'form[name=uploadExcel]' ).length == 1 ) { 12 // Step 1: save shouldn't be used. The upload is handled in the onUpload handler of 13 // the upload object. See also handleTagExcel method 14 return; 15 } else { 16 $( 'form[name=matchColumns]' ).submit(); 24 17 } 25 18 },
Note: See TracChangeset
for help on using the changeset viewer.