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

Last change on this file since 209 was 204, checked in by gav, 15 years ago

Refactor taskService update() and enable optimistic version checking.

File size: 10.2 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 #${taskInstance.id}</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                <input type="hidden" name="version" value="${taskInstance?.version}" />
27                <div class="dialog">
28                    <table>
29                        <tbody>
30
31                            <tr class="prop">
32                                <td valign="top" class="name">
33                                    <label for="id">Id:</label>
34                                </td>
35                                <td valign="top" class="value">${fieldValue(bean:taskInstance, field:'id')}</td>
36                            </tr>
37
38                            <tr class="prop">
39                                <td valign="top" class="name">
40                                    <label for="description">Description:</label>
41                                </td>
42                                <td valign="top" class="value ${hasErrors(bean:taskInstance,field:'description','errors')}">
43                                    <input type="text" style="width:450px" maxlength="75" id="description" name="description" value="${fieldValue(bean:taskInstance,field:'description')}"/>
44                                </td>
45                            </tr>
46
47                            <tr class="prop">
48                                <td valign="top" class="name">
49                                    <label for="comment">Comment:</label>
50                                </td>
51                                <td valign="top" class="value ${hasErrors(bean:taskInstance,field:'comment','errors')}">
52                                    <textarea style="width:450px" rows="5" cols="40" name="comment">${fieldValue(bean:taskInstance, field:'comment')}</textarea>
53                                </td>
54                            </tr>
55                       
56                            <tr class="prop">
57                                <td valign="top" class="name">
58                                    <label for="targetStartDate">Target Start Date:</label>
59                                </td>
60                                <td valign="top" class="value ${hasErrors(bean:taskInstance,field:'targetStartDate','errors')}">
61                                    <richui:dateChooser name="targetStartDate" format="dd-MM-yyyy" value="${taskInstance?.targetStartDate}" />
62                                </td>
63                            </tr>
64
65                            <tr class="prop">
66                                <td valign="top" class="name">
67                                    <label for="targetCompletionDate">Target Completion Date:</label>
68                                </td>
69                                <td valign="top" class="value ${hasErrors(bean:taskInstance,field:'targetCompletionDate','errors')}">
70                                    <richui:dateChooser name="targetCompletionDate" format="dd-MM-yyyy" value="${taskInstance?.targetCompletionDate}" />
71                                </td>
72                            </tr>
73                       
74                            <tr class="prop">
75                                <td valign="top" class="name">
76                                    <label for="leadPerson">Lead Person:</label>
77                                </td>
78                                <td valign="top" class="value ${hasErrors(bean:taskInstance,field:'leadPerson','errors')}">
79                                    <g:select optionKey="id" from="${Person.list()}" name="leadPerson.id" value="${taskInstance?.leadPerson?.id}" ></g:select>
80                                </td>
81                            </tr>
82                       
83                            <tr class="prop">
84                                <td valign="top" class="name">
85                                    <label for="primaryAsset">Primary Asset:</label>
86                                </td>
87                                <td valign="top" class="value ${hasErrors(bean:taskInstance,field:'primaryAsset','errors')}">
88                                    <g:select optionKey="id" from="${Asset.list()}" name="primaryAsset.id" value="${taskInstance?.primaryAsset?.id}"  noSelection="['null':'--None--']"></g:select>
89                                    <g:helpBalloon code="task.primaryAsset" />
90                                </td>
91                            </tr>
92
93                            <tr class="prop">
94                                <td valign="top" class="name">
95                                    <label for="associatedAssets">Associated Assets:</label>
96                                </td>
97                                <td valign="top" class="value ${hasErrors(bean:taskInstance,field:'associatedAssets','errors')}">
98                                    <g:select id="associatedAssets" name="associatedAssets"
99                                                    from="${Asset.list()}"
100                                                    optionKey="id" size="5" multiple="yes"
101                                                    value="${taskInstance?.associatedAssets.id}"  noSelection="['':'--None--']"/>
102                                    <g:helpBalloon  class="helpballoon" code="task.associatedAssets" />
103                                </td>
104                            </tr>
105                       
106                            <tr class="prop">
107                                <td valign="top" class="name">
108                                    <label for="taskPriority">Task Priority:</label>
109                                </td>
110                                <td valign="top" class="value ${hasErrors(bean:taskInstance,field:'taskPriority','errors')}">
111                                    <g:select optionKey="id" from="${TaskPriority.list()}" name="taskPriority.id" value="${taskInstance?.taskPriority?.id}" ></g:select>
112                                </td>
113                            </tr>
114                       
115                            <tr class="prop">
116                                <td valign="top" class="name">
117                                    <label for="scheduled">Scheduled:</label>
118                                </td>
119                                <td valign="top" class="value ${hasErrors(bean:taskInstance,field:'scheduled','errors')}">
120                                    <g:checkBox name="scheduled" value="${taskInstance?.scheduled}" ></g:checkBox>
121                                </td>
122                            </tr>
123
124                            <tr class="prop">
125                                <td valign="top" class="name">
126                                    <label for="parentTask">Parent Task:</label>
127                                </td>
128                                <td valign="top" class="value ${hasErrors(bean:taskInstance,field:'parentTask','errors')}">
129                                    <g:select optionKey="id" from="${possibleParentList}" name="parentTask.id" value="${taskInstance?.parentTask?.id}" noSelection="['null':'--None--']"></g:select>
130                                </td>
131                            </tr>
132                       
133                            <tr class="prop">
134                                <td valign="top" class="name">
135                                    <label for="taskGroup">Task Group:</label>
136                                </td>
137                                <td valign="top" class="value ${hasErrors(bean:taskInstance,field:'taskGroup','errors')}">
138                                    <g:select optionKey="id" from="${TaskGroup.list()}" name="taskGroup.id" value="${taskInstance?.taskGroup?.id}" ></g:select>
139                                </td>
140                            </tr>
141                       
142                            <tr class="prop">
143                                <td valign="top" class="name">
144                                    <label for="taskType">Task Type:</label>
145                                </td>
146                                <td valign="top" class="value ${hasErrors(bean:taskInstance,field:'taskType','errors')}">
147                                    <g:select optionKey="id" from="${TaskType.list()}" name="taskType.id" value="${taskInstance?.taskType?.id}" ></g:select>
148                                </td>
149                            </tr>
150
151                            <tr class="prop">
152                                <td valign="top" class="name">
153                                    <label for="assignedPersons">Assigned Persons:</label>
154                                </td>
155                                <td valign="top" class="value ${hasErrors(bean:taskInstance,field:'assignedPersons','errors')}">
156                                   
157                                <ul>
158                                <g:each var="a" in="${taskInstance?.assignedPersons?}">
159                                    <li><g:link controller="assignedPersonDetailed" action="edit" id="${a.id}">${a?.encodeAsHTML()}</g:link></li>
160                                </g:each>
161                                </ul>
162
163                                </td>
164                            </tr>
165
166                        </tbody>
167                    </table>
168                </div>
169                <div class="buttons">
170                    <span class="button"><g:actionSubmit class="save" value="Update" /></span>
171                    <span class="button"><g:actionSubmit class="cancel" value="Cancel" action="show"/></span>
172                    <span class="button"><g:actionSubmit class="trash" onclick="return confirm('Are you sure?');" value="Trash" /></span>
173                </div>
174            </g:form>
175        </div>
176    </body>
177</html>
Note: See TracBrowser for help on using the repository browser.