root/trunk/grails-app/views/wizard/pages/_events.gsp @ 959

Revision 959, 5.6 KB (checked in by j.a.m.wesbeek@…, 4 years ago)

- set keyword expansion

  • Property svn:keywords set to Author Date Rev
Line 
1<%
2/**
3 * Events page
4 *
5 * @author  Jeroen Wesbeek
6 * @since   20100212
7 * @package wizard
8 * @see     dbnp.studycapturing.WizardTagLib::previousNext
9 * @see     dbnp.studycapturing.WizardController
10 *
11 * Revision information:
12 * $Rev$
13 * $Author$
14 * $Date$
15 */
16%>
17<wizard:pageContent>
18        <g:if env="development">
19                <wizard:ajaxButtonElement description="Development feature (clear events)" name="clear" value="clear events" url="[controller:'wizard',action:'pages']" update="[success:'wizardPage',failure:'wizardError']" afterSuccess="onWizardPage()">
20                        This functionality is only available in development mode for debugging purposes and will not show in test and production environments
21                </wizard:ajaxButtonElement>
22        </g:if>
23
24        <span class="info">
25                <span class="title">Define all events that occur in your study</span>
26                An event is any change ‘forced’ upon a subject, such as treatment, challenge, sampling. Choose an event type an define the different parameters of the event.               
27        </span>
28
29        <wizard:radioElement name="eventType" description="Type" elements="['event','sample']" value="${values?.eventType}">
30                Type of event
31        </wizard:radioElement>
32        <wizard:templateElement name="eventTemplate" elementId="eventTemplate" description="Event Template" value="${event?.template}" entity="${dbnp.studycapturing.Event}" addDummy="true" ajaxOnChange="switchTemplate" url="[controller:'wizard',action:'pages']" update="[success:'wizardPage',failure:'wizardError']" afterSuccess="onWizardPage()" >
33                The template to use for this event
34        </wizard:templateElement>
35        <wizard:templateElement name="sampleTemplate" elementId="sampleTemplate" description="Sampling Event Template" value="${event?.template}" entity="${dbnp.studycapturing.SamplingEvent}" addDummy="true" ajaxOnChange="switchTemplate" url="[controller:'wizard',action:'pages']" update="[success:'wizardPage',failure:'wizardError']" afterSuccess="onWizardPage()" >
36                The template to use for this sampling event
37        </wizard:templateElement>
38        <g:if test="${event?.template}">
39        <div id="${values?.eventType}TemplateFields">
40        <g:if test="${event?.template}"><wizard:templateElements entity="${event}" /></g:if>
41        <g:if test="${event?.template}"><wizard:buttonElement name="add" value="Add" url="[controller:'wizard',action:'pages']" update="[success:'wizardPage',failure:'wizardError']" afterSuccess="onWizardPage()"/></g:if>
42        </div>
43        </g:if>
44       
45        <script type="text/javascript">
46        function swapTemplate(value,refresh) {
47                $("div[id$='Template'],div[id$='TemplateFields']").each(function() {
48                        var e = $(this);
49                        if (e.attr('id').match("^"+value) != null) {
50                                e.show();
51                        } else {
52                                e.hide();
53                        }
54                });
55
56                if(refresh) {
57                }
58        }
59
60        // handle template selectors
61        $(document).ready(function() {
62                // bind event handlers
63                $("input[name=eventType]").click(function() {
64                        swapTemplate($(this).val(),true);
65                });
66
67                // handle selects
68                swapTemplate($('input:radio[name=eventType]:checked').val(),false);
69        });
70        </script>
71
72        <g:if test="${study.events || study.samplingEvents}">
73                <g:each var="template" in="${study.giveAllEventTemplates()}">
74                        <g:set var="showHeader" value="${true}" />
75                        <h1>${template}</h1>
76                        <div class="table">
77                        <g:each var="event" in="${study.giveEventsForTemplate(template)}">
78                                <g:if test="${showHeader}">
79                                <g:set var="showHeader" value="${false}" />
80                                <div class="header">
81                                        <div class="firstColumn">#</div>
82                                        <div class="firstColumn"></div>
83                                        <g:if test="${study.eventGroups}"><g:each var="eventGroup" in="${study.eventGroups}">
84                                        <div class="column">
85                                                <g:textField name="eventGroup_${eventGroup.getIdentifier()}_${template.getIdentifier()}" value="${eventGroup.name}" />
86                                                <wizard:ajaxButton name="deleteEventGroup" src="../images/icons/famfamfam/delete.png" alt="delete this eventgroup" class="famfamfam" value="-" url="[controller:'wizard',action:'pages']" update="[success:'wizardPage',failure:'wizardError']" before="\$(\'input[name=do]\').val(${eventGroup.getIdentifier()});" afterSuccess="onWizardPage()" />
87                                        </div>
88                                        </g:each></g:if>
89                                        <div class="firstColumn">
90                                                <wizard:ajaxButton name="addEventGroup" src="../images/icons/famfamfam/add.png" alt="add a new eventgroup" class="famfamfam" value="+" url="[controller:'wizard',action:'pages']" update="[success:'wizardPage',failure:'wizardError']" afterSuccess="onWizardPage()" />
91                                        </div>
92                                  <wizard:templateColumnHeaders class="column" entity="${event}" />
93                                </div>
94                                </g:if>
95
96                                <div class="row">
97                                        <div class="firstColumn">${event.getIdentifier()}</div>
98                                        <div class="firstColumn">
99                                                <wizard:ajaxButton name="deleteEvent" src="../images/icons/famfamfam/delete.png" alt="delete this event" class="famfamfam" value="-" url="[controller:'wizard',action:'pages']" update="[success:'wizardPage',failure:'wizardError']" before="\$(\'input[name=do]\').val(${event.getIdentifier()});" afterSuccess="onWizardPage()"/>
100                                        </div>
101                                        <g:if test="${study.eventGroups}"><g:each var="eventGroup" in="${study.eventGroups}">
102                                        <div class="column">
103                                                <g:if test="${eventGroup.events.find{ it == event } || eventGroup.samplingEvents.find{ it == event }}">
104                                                        <input type="checkbox" name="event_${event.getIdentifier()}_group_${eventGroup.getIdentifier()}" checked="checked" />
105                                                </g:if><g:else>
106                                                        <input type="checkbox" name="event_${event.getIdentifier()}_group_${eventGroup.getIdentifier()}"/>
107                                                </g:else>
108                                        </div>
109                                        </g:each></g:if>
110                                        <div class="firstColumn"></div>
111                                        <wizard:templateColumns class="column" entity="${event}" name="event_${event.getIdentifier()}" />
112                                </div>
113
114                        </g:each>
115                        </div>
116                        <div class="sliderContainer">
117                                <div class="slider"></div>
118                        </div>
119                </g:each>
120        </g:if>
121
122</wizard:pageContent>
Note: See TracBrowser for help on using the browser.