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

Last change on this file since 165 was 165, checked in by ademcan, 13 years ago

Studies comparaison view

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 = ['startDate','code','title'] %>
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="create" action="create"><g:message code="default.new.label" args="[entityName]" /></g:link></span>
28  </div>
29
30  <div class="body">
31    <h1>Compare Studies</h1>
32    <g:if test="${flash.message}">
33      <div class="message">${flash.message}</div>
34    </g:if>
35
36    <% params.each{key,values-> %>
37    <% if (values=="on"){ %>
38      <% tmpList.add(key) %>
39    <%  } }%>
40
41    <% for (i in studyList) {%>
42    <% if (tmpList.contains(i.getTitle())) { %>
43      <% selectedStudies.add(i) %>
44     <% }} %>
45
46    <% if (selectedStudies.size()>0) {%>
47
48    <div id="accordions">
49
50    <a href="#"> Study Information </a>
51    <div>
52      <br>
53      <table>
54      <tr>
55        <td></td>
56        <g:each in="${selectedStudies}" status="j" var="studyIns">
57        <td><b>${studyIns.title}</b></td>
58        </g:each>
59      </tr>
60      <tr>
61        <td><b>Id</b></td>
62        <g:each in="${selectedStudies}" status="k" var="studyIns">
63          <td><g:link action="show" id="${studyIns.id}">
64${fieldValue(bean: studyIns, field: "id")}</g:link></td>
65        </g:each>
66      </tr>
67
68      <g:each in="${att_list}" var="att">
69      <tr>
70        <td><b>${att}</b></td>
71        <g:each in="${selectedStudies}" status="k" var="studyIns">
72<td>${fieldValue(bean: studyIns, field: att)}</td>
73        </g:each>
74      </tr>
75      </g:each>
76
77      </table>
78    </div>
79
80     <a href="#"> Subjects </a><div>
81       
82       <table border="2">
83         <tr>
84         <g:each in="${selectedStudies}" var="study">
85           <td><center><b>${study.title}</b></center></td>
86         </g:each>
87       </tr>
88
89         <tr>
90         <g:each in="${selectedStudies}" var="stud">
91             <td>
92
93               <table>
94          <tr>
95            <td><b>Id </b></td>
96            <td><b>Species</b></td>
97            <td><b>Name</b></td>
98          <g:each in="${stud.template.subjectFields}" var="g">
99            <td><b>
100              <g:link controller="templateSubjectField" action="show" id="${g.id}">
101              ${g}</b></td>
102            </g:link>
103          </g:each>
104          </tr>
105
106          <g:each in="${stud.subjects}" var="s">
107            <tr>
108              <td><g:link controller="subject" action="show" id="${s.id}">${s.id}</g:link></td>
109              <td>${s.species}</td>
110              <td>${s.name}</td>
111
112                <g:each in="${stud.template.subjectFields}" var="g">
113               <td>
114              <% if (g.type==dbnp.studycapturing.TemplateFieldType.INTEGER){ %>
115                  <% print s.templateIntegerFields.get(g.toString())  %>
116              <% } %>
117               <% if (g.type==dbnp.studycapturing.TemplateFieldType.STRINGLIST){ %>
118                <% print s.templateStringFields.get(g.toString())  %>
119              <% } %>
120
121            </td>
122          </g:each>
123          </tr>
124          </g:each>
125          </table>
126
127             </td>
128           </g:each>
129         </tr>
130       </table>
131       
132      </div>
133
134 <a href="#"> Groups </a> <div>
135
136        </div>
137
138       <a href="#"> Protocols </a><div>
139         <table border="2">
140         <tr>
141         <g:each in="${selectedStudies}" var="study">
142           <td><center><b>${study.title}</b></center></td>
143         </g:each>
144       </tr>
145
146         <tr>
147         <g:each in="${selectedStudies}" var="stud">
148             <td>
149                <table>
150          <tr>
151            <td><b>Id </b></td>
152            <td><b>Name</b></td>
153            <td><b>Parameters</b></td>
154            <td><b>Reference</b></td>
155          </tr>
156
157          <% def protocol_list = [] %>
158          <% def tmp_protocol = stud.events.eventDescription.protocol.get(0) %>
159          <% protocol_list.add(tmp_protocol) %>
160          <g:each in="${stud.events.eventDescription.protocol}" var="s">
161
162          <% if (tmp_protocol!=s) { %>
163            <% protocol_list.add(s) %>
164            <%}%>
165          </g:each>
166
167            <g:each in="${protocol_list}" var="protocol">
168            <tr>
169              <td><g:link controller="protocol" action="show" id="${protocol.id}">${protocol.id}</g:link></td>
170          <td>${protocol.name}</td>
171          <td>
172          <g:each in="${protocol.parameters}" var="p"><ul><li>
173            <g:link controller="protocolParameter" action="show" id="${p.id}">${p.name}</g:link>
174            </li></ul>
175          </g:each>
176          </td>
177          <td>${protocol.reference}</td>
178          </tr>
179          </g:each>
180             </table>
181
182        </td>
183           </g:each>
184         </tr>
185       </table>
186       </div>
187
188      <a href="#"> Events </a><div>
189          <table border="2">
190         <tr>
191         <g:each in="${selectedStudies}" var="study">
192           <td><center><b>${study.title}</b></center></td>
193         </g:each>
194       </tr>
195
196         <tr>
197         <g:each in="${selectedStudies}" var="stud">
198             <td>
199
200        <table>
201          <tr>
202            <td><b>Event Description</b></td>
203            <td><b>Subject</b></td>
204            <td><b>Start Time</b></td>
205            <td><b>End Time</b></td>
206            <td><b>Duration</b></td>
207          </tr>
208          <g:each in="${stud.events}" var="e">
209            <tr>
210              <td><g:link controller="event" action="show" id="${e.id}">  ${e.eventDescription.name}</g:link></td>
211          <td>${e.subject.id}</td>
212          <td>${e.startTime}</td>
213          <td>${e.endTime}</td>
214          <td>${e.getDurationString()}</td>
215          </tr>
216          </g:each>
217          </table>
218        </td>
219           </g:each>
220         </tr>
221       </table>
222
223      </div>
224
225      <a href="#"> Assays </a><div>
226      </div>
227
228    </div>
229
230   
231
232    <% } %>
233   
234     <% if (selectedStudies.size()==0) {%>
235    Please select studies to compare.
236    <% } %>
237
238    </div>
239
240
241</body>
242</html>
Note: See TracBrowser for help on using the repository browser.