source: trunk/grails-app/controllers/AssetSubItemExtendedAttributeController.groovy @ 306

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

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

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