source: trunk/grails-app/views/study/list_extended.gsp @ 212

Last change on this file since 212 was 212, checked in by keesvb, 9 years ago

refactored template entity code into TemplateEntity?, added more template field types, updated BootStrap? with some more details on PPSH, changed code in study overview to get template field contents in a nicer way

File size: 6.3 KB
Line 
1
2<%@ page import="dbnp.studycapturing.Study" %>
3<html>
4  <head>
5    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
6    <meta name="layout" content="main" />
7  <g:set var="entityName" value="${message(code: 'study.label', default: 'Study')}" />
8  <title><g:message code="default.list.label" args="[entityName]" /></title>
9
10  <my:jqueryui/>
11  <script type="text/javascript">
12    $(function() {
13            $("#accordions").accordion();
14    });
15  </script>
16
17</head>
18<body>
19
20  <% studyList = dbnp.studycapturing.Study.list() %>
21  <% def att_list = ['template','startDate','samplingEvents','lastUpdated','readers','code','editors','ecCode','researchQuestion','title','description','owner','dateCreated'] %>
22  <% def selectedStudies = [] %>
23  <% def tmpList = [] %>
24
25  <div class="nav">
26    <span class="menuButton"><a class="home" href="${createLink(uri: '/')}">Home</a></span>
27    <span class="menuButton"><g:link class="list" action="list"><g:message code="default.list.label" args="[entityName]" /></g:link></span>
28    <span class="menuButton"><g:link class="create" action="create"><g:message code="default.new.label" args="[entityName]" /></g:link></span>
29  </div>
30
31  <div class="body">
32    <h1>Studies Comparison</h1>
33    <g:if test="${flash.message}">
34      <div class="message">${flash.message}</div>
35    </g:if>
36
37    <% params.each{key,values-> %>
38    <% if (values=="on"){ %>
39      <% tmpList.add(key) %>
40    <%  } }%>
41
42    <% for (i in studyList) {%>
43    <% if (tmpList.contains(i.getTitle())) { %>
44      <% selectedStudies.add(i) %>
45     <% }} %>
46
47    <% if (selectedStudies.size()>0) {%>
48
49    <div id="accordions">
50
51    <a href="#"> Study Information </a>
52    <div>
53      <br>
54      <table>
55      <tr>
56        <td></td>
57        <g:each in="${selectedStudies}" status="j" var="studyIns">
58        <td><b>${studyIns.title}</b></td>
59        </g:each>
60      </tr>
61      <tr>
62        <td><b>Id</b></td>
63        <g:each in="${selectedStudies}" status="k" var="studyIns">
64          <td><g:link action="show" id="${studyIns.id}">
65${fieldValue(bean: studyIns, field: "id")}</g:link></td>
66        </g:each>
67      </tr>
68
69      <g:each in="${att_list}" var="att">
70      <tr>
71        <td><b>${att[0].toUpperCase()+att.substring(1)}</b></td>
72        <g:each in="${selectedStudies}" status="k" var="studyIns">
73<td>${fieldValue(bean: studyIns, field: att)}</td>
74        </g:each>
75      </tr>
76      </g:each>
77
78      </table>
79    </div>
80
81     <a href="#"> Subjects </a><div>
82       
83       <table border="2">
84         <tr>
85         <g:each in="${selectedStudies}" var="study">
86           <td><center><b>${study.title}</b></center></td>
87         </g:each>
88       </tr>
89
90         <tr>
91         <g:each in="${selectedStudies}" var="stud">
92             <td>
93
94               <table>
95          <tr>
96            <td><b>Id </b></td>
97            <td><b>Species</b></td>
98            <td><b>Name</b></td>
99          <g:each in="${stud.template.subjectFields}" var="g">
100            <td><b>
101              <g:link controller="templateSubjectField" action="show" id="${g.id}">
102              ${g}</b></td>
103            </g:link>
104          </g:each>
105          </tr>
106
107          <g:each in="${stud.subjects}" var="s">
108            <tr>
109              <td><g:link controller="subject" action="show" id="${s.id}">${s.id}</g:link></td>
110              <td>${s.species}</td>
111              <td>${s.name}</td>
112
113                <g:each in="${stud.template.subjectFields}" var="g">
114               <td>
115                  <% print s.getFieldValue(g.toString())  %>
116            </td>
117          </g:each>
118          </tr>
119          </g:each>
120          </table>
121
122             </td>
123           </g:each>
124         </tr>
125       </table>
126       
127      </div>
128
129 <a href="#"> Groups </a> <div>
130
131        </div>
132
133       <a href="#"> Protocols </a><div>
134         <table border="2">
135         <tr>
136         <g:each in="${selectedStudies}" var="study">
137           <td><center><b>${study.title}</b></center></td>
138         </g:each>
139       </tr>
140
141         <tr>
142         <g:each in="${selectedStudies}" var="stud">
143             <td>
144                <table>
145          <tr>
146            <td><b>Id </b></td>
147            <td><b>Name</b></td>
148            <td><b>Parameters</b></td>
149            <td><b>Reference</b></td>
150          </tr>
151
152          <% def protocol_list = [] %>
153          <% def tmp_protocol = stud.events.eventDescription.protocol.get(0) %>
154          <% protocol_list.add(tmp_protocol) %>
155          <g:each in="${stud.events.eventDescription.protocol}" var="s">
156
157          <% if (tmp_protocol!=s) { %>
158            <% protocol_list.add(s) %>
159            <%}%>
160          </g:each>
161
162            <g:each in="${protocol_list}" var="protocol">
163            <tr>
164              <td><g:link controller="protocol" action="show" id="${protocol.id}">${protocol.id}</g:link></td>
165          <td>${protocol.name}</td>
166          <td>
167          <g:each in="${protocol.parameters}" var="p"><ul><li>
168            <g:link controller="protocolParameter" action="show" id="${p.id}">${p.name}</g:link>
169            </li></ul>
170          </g:each>
171          </td>
172          <td>${protocol.reference}</td>
173          </tr>
174          </g:each>
175             </table>
176
177        </td>
178           </g:each>
179         </tr>
180       </table>
181       </div>
182
183      <a href="#"> Events </a><div>
184          <table border="2">
185         <tr>
186         <g:each in="${selectedStudies}" var="study">
187           <td><center><b>${study.title}</b></center></td>
188         </g:each>
189       </tr>
190
191         <tr>
192         <g:each in="${selectedStudies}" var="stud">
193             <td>
194
195        <table>
196          <tr>
197            <td><b>Event Description</b></td>
198            <td><b>Subject</b></td>
199            <td><b>Start Time</b></td>
200            <td><b>End Time</b></td>
201            <td><b>Duration</b></td>
202          </tr>
203          <g:each in="${stud.events}" var="e">
204            <tr>
205              <td><g:link controller="event" action="show" id="${e.id}">  ${e.eventDescription.name}</g:link></td>
206          <td>${e.subject.id}</td>
207          <td>${e.startTime}</td>
208          <td>${e.endTime}</td>
209          <td>${e.getDurationString()}</td>
210          </tr>
211          </g:each>
212          </table>
213        </td>
214           </g:each>
215         </tr>
216       </table>
217
218      </div>
219
220      <a href="#"> Assays </a><div>
221      </div>
222
223    </div>
224
225    <% } %>
226   
227     <% if (selectedStudies.size()==0) {%>
228    Please select studies to compare.
229    <% } %>
230
231    </div>
232
233
234</body>
235</html>
Note: See TracBrowser for help on using the repository browser.