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

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

Domain change, remove scheduled attribute from Task.
Update views and logic to suite.

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