source: trunk/grails-app/views/taskDetailed/show.gsp @ 242

Last change on this file since 242 was 242, checked in by gav, 14 years ago

Re-implement AssignedGroups along side AssignedPersons manually taking the good stuff from r240.
As per revised ticket #37.

File size: 34.9 KB
Line 
1<html>
2    <head>
3        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
4        <meta name="layout" content="main" />
5        <title>Show Task #${taskInstance.id}</title>
6        <g:javascript src="overlayPane.js" />
7        <nav:resources override="true"/>
8        <resource:tabView skin="tabviewCustom" />
9    </head>
10    <body>
11        <div class="nav">
12            <nav:renderSubItems group="nav"/>
13        </div>
14        <div class="body">
15            <g:if test="${flash.message}">
16            <div class="message">${flash.message}</div>
17            </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>
23            <g:hasErrors bean="${taskInstance}">
24            <div class="errors">
25                <g:renderErrors bean="${taskInstance}" as="list" />
26            </div>
27            </g:hasErrors>
28
29            <richui:tabView id="tabView">
30
31                <richui:tabLabels>
32                    <richui:tabLabel selected="${showTab.task}" title="Task #${taskInstance.id}" />
33                    <richui:tabLabel selected="${showTab.procedure}" title="Procedure" />
34                    <richui:tabLabel selected="${showTab.recurrence}" title="Recurrence" />
35                    <richui:tabLabel selected="${showTab.inventory}" title="Inventory" />
36                    <richui:tabLabel selected="${showTab.subTasks}" title="Sub Tasks" />
37                </richui:tabLabels>
38
39                <richui:tabContents>
40
41<!-- Start Task tab -->
42                    <richui:tabContent>
43
44                        <div class="dialog">
45                            <table>
46                                <tbody>
47
48                                    <tr class="prop">
49                                        <td valign="top" class="name">Description:</td>
50
51                                        <td valign="top" class="value">${fieldValue(bean:taskInstance, field:'description')}</td>
52
53                                    </tr>
54
55                                    <tr class="prop">
56                                        <td valign="top" class="name">Comment:</td>
57
58                                        <td valign="top" class="value">${fieldValue(bean:taskInstance, field:'comment')}</td>
59
60                                    </tr>
61
62                                    <tr class="prop">
63                                        <td valign="top" class="name">Target Start:</td>
64
65                                        <td valign="top" class="value"><g:formatDate date="${taskInstance.targetStartDate}" format="EEE, dd-MMM-yyyy"/></td>
66
67                                    </tr>
68
69                                    <tr class="prop">
70                                        <td valign="top" class="name">Target Completion:</td>
71
72                                        <td valign="top" class="value"><g:formatDate date="${taskInstance.targetCompletionDate}" format="EEE, dd-MMM-yyyy"/></td>
73
74                                    </tr>
75
76                                    <tr class="prop">
77                                        <td valign="top" class="name">
78                                            <div id="modControlClosed">
79                                                <a href='' onclick="showElement('modifications');
80                                                                                    Element.hide('modControlClosed');
81                                                                                    Element.show('modControlOpened');
82                                                                                    return false">
83                                                    Modifications <img  src="${resource(dir:'images/skin',file:'bullet_toggle_plus.png')}" alt="Show" />
84                                                </a>
85                                            </div>
86                                            <div id="modControlOpened" style="display:none;">
87                                                <a href='' onclick="hideElement('modifications');
88                                                                                    Element.hide('modControlOpened');
89                                                                                    Element.show('modControlClosed');
90                                                                                    return false">
91                                                    Modifications <img  src="${resource(dir:'images/skin',file:'bullet_toggle_minus.png')}" alt="Show" />
92                                                </a>
93                                            </div>
94                                        </td>
95
96                                        <td  valign="top" style="text-align:left;" class="value">
97                                            <div id="modifications" style="display:none;">
98                                                <ul>
99                                                <g:each var="a" in="${taskModificationList}">
100                                                    <li>${a?.encodeAsHTML()}</li>
101                                                </g:each>
102                                                </ul>
103                                            </div>
104                                        </td>
105                                    </tr>
106
107
108                                    <tr class="prop">
109                                        <td valign="top" class="name">Lead Person:</td>
110
111                                        <td valign="top" class="value">${taskInstance?.leadPerson?.encodeAsHTML()}</td>
112
113                                    </tr>
114
115                                    <tr class="prop">
116                                        <td valign="top" class="name">Primary Asset:</td>
117
118                                        <td valign="top" class="value"><g:link controller="assetDetailed" action="show" id="${taskInstance?.primaryAsset?.id}">${taskInstance?.primaryAsset?.encodeAsHTML()}</g:link></td>
119
120                                    </tr>
121
122                                    <tr class="prop">
123                                        <td valign="top" class="name">Associated Assets:</td>
124
125                                        <td  valign="top" style="text-align:left;" class="value">
126                                            <ul>
127                                            <g:each var="a" in="${taskInstance.associatedAssets}">
128                                                <li>${a?.encodeAsHTML()}</li>
129                                            </g:each>
130                                            </ul>
131                                        </td>
132
133                                    </tr>
134
135                                    <tr class="prop">
136                                        <td valign="top" class="name">Priority:</td>
137
138                                        <td valign="top" class="value">${taskInstance?.taskPriority?.encodeAsHTML()}</td>
139
140                                    </tr>
141
142                                    <tr class="prop">
143                                        <td valign="top" class="name">Status:</td>
144
145                                        <td valign="top" class="value">${taskInstance?.taskStatus?.encodeAsHTML()}</td>
146
147                                    </tr>
148
149                                    <tr class="prop">
150                                        <td valign="top" class="name">Approved:</td>
151
152                                        <td valign="top" class="value">${fieldValue(bean:taskInstance, field:'approved')}</td>
153
154                                    </tr>
155
156                                    <tr class="prop">
157                                        <td valign="top" class="name">Scheduled:</td>
158
159                                        <td valign="top" class="value">${fieldValue(bean:taskInstance, field:'scheduled')}</td>
160
161                                    </tr>
162
163                                    <tr class="prop">
164                                        <td valign="top" class="name">Parent Task:</td>
165
166                                        <td valign="top" class="value"><g:link controller="taskDetailed" action="show" id="${taskInstance?.parentTask?.id}">${taskInstance?.parentTask?.encodeAsHTML()}</g:link></td>
167
168                                    </tr>
169
170                                    <tr class="prop">
171                                        <td valign="top" class="name">Group:</td>
172
173                                        <td valign="top" class="value">${taskInstance?.taskGroup?.encodeAsHTML()}</td>
174
175                                    </tr>
176
177                                    <tr class="prop">
178                                        <td valign="top" class="name">Type:</td>
179
180                                        <td valign="top" class="value">${taskInstance?.taskType?.encodeAsHTML()}</td>
181
182                                    </tr>
183
184                                    <tr class="prop">
185                                        <td valign="top" class="name">Assigned Groups:</td>
186
187                                        <td  valign="top" style="text-align:left;" class="value">
188                                            <ul>
189                                            <g:each var="a" in="${taskInstance.assignedGroups}">
190                                                <li><g:link controller="assignedGroupDetailed" action="edit" id="${a.id}">${a?.encodeAsHTML()}</g:link></li>
191                                            </g:each>
192                                            </ul>
193                                            <g:link controller="assignedGroupDetailed" params="['task.id':taskInstance?.id]" action="create">Add Assigned Group</g:link>
194                                        </td>
195
196                                    </tr>
197
198
199                                    <tr class="prop">
200                                        <td valign="top" class="name">Assigned Persons:</td>
201
202                                        <td  valign="top" style="text-align:left;" class="value">
203                                            <ul>
204                                            <g:each var="a" in="${taskInstance.assignedPersons}">
205                                                <li><g:link controller="assignedPersonDetailed" action="edit" id="${a.id}">${a?.encodeAsHTML()}</g:link></li>
206                                            </g:each>
207                                            </ul>
208                                            <g:link controller="assignedPersonDetailed" params="['task.id':taskInstance?.id]" action="create">Add Assigned Person</g:link>
209                                        </td>
210
211                                    </tr>
212
213                                </tbody>
214                            </table>
215                        </div>
216
217                        <div class="buttons">
218                            <g:form>
219                                <input type="hidden" name="id" value="${taskInstance?.id}" />
220
221                                <g:if test="${taskInstance.trash}" >
222                                    <span class="button"><g:actionSubmit class="restore" onclick="return confirm('Are you sure?');" value="Restore" /></span>
223                                </g:if>
224                                <g:else>
225
226                                    <g:if test="${taskInstance.taskStatus.id != 3}" >
227                                        <span class="button"><g:actionSubmit class="complete" value="Complete" /></span>
228
229                                        <g:if test="${taskInstance.approved}" >
230                                            <span class="button"><g:actionSubmit class="renegeApproval" value="Renege Approval" action="renegeApproval" /></span>
231                                        </g:if>
232                                        <g:else>
233                                            <span class="button"><g:actionSubmit class="approve" value="Approve" /></span>
234                                        </g:else>
235
236                                        <span class="button"><g:actionSubmit class="edit" value="Edit" /></span>
237                                        <span class="button"><g:actionSubmit class="trash" onclick="return confirm('Are you sure?');" value="Trash" /></span>
238
239                                    </g:if>
240                                    <g:else>
241                                        <span class="button"><g:actionSubmit class="reopen" value="Reopen" /></span>
242                                    </g:else>
243
244                                </g:else>
245                            </g:form>
246                        </div>
247
248                        <br />
249
250                        <g:if test="${entryFaultList.isEmpty()}">
251                            <h1>No Faults</h1>
252                            <br />
253                        </g:if>
254                        <g:else>
255                            <div class="list">
256                                <h1>Faults</h1>
257                                <table>
258                                    <thead>
259                                        <tr>
260                                            <th>Comment</th>
261                                            <th>Date Done</th>
262                                            <th>Duration</th>
263                                            <th>Entered By</th>
264                                            <th></th>
265                                        </tr>
266                                    </thead>
267                                    <tbody>
268                                        <g:each in="${entryFaultList}" status="i" var="entry">
269                                                <tr class="${(i % 2) == 0 ? 'clickableOdd' : 'clickableEven'}" onclick='window.location = "${request.getContextPath()}/entryDetailed/edit/${entry.id}"'/>
270
271                                                    <td style="width:65%">${entry.comment}</td>
272                                                    <td><g:formatDate date="${entry.dateDone}" format="EEE, dd-MMM-yyyy"/></td>
273                                                    <td>${entry.durationHour}:${entry.durationMinute}</td>
274                                                    <td>${entry.enteredBy}</td>
275
276                                                    <td>
277                                                        <g:link controller="entryDetailed" action="edit" id="${entry.id}">
278                                                            <img  src="${resource(dir:'images/skin',file:'database_edit.png')}" alt="Edit" />
279                                                        </g:link>
280                                                    </td>
281
282                                                </tr>
283                                        </g:each>
284                                    </tbody>
285                                </table>
286                            </div>
287                        </g:else>
288
289                        <div class="buttons">
290                            <g:form controller="entryDetailed">
291                                <g:hiddenField name="taskInstance.id" value="${taskInstance?.id}" />
292                                <g:hiddenField name="entryType.id" value="1" />
293                                <span class="button">
294                                    <g:actionSubmit value="Add Fault" action="create"  class="add"/>
295                                </span>
296                            </g:form>
297                        </div>
298
299                        <br />
300
301                        <g:if test="${entryWorkDoneList.isEmpty()}">
302                            <h1>No Work Done</h1>
303                            <br />
304                        </g:if>
305                        <g:else>
306                            <div class="list">
307                                <h1>Work Done</h1>
308                                <table>
309                                    <thead>
310                                        <tr>
311                                            <th>Comment</th>
312                                            <th>Date Done</th>
313                                            <th>Duration</th>
314                                            <th>Entered By</th>
315                                            <th></th>
316                                        </tr>
317                                    </thead>
318                                    <tbody>
319                                        <g:each in="${entryWorkDoneList}" status="i" var="entry">
320                                                <tr class="${(i % 2) == 0 ? 'clickableOdd' : 'clickableEven'}" onclick='window.location = "${request.getContextPath()}/entryDetailed/edit/${entry.id}"'/>
321
322                                                    <td width="65%">${entry.comment}</td>
323                                                    <td><g:formatDate date="${entry.dateDone}" format="EEE, dd-MMM-yyyy"/></td>
324                                                    <td>${entry.durationHour}:${entry.durationMinute}</td>
325                                                    <td>${entry.enteredBy}</td>
326
327                                                    <td>
328                                                        <g:link controller="entryDetailed" action="edit" id="${entry.id}">
329                                                            <img  src="${resource(dir:'images/skin',file:'database_edit.png')}" alt="Edit" />
330                                                        </g:link>
331                                                    </td>
332
333                                                </tr>
334                                        </g:each>
335                                    </tbody>
336                                </table>
337                            </div>
338                        </g:else>
339
340                        <div class="buttons">
341                            <g:form controller="entryDetailed">
342                                <g:hiddenField name="taskInstance.id" value="${taskInstance?.id}" />
343                                <g:hiddenField name="entryType.id" value="2" />
344                                <span class="button">
345                                    <g:actionSubmit value="Add Work Done" action="create"  class="add"/>
346                                </span>
347                            </g:form>
348                        </div>
349                    </richui:tabContent>
350<!-- End Task tab -->
351
352
353<!-- Start Task Procedure tab-->
354                    <richui:tabContent>
355                        <g:if test="${!taskProcedureExits}">
356                            <br />
357                            No Procedure linked.
358                            <br />
359                            <br />
360                            <g:form controller="taskProcedureDetailed" >
361                                <g:hiddenField name="taskInstance.id" value="${taskInstance?.id}" />
362
363                                <div class="buttons">
364                                    <span class="button">
365                                        <g:actionSubmit value="New" action="create" class="add"/>
366                                    </span>
367                                    <span class="button">
368                                        <g:actionSubmit value="Search" action="search" class="search"/>
369                                    </span>
370                                </div>
371
372                            </g:form>
373
374                        </g:if>
375                        <g:else>
376                            <div class="dialog">
377                                <table>
378                                    <tbody>
379
380                                        <tr class="prop">
381                                            <td valign="top" class="name">Procedure Id:</td>
382
383                                            <td valign="top" class="value">${fieldValue(bean:taskProcedureInstance, field:'id')}</td>
384
385                                        </tr>
386
387                                        <tr class="prop">
388                                            <td valign="top" class="name">Name:</td>
389
390                                            <td valign="top" class="value">${fieldValue(bean:taskProcedureInstance, field:'name')}</td>
391
392                                        </tr>
393
394                                        <tr class="prop">
395                                            <td valign="top" class="name">Description:</td>
396
397                                            <td valign="top" class="value">${fieldValue(bean:taskProcedureInstance, field:'description')}</td>
398
399                                        </tr>
400
401                                        <tr class="prop">
402                                            <td valign="top" class="name">Is Active:</td>
403
404                                            <td valign="top" class="value">${fieldValue(bean:taskProcedureInstance, field:'isActive')}</td>
405
406                                        </tr>
407
408                                    </tbody>
409                                </table>
410                            </div>
411                            <div class="buttons">
412                                <g:form controller="taskProcedureDetailed">
413                                    <input type="hidden" name="id" value="${taskProcedureInstance?.id}" />
414                                    <span class="button"><g:actionSubmit class="edit" value="Edit" /></span>
415                                </g:form>
416                            </div>
417
418                            <div class="list">
419                                <table>
420                                    <thead>
421                                        <tr>
422                                            <th>Step</th>
423                                            <th>Description</th>
424                                        </tr>
425                                    </thead>
426                                    <tbody>
427                                        <g:each in="${maintenanceActionList}" status="i" var="maintenanceAction">
428                                            <tr class="${(i % 2) == 0 ? 'odd' : 'even'}">
429
430                                                <td valign="top" class="name">
431                                                    ${maintenanceAction?.procedureStepNumber}
432                                                </td>
433
434                                                <td  valign="top" style="text-align:left;" class="value">
435                                                    ${maintenanceAction?.description}
436                                                </td>
437
438                                            </tr>
439                                        </g:each>
440
441                                    </tbody>
442                                </table>
443                            </div>
444
445                        </g:else>
446
447                    </richui:tabContent>
448<!-- End Task Procedure tab-->
449
450<!-- Start Task Recurrence tab -->
451                    <richui:tabContent>
452
453                        <g:if test="${!taskRecurringScheduleExits}">
454                            <br />
455                            No Recurring Schedule.
456                            <br />
457                            <br />
458                            <g:form controller="taskRecurringScheduleDetailed" >
459                                <g:hiddenField name="task.id" value="${taskInstance.id}" />
460
461                                <div class="buttons">
462                                    <span class="button">
463                                        <g:actionSubmit value="Create" action="create"  class="add"/>
464                                    </span>
465                                </div>
466
467                            </g:form>
468
469                        </g:if>
470                        <g:else>
471
472                        <div class="dialog">
473                                <table>
474                                    <tbody>
475                                        <tr class="prop">
476                                            <td valign="top" class="name">Recurring Schedule:</td>
477
478                                            <td valign="top" class="value">${taskRecurringScheduleInstance.encodeAsHTML()}</td>
479                                        </tr>
480
481                                        <tr class="prop">
482                                            <td valign="top" class="name">Next Generation Date:</td>
483
484                                            <td valign="top" class="value">
485                                                <g:formatDate date="${taskRecurringScheduleInstance.nextGenerationDate}" format="EEE, dd-MMM-yyyy"/>
486                                            </td>
487                                        </tr>
488
489                                        <tr class="prop">
490                                            <td valign="top" class="name">Generate Ahead:</td>
491
492                                            <td valign="top" class="value">
493                                                ${taskRecurringScheduleInstance?.generateAhead} ${Period.get(1).encodeAsHTML()}
494                                            </td>
495                                        </tr>
496
497                                        <tr class="prop">
498                                            <td valign="top" class="name">Next Target Start Date:</td>
499
500                                            <td valign="top" class="value">
501                                                <g:formatDate date="${taskRecurringScheduleInstance.nextTargetStartDate}" format="EEE, dd-MMM-yyyy"/>
502                                            </td>
503                                        </tr>
504
505                                        <tr class="prop">
506                                            <td valign="top" class="name">Task Duration:</td>
507
508                                            <td valign="top" class="value">
509                                                ${taskRecurringScheduleInstance?.taskDuration} ${taskRecurringScheduleInstance?.taskDurationPeriod}
510                                            </td>
511                                        </tr>
512
513                                        <tr class="prop">
514                                            <td valign="top" class="name">Next Target Completion Date:</td>
515
516                                            <td valign="top" class="value">
517                                                <g:formatDate date="${taskRecurringScheduleInstance.nextTargetCompletionDate}" format="EEE, dd-MMM-yyyy"/>
518                                            </td>
519                                        </tr>
520
521                                        <tr class="prop">
522                                            <td valign="top" class="name">Enabled:</td>
523
524                                            <td valign="top" class="value">${fieldValue(bean:taskRecurringScheduleInstance, field:'enabled')}</td>
525                                        </tr>
526
527                                    </tbody>
528                                </table>
529                            </div>
530                            <div class="buttons">
531                                <g:form controller="taskRecurringScheduleDetailed">
532                                    <input type="hidden" name="id" value="${taskRecurringScheduleInstance?.id}" />
533                                    <span class="button"><g:actionSubmit class="edit" value="Edit" /></span>
534                                    <span class="button"><g:actionSubmit class="go" value="Show" /></span>
535                                </g:form>
536                            </div>
537
538                        </g:else>
539                    </richui:tabContent>
540<!-- End Task Recurrence tab -->
541
542<!-- Start Inventory tab -->
543                    <richui:tabContent>
544
545                        <g:if test="${inventoryMovementList.isEmpty()}">
546                            <br />
547                            No Inventory Movements.
548                            <br />
549                            <br />
550                        </g:if>
551                        <g:else>
552                            <div class="list">
553                                <table>
554                                    <thead>
555                                        <tr>
556                                            <th>Inventory Item</th>
557                                            <th>Quantity</th>
558                                            <th>Movement Type</th>
559                                            <th>Date</th>
560                                            <th></th>
561                                        </tr>
562                                    </thead>
563                                    <tbody>
564                                        <g:each in="${inventoryMovementList}" status="i" var="inventoryMovementInstance">
565                                            <tr class="${(i % 2) == 0 ? 'clickableOdd' : 'clickableEven'}" onclick='window.location = "${request.getContextPath()}/inventoryMovementDetailed/show/${inventoryMovementInstance.id}"'/>
566
567                                                <td>${fieldValue(bean:inventoryMovementInstance, field:'inventoryItem')}</td>
568                                                <td>${fieldValue(bean:inventoryMovementInstance, field:'quantity')}</td>
569                                                <td>${fieldValue(bean:inventoryMovementInstance, field:'inventoryMovementType')}</td>
570                                                <td><g:formatDate date="${inventoryMovementInstance.date}" format="EEE, dd-MMM-yyyy"/></td>
571                                                <td>
572                                                    <g:link controller="inventoryMovementDetailed" action="show" id="${inventoryMovementInstance.id}">
573                                                        <img  src="${resource(dir:'images/skin',file:'database_go.png')}" alt="Show" />
574                                                    </g:link>
575                                                </td>
576
577                                            </tr>
578                                        </g:each>
579                                    </tbody>
580                                </table>
581                            </div>
582                        </g:else>
583
584                        <g:form controller="inventoryItemDetailed" >
585                            <g:hiddenField name="task.id" value="${taskInstance?.id}" />
586                            <div class="buttons">
587                                <g:if test="${!inventoryMovementList.isEmpty()}">
588                                    Results: ${inventoryMovementList.size()}
589                                    <br />
590                                </g:if>
591                                <span class="button">
592                                    <g:actionSubmit action="findInventoryItemForMovement" class="add" value="Add"/>
593                                </span>
594                            </div>
595                        </g:form>
596
597                    </richui:tabContent>
598<!-- End Inventory tab -->
599
600<!-- Start Sub Task tab -->
601                    <richui:tabContent>
602                        <g:if test="${subTaskInstanceTotal >= 1}">
603                            <div class="list">
604                                <table>
605                                    <thead>
606                                        <tr>
607
608                                            <th>Id</th>
609
610                                            <th>Target Start Date</th>
611
612                                            <th>Description</th>
613
614                                            <th>Lead Person</th>
615
616                                            <th>Task Priority</th>
617
618                                            <th>Task Status</th>
619
620                                            <th></th>
621
622                                        </tr>
623                                    </thead>
624                                    <tbody>
625                                    <g:each in="${subTaskInstanceList}" status="i" var="subTaskInstance">
626                                    <tr class="${(i % 2) == 0 ? 'clickableOdd' : 'clickableEven'}" onclick='window.location = "${request.getContextPath()}/taskDetailed/show/${subTaskInstance.id}"'/>
627
628                                            <td>${fieldValue(bean:subTaskInstance, field:'id')}</td>
629
630                                            <td><g:formatDate date="${subTaskInstance.targetStartDate}" format="EEE, dd-MMM-yyyy"/></td>
631
632                                            <td>${subTaskInstance.description}</td>
633
634
635                                            <td>${subTaskInstance.leadPerson}</td>
636
637                                            <td>${subTaskInstance.taskPriority}</td>
638
639                                            <td>${subTaskInstance.taskStatus}</td>
640
641                                            <td>
642                                                <g:link action="show" id="${subTaskInstance.id}">
643                                                    <img  src="${resource(dir:'images/skin',file:'database_go.png')}" alt="Show" />
644                                                </g:link>
645                                            </td>
646
647                                        </tr>
648                                    </g:each>
649                                    </tbody>
650                                </table>
651                            </div>
652
653                            <div class="buttons">
654                                <g:form>
655                                    <g:hiddenField name="id" value="${taskInstance?.id}" />
656                                    <g:if test="${subTaskInstanceTotal > subTaskInstanceMax}">
657                                        Showing ${subTaskInstanceMax} of ${subTaskInstanceTotal}
658                                        <br />
659                                    </g:if>
660                                    <g:else>
661                                        Total ${subTaskInstanceTotal}
662                                        <br />
663                                    </g:else>
664                                    <span class="button"><g:actionSubmit action="listSubTasks" class="table" value="List" /></span>
665                                    <span class="button"><g:actionSubmit action="createSubTask" class="add" value="Create" /></span>
666                                </g:form>
667                            </div>
668
669                        </g:if>
670                        <g:else>
671                            <br />
672                            No Sub Tasks.
673                            <br />
674                            <br />
675
676                            <div class="buttons">
677                                <g:form>
678                                    <g:hiddenField name="id" value="${taskInstance?.id}" />
679                                    <span class="button"><g:actionSubmit action="createSubTask" class="add" value="Create" /></span>
680                                </g:form>
681                            </div>
682                        </g:else>
683
684                    </richui:tabContent>
685<!-- End Sub Task tab -->
686
687                </richui:tabContents>
688            </richui:tabView>
689
690        </div>
691    </body>
692</html>
Note: See TracBrowser for help on using the repository browser.