source: trunk/grails-app/views/studyWizard/pages/_assays.gsp @ 1865

Last change on this file since 1865 was 1865, checked in by work@…, 9 years ago
  • resolves gscf #447
  • gdt up to 0.0.49
  • Property svn:keywords set to Rev Author Date
File size: 2.9 KB
Line 
1<%
2/**
3 * Assays page
4 *
5 * @author  Jeroen Wesbeek
6 * @since   20100817
7 * @package wizard
8 * @see     dbnp.studycapturing.WizardTagLib::previousNext
9 * @see     dbnp.studycapturing.WizardController
10 *
11 * Revision information:
12 * $Rev: 1865 $
13 * $Author: work@osx.eu $
14 * $Date: 2011-05-23 15:28:51 +0000 (ma, 23 mei 2011) $
15 */
16%>
17<af:page>
18        <span class="info">
19                <span class="title">Add assays to your study</span>
20                In this step you can define the various assays that were performed within this study.
21                The actual (omics) data for these assays should reside in one of the assay modules that is coupled to this database (see Assay Modules).
22        </span>
23
24        <% /* wizard:textFieldElement name="addNumber" description="Number of assays to add" error="addNumber" value="${values?.addNumber}" size="4" maxlength="4">
25                The number of assays to add to your study
26        </af:textFieldElement */ %>
27        <af:templateElement name="template" description="Template" value="${(assay && assay instanceof dbnp.studycapturing.Assay) ? assay.template : ''}" entity="${dbnp.studycapturing.Assay}" addDummy="true" ajaxOnChange="switchTemplate" afterSuccess="onPage()" >
28                Choose the type of assay you would like to add
29        </af:templateElement>
30        <g:if test="${assay}">
31        <af:templateElements entity="${assay}" />
32        <af:ajaxButtonElement name="add" value="Add" afterSuccess="onPage()">
33        </af:ajaxButtonElement>
34        </g:if>
35
36        <g:if test="${study.assays}">
37                <g:each var="template" in="${study.giveAllAssayTemplates()}">
38                        <g:set var="showHeader" value="${true}" />
39                        <h1>${template}</h1>
40                        <div class="tableEditor">
41                        <g:each var="assay" in="${study.giveAssaysForTemplate(template)}">
42                                <g:if test="${showHeader}">
43                                <g:set var="showHeader" value="${false}" />
44                                <div class="header">
45                                        <div class="firstColumn"></div>
46                                        <div class="firstColumn"></div>
47                                        <af:templateColumnHeaders class="column" entity="${assay}" />
48                                </div>
49                                </g:if>
50
51                                <div class="row" identifier="${assay.getIdentifier()}">
52                                        <div class="firstColumn">
53                                                <input type="button" value="" action="deleteAssay" class="delete" identifier="${assay.getIdentifier()}" />
54                                        </div>
55                                        <div class="firstColumn">
56                                                <input type="button" value="" action="duplicate" class="clone" identifier="${assay.getIdentifier()}" />
57                                        </div>
58                                        <af:templateColumns class="column" entity="${assay}" name="assay_${assay.getIdentifier()}" />
59                                </div>
60                        </g:each>
61                        </div>
62                </g:each>
63        </g:if>
64
65        <script type="text/javascript">
66        $(document).ready(function() {
67                if (tableEditor) {
68                        tableEditor.registerActionCallback('deleteAssay', function() {
69                                if (confirm('are you sure you want to delete ' + ((this.length>1) ? 'these '+this.length+' assays?' : 'this assay?'))) {
70                                        $('input[name="do"]').val(this);
71                                        <af:ajaxSubmitJs name="deleteAssay" afterSuccess="onPage()" />
72                                }
73                        });
74                        tableEditor.registerActionCallback('duplicate', function() {
75                                $('input[name="do"]').val(this);
76                                <af:ajaxSubmitJs name="duplicate" afterSuccess="onPage()" />
77                        });
78                }
79        });
80        </script>
81</af:page>
Note: See TracBrowser for help on using the repository browser.