source: trunk/grails-app/views/assay/process.gsp @ 2

Last change on this file since 2 was 2, checked in by robert@…, 8 years ago

Initial import of basic functionality

File size: 3.2 KB
Line 
1<html>
2        <head>
3                <meta name="layout" content="main" />
4                <title>Process files for assay ${assay.name} | Metagenomics | dbNP</title>
5               
6                <g:javascript src="jquery.ui.tabbeddialog.js" />
7
8                <script>
9                        var assayId = ${assay.id};
10                </script>
11        </head>
12<body>
13        <h1>
14                ${assay.study.name} - ${assay.name}
15        </h1>
16        <g:if test="${matchedFiles.size() > 0}">
17                <h2>Match files with samples</h2>
18                <%
19                        def sortedSamples = assay.assaySamples.sort() { a,b -> a.sample.name <=> b.sample.name }
20                        def sortedRuns = assay.runs.sort() { a,b -> a.name <=> b.name }
21                %>
22                <g:form name="saveProcessedFiles" action="saveProcessedFiles" id="${assay.id}">
23                <table>
24                        <thead>
25                                <tr>
26                                        <th></th>
27                                        <th>Fasta file</th>
28                                        <th># sequences</th>
29                                        <th>Qual file</th>
30                                        <th>Sample</th>
31                                        <th>Run</th>
32                                </tr>
33                        </thead>
34                       
35                        <g:each in="${matchedFiles}" var="file" status="i">
36                                <tr>
37                                        <td>
38                                                <g:hiddenField name="file.${i}.fasta" value="${file.fasta.filename}" />
39                                                <g:checkBox name="file.${i}.include" value="${true}" />
40                                        </td>
41                                        <td class="name">${file.fasta.originalfilename}</td>
42                                        <td class="sequences">${file.fasta.numSequences}</td>
43                                        <td>
44                                                <g:if test="${file.feasibleQuals?.size()}">
45                                                        <g:select name="file.${i}.qual" from="${file.feasibleQuals}" optionKey="filename" optionValue="originalfilename" value="${file.qual?.filename}" noSelection="['': '- No qual file -']"/>
46                                                </g:if>
47                                                <g:else>
48                                                        No qual file available
49                                                </g:else>
50                                        </td>
51                                        <td>
52                                                <g:if test="${sortedSamples.size()}">
53                                                        <select name="file.${i}.assaySample">
54                                                                <g:each in="${sortedSamples}" var="assaySample">
55                                                                        <option
56                                                                                <g:if test="${file.assaySample?.id == assaySample.id}">
57                                                                                        selected="selected"
58                                                                                </g:if>
59                                                                                value="${assaySample.id}">${assaySample.sample.name}</option>
60                                                                </g:each>
61                                                        </select>
62                                                </g:if>
63                                                <g:else>
64                                                        No samples available.
65                                                </g:else>
66                                        </td>
67                                        <td>
68                                                ${selectedRun}
69                                                <g:if test="${sortedRuns.size()}">
70                                                        <select name="file.${i}.run">
71                                                                <g:each in="${sortedRuns}" var="run">
72                                                                        <option
73                                                                                <g:if test="${selectedRun?.toLong() == run.id}">
74                                                                                        selected="selected"
75                                                                                </g:if>
76                                                                                value="${run.id}">${run.name}</option>
77                                                                </g:each>
78                                                        </select>
79                                                </g:if>
80                                                <g:else>
81                                                        No runs available.
82                                                </g:else>
83                                        </td>
84                                </tr>
85                        </g:each>
86               
87                </table>
88               
89                <input type="submit" value="Continue">
90                </g:form>
91       
92        </g:if>
93        <g:else>
94                <h2>Uploaded files</h2>
95                <p>
96                        ${parsedFiles.success?.size()} files were successfully uploaded, but no FASTA file could be determined. Please
97                        upload at least one FASTA file.
98                </p>
99        </g:else>
100       
101        <g:if test="${parsedFiles.failure?.size()}">
102                <h2>Failure</h2>
103                <p>
104                        The following files could not be correctly imported. The system can only interpret FASTA and QUAL files.<br />
105                        If these files were intended to be included into the system, please check the messages below.
106                 </p>
107                <ul>
108                        <g:each in="${parsedFiles.failure}" var="file">
109                                <li>
110                                        ${file.originalfilename}:
111                                        ${file.message}
112                                </li>
113                        </g:each>
114                </ul>   
115        </g:if>
116       
117        <p>
118                <g:link action="show" id="${assay.id}">Return to assay</g:link>
119        </p>
120</body>
121</html>
Note: See TracBrowser for help on using the repository browser.