Ignore:
Timestamp:
Nov 5, 2009, 4:01:35 AM (14 years ago)
Author:
gav
Message:

Change is* in Task to just 'active', 'scheduled' and 'approved'.
Regenerate non detailed controller and views.
Adjust detailed controller, views and services to suite.
Add support for task actions 'approve', 'complete', 'trash' and their counter parts.
Default task status to "not started" when creating a new task.

Location:
trunk/grails-app/views/taskDetailed
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/grails-app/views/taskDetailed/create.gsp

    r180 r181  
    106106                                    <g:select optionKey="id" from="${TaskPriority.list()}" name="taskPriority.id" value="${taskInstance?.taskPriority?.id}" ></g:select>
    107107                                </td>
    108                             </tr> 
     108                            </tr>
    109109                       
    110110                            <tr class="prop">
    111111                                <td valign="top" class="name">
    112                                     <label for="taskStatus">Task Status:</label>
     112                                    <label for="scheduled">Scheduled:</label>
    113113                                </td>
    114                                 <td valign="top" class="value ${hasErrors(bean:taskInstance,field:'taskStatus','errors')}">
    115                                     <g:select optionKey="id" from="${TaskStatus.list()}" name="taskStatus.id" value="${taskInstance?.taskStatus?.id}" ></g:select>
    116                                 </td>
    117                             </tr>
    118                        
    119                             <tr class="prop">
    120                                 <td valign="top" class="name">
    121                                     <label for="isActive">Is Active:</label>
    122                                 </td>
    123                                 <td valign="top" class="value ${hasErrors(bean:taskInstance,field:'isActive','errors')}">
    124                                     <g:checkBox name="isActive" value="${taskInstance?.isActive}" ></g:checkBox>
    125                                 </td>
    126                             </tr>
    127                        
    128                             <tr class="prop">
    129                                 <td valign="top" class="name">
    130                                     <label for="isApproved">Is Approved:</label>
    131                                 </td>
    132                                 <td valign="top" class="value ${hasErrors(bean:taskInstance,field:'isApproved','errors')}">
    133                                     <g:checkBox name="isApproved" value="${taskInstance?.isApproved}" ></g:checkBox>
    134                                 </td>
    135                             </tr>
    136                        
    137                             <tr class="prop">
    138                                 <td valign="top" class="name">
    139                                     <label for="isScheduled">Is Scheduled:</label>
    140                                 </td>
    141                                 <td valign="top" class="value ${hasErrors(bean:taskInstance,field:'isScheduled','errors')}">
    142                                     <g:checkBox name="isScheduled" value="${taskInstance?.isScheduled}" ></g:checkBox>
     114                                <td valign="top" class="value ${hasErrors(bean:taskInstance,field:'scheduled','errors')}">
     115                                    <g:checkBox name="scheduled" value="${taskInstance?.scheduled}" ></g:checkBox>
    143116                                </td>
    144117                            </tr>
  • trunk/grails-app/views/taskDetailed/edit.gsp

    r168 r181  
    114114                            <tr class="prop">
    115115                                <td valign="top" class="name">
    116                                     <label for="taskStatus">Task Status:</label>
     116                                    <label for="scheduled">Scheduled:</label>
    117117                                </td>
    118                                 <td valign="top" class="value ${hasErrors(bean:taskInstance,field:'taskStatus','errors')}">
    119                                     <g:select optionKey="id" from="${TaskStatus.list()}" name="taskStatus.id" value="${taskInstance?.taskStatus?.id}" ></g:select>
    120                                 </td>
    121                             </tr>
    122                        
    123                             <tr class="prop">
    124                                 <td valign="top" class="name">
    125                                     <label for="isActive">Is Active:</label>
    126                                 </td>
    127                                 <td valign="top" class="value ${hasErrors(bean:taskInstance,field:'isActive','errors')}">
    128                                     <g:checkBox name="isActive" value="${taskInstance?.isActive}" ></g:checkBox>
    129                                 </td>
    130                             </tr>
    131                        
    132                             <tr class="prop">
    133                                 <td valign="top" class="name">
    134                                     <label for="isApproved">Is Approved:</label>
    135                                 </td>
    136                                 <td valign="top" class="value ${hasErrors(bean:taskInstance,field:'isApproved','errors')}">
    137                                     <g:checkBox name="isApproved" value="${taskInstance?.isApproved}" ></g:checkBox>
    138                                 </td>
    139                             </tr>
    140                        
    141                             <tr class="prop">
    142                                 <td valign="top" class="name">
    143                                     <label for="isScheduled">Is Scheduled:</label>
    144                                 </td>
    145                                 <td valign="top" class="value ${hasErrors(bean:taskInstance,field:'isScheduled','errors')}">
    146                                     <g:checkBox name="isScheduled" value="${taskInstance?.isScheduled}" ></g:checkBox>
     118                                <td valign="top" class="value ${hasErrors(bean:taskInstance,field:'scheduled','errors')}">
     119                                    <g:checkBox name="scheduled" value="${taskInstance?.scheduled}" ></g:checkBox>
    147120                                </td>
    148121                            </tr>
     
    181154                                <td valign="top" class="value ${hasErrors(bean:taskInstance,field:'assignedPersons','errors')}">
    182155                                   
    183                                                                 <ul>
    184                                                                 <g:each var="a" in="${taskInstance?.assignedPersons?}">
    185                                                                         <li><g:link controller="assignedPersonDetailed" action="edit" id="${a.id}">${a?.encodeAsHTML()}</g:link></li>
    186                                                                 </g:each>
    187                                                                 </ul>
    188                                                                 <g:link controller="assignedPersonDetailed" params="['task.id':taskInstance?.id]" action="create">Add AssignedPerson</g:link>
     156                                <ul>
     157                                <g:each var="a" in="${taskInstance?.assignedPersons?}">
     158                                    <li><g:link controller="assignedPersonDetailed" action="edit" id="${a.id}">${a?.encodeAsHTML()}</g:link></li>
     159                                </g:each>
     160                                </ul>
    189161
    190162                                </td>
    191                             </tr> 
     163                            </tr>
    192164
    193 
    194                        
    195165                        </tbody>
    196166                    </table>
     
    198168                <div class="buttons">
    199169                    <span class="button"><g:actionSubmit class="save" value="Update" /></span>
    200                     <span class="button"><g:actionSubmit class="delete" onclick="return confirm('Are you sure?');" value="Delete" /></span>
     170                    <span class="button"><g:actionSubmit class="cancel" value="Cancel" action="show"/></span>
     171                    <span class="button"><g:actionSubmit class="trash" onclick="return confirm('Are you sure?');" value="Trash" /></span>
    201172                </div>
    202173            </g:form>
  • trunk/grails-app/views/taskDetailed/searchCalendar.gsp

    r155 r181  
    4444                                    class="overlayPane"
    4545                                    additionalProperties="id"
    46                                     excludeProperties="isActive, comment, targetCompletionDate"
     46                                    excludeProperties="trash, comment, targetCompletionDate"
    4747                                    associatedProperties="leadPerson.lastName, taskPriority.name"
    4848                                    filterPropertyValues="${['taskPriority.name':[values:TaskPriority.list()],
  • trunk/grails-app/views/taskDetailed/show.gsp

    r180 r181  
    1616            <div class="message">${flash.message}</div>
    1717            </g:if>
     18            <g:if test="${taskInstance.trash}" >
     19                <div class="errors">
     20                        This task is in the trash bin, but can be restored if required.
     21                </div>
     22            </g:if>
    1823            <g:hasErrors bean="${taskInstance}">
    1924            <div class="errors">
     
    7580                                                                                    showElement('modControlOpened');
    7681                                                                                    hideElement('modControlClosed'); return false;">
    77                                                     Modifications <img  src="${resource(dir:'images/skin',file:'sorted_asc.gif')}" alt="Show" />
     82                                                    Modifications <img  src="${resource(dir:'images/skin',file:'bullet_toggle_plus.png')}" alt="Show" />
    7883                                                </a>
    7984                                            </div>
     
    8388                                                                                    showElement('modControlClosed');
    8489                                                                                    return false;">
    85                                                     Modifications <img  src="${resource(dir:'images/skin',file:'sorted_desc.gif')}" alt="Show" />
     90                                                    Modifications <img  src="${resource(dir:'images/skin',file:'bullet_toggle_minus.png')}" alt="Show" />
    8691                                                </a>
    8792                                            </div>
     
    142147
    143148                                    <tr class="prop">
    144                                         <td valign="top" class="name">Active:</td>
    145 
    146                                         <td valign="top" class="value">${fieldValue(bean:taskInstance, field:'isActive')}</td>
    147 
    148                                     </tr>
    149 
    150                                     <tr class="prop">
    151149                                        <td valign="top" class="name">Approved:</td>
    152150
    153                                         <td valign="top" class="value">${fieldValue(bean:taskInstance, field:'isApproved')}</td>
     151                                        <td valign="top" class="value">${fieldValue(bean:taskInstance, field:'approved')}</td>
    154152
    155153                                    </tr>
     
    158156                                        <td valign="top" class="name">Scheduled:</td>
    159157
    160                                         <td valign="top" class="value">${fieldValue(bean:taskInstance, field:'isScheduled')}</td>
     158                                        <td valign="top" class="value">${fieldValue(bean:taskInstance, field:'scheduled')}</td>
    161159
    162160                                    </tr>
     
    204202                            <g:form>
    205203                                <input type="hidden" name="id" value="${taskInstance?.id}" />
    206                                 <span class="button"><g:actionSubmit class="edit" value="Edit" /></span>
    207                                 <span class="button"><g:actionSubmit class="delete" onclick="return confirm('Are you sure?');" value="Delete" /></span>
     204
     205                                <g:if test="${taskInstance.trash}" >
     206                                    <span class="button"><g:actionSubmit class="restore" onclick="return confirm('Are you sure?');" value="Restore" /></span>
     207                                </g:if>
     208                                <g:else>
     209
     210                                    <g:if test="${taskInstance.taskStatus.id != 3}" >
     211                                        <span class="button"><g:actionSubmit class="complete" value="Complete" /></span>
     212
     213                                        <g:if test="${taskInstance.approved}" >
     214                                            <span class="button"><g:actionSubmit class="renegeApproval" value="Renege Approval" action="renegeApproval" /></span>
     215                                        </g:if>
     216                                        <g:else>
     217                                            <span class="button"><g:actionSubmit class="approve" value="Approve" /></span>
     218                                        </g:else>
     219
     220                                        <span class="button"><g:actionSubmit class="edit" value="Edit" /></span>
     221                                        <span class="button"><g:actionSubmit class="trash" onclick="return confirm('Are you sure?');" value="Trash" /></span>
     222
     223                                    </g:if>
     224                                    <g:else>
     225                                        <span class="button"><g:actionSubmit class="reopen" value="Reopen" /></span>
     226                                    </g:else>
     227
     228                                </g:else>
    208229                            </g:form>
    209230                        </div>
     
    252273                                        <th>Entered By</th>
    253274                                        <th></th>
    254 
    255             <!--                            <g:sortableColumn property="commentW" title="Comment" />
    256 
    257                                         <g:sortableColumn property="dateDoneW" title="Date Done" />
    258 
    259                                         <g:sortableColumn property="enteredByW" title="Entered By" />-->
    260275                                    </tr>
    261276                                </thead>
Note: See TracChangeset for help on using the changeset viewer.