Ignore:
Timestamp:
Jun 11, 2010, 4:22:26 PM (12 years ago)
Author:
roberth
Message:

Added boolean template field type

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/grails-app/domain/dbnp/studycapturing/TemplateEntity.groovy

    r550 r559  
    2121        Map templateDoubleFields = [:]
    2222        Map templateDateFields = [:]
     23        Map templateBooleanFields = [:]
    2324
    2425        // N.B. If you try to set Long.MIN_VALUE for a reltime field, an error will occur
     
    3940                templateRelTimeFields: long,
    4041                templateFileFields: String,
     42                templateBooleanFields: boolean,
    4143                systemFields: TemplateField
    4244        ]
     
    291293
    292294                        // got an error, or not?
     295                        return (!error)
     296                })
     297                templateBooleanFields(validator: { fields, obj, errors ->
     298                        def error = false
     299                        fields.each { key, value ->
     300                                if (value) {
     301                                        fields[key] = true;
     302                                } else {
     303                                        fields[key] = false;
     304                                }
     305                        }
    293306                        return (!error)
    294307                })
     
    324337                        case TemplateFieldType.ONTOLOGYTERM:
    325338                                return templateTermFields
     339                        case TemplateFieldType.BOOLEAN:
     340                                return templateBooleanFields
    326341                        default:
    327342                                throw new NoSuchFieldException("Field type ${fieldType} not recognized")
     
    402417                // get the template field
    403418                TemplateField field = getField(this.giveFields(), fieldName)
     419
     420                if( field.type == TemplateFieldType.BOOLEAN ) {
     421                        println( 'Boolean: ' + fieldName + " - " + value );
     422                }
    404423
    405424                // Convenience setter for template string list fields: find TemplateFieldListItem by name
     
    531550                                                this[field.name] = 0;
    532551                                                break;
     552                                        case [ 'BOOLEAN' ]:
     553                                                this[field.name] = false;
     554                                                break;
    533555                                        default:
    534556                                                this[field.name] = null
Note: See TracChangeset for help on using the changeset viewer.