Ignore:
Timestamp:
Jan 21, 2010, 1:56:10 PM (10 years ago)
Author:
duh
Message:
  • added error handling to the wizard
  • changed jquery-ui interface style to Redmond
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/grails-app/controllers/dbnp/studycapturing/WizardController.groovy

    r101 r103  
    4848                        flow.page = 0
    4949                        flow.pages = [
    50                                 [title: 'Een'],
     50                                [title: 'Study'],
    5151                                [title: 'Twoooo'],
    5252                                [title: 'Trois']
     
    6161                                flow.page = 1
    6262                        }
    63                         on("next").to "pageOne"
     63                        on("next").to "study"
    6464                }
    6565
    66                 pageOne {
    67                         render(view: "_one")
     66                study {
     67                        render(view: "_study")
    6868                        onRender {
    6969                                println "render page one"
     
    7272                        on("next") {
    7373                                // create a study instance
    74                                 /*
    7574                                println params
    76                                 def study = new Study(params)
     75                                flow.study = new Study(params)
    7776
    78                                
    79                                 if (study.validate()) {
     77                                // validate study
     78                                if (flow.study.validate()) {
    8079                                        println "study validates"
    8180                                } else {
     81                                        // validation failed, feedback errors
     82                                        flash.errors = new LinkedHashMap()
     83                                        this.appendErrors(flow.study,flash.errors)
    8284                                        println "errorrrs"
     85                                        println flash.errors
    8386                                        error()
    8487                                }
    85                                 */
    8688                        }.to "pageTwo"
    8789                }
     
    99101                        on("previous") {
    100102                                println "previous page!"
    101                         }.to "pageOne"
     103                        }.to "study"
    102104                }
    103105
     
    114116                }
    115117        }
     118
     119        /**
     120         * transform domain class validation errors into a human readable
     121         * linked hash map
     122         * @param object validated domain class
     123         * @returns object  linkedHashMap
     124         */
     125        def getHumanReadableErrors(object) {
     126                def errors = new LinkedHashMap()
     127
     128                object.errors.getAllErrors().each() {
     129                        errors[it.getArguments()[0]] = it.getDefaultMessage()
     130                }
     131
     132                return errors
     133        }
     134
     135        /**
     136         * append errors of a particular object to a map
     137         * @param object
     138         * @param map linkedHashMap
     139         * @void
     140         */
     141        def appendErrors(object, map) {
     142                this.appendErrorMap(this.getHumanReadableErrors(object), map)
     143        }
     144
     145        /**
     146         * append errors of one map to another map
     147         * @param map linkedHashMap
     148         * @param map linkedHashMap
     149         * @void
     150         */
     151        def appendErrorMap(map, mapToExtend) {
     152                map.each() {key, value ->
     153                        mapToExtend[key] = value
     154                }
     155        }
     156
    116157}
Note: See TracChangeset for help on using the changeset viewer.