Ignore:
Timestamp:
Aug 5, 2010, 10:58:09 PM (13 years ago)
Author:
duh
Message:
  • big refactoring of the Study Capture Wizard until the grouping page, removing all internal maps and directory work on the study object to
    • simplify internal representation and handling
    • added static incremental identifiers to TemplateEntity?, EventGroup? and Template for use in dynamic web forms
  • TODO: fix the sample page
  • TODO: check cascaded deletes, confirm database content
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/grails-app/views/wizard/pages/_events.gsp

    r637 r778  
    7070        </script>
    7171
    72         <g:if test="${events}">
    73         <g:each var="eventTemplate" in="${eventTemplates}">
    74                 <g:set var="showHeader" value="${true}" />
    75                 <h1>${eventTemplate.value.name}</h1>
    76         <div class="table">
    77                 <g:each var="eventId" in="${eventTemplate.value.events}">
    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="${eventGroups}"><g:each var="eventGroup" status="g" in="${eventGroups}">
    84                                 <div class="column">
    85                                         <g:textField name="eventGroup_${g}_name" 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(${g});" afterSuccess="onWizardPage()" />
     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}" />
    8793                                </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()" />
     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 subject" 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()}" />
    91112                                </div>
    92                                 <wizard:templateColumnHeaders entity="${events[ eventId ]}" class="column"/>
     113
     114                        </g:each>
    93115                        </div>
    94                         </g:if>
    95                         <div class="row">
    96                                 <div class="firstColumn">${eventId + 1}</div>
    97                                 <div class="firstColumn">
    98                                         <wizard:ajaxButton name="deleteEvent" src="../images/icons/famfamfam/delete.png" alt="delete this subject" class="famfamfam" value="-" url="[controller:'wizard',action:'pages']" update="[success:'wizardPage',failure:'wizardError']" before="\$(\'input[name=do]\').val(${eventId});" afterSuccess="onWizardPage()"/>
    99                                 </div>
    100                                 <g:if test="${eventGroups}"><g:each var="eventGroup" status="j" in="${eventGroups}">
    101                                 <div class="column">
    102                                         <g:if test="${eventGroup.events.find{ it == events[ eventId ] } }">
    103                                                 <input type="checkbox" name="event_${eventId}_group_${j}" checked="checked" />
    104                                         </g:if><g:else>
    105                                                 <input type="checkbox" name="event_${eventId}_group_${j}"/>
    106                                         </g:else>
    107                                 </div>
    108                                 </g:each></g:if>
    109                                 <div class="firstColumn"></div>
    110                                 <wizard:templateColumns id="${eventId}" entity="${events[ eventId ]}" template="${events[ eventId ].template}" name="event_${eventId}" class="column" />
     116                        <div class="sliderContainer">
     117                                <div class="slider"></div>
    111118                        </div>
    112119                </g:each>
    113         </div>
    114         <div class="sliderContainer">
    115                 <div class="slider"></div>
    116         </div>
    117         </g:each>
    118 </g:if>
     120        </g:if>
    119121
    120122</wizard:pageContent>
Note: See TracChangeset for help on using the changeset viewer.