Changeset 134 for trunk


Ignore:
Timestamp:
May 13, 2009, 12:51:15 PM (15 years ago)
Author:
gav
Message:

Add icons from famfamfam silk icons, add acknowledgement page to suite.
Adjust AssignedPerson? controller so that a task.id is required to create.
Move Add AssignedPerson? link up to TaskDetailed? show page.
Further improvements to taskDetailed show tabs.
Adjust TaskProcedureDetailed? controller to allow linking a Procedure to a task during creation.
Adjust TaskRecurringSchedule? to a one-to-one cascading relationship.
Modify CSS class duration to time and added icons.
Regenerate some pages.

Location:
trunk
Files:
5 added
2 deleted
24 edited

Legend:

Unmodified
Added
Removed
  • trunk/grails-app/conf/BootStrap.groovy

    r131 r134  
    416416                                                                                                    recurEvery: 1,
    417417                                                                                                    period: Period.get(1),
    418                                                                                                     task: Task.get(1),
    419418                                                                                                    nextDueDate: new Date())
    420419        BootStrapSaveAndTest(taskRecurringScheduleInstance)
     
    424423                                                                                                    recurEvery: 1,
    425424                                                                                                    period: Period.get(1),
    426                                                                                                     task: Task.get(2),
    427425                                                                                                    nextDueDate: new Date())
    428426        BootStrapSaveAndTest(taskRecurringScheduleInstance)
  • trunk/grails-app/controllers/AppCoreController.groovy

    r127 r134  
    2323
    2424    def options = {
     25    }
     26
     27    def acknowledgements = {
    2528    }
    2629
  • trunk/grails-app/controllers/AssignedPersonDetailedController.groovy

    r97 r134  
    8282
    8383    def create = {
     84                if(!params.task?.id) {
     85                        flash.message = "Please select a task and then 'Add Assigned Person'"
     86                        redirect(controller: "taskDetailed", action: list)
     87                }
     88                else {
    8489        def assignedPersonInstance = new AssignedPerson()
    8590        assignedPersonInstance.properties = params
    8691        return ['assignedPersonInstance':assignedPersonInstance]
     92                }
    8793    }
    8894
  • trunk/grails-app/controllers/TaskDetailedController.groovy

    r133 r134  
    2020    }
    2121
    22 //     def show = {
    23 //         def taskInstance = Task.get( params.id )
    24 //
    25 //         if(!taskInstance) {
    26 //             flash.message = "Task not found with id ${params.id}"
    27 //             redirect(action:list)
    28 //         }
    29 //         else {
    30 //             def taskProcedureInstance = TaskProcedure.get(taskInstance?.taskProcedure?.id)
    31 //             return [ taskInstance : taskInstance,  taskProcedureInstance: taskProcedureInstance]
    32 //
    33 //         }
    34 //     }
    35 
    3622    def show = {
    3723        def taskInstance = Task.get( params.id )
     
    4228        }
    4329        else {
     30                        params.max = 10
     31                        params.order = "desc"
     32                        params.sort = "id"
     33
     34                        def subTaskInstanceList = Task.findAllByParentTask(taskInstance, params)
     35                        def subTaskInstanceTotal = Task.countByParentTask(taskInstance)                                 
     36            def showTaskTab = new String("true")
     37
    4438            def taskProcedureInstance = TaskProcedure.get(taskInstance.taskProcedure?.id)
    4539            def taskProcedureExits = new Boolean("true")
    46             def showTaskTab = new String("true")
    47 
    4840            if(!taskProcedureInstance) {
    4941                taskProcedureExits = false
    5042            }
     43//                      else {
     44                                params.order = "asc"
     45                                params.sort = "procedureStepNumber"
     46                                def maintenanceActionList = MaintenanceAction.findAllByTaskProcedure(taskProcedureInstance, params)
     47//                      }
     48                                               
     49            def taskRecurringScheduleInstance = TaskRecurringSchedule.get(taskInstance.taskRecurringSchedule?.id)
     50            def taskRecurringScheduleExits= new Boolean("true")
     51                        if(!taskRecurringScheduleInstance) {
     52                taskRecurringScheduleExits = false
     53            }
     54                       
    5155            return [ taskInstance : taskInstance,
    5256                            taskProcedureInstance: taskProcedureInstance,
    5357                            taskProcedureExits: taskProcedureExits,
    54                             showTaskTab: showTaskTab]
     58                            showTaskTab: showTaskTab,
     59                                                        subTaskInstanceList: subTaskInstanceList,
     60                                                        subTaskInstanceTotal: subTaskInstanceTotal,
     61                                                        subTaskInstanceMax: params.max,
     62                                                        maintenanceActionList: maintenanceActionList,
     63                                                        taskRecurringScheduleInstance: taskRecurringScheduleInstance,
     64                                                        taskRecurringScheduleExits: taskRecurringScheduleExits]
    5565        }
    5666    }
     
    136146        }
    137147    }
    138 
    139     //Generate a new TaskProcedure for a taskInstance.
    140     def generateProcedure = {
    141         def taskProcedureInstance = new TaskProcedure()
    142         taskProcedureInstance.properties = params
    143 
    144         def taskInstance = Task.get(params.taskInstance.id)
    145         def taskProcedureExits = new Boolean("true")
    146         def showProcedureTab = new String("true")
    147 
    148         if(!taskProcedureInstance.hasErrors() && taskProcedureInstance.save()) {
    149             taskProcedureInstance.addToTasks(taskInstance)
    150             flash.message = "Procedure created, you can now add steps to the procedure"
    151 //             redirect(action:show, id:params.taskInstance.id)
     148       
     149        def listSubTasks = {
     150                def parentTaskInstance = Task.get(params.id)
     151                               
     152        if(!parentTaskInstance) {
     153            flash.message = "Task not found with id ${params.id}"
     154            redirect(action:list)
    152155        }
    153156        else {
    154             taskProcedureExits = false
    155         }
    156 
    157         render(view:'show',model:[ taskInstance : taskInstance, 
    158                                                         taskProcedureInstance: taskProcedureInstance,
    159                                                         taskProcedureExits: taskProcedureExits,
    160                                                         showProcedureTab: showProcedureTab])
    161     }
    162 
    163     def findProcedure = {
    164         redirect(controller:"taskProcedureDetailed", action:"list", id:params.taskInstance.id)
    165     }
     157                params.max = Math.min( params.max ? params.max.toInteger() : 10,  100)
     158                def subTaskInstanceList = Task.findAllByParentTask(parentTaskInstance, params)
     159                def subTaskInstanceTotal = Task.countByParentTask(parentTaskInstance)
     160                               
     161        [ taskInstanceList: subTaskInstanceList,
     162                        taskInstanceTotal:  subTaskInstanceTotal,
     163                        parentTaskInstance: parentTaskInstance]
     164                }
     165        }
    166166       
    167167}
  • trunk/grails-app/controllers/TaskProcedureDetailedController.groovy

    r133 r134  
    1111        params.max = Math.min( params.max ? params.max.toInteger() : 10,  100)
    1212        [ taskProcedureInstanceList: TaskProcedure.list( params ), taskProcedureInstanceTotal: TaskProcedure.count() ]
     13    }
     14       
     15    def search = {
     16        redirect(action:list)
    1317    }
    1418
     
    8286
    8387    def create = {
     88                def taskInstance = Task.get(params.taskInstance?.id)
     89               
    8490        def taskProcedureInstance = new TaskProcedure()
    8591        taskProcedureInstance.properties = params
    86         return ['taskProcedureInstance':taskProcedureInstance]
     92        return ['taskProcedureInstance':taskProcedureInstance,
     93                                                taskInstance: taskInstance]
    8794    }
    8895
    8996    def save = {
    9097        def taskProcedureInstance = new TaskProcedure(params)
     98                def taskInstance = Task.get(params.taskInstance.id)
     99                               
    91100        if(!taskProcedureInstance.hasErrors() && taskProcedureInstance.save()) {
     101                        taskProcedureInstance.addToTasks(taskInstance)
    92102            flash.message = "TaskProcedure ${taskProcedureInstance.id} created"
    93103            redirect(action:show,id:taskProcedureInstance.id)
  • trunk/grails-app/controllers/TaskRecurringScheduleDetailedController.groovy

    r131 r134  
    8080        }
    8181    }
    82 
     82       
    8383    def create = {
    84         def taskRecurringScheduleInstance = new TaskRecurringSchedule()
    85         taskRecurringScheduleInstance.properties = params
    86         return ['taskRecurringScheduleInstance':taskRecurringScheduleInstance]
     84        try {
     85            def taskInstance = Task.get(params.taskInstance.id)
     86                        def taskRecurringScheduleInstance = new TaskRecurringSchedule()
     87            taskRecurringScheduleInstance.task = taskInstance
     88            return [taskRecurringScheduleInstance: taskRecurringScheduleInstance]
     89        }
     90        catch(Exception e) {
     91            flash.message = "Please select a task, then Create a Recurring Schedule for it.'"
     92            redirect(controller:"taskDetailed", action:"list")
     93        }
    8794    }
    8895
    8996    def save = {
    9097        def taskRecurringScheduleInstance = new TaskRecurringSchedule(params)
    91         if(!taskRecurringScheduleInstance.hasErrors() && taskRecurringScheduleInstance.save()) {
    92             flash.message = "TaskRecurringSchedule ${taskRecurringScheduleInstance.id} created"
    93             redirect(action:show,id:taskRecurringScheduleInstance.id)
    94         }
    95         else {
    96             render(view:'create',model:[taskRecurringScheduleInstance:taskRecurringScheduleInstance])
    97         }
     98                def taskInstance = Task.get(params.task.id)
     99               
     100                if(!taskRecurringScheduleInstance.hasErrors() && taskRecurringScheduleInstance.save()) {
     101                       
     102                        taskInstance.taskRecurringSchedule = taskRecurringScheduleInstance
     103                                       
     104                        if(taskInstance.save()) {
     105                                flash.message = "TaskRecurringSchedule ${taskRecurringScheduleInstance.id} created"
     106                                redirect(action:show,id:taskRecurringScheduleInstance.id)
     107                        }
     108                        else {
     109                                flash.message = "Task could not be saved and therefore the Recurring Schedule has been disgarded, cause unknown."                               
     110                                render(view:'create',model:[taskRecurringScheduleInstance:taskRecurringScheduleInstance])
     111                        }
     112                }
     113                else {
     114                        render(view:'create',model:[taskRecurringScheduleInstance:taskRecurringScheduleInstance])
     115                }
     116
    98117    }
     118       
    99119}
  • trunk/grails-app/domain/TaskRecurringSchedule.groovy

    r131 r134  
    11class TaskRecurringSchedule {
    22
    3     Task task
    43    Task lastGeneratedSubTask
    54    Period period
     
    1312//     static hasMany = []
    1413
    15     static belongsTo = [Task]
     14    static belongsTo = [task: Task]
    1615
    1716    static constraints = {
  • trunk/grails-app/views/appCore/options.gsp

    r127 r134  
    2020            <br />
    2121            <a href="${createLink(action:'changeSessionTimeout')}">Change Session Timeout</a>
     22            <br />
     23            <br />
     24            <a href="${createLink(action:'acknowledgements')}">Acknowledgements</a>
    2225            </div>
    2326        </div>
  • trunk/grails-app/views/assignedPersonDetailed/create.gsp

    r96 r134  
    2323            </g:hasErrors>
    2424            <g:form action="save" method="post" >
     25                <input type="hidden"  name="task.id" value="${assignedPersonInstance?.task?.id}" />
    2526                <div class="dialog">
    2627                    <table>
     
    3233                                </td>
    3334                                <td valign="top" class="value ${hasErrors(bean:assignedPersonInstance,field:'task','errors')}">
    34                                     <g:select optionKey="id" from="${Task.list()}" name="task.id" value="${assignedPersonInstance?.task?.id}" ></g:select>
     35                                    ${assignedPersonInstance?.task}
    3536                                </td>
    3637                            </tr>
  • trunk/grails-app/views/entryDetailed/create.gsp

    r98 r134  
    6161
    6262                                <td valign="top" class="value">
    63                                     <input class="duration ${hasErrors(bean:entryInstance,field:'durationHour','errors')}"
     63                                    <input class="time ${hasErrors(bean:entryInstance,field:'durationHour','errors')}"
    6464                                        type="text" id="durationHour" name="durationHour"
    6565                                        value="${fieldValue(bean:entryInstance,field:'durationHour')}" />
    6666                                    :
    67                                     <input class="duration ${hasErrors(bean:entryInstance,field:'durationMinute','errors')}"
     67                                    <input class="time ${hasErrors(bean:entryInstance,field:'durationMinute','errors')}"
    6868                                        type="text" id="durationMinute" name="durationMinute"
    6969                                        value="${fieldValue(bean:entryInstance,field:'durationMinute')}" />
  • trunk/grails-app/views/maintenanceActionDetailed/show.gsp

    r133 r134  
    3333                            <td valign="top" class="name">Maintenance Policy:</td>
    3434                           
    35                             <td valign="top" class="value"><g:link controller="maintenancePolicy" action="show" id="${maintenanceActionInstance?.maintenancePolicy?.id}">${maintenanceActionInstance?.maintenancePolicy?.encodeAsHTML()}</g:link></td>
     35                            <td valign="top" class="value"><g:link controller="maintenancePolicyDetailed" action="show" id="${maintenanceActionInstance?.maintenancePolicy?.id}">${maintenanceActionInstance?.maintenancePolicy?.encodeAsHTML()}</g:link></td>
    3636                           
    3737                        </tr>
     
    4040                            <td valign="top" class="name">System Section:</td>
    4141                           
    42                             <td valign="top" class="value"><g:link controller="systemSection" action="show" id="${maintenanceActionInstance?.systemSection?.id}">${maintenanceActionInstance?.systemSection?.encodeAsHTML()}</g:link></td>
     42                            <td valign="top" class="value"><g:link controller="systemSectionDetailed" action="show" id="${maintenanceActionInstance?.systemSection?.id}">${maintenanceActionInstance?.systemSection?.encodeAsHTML()}</g:link></td>
    4343                           
    4444                        </tr>
     
    4747                            <td valign="top" class="name">Asset:</td>
    4848                           
    49                             <td valign="top" class="value"><g:link controller="asset" action="show" id="${maintenanceActionInstance?.asset?.id}">${maintenanceActionInstance?.asset?.encodeAsHTML()}</g:link></td>
     49                            <td valign="top" class="value"><g:link controller="assetDetailed" action="show" id="${maintenanceActionInstance?.asset?.id}">${maintenanceActionInstance?.asset?.encodeAsHTML()}</g:link></td>
    5050                           
    5151                        </tr>
     
    5454                            <td valign="top" class="name">Asset Type:</td>
    5555                           
    56                             <td valign="top" class="value"><g:link controller="assetType" action="show" id="${maintenanceActionInstance?.assetType?.id}">${maintenanceActionInstance?.assetType?.encodeAsHTML()}</g:link></td>
     56                            <td valign="top" class="value"><g:link controller="assetTypeDetailed" action="show" id="${maintenanceActionInstance?.assetType?.id}">${maintenanceActionInstance?.assetType?.encodeAsHTML()}</g:link></td>
    5757                           
    5858                        </tr>
     
    6161                            <td valign="top" class="name">Assembly:</td>
    6262                           
    63                             <td valign="top" class="value"><g:link controller="assembly" action="show" id="${maintenanceActionInstance?.assembly?.id}">${maintenanceActionInstance?.assembly?.encodeAsHTML()}</g:link></td>
     63                            <td valign="top" class="value"><g:link controller="assemblyDetailed" action="show" id="${maintenanceActionInstance?.assembly?.id}">${maintenanceActionInstance?.assembly?.encodeAsHTML()}</g:link></td>
    6464                           
    6565                        </tr>
     
    6868                            <td valign="top" class="name">Sub Assembly:</td>
    6969                           
    70                             <td valign="top" class="value"><g:link controller="subAssembly" action="show" id="${maintenanceActionInstance?.subAssembly?.id}">${maintenanceActionInstance?.subAssembly?.encodeAsHTML()}</g:link></td>
     70                            <td valign="top" class="value"><g:link controller="subAssemblyDetailed" action="show" id="${maintenanceActionInstance?.subAssembly?.id}">${maintenanceActionInstance?.subAssembly?.encodeAsHTML()}</g:link></td>
    7171                           
    7272                        </tr>
     
    7575                            <td valign="top" class="name">Component Item:</td>
    7676                           
    77                             <td valign="top" class="value"><g:link controller="componentItem" action="show" id="${maintenanceActionInstance?.componentItem?.id}">${maintenanceActionInstance?.componentItem?.encodeAsHTML()}</g:link></td>
     77                            <td valign="top" class="value"><g:link controller="componentItemDetailed" action="show" id="${maintenanceActionInstance?.componentItem?.id}">${maintenanceActionInstance?.componentItem?.encodeAsHTML()}</g:link></td>
    7878                           
    7979                        </tr>
     
    110110                            <td valign="top" class="name">Task Procedure:</td>
    111111                           
    112                             <td valign="top" class="value"><g:link controller="taskProcedure" action="show" id="${maintenanceActionInstance?.taskProcedure?.id}">${maintenanceActionInstance?.taskProcedure?.encodeAsHTML()}</g:link></td>
     112                            <td valign="top" class="value"><g:link controller="taskProcedureDetailed" action="show" id="${maintenanceActionInstance?.taskProcedure?.id}">${maintenanceActionInstance?.taskProcedure?.encodeAsHTML()}</g:link></td>
    113113                           
    114114                        </tr>
  • trunk/grails-app/views/period/edit.gsp

    r122 r134  
    5050                            <tr class="prop">
    5151                                <td valign="top" class="name">
    52                                     <label for="recurringSchedules">Recurring Schedules:</label>
     52                                    <label for="taskRecurringSchedules">Task Recurring Schedules:</label>
    5353                                </td>
    54                                 <td valign="top" class="value ${hasErrors(bean:periodInstance,field:'recurringSchedules','errors')}">
     54                                <td valign="top" class="value ${hasErrors(bean:periodInstance,field:'taskRecurringSchedules','errors')}">
    5555                                   
    5656<ul>
    57 <g:each var="r" in="${periodInstance?.recurringSchedules?}">
    58     <li><g:link controller="recurringSchedule" action="show" id="${r.id}">${r?.encodeAsHTML()}</g:link></li>
     57<g:each var="t" in="${periodInstance?.taskRecurringSchedules?}">
     58    <li><g:link controller="taskRecurringSchedule" action="show" id="${t.id}">${t?.encodeAsHTML()}</g:link></li>
    5959</g:each>
    6060</ul>
    61 <g:link controller="recurringSchedule" params="['period.id':periodInstance?.id]" action="create">Add RecurringSchedule</g:link>
     61<g:link controller="taskRecurringSchedule" params="['period.id':periodInstance?.id]" action="create">Add TaskRecurringSchedule</g:link>
    6262
    6363                                </td>
  • trunk/grails-app/views/period/show.gsp

    r122 r134  
    4545                   
    4646                        <tr class="prop">
    47                             <td valign="top" class="name">Recurring Schedules:</td>
     47                            <td valign="top" class="name">Task Recurring Schedules:</td>
    4848                           
    4949                            <td  valign="top" style="text-align:left;" class="value">
    5050                                <ul>
    51                                 <g:each var="r" in="${periodInstance.recurringSchedules}">
    52                                     <li><g:link controller="recurringSchedule" action="show" id="${r.id}">${r?.encodeAsHTML()}</g:link></li>
     51                                <g:each var="t" in="${periodInstance.taskRecurringSchedules}">
     52                                    <li><g:link controller="taskRecurringSchedule" action="show" id="${t.id}">${t?.encodeAsHTML()}</g:link></li>
    5353                                </g:each>
    5454                                </ul>
  • trunk/grails-app/views/taskDetailed/create.gsp

    r106 r134  
    3232                                </td>
    3333                                <td valign="top" class="value ${hasErrors(bean:taskInstance,field:'description','errors')}">
    34                                     <input type="text"  style="width:450px" maxlength="75" id="description" name="description" value="${fieldValue(bean:taskInstance,field:'description')}"/>
     34                                    <input type="text"  class="description" maxlength="75" id="description" name="description" value="${fieldValue(bean:taskInstance,field:'description')}"/>
    3535                                    <g:helpBalloon class="helpballoon" code="task.description" />
    3636                                </td>
     
    4242                                </td>
    4343                                <td valign="top" class="value ${hasErrors(bean:taskInstance,field:'comment','errors')}">
    44                                     <textarea  style="width:450px" rows="5" cols="40" name="comment">${fieldValue(bean:taskInstance, field:'comment')}</textarea>
     44                                    <textarea  rows="5" cols="40" name="comment">${fieldValue(bean:taskInstance, field:'comment')}</textarea>
    4545                                    <g:helpBalloon class="helpballoon" code="task.comment" />
    4646                                </td>
  • trunk/grails-app/views/taskDetailed/edit.gsp

    r96 r134  
    159159                                <td valign="top" class="value ${hasErrors(bean:taskInstance,field:'assignedPersons','errors')}">
    160160                                   
    161 <ul>
    162 <g:each var="a" in="${taskInstance?.assignedPersons?}">
    163     <li><g:link controller="assignedPersonDetailed" action="show" id="${a.id}">${a?.encodeAsHTML()}</g:link></li>
    164 </g:each>
    165 </ul>
    166 <g:link controller="assignedPersonDetailed" params="['task.id':taskInstance?.id]" action="create">Add AssignedPerson</g:link>
     161                                                                <ul>
     162                                                                <g:each var="a" in="${taskInstance?.assignedPersons?}">
     163                                                                        <li><g:link controller="assignedPersonDetailed" action="edit" id="${a.id}">${a?.encodeAsHTML()}</g:link></li>
     164                                                                </g:each>
     165                                                                </ul>
     166                                                                <g:link controller="assignedPersonDetailed" params="['task.id':taskInstance?.id]" action="create">Add AssignedPerson</g:link>
    167167
    168168                                </td>
  • trunk/grails-app/views/taskDetailed/list.gsp

    r124 r134  
    2626                                <g:sortableColumn property="description" title="Description" />
    2727                       
    28                                 <th>Lead Person</th>
    29                            
    30                                 <th>Task Priority</th>
    31                            
    32                                 <th>Task Status</th>
     28                                <g:sortableColumn  property="leadPerson" title="Lead Person" />
     29                       
     30                            <g:sortableColumn  property="taskPriority" title="Task Priority" />
     31                       
     32                            <g:sortableColumn  property="taskStatus" title="Task Status" />
    3333
    3434                            <th></th>
     
    5454                            <td>
    5555                                <g:link action="show" id="${taskInstance.id}">
    56                                     <img  src="${createLinkTo(dir:'images/skin',file:'database_table.png')}" alt="Show" />
     56                                    <img  src="${createLinkTo(dir:'images/skin',file:'database_go.png')}" alt="Show" />
    5757                                </g:link>
    5858                            </td>
  • trunk/grails-app/views/taskDetailed/show.gsp

    r133 r134  
    149149                                            </g:each>
    150150                                            </ul>
     151                                            <g:link controller="assignedPersonDetailed" params="['task.id':taskInstance?.id]" action="create">Add AssignedPerson</g:link>
    151152                                        </td>
    152153                                       
     
    264265                    <richui:tabContent>
    265266                        <g:if test="${!taskProcedureExits}">
    266 
    267                             <g:form controller="taskDetailed" >
     267                                <br />
     268                                No Procedure linked.
     269                                <br />
     270                                                        <br />
     271                            <g:form controller="taskProcedureDetailed" >
    268272                                <input type="hidden" name="taskInstance.id" value="${taskInstance?.id}" />
    269273
    270                                 <div class="dialog">
    271                                     <table>
    272                                         <tbody>
    273                                        
    274                                             <tr class="prop">
    275                                                 <td valign="top" class="name">
    276                                                     <label for="name">Name:</label>
    277                                                 </td>
    278                                                 <td valign="top" class="value ${hasErrors(bean:taskProcedureInstance,field:'name','errors')}">
    279                                                     <input type="text" maxlength="75" id="name" name="name" value="${fieldValue(bean:taskProcedureInstance,field:'name')}"/>
    280                                                 </td>
    281                                             </tr>
    282                        
    283                                             <tr class="prop">
    284                                                 <td valign="top" class="name">
    285                                                     <label for="description">Description:</label>
    286                                                 </td>
    287                                                 <td valign="top" class="value ${hasErrors(bean:taskProcedureInstance,field:'description','errors')}">
    288                                                     <input type="text" maxlength="100" id="description" name="description" value="${fieldValue(bean:taskProcedureInstance,field:'description')}"/>
    289                                                 </td>
    290                                             </tr>
    291                                         </tbody>
    292                                     </table>
    293                                 </div>
    294274                                <div class="buttons">
    295275                                    <span class="button">
    296                                         <g:actionSubmit value="New" action="generateProcedure"  class="save"/>
     276                                        <g:actionSubmit value="New" action="create"  class="add"/>
    297277                                    </span>
    298278                                    <span class="button">
    299                                         <g:actionSubmit value="Find" action="findProcedure"  class="save"/>
     279                                        <g:actionSubmit value="Search" action="search"  class="search"/>
    300280                                    </span>
    301281                                </div>
    302 <!--                                <div class="buttons">
    303                                     <span class="button"><input class="save" type="submit" value="Create Procedure" /></span>
    304                                     <span class="button"><input class="save" type="submit" value="Find Procedure" /></span>
    305                                 </div>-->
     282
    306283                            </g:form>
    307284
    308285                        </g:if>
    309286                        <g:else>
    310                         <div class="dialog">
     287                                <div class="dialog">
    311288                                <table>
    312289                                    <tbody>
     
    348325                                    <input type="hidden" name="id" value="${taskProcedureInstance?.id}" />
    349326                                    <span class="button"><g:actionSubmit class="edit" value="Edit" /></span>
    350 <!--                                     <span class="button"><g:actionSubmit class="delete" onclick="return confirm('Are you sure?');" value="Delete" /></span> -->
    351                                 </g:form>
     327                                                                </g:form>
    352328                            </div>
    353    
    354                             <div class="list">
    355                                 <table>
    356                                     <thead>
    357                                         <tr>
    358                                             <th>Step</th>
    359                                             <th>Description</th>
    360                                             <th></th>
    361                                         </tr>
    362                                     </thead>
    363                                     <tbody>
    364                                         <g:each in="${taskProcedureInstance?.maintenanceActions}" status="i" var="maintenanceAction">
    365                                             <tr class="${(i % 2) == 0 ? 'clickableOdd' : 'clickableEven'}" onclick='window.location = "${request.getContextPath()}/maintenanceActionDetailed/edit/${maintenanceAction.id}"'/>
    366                                            
    367                                             <td valign="top" class="name">
    368                                                 ${maintenanceAction?.procedureStepNumber}
    369                                             </td>
    370                                            
    371                                             <td  valign="top" style="text-align:left;" class="value">
    372                                                 ${maintenanceAction?.description}
    373                                             </td>
    374                                            
    375                                         </tr>
    376                                         </g:each>
    377    
    378                                     </tbody>
    379                                 </table>
    380                             </div>
     329                           
     330                                                        <div class="list">
     331                                                                <table>
     332                                                                        <thead>
     333                                                                                <tr>
     334                                                                                        <th>Step</th>
     335                                                                                        <th>Description</th>
     336                                                                                </tr>
     337                                                                        </thead>
     338                                                                        <tbody>
     339                                                                                <g:each in="${maintenanceActionList}" status="i" var="maintenanceAction">
     340                                                                                        <tr class="${(i % 2) == 0 ? 'odd' : 'even'}">
     341                                                                                               
     342                                                                                                <td valign="top" class="name">
     343                                                                                                        ${maintenanceAction?.procedureStepNumber}
     344                                                                                                </td>
     345                                                                                               
     346                                                                                                <td  valign="top" style="text-align:left;" class="value">
     347                                                                                                        ${maintenanceAction?.description}
     348                                                                                                </td>
     349                                                                                               
     350                                                                                        </tr>
     351                                                                                </g:each>
     352       
     353                                                                        </tbody>
     354                                                                </table>
     355                                                        </div>
    381356
    382357                        </g:else>
     
    387362<!-- Start Task Recurrence tab -->
    388363                    <richui:tabContent>
    389                     <div class="dialog">
    390                             <table>
    391                                 <tbody>
    392                                     <tr class="prop">
    393                                         <td valign="top" class="name">Recurring Schedule:</td>
    394                                        
    395                                         <td valign="top" class="value">${taskInstance.taskRecurringSchedule?.encodeAsHTML()}</td>
    396                                        
    397                                     </tr>
    398            
    399                                     <tr class="prop">
    400                                         <td valign="top" class="name">Start Date:</td>
    401                                        
    402                                         <td valign="top" class="value">${taskInstance.taskRecurringSchedule?.startDate}</td>
    403                                        
    404                                     </tr>
    405            
    406                                     <tr class="prop">
    407                                         <td valign="top" class="name">Next Due Date:</td>
    408                                        
    409                                         <td valign="top" class="value">${taskInstance.taskRecurringSchedule?.nextDueDate}</td>
    410                                        
    411                                     </tr>
    412            
    413                                     <tr class="prop">
    414                                         <td valign="top" class="name">Last Generated Date:</td>
    415                                        
    416                                         <td valign="top" class="value">${taskInstance.taskRecurringSchedule?.lastGeneratedDate}</td>
    417                                        
    418                                     </tr>
    419            
    420                                     <tr class="prop">
    421                                         <td valign="top" class="name">Last Generated Sub Task:</td>
    422                                        
    423                                         <td valign="top" class="value">${taskInstance.taskRecurringSchedule?.lastGeneratedSubTask}</td>
    424                                        
    425                                     </tr>
    426                                 </tbody>
    427                             </table>
    428                         </div>
     364
     365                        <g:if test="${!taskRecurringScheduleExits}">
     366                                <br />
     367                                No Recurring Schedule.
     368                                <br />
     369                                                        <br />
     370                            <g:form controller="taskRecurringScheduleDetailed" >
     371                                <input type="hidden" name="taskInstance.id" value="${taskInstance?.id}" />
     372
     373                                <div class="buttons">
     374                                    <span class="button">
     375                                        <g:actionSubmit value="Create" action="create"  class="add"/>
     376                                    </span>
     377                                </div>
     378
     379                            </g:form>
     380
     381                        </g:if>
     382                        <g:else>
     383                                                       
     384                                                <div class="dialog">
     385                                                                <table>
     386                                                                        <tbody>
     387                                                                                <tr class="prop">
     388                                                                                        <td valign="top" class="name">Recurring Schedule:</td>
     389                                                                                       
     390                                                                                        <td valign="top" class="value">${taskRecurringScheduleInstance.encodeAsHTML()}</td>
     391                                                                                       
     392                                                                                </tr>
     393                               
     394                                                                                <tr class="prop">
     395                                                                                        <td valign="top" class="name">Start Date:</td>
     396                                                                                       
     397                                                                                        <td valign="top" class="value">${taskRecurringScheduleInstance.startDate}</td>
     398                                                                                       
     399                                                                                </tr>
     400                               
     401                                                                                <tr class="prop">
     402                                                                                        <td valign="top" class="name">Next Due Date:</td>
     403                                                                                       
     404                                                                                        <td valign="top" class="value">${taskRecurringScheduleInstance.nextDueDate}</td>
     405                                                                                       
     406                                                                                </tr>
     407                               
     408                                                                                <tr class="prop">
     409                                                                                        <td valign="top" class="name">Last Generated Date:</td>
     410                                                                                       
     411                                                                                        <td valign="top" class="value">${taskRecurringScheduleInstance.lastGeneratedDate}</td>
     412                                                                                       
     413                                                                                </tr>
     414                               
     415                                                                                <tr class="prop">
     416                                                                                        <td valign="top" class="name">Last Generated Sub Task:</td>
     417                                                                                       
     418                                                                                        <td valign="top" class="value">${taskRecurringScheduleInstance.lastGeneratedSubTask}</td>
     419                                                                                       
     420                                                                                </tr>
     421                                                                        </tbody>
     422                                                                </table>
     423                                                        </div>
     424                            <div class="buttons">
     425                                <g:form controller="taskRecurringScheduleDetailed">
     426                                    <input type="hidden" name="id" value="${taskInstance?.id}" />
     427                                    <span class="button"><g:actionSubmit class="edit" value="Edit" /></span>
     428                                                                </g:form>
     429                            </div>
     430                           
     431                                                </g:else>
    429432                    </richui:tabContent>
    430433<!-- End Task Recurrence tab -->
     
    438441<!-- Start Sub Task tab --> 
    439442                    <richui:tabContent>
    440                         <div class="dialog">
    441                             <table>
    442                                 <tbody>
    443                                     <tr class="prop">
    444                                         <td valign="top" class="name">Sub Tasks:</td>
    445                                        
    446                                         <td  valign="top" style="text-align:left;" class="value">
    447                                             <ul>
    448                                             <g:each var="s" in="${taskInstance.subTasks}">
    449                                                 <li><g:link controller="taskDetailed" action="show" id="${s.id}">${s?.encodeAsHTML()}</g:link></li>
    450                                             </g:each>
    451                                             </ul>
    452                                         </td>
    453                                        
    454                                     </tr>
    455                                 </tbody>
    456                             </table>
    457                         </div>
     443                        <g:if test="${subTaskInstanceTotal >= 1}">
     444                                                        <div class="list">
     445                                                                <table>
     446                                                                        <thead>
     447                                                                                <tr>
     448                                                                               
     449                                                                                        <th>Id</th>
     450                                                                                       
     451                                                                                        <th>Target Start Date</th>
     452                                                                                       
     453                                                                                        <th>Description</th>
     454                                                                                       
     455                                                                                        <th>Lead Person</th>
     456                                                                                       
     457                                                                                        <th>Task Priority</th>
     458                                                                               
     459                                                                                        <th>Task Status</th>
     460                                                                                       
     461                                                                                        <th></th>
     462                                                                               
     463                                                                                </tr>
     464                                                                        </thead>
     465                                                                        <tbody>
     466                                                                        <g:each in="${subTaskInstanceList}" status="i" var="subTaskInstance">
     467                                                                        <tr class="${(i % 2) == 0 ? 'clickableOdd' : 'clickableEven'}" onclick='window.location = "${request.getContextPath()}/taskDetailed/show/${subTaskInstance.id}"'/>
     468       
     469                                                                                        <td>${fieldValue(bean:subTaskInstance, field:'id')}</td>
     470                                                                                       
     471                                                                                        <td><g:formatDate date="${subTaskInstance.targetStartDate}" format="EEE, dd MMM yyyy"/></td>
     472                                                                                       
     473                                                                                        <td>${subTaskInstance.description}</td>
     474                                                                               
     475       
     476                                                                                        <td>${subTaskInstance.leadPerson}</td>
     477                                                                                       
     478                                                                                        <td>${subTaskInstance.taskPriority}</td>
     479                                                                                       
     480                                                                                        <td>${subTaskInstance.taskStatus}</td>
     481                                                                                       
     482                                                                                        <td>
     483                                                                                                <g:link action="show" id="${subTaskInstance.id}">
     484                                                                                                        <img  src="${createLinkTo(dir:'images/skin',file:'database_go.png')}" alt="Show" />
     485                                                                                                </g:link>
     486                                                                                        </td>
     487       
     488                                                                               
     489                                                                                </tr>
     490                                                                        </g:each>
     491                                                                        </tbody>
     492                                                                </table>
     493                                                        </div>
     494                                                       
     495                                                       
     496                                                        <div class="buttons">
     497                                                                <g:form>
     498                                                                        <input type="hidden" name="id" value="${taskInstance?.id}" />
     499                                                                        <g:if test="${subTaskInstanceTotal > subTaskInstanceMax}">
     500                                                                                Showing ${subTaskInstanceMax} of ${subTaskInstanceTotal}
     501                                                                                <br />
     502                                                                        </g:if>
     503                                                                        <g:else>
     504                                                                                Total ${subTaskInstanceTotal}
     505                                                                                <br />
     506                                                                        </g:else>
     507                                                                        <span class="button"><g:actionSubmit action="listSubTasks" class="table" value="Sortable List" /></span>
     508                                                                </g:form>
     509                                                        </div>
     510                                                       
     511                                                </g:if>
     512                                                <g:else>
     513                                                        <br />
     514                                                        No Sub Tasks.
     515                                                </g:else>
     516
    458517                    </richui:tabContent>
    459518<!-- End Sub Task tab -->
  • trunk/grails-app/views/taskProcedureDetailed/create.gsp

    r133 r134  
    2323            </g:hasErrors>
    2424            <g:form action="save" method="post" >
     25            <input type="hidden" name="taskInstance.id" value="${taskInstance?.id}" />
     26           
    2527                <div class="dialog">
    2628                    <table>
     
    3234                                </td>
    3335                                <td valign="top" class="value ${hasErrors(bean:taskProcedureInstance,field:'name','errors')}">
    34                                     <input type="text" maxlength="75" id="name" name="name" value="${fieldValue(bean:taskProcedureInstance,field:'name')}"/>
     36                                    <input type="text"  class="description" maxlength="75" id="name" name="name" value="${fieldValue(bean:taskProcedureInstance,field:'name')}"/>
    3537                                </td>
    3638                            </tr>
     
    4143                                </td>
    4244                                <td valign="top" class="value ${hasErrors(bean:taskProcedureInstance,field:'description','errors')}">
    43                                     <input type="text" maxlength="100" id="description" name="description" value="${fieldValue(bean:taskProcedureInstance,field:'description')}"/>
     45                                    <input type="text"  class="description" maxlength="100" id="description" name="description" value="${fieldValue(bean:taskProcedureInstance,field:'description')}"/>
    4446                                </td>
    4547                            </tr>
     
    5254                                    <g:checkBox name="isActive" value="${taskProcedureInstance?.isActive}" ></g:checkBox>
    5355                                </td>
    54                             </tr>
     56                            </tr> 
     57                           
     58                                <g:if test="${taskInstance}">
     59                                                                <tr class="prop">
     60                                                                        <td valign="top" class="name">
     61                                                                                <label for="taskInstance">Linking with Task:</label>
     62                                                                        </td>
     63                                                                        <td valign="top" name="taskInstance" class="value">
     64                                                                                ${taskInstance}
     65                                                                        </td>
     66                                                                </tr>
     67                                                        </g:if>
    5568                       
    5669                        </tbody>
  • trunk/grails-app/views/taskProcedureDetailed/edit.gsp

    r133 r134  
    3535                                </td>
    3636                                <td valign="top" class="value ${hasErrors(bean:taskProcedureInstance,field:'name','errors')}">
    37                                     <input type="text" maxlength="75" id="name" name="name" value="${fieldValue(bean:taskProcedureInstance,field:'name')}"/>
     37                                    <input type="text"  class="description" maxlength="75" id="name" name="name" value="${fieldValue(bean:taskProcedureInstance,field:'name')}"/>
    3838                                </td>
    3939                            </tr>
     
    4444                                </td>
    4545                                <td valign="top" class="value ${hasErrors(bean:taskProcedureInstance,field:'description','errors')}">
    46                                     <input type="text" maxlength="100" id="description" name="description" value="${fieldValue(bean:taskProcedureInstance,field:'description')}"/>
     46                                    <input type="text"  class="description" maxlength="100" id="description" name="description" value="${fieldValue(bean:taskProcedureInstance,field:'description')}"/>
    4747                                </td>
    4848                            </tr>
  • trunk/grails-app/views/taskRecurringScheduleDetailed/create.gsp

    r122 r134  
    55        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
    66        <meta name="layout" content="main" />
    7         <title>Create RecurringSchedule</title>         
     7        <title>Create TaskRecurringSchedule</title>         
    88    </head>
    99    <body>
    1010        <div class="nav">
    1111            <span class="menuButton"><a class="home" href="${createLinkTo(dir:'')}">Home</a></span>
    12             <span class="menuButton"><g:link class="list" action="list">RecurringSchedule List</g:link></span>
     12            <span class="menuButton"><g:link class="list" action="list">TaskRecurringSchedule List</g:link></span>
    1313        </div>
    1414        <div class="body">
    15             <h1>Create RecurringSchedule</h1>
     15            <h1>Create TaskRecurringSchedule</h1>
    1616            <g:if test="${flash.message}">
    1717            <div class="message">${flash.message}</div>
    1818            </g:if>
    19             <g:hasErrors bean="${recurringScheduleInstance}">
     19            <g:hasErrors bean="${taskRecurringScheduleInstance}">
    2020            <div class="errors">
    21                 <g:renderErrors bean="${recurringScheduleInstance}" as="list" />
     21                <g:renderErrors bean="${taskRecurringScheduleInstance}" as="list" />
    2222            </div>
    2323            </g:hasErrors>
    2424            <g:form action="save" method="post" >
     25                <g:hiddenField name="task.id" value="${taskRecurringScheduleInstance.task.id}" />
    2526                <div class="dialog">
    2627                    <table>
    2728                        <tbody>
    28                        
     29
    2930                            <tr class="prop">
    3031                                <td valign="top" class="name">
    31                                     <label for="plannedMaintenance">Planned Maintenance:</label>
     32                                    <label for="recForTask">Recurring Schedule for Task:</label>
    3233                                </td>
    33                                 <td valign="top" class="value ${hasErrors(bean:recurringScheduleInstance,field:'plannedMaintenance','errors')}">
    34                                     <g:select optionKey="id" from="${PlannedMaintenance.list()}" name="plannedMaintenance.id" value="${recurringScheduleInstance?.plannedMaintenance?.id}" noSelection="['null':'']"></g:select>
     34                                <td valign="top" name="recForTask" class="value">
     35                                    ${taskRecurringScheduleInstance.task}
     36                                </td>
     37                            </tr>   
     38                     
     39                            <tr class="prop">
     40                                <td valign="top" class="name">
     41                                    <label for="lastGeneratedDate">Last Generated Date:</label>
     42                                </td>
     43                                <td valign="top" class="value ${hasErrors(bean:taskRecurringScheduleInstance,field:'lastGeneratedDate','errors')}">
     44                                    <g:datePicker name="lastGeneratedDate" value="${taskRecurringScheduleInstance?.lastGeneratedDate}" noSelection="['':'']"></g:datePicker>
    3545                                </td>
    3646                            </tr>
     
    3848                            <tr class="prop">
    3949                                <td valign="top" class="name">
    40                                     <label for="isActive">Is Active:</label>
     50                                    <label for="lastGeneratedSubTask">Last Generated Sub Task:</label>
    4151                                </td>
    42                                 <td valign="top" class="value ${hasErrors(bean:recurringScheduleInstance,field:'isActive','errors')}">
    43                                     <g:checkBox name="isActive" value="${recurringScheduleInstance?.isActive}" ></g:checkBox>
     52                                <td valign="top" class="value ${hasErrors(bean:taskRecurringScheduleInstance,field:'lastGeneratedSubTask','errors')}">
     53                                    <g:select optionKey="id" from="${Task.list()}" name="lastGeneratedSubTask.id" value="${taskRecurringScheduleInstance?.lastGeneratedSubTask?.id}" noSelection="['null':'']"></g:select>
     54                                </td>
     55                            </tr>
     56                       
     57                            <tr class="prop">
     58                                <td valign="top" class="name">
     59                                    <label for="isEnabled">Is Enabled:</label>
     60                                </td>
     61                                <td valign="top" class="value ${hasErrors(bean:taskRecurringScheduleInstance,field:'isEnabled','errors')}">
     62                                    <g:checkBox name="isEnabled" value="${taskRecurringScheduleInstance?.isEnabled}" ></g:checkBox>
     63                                </td>
     64                            </tr>
     65                       
     66                            <tr class="prop">
     67                                <td valign="top" class="name">
     68                                    <label for="nextDueDate">Next Due Date:</label>
     69                                </td>
     70                                <td valign="top" class="value ${hasErrors(bean:taskRecurringScheduleInstance,field:'nextDueDate','errors')}">
     71                                    <g:datePicker name="nextDueDate" value="${taskRecurringScheduleInstance?.nextDueDate}" ></g:datePicker>
    4472                                </td>
    4573                            </tr>
     
    4977                                    <label for="period">Period:</label>
    5078                                </td>
    51                                 <td valign="top" class="value ${hasErrors(bean:recurringScheduleInstance,field:'period','errors')}">
    52                                     <g:select optionKey="id" from="${Period.list()}" name="period.id" value="${recurringScheduleInstance?.period?.id}" ></g:select>
     79                                <td valign="top" class="value ${hasErrors(bean:taskRecurringScheduleInstance,field:'period','errors')}">
     80                                    <g:select optionKey="id" from="${Period.list()}" name="period.id" value="${taskRecurringScheduleInstance?.period?.id}" ></g:select>
    5381                                </td>
    5482                            </tr>
     
    5886                                    <label for="recurEvery">Recur Every:</label>
    5987                                </td>
    60                                 <td valign="top" class="value ${hasErrors(bean:recurringScheduleInstance,field:'recurEvery','errors')}">
    61                                     <input type="text" id="recurEvery" name="recurEvery" value="${fieldValue(bean:recurringScheduleInstance,field:'recurEvery')}" />
     88                                <td valign="top" class="value ${hasErrors(bean:taskRecurringScheduleInstance,field:'recurEvery','errors')}">
     89                                    <input type="text" id="recurEvery" name="recurEvery" value="${fieldValue(bean:taskRecurringScheduleInstance,field:'recurEvery')}" />
    6290                                </td>
    6391                            </tr>
     
    6795                                    <label for="startDate">Start Date:</label>
    6896                                </td>
    69                                 <td valign="top" class="value ${hasErrors(bean:recurringScheduleInstance,field:'startDate','errors')}">
    70                                     <g:datePicker name="startDate" value="${recurringScheduleInstance?.startDate}" ></g:datePicker>
     97                                <td valign="top" class="value ${hasErrors(bean:taskRecurringScheduleInstance,field:'startDate','errors')}">
     98                                    <g:datePicker name="startDate" value="${taskRecurringScheduleInstance?.startDate}" ></g:datePicker>
    7199                                </td>
    72                             </tr>
    73                        
    74                             <tr class="prop">
    75                                 <td valign="top" class="name">
    76                                     <label for="task">Task:</label>
    77                                 </td>
    78                                 <td valign="top" class="value ${hasErrors(bean:recurringScheduleInstance,field:'task','errors')}">
    79                                     <g:select optionKey="id" from="${Task.list()}" name="task.id" value="${recurringScheduleInstance?.task?.id}" ></g:select>
    80                                 </td>
    81                             </tr>
     100                            </tr>
    82101                       
    83102                        </tbody>
  • trunk/grails-app/views/taskRecurringScheduleDetailed/edit.gsp

    r124 r134  
    55        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
    66        <meta name="layout" content="main" />
    7         <title>Edit RecurringSchedule</title>
     7        <title>Edit TaskRecurringSchedule</title>
    88    </head>
    99    <body>
    1010        <div class="nav">
    1111            <span class="menuButton"><a class="home" href="${createLinkTo(dir:'')}">Home</a></span>
    12             <span class="menuButton"><g:link class="list" action="list">RecurringSchedule List</g:link></span>
    13             <span class="menuButton"><g:link class="create" action="create">New RecurringSchedule</g:link></span>
     12            <span class="menuButton"><g:link class="list" action="list">TaskRecurringSchedule List</g:link></span>
     13            <span class="menuButton"><g:link class="create" action="create">New TaskRecurringSchedule</g:link></span>
    1414        </div>
    1515        <div class="body">
    16             <h1>Edit RecurringSchedule</h1>
     16            <h1>Edit TaskRecurringSchedule</h1>
    1717            <g:if test="${flash.message}">
    1818            <div class="message">${flash.message}</div>
    1919            </g:if>
    20             <g:hasErrors bean="${recurringScheduleInstance}">
     20            <g:hasErrors bean="${taskRecurringScheduleInstance}">
    2121            <div class="errors">
    22                 <g:renderErrors bean="${recurringScheduleInstance}" as="list" />
     22                <g:renderErrors bean="${taskRecurringScheduleInstance}" as="list" />
    2323            </div>
    2424            </g:hasErrors>
    2525            <g:form method="post" >
    26                 <input type="hidden" name="id" value="${recurringScheduleInstance?.id}" />
    27                 <input type="hidden" name="version" value="${recurringScheduleInstance?.version}" />
     26                <input type="hidden" name="id" value="${taskRecurringScheduleInstance?.id}" />
     27                <input type="hidden" name="version" value="${taskRecurringScheduleInstance?.version}" />
    2828                <div class="dialog">
    2929                    <table>
     
    3232                            <tr class="prop">
    3333                                <td valign="top" class="name">
    34                                     <label for="plannedMaintenance">Planned Maintenance:</label>
     34                                    <label for="lastGeneratedDate">Last Generated Date:</label>
    3535                                </td>
    36                                 <td valign="top" class="value ${hasErrors(bean:recurringScheduleInstance,field:'plannedMaintenance','errors')}">
    37                                     <g:select optionKey="id" from="${PlannedMaintenance.list()}" name="plannedMaintenance.id" value="${recurringScheduleInstance?.plannedMaintenance?.id}" noSelection="['null':'']"></g:select>
     36                                <td valign="top" class="value ${hasErrors(bean:taskRecurringScheduleInstance,field:'lastGeneratedDate','errors')}">
     37                                    <g:datePicker name="lastGeneratedDate" value="${taskRecurringScheduleInstance?.lastGeneratedDate}" noSelection="['':'']"></g:datePicker>
    3838                                </td>
    3939                            </tr>
     
    4141                            <tr class="prop">
    4242                                <td valign="top" class="name">
    43                                     <label for="isActive">Is Active:</label>
     43                                    <label for="lastGeneratedSubTask">Last Generated Sub Task:</label>
    4444                                </td>
    45                                 <td valign="top" class="value ${hasErrors(bean:recurringScheduleInstance,field:'isActive','errors')}">
    46                                     <g:checkBox name="isActive" value="${recurringScheduleInstance?.isActive}" ></g:checkBox>
     45                                <td valign="top" class="value ${hasErrors(bean:taskRecurringScheduleInstance,field:'lastGeneratedSubTask','errors')}">
     46                                    <g:select optionKey="id" from="${Task.list()}" name="lastGeneratedSubTask.id" value="${taskRecurringScheduleInstance?.lastGeneratedSubTask?.id}" noSelection="['null':'']"></g:select>
     47                                </td>
     48                            </tr>
     49                       
     50                            <tr class="prop">
     51                                <td valign="top" class="name">
     52                                    <label for="isEnabled">Is Enabled:</label>
     53                                </td>
     54                                <td valign="top" class="value ${hasErrors(bean:taskRecurringScheduleInstance,field:'isEnabled','errors')}">
     55                                    <g:checkBox name="isEnabled" value="${taskRecurringScheduleInstance?.isEnabled}" ></g:checkBox>
     56                                </td>
     57                            </tr>
     58                       
     59                            <tr class="prop">
     60                                <td valign="top" class="name">
     61                                    <label for="nextDueDate">Next Due Date:</label>
     62                                </td>
     63                                <td valign="top" class="value ${hasErrors(bean:taskRecurringScheduleInstance,field:'nextDueDate','errors')}">
     64                                    <g:datePicker name="nextDueDate" value="${taskRecurringScheduleInstance?.nextDueDate}" ></g:datePicker>
    4765                                </td>
    4866                            </tr>
     
    5270                                    <label for="period">Period:</label>
    5371                                </td>
    54                                 <td valign="top" class="value ${hasErrors(bean:recurringScheduleInstance,field:'period','errors')}">
    55                                     <g:select optionKey="id" from="${Period.list()}" name="period.id" value="${recurringScheduleInstance?.period?.id}" ></g:select>
     72                                <td valign="top" class="value ${hasErrors(bean:taskRecurringScheduleInstance,field:'period','errors')}">
     73                                    <g:select optionKey="id" from="${Period.list()}" name="period.id" value="${taskRecurringScheduleInstance?.period?.id}" ></g:select>
    5674                                </td>
    5775                            </tr>
     
    6179                                    <label for="recurEvery">Recur Every:</label>
    6280                                </td>
    63                                 <td valign="top" class="value ${hasErrors(bean:recurringScheduleInstance,field:'recurEvery','errors')}">
    64                                     <input type="text" id="recurEvery" name="recurEvery" value="${fieldValue(bean:recurringScheduleInstance,field:'recurEvery')}" />
     81                                <td valign="top" class="value ${hasErrors(bean:taskRecurringScheduleInstance,field:'recurEvery','errors')}">
     82                                    <input type="text" id="recurEvery" name="recurEvery" value="${fieldValue(bean:taskRecurringScheduleInstance,field:'recurEvery')}" />
    6583                                </td>
    6684                            </tr>
     
    7088                                    <label for="startDate">Start Date:</label>
    7189                                </td>
    72                                 <td valign="top" class="value ${hasErrors(bean:recurringScheduleInstance,field:'startDate','errors')}">
    73                                     <g:datePicker name="startDate" value="${recurringScheduleInstance?.startDate}" precision="day" ></g:datePicker>
     90                                <td valign="top" class="value ${hasErrors(bean:taskRecurringScheduleInstance,field:'startDate','errors')}">
     91                                    <g:datePicker name="startDate" value="${taskRecurringScheduleInstance?.startDate}" ></g:datePicker>
    7492                                </td>
    7593                            </tr>
     
    7997                                    <label for="task">Task:</label>
    8098                                </td>
    81                                 <td valign="top" class="value ${hasErrors(bean:recurringScheduleInstance,field:'task','errors')}">
    82                                     <g:select optionKey="id" from="${Task.list()}" name="task.id" value="${recurringScheduleInstance?.task?.id}" ></g:select>
     99                                <td valign="top" class="value ${hasErrors(bean:taskRecurringScheduleInstance,field:'task','errors')}">
     100                                    <g:select optionKey="id" from="${Task.list()}" name="task.id" value="${taskRecurringScheduleInstance?.task?.id}" ></g:select>
    83101                                </td>
    84102                            </tr>
  • trunk/grails-app/views/taskRecurringScheduleDetailed/list.gsp

    r131 r134  
    2424                                <g:sortableColumn property="id" title="Id" />
    2525                       
    26                                 <th>Planned Maintenance</th>
     26                                <g:sortableColumn property="lastGeneratedDate" title="Last Generated Date" />
     27                       
     28                                <th>Last Generated Sub Task</th>
    2729                           
    28                                 <g:sortableColumn property="isActive" title="Is Active" />
     30                                <g:sortableColumn property="isEnabled" title="Is Enabled" />
     31                       
     32                                <g:sortableColumn property="nextDueDate" title="Next Due Date" />
    2933                       
    3034                                <th>Period</th>
    3135                           
    32                                 <g:sortableColumn property="recurEvery" title="Recur Every" />
    33                        
    34                                 <g:sortableColumn property="startDate" title="Start Date" />
    35                        
    3636                        </tr>
    3737                    </thead>
     
    4242                            <td><g:link action="show" id="${taskRecurringScheduleInstance.id}">${fieldValue(bean:taskRecurringScheduleInstance, field:'id')}</g:link></td>
    4343                       
    44                             <td>${fieldValue(bean:taskRecurringScheduleInstance, field:'task')}</td>
     44                            <td>${fieldValue(bean:taskRecurringScheduleInstance, field:'lastGeneratedDate')}</td>
    4545                       
    46                             <td>${fieldValue(bean:taskRecurringScheduleInstance, field:'isActive')}</td>
     46                            <td>${fieldValue(bean:taskRecurringScheduleInstance, field:'lastGeneratedSubTask')}</td>
     47                       
     48                            <td>${fieldValue(bean:taskRecurringScheduleInstance, field:'isEnabled')}</td>
     49                       
     50                            <td>${fieldValue(bean:taskRecurringScheduleInstance, field:'nextDueDate')}</td>
    4751                       
    4852                            <td>${fieldValue(bean:taskRecurringScheduleInstance, field:'period')}</td>
    49                        
    50                             <td>${fieldValue(bean:taskRecurringScheduleInstance, field:'recurEvery')}</td>
    51                        
    52                             <td>${fieldValue(bean:taskRecurringScheduleInstance, field:'startDate')}</td>
    5353                       
    5454                        </tr>
  • trunk/grails-app/views/taskRecurringScheduleDetailed/show.gsp

    r124 r134  
    55        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
    66        <meta name="layout" content="main" />
    7         <title>Show RecurringSchedule</title>
     7        <title>Show TaskRecurringSchedule</title>
    88    </head>
    99    <body>
    1010        <div class="nav">
    1111            <span class="menuButton"><a class="home" href="${createLinkTo(dir:'')}">Home</a></span>
    12             <span class="menuButton"><g:link class="list" action="list">RecurringSchedule List</g:link></span>
    13             <span class="menuButton"><g:link class="create" action="create">New RecurringSchedule</g:link></span>
     12            <span class="menuButton"><g:link class="list" action="list">TaskRecurringSchedule List</g:link></span>
     13            <span class="menuButton"><g:link class="create" action="create">New TaskRecurringSchedule</g:link></span>
    1414        </div>
    1515        <div class="body">
    16             <h1>Show RecurringSchedule</h1>
     16            <h1>Show TaskRecurringSchedule</h1>
    1717            <g:if test="${flash.message}">
    1818            <div class="message">${flash.message}</div>
     
    2626                            <td valign="top" class="name">Id:</td>
    2727                           
    28                             <td valign="top" class="value">${fieldValue(bean:recurringScheduleInstance, field:'id')}</td>
     28                            <td valign="top" class="value">${fieldValue(bean:taskRecurringScheduleInstance, field:'id')}</td>
    2929                           
    3030                        </tr>
    3131                   
    3232                        <tr class="prop">
    33                             <td valign="top" class="name">Planned Maintenance:</td>
     33                            <td valign="top" class="name">Last Generated Date:</td>
    3434                           
    35                             <td valign="top" class="value"><g:link controller="plannedMaintenanceDetailed" action="show" id="${recurringScheduleInstance?.plannedMaintenance?.id}">${recurringScheduleInstance?.plannedMaintenance?.encodeAsHTML()}</g:link></td>
     35                            <td valign="top" class="value">${fieldValue(bean:taskRecurringScheduleInstance, field:'lastGeneratedDate')}</td>
    3636                           
    3737                        </tr>
    3838                   
    3939                        <tr class="prop">
    40                             <td valign="top" class="name">Is Active:</td>
     40                            <td valign="top" class="name">Last Generated Sub Task:</td>
    4141                           
    42                             <td valign="top" class="value">${fieldValue(bean:recurringScheduleInstance, field:'isActive')}</td>
     42                            <td valign="top" class="value"><g:link controller="task" action="show" id="${taskRecurringScheduleInstance?.lastGeneratedSubTask?.id}">${taskRecurringScheduleInstance?.lastGeneratedSubTask?.encodeAsHTML()}</g:link></td>
     43                           
     44                        </tr>
     45                   
     46                        <tr class="prop">
     47                            <td valign="top" class="name">Is Enabled:</td>
     48                           
     49                            <td valign="top" class="value">${fieldValue(bean:taskRecurringScheduleInstance, field:'isEnabled')}</td>
     50                           
     51                        </tr>
     52                   
     53                        <tr class="prop">
     54                            <td valign="top" class="name">Next Due Date:</td>
     55                           
     56                            <td valign="top" class="value">${fieldValue(bean:taskRecurringScheduleInstance, field:'nextDueDate')}</td>
    4357                           
    4458                        </tr>
     
    4761                            <td valign="top" class="name">Period:</td>
    4862                           
    49                             <td valign="top" class="value">${recurringScheduleInstance?.period?.encodeAsHTML()}</td>
     63                            <td valign="top" class="value"><g:link controller="period" action="show" id="${taskRecurringScheduleInstance?.period?.id}">${taskRecurringScheduleInstance?.period?.encodeAsHTML()}</g:link></td>
    5064                           
    5165                        </tr>
     
    5468                            <td valign="top" class="name">Recur Every:</td>
    5569                           
    56                             <td valign="top" class="value">${fieldValue(bean:recurringScheduleInstance, field:'recurEvery')}</td>
     70                            <td valign="top" class="value">${fieldValue(bean:taskRecurringScheduleInstance, field:'recurEvery')}</td>
    5771                           
    5872                        </tr>
     
    6175                            <td valign="top" class="name">Start Date:</td>
    6276                           
    63                             <td valign="top" class="value"><g:formatDate date="${recurringScheduleInstance.startDate}" format="EEE, dd MMM yyyy"/></td>
     77                            <td valign="top" class="value">${fieldValue(bean:taskRecurringScheduleInstance, field:'startDate')}</td>
    6478                           
    6579                        </tr>
     
    6882                            <td valign="top" class="name">Task:</td>
    6983                           
    70                             <td valign="top" class="value"><g:link controller="taskDetailed" action="show" id="${recurringScheduleInstance?.task?.id}">${recurringScheduleInstance?.task?.encodeAsHTML()}</g:link></td>
     84                            <td valign="top" class="value"><g:link controller="task" action="show" id="${taskRecurringScheduleInstance?.task?.id}">${taskRecurringScheduleInstance?.task?.encodeAsHTML()}</g:link></td>
    7185                           
    7286                        </tr>
     
    7791            <div class="buttons">
    7892                <g:form>
    79                     <input type="hidden" name="id" value="${recurringScheduleInstance?.id}" />
     93                    <input type="hidden" name="id" value="${taskRecurringScheduleInstance?.id}" />
    8094                    <span class="button"><g:actionSubmit class="edit" value="Edit" /></span>
    8195                    <span class="button"><g:actionSubmit class="delete" onclick="return confirm('Are you sure?');" value="Delete" /></span>
  • trunk/web-app/css/main.css

    r124 r134  
    190190}
    191191
    192 input.duration {
     192input.time {
    193193    width:40px;
    194194}
    195 input.duration.errors {
    196     border: 1px solid red;
     195input.time.errors {
     196    border: 1px solid red;
     197}
     198input.description {
     199    width:450px;
    197200}
    198201
     
    350353    padding-left: 28px;
    351354}
     355.buttons input.search {
     356    background: transparent url(../images/skin/database_search.png) 5px 50% no-repeat;
     357    padding-left: 28px;
     358}
     359.buttons input.link {
     360    background: transparent url(../images/skin/database_link.png) 5px 50% no-repeat;
     361    padding-left: 28px;
     362}
     363.buttons input.go {
     364    background: transparent url(../images/skin/database_go.png) 5px 50% no-repeat;
     365    padding-left: 28px;
     366}
     367.buttons input.table {
     368    background: transparent url(../images/skin/database_table.png) 5px 50% no-repeat;
     369    padding-left: 28px;
     370}
    352371
    353372#bottom {
Note: See TracChangeset for help on using the changeset viewer.