source: trunk/grails-app/views/taskDetailed/edit.gsp @ 194

Last change on this file since 194 was 181, checked in by gav, 15 years ago

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.

File size: 10.1 KB
Line 
1
2
3<html>
4    <head>
5        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
6        <meta name="layout" content="main" />
7        <title>Edit Task</title>
8        <nav:resources override="true"/>
9        <resource:dateChooser />
10    </head>
11    <body>
12        <div class="nav">
13            <nav:renderSubItems group="nav"/>
14        </div>
15        <div class="body">
16            <g:if test="${flash.message}">
17            <div class="message">${flash.message}</div>
18            </g:if>
19            <g:hasErrors bean="${taskInstance}">
20            <div class="errors">
21                <g:renderErrors bean="${taskInstance}" as="list" />
22            </div>
23            </g:hasErrors>
24            <g:form method="post" >
25                <input type="hidden" name="id" value="${taskInstance?.id}" />
26                <div class="dialog">
27                    <table>
28                        <tbody>
29
30                            <tr class="prop">
31                                <td valign="top" class="name">
32                                    <label for="id">Id:</label>
33                                </td>
34                                <td valign="top" class="value">${fieldValue(bean:taskInstance, field:'id')}</td>
35                            </tr>
36
37                            <tr class="prop">
38                                <td valign="top" class="name">
39                                    <label for="description">Description:</label>
40                                </td>
41                                <td valign="top" class="value ${hasErrors(bean:taskInstance,field:'description','errors')}">
42                                    <input type="text" style="width:450px" maxlength="75" id="description" name="description" value="${fieldValue(bean:taskInstance,field:'description')}"/>
43                                </td>
44                            </tr>
45
46                            <tr class="prop">
47                                <td valign="top" class="name">
48                                    <label for="comment">Comment:</label>
49                                </td>
50                                <td valign="top" class="value ${hasErrors(bean:taskInstance,field:'comment','errors')}">
51                                    <textarea style="width:450px" rows="5" cols="40" name="comment">${fieldValue(bean:taskInstance, field:'comment')}</textarea>
52                                </td>
53                            </tr>
54                       
55                            <tr class="prop">
56                                <td valign="top" class="name">
57                                    <label for="targetStartDate">Target Start Date:</label>
58                                </td>
59                                <td valign="top" class="value ${hasErrors(bean:taskInstance,field:'targetStartDate','errors')}">
60                                    <richui:dateChooser name="targetStartDate" format="dd-MM-yyyy" value="${taskInstance?.targetStartDate}" />
61                                </td>
62                            </tr>
63
64                            <tr class="prop">
65                                <td valign="top" class="name">
66                                    <label for="targetCompletionDate">Target Completion Date:</label>
67                                </td>
68                                <td valign="top" class="value ${hasErrors(bean:taskInstance,field:'targetCompletionDate','errors')}">
69                                    <richui:dateChooser name="targetCompletionDate" format="dd-MM-yyyy" value="${taskInstance?.targetCompletionDate}" />
70                                </td>
71                            </tr>
72                       
73                            <tr class="prop">
74                                <td valign="top" class="name">
75                                    <label for="leadPerson">Lead Person:</label>
76                                </td>
77                                <td valign="top" class="value ${hasErrors(bean:taskInstance,field:'leadPerson','errors')}">
78                                    <g:select optionKey="id" from="${Person.list()}" name="leadPerson.id" value="${taskInstance?.leadPerson?.id}" ></g:select>
79                                </td>
80                            </tr>
81                       
82                            <tr class="prop">
83                                <td valign="top" class="name">
84                                    <label for="primaryAsset">Primary Asset:</label>
85                                </td>
86                                <td valign="top" class="value ${hasErrors(bean:taskInstance,field:'primaryAsset','errors')}">
87                                    <g:select optionKey="id" from="${Asset.list()}" name="primaryAsset.id" value="${taskInstance?.primaryAsset?.id}"  noSelection="['null':'--None--']"></g:select>
88                                    <g:helpBalloon code="task.primaryAsset" />
89                                </td>
90                            </tr>
91
92                            <tr class="prop">
93                                <td valign="top" class="name">
94                                    <label for="associatedAssets">Associated Assets:</label>
95                                </td>
96                                <td valign="top" class="value ${hasErrors(bean:taskInstance,field:'associatedAssets','errors')}">
97                                    <g:select id="associatedAssets" name="associatedAssets"
98                                                    from="${Asset.list()}"
99                                                    optionKey="id" size="5" multiple="yes"
100                                                    value="${taskInstance?.associatedAssets.id}"  noSelection="['':'--None--']"/>
101                                    <g:helpBalloon  class="helpballoon" code="task.associatedAssets" />
102                                </td>
103                            </tr>
104                       
105                            <tr class="prop">
106                                <td valign="top" class="name">
107                                    <label for="taskPriority">Task Priority:</label>
108                                </td>
109                                <td valign="top" class="value ${hasErrors(bean:taskInstance,field:'taskPriority','errors')}">
110                                    <g:select optionKey="id" from="${TaskPriority.list()}" name="taskPriority.id" value="${taskInstance?.taskPriority?.id}" ></g:select>
111                                </td>
112                            </tr>
113                       
114                            <tr class="prop">
115                                <td valign="top" class="name">
116                                    <label for="scheduled">Scheduled:</label>
117                                </td>
118                                <td valign="top" class="value ${hasErrors(bean:taskInstance,field:'scheduled','errors')}">
119                                    <g:checkBox name="scheduled" value="${taskInstance?.scheduled}" ></g:checkBox>
120                                </td>
121                            </tr>
122
123                            <tr class="prop">
124                                <td valign="top" class="name">
125                                    <label for="parentTask">Parent Task:</label>
126                                </td>
127                                <td valign="top" class="value ${hasErrors(bean:taskInstance,field:'parentTask','errors')}">
128                                    <g:select optionKey="id" from="${possibleParentList}" name="parentTask.id" value="${taskInstance?.parentTask?.id}" noSelection="['null':'--None--']"></g:select>
129                                </td>
130                            </tr>
131                       
132                            <tr class="prop">
133                                <td valign="top" class="name">
134                                    <label for="taskGroup">Task Group:</label>
135                                </td>
136                                <td valign="top" class="value ${hasErrors(bean:taskInstance,field:'taskGroup','errors')}">
137                                    <g:select optionKey="id" from="${TaskGroup.list()}" name="taskGroup.id" value="${taskInstance?.taskGroup?.id}" ></g:select>
138                                </td>
139                            </tr>
140                       
141                            <tr class="prop">
142                                <td valign="top" class="name">
143                                    <label for="taskType">Task Type:</label>
144                                </td>
145                                <td valign="top" class="value ${hasErrors(bean:taskInstance,field:'taskType','errors')}">
146                                    <g:select optionKey="id" from="${TaskType.list()}" name="taskType.id" value="${taskInstance?.taskType?.id}" ></g:select>
147                                </td>
148                            </tr>
149
150                            <tr class="prop">
151                                <td valign="top" class="name">
152                                    <label for="assignedPersons">Assigned Persons:</label>
153                                </td>
154                                <td valign="top" class="value ${hasErrors(bean:taskInstance,field:'assignedPersons','errors')}">
155                                   
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>
161
162                                </td>
163                            </tr>
164
165                        </tbody>
166                    </table>
167                </div>
168                <div class="buttons">
169                    <span class="button"><g:actionSubmit class="save" value="Update" /></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>
172                </div>
173            </g:form>
174        </div>
175    </body>
176</html>
Note: See TracBrowser for help on using the repository browser.