Ignore:
Timestamp:
Mar 3, 2011, 12:24:01 PM (9 years ago)
Author:
gav
Message:

AJAX Work Done and PM Entry, second draft.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/grails-app/controllers/EntryDetailedController.groovy

    r826 r833  
    3131        if(entryInstance) {
    3232            if(entryInstance.enteredBy.loginName == authService.currentUser.loginName) {
    33                 def taskID = entryInstance.task.id
     33                def taskId = entryInstance.task.id
    3434                entryInstance.delete(flush:true)
    3535                flash.message = "Entry ${params.id} deleted"
    36                 redirect(controller: 'taskDetailed', action: 'show', id: taskID)
     36                redirect(controller: 'taskDetailed', action: 'show', id: taskId)
    3737            }
    3838            else {
     
    9494    def ajaxCreate = {
    9595        if(!params.taskId || !params.entryTypeId) {
    96             flash.message = g.message(code:"entry.create.no.params")
    97             redirect(controller:"taskDetailed", action:"search")
     96            response.status = 403
     97            params.errorMessage = g.message(code: "entry.create.no.params.ajax")
     98            render(template: "/shared/messages")
    9899            return
    99100        }
     
    102103
    103104        if(!taskInstance) {
    104             flash.message = g.message(code:"task.notFound")
    105             redirect(controller:"taskDetailed", action:"search")
     105            response.status = 403
     106            params.errorMessage = g.message(code:"default.not.found", args:['Task',params.taskId])
     107            render(template: "/shared/messages")
    106108            return
    107109        }
     
    109111        // Check for Complete task.
    110112        if(taskInstance.taskStatus.id == 3) {
    111             flash.errorMessage = g.message(code:"task.operationNotPermittedOnCompleteTask")
    112             redirect(controller:"taskDetailed", action:"show", id: taskInstance.id)
     113            response.status = 403
     114            params.errorMessage = g.message(code:"task.operationNotPermittedOnCompleteTask")
     115            render(template: "/shared/messages")
    113116            return
    114117        }
    115118
     119        // Success.
    116120        def entryInstance = new Entry()
    117121        entryInstance.task = taskInstance
     
    119123        render(template: "create", model: ['entryInstance': entryInstance])
    120124    }
     125
     126    def ajaxSave = {
     127        def result = taskService.saveEntry(params)
     128
     129        // Success.
     130        if(!result.error) {
     131            def entryList = Entry.withCriteria {
     132                                                                eq("entryType", result.entryInstance.entryType)
     133                                                                task {
     134                                                                    idEq(result.taskId)
     135                                                                }
     136                                                        }
     137            render(template: "list", model: ['entryList': entryList])
     138            return
     139        }
     140
     141        if(result.error.code != "default.create.failure") {
     142            response.status = 403
     143            params.errorMessage = g.message(code: result.error.code)
     144            render(template: "/shared/messages")
     145            return
     146        }
     147
     148        response.status = 403
     149        render(template: "create", model: ['entryInstance': result.entryInstance])
     150    } // ajaxSave
    121151
    122152    def create = {
Note: See TracChangeset for help on using the changeset viewer.