source: trunk/grails-app/controllers/ExtendedAttributeTypeController.groovy @ 268

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

Refactor classes for asset tree refinement.
Regenerate views and controllers to suite.

File size: 4.1 KB
Line 
1import org.codehaus.groovy.grails.plugins.springsecurity.Secured
2
3class ExtendedAttributeTypeController extends BaseAppAdminController {
4   
5    def index = { redirect(action:list,params:params) }
6
7    // the delete, save and update actions only accept POST requests
8    static allowedMethods = [delete:'POST', save:'POST', update:'POST']
9
10    def list = {
11        params.max = Math.min( params.max ? params.max.toInteger() : 10,  100)
12        [ extendedAttributeTypeInstanceList: ExtendedAttributeType.list( params ), extendedAttributeTypeInstanceTotal: ExtendedAttributeType.count() ]
13    }
14
15    def show = {
16        def extendedAttributeTypeInstance = ExtendedAttributeType.get( params.id )
17
18        if(!extendedAttributeTypeInstance) {
19            flash.message = "ExtendedAttributeType not found with id ${params.id}"
20            redirect(action:list)
21        }
22        else { return [ extendedAttributeTypeInstance : extendedAttributeTypeInstance ] }
23    }
24
25    def delete = {
26        def extendedAttributeTypeInstance = ExtendedAttributeType.get( params.id )
27        if(extendedAttributeTypeInstance) {
28            try {
29                extendedAttributeTypeInstance.delete(flush:true)
30                flash.message = "ExtendedAttributeType ${params.id} deleted"
31                redirect(action:list)
32            }
33            catch(org.springframework.dao.DataIntegrityViolationException e) {
34                flash.message = "ExtendedAttributeType ${params.id} could not be deleted"
35                redirect(action:show,id:params.id)
36            }
37        }
38        else {
39            flash.message = "ExtendedAttributeType not found with id ${params.id}"
40            redirect(action:list)
41        }
42    }
43
44    def edit = {
45        def extendedAttributeTypeInstance = ExtendedAttributeType.get( params.id )
46
47        if(!extendedAttributeTypeInstance) {
48            flash.message = "ExtendedAttributeType not found with id ${params.id}"
49            redirect(action:list)
50        }
51        else {
52            return [ extendedAttributeTypeInstance : extendedAttributeTypeInstance ]
53        }
54    }
55
56    def update = {
57        def extendedAttributeTypeInstance = ExtendedAttributeType.get( params.id )
58        if(extendedAttributeTypeInstance) {
59            if(params.version) {
60                def version = params.version.toLong()
61                if(extendedAttributeTypeInstance.version > version) {
62                   
63                    extendedAttributeTypeInstance.errors.rejectValue("version", "extendedAttributeType.optimistic.locking.failure", "Another user has updated this ExtendedAttributeType while you were editing.")
64                    render(view:'edit',model:[extendedAttributeTypeInstance:extendedAttributeTypeInstance])
65                    return
66                }
67            }
68            extendedAttributeTypeInstance.properties = params
69            if(!extendedAttributeTypeInstance.hasErrors() && extendedAttributeTypeInstance.save(flush: true)) {
70                flash.message = "ExtendedAttributeType ${params.id} updated"
71                redirect(action:show,id:extendedAttributeTypeInstance.id)
72            }
73            else {
74                render(view:'edit',model:[extendedAttributeTypeInstance:extendedAttributeTypeInstance])
75            }
76        }
77        else {
78            flash.message = "ExtendedAttributeType not found with id ${params.id}"
79            redirect(action:list)
80        }
81    }
82
83    def create = {
84        def extendedAttributeTypeInstance = new ExtendedAttributeType()
85        extendedAttributeTypeInstance.properties = params
86        return ['extendedAttributeTypeInstance':extendedAttributeTypeInstance]
87    }
88
89    def save = {
90        def extendedAttributeTypeInstance = new ExtendedAttributeType(params)
91        if(!extendedAttributeTypeInstance.hasErrors() && extendedAttributeTypeInstance.save(flush: true)) {
92            flash.message = "ExtendedAttributeType ${extendedAttributeTypeInstance.id} created"
93            redirect(action:show,id:extendedAttributeTypeInstance.id)
94        }
95        else {
96            render(view:'create',model:[extendedAttributeTypeInstance:extendedAttributeTypeInstance])
97        }
98    }
99}
Note: See TracBrowser for help on using the repository browser.