Changeset 956


Ignore:
Timestamp:
Jun 30, 2011, 7:04:14 AM (13 years ago)
Author:
gav
Message:

Fix person list filterpane memory bug on associated properties.

Location:
trunk/grails-app
Files:
2 edited

Legend:

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

    r724 r956  
    5353    def list = {
    5454        params.max = Math.min( params.max ? params.max.toInteger() : 10,  100 )
     55        def associatedPropertyMax = 1000
     56        def associatedPropertyValues = [:]
     57        def personGroupNameQuery = 'select distinct a.name from PersonGroup a where a.isActive = ? order by a.name'
     58        associatedPropertyValues.personGroupList = PersonGroup.executeQuery(personGroupNameQuery, [true], [max:associatedPropertyMax])
     59
     60        def authorityQuery = 'select a.authority from Authority a'
     61        associatedPropertyValues.authorityList = Authority.executeQuery(authorityQuery, [max:associatedPropertyMax])
    5562
    5663        if(!params.filter) {
    5764            return [personList: Person.list(params),
    58                             personTotal: Person.count(),
    59                             filterParams: params]
     65                    personTotal: Person.count(),
     66                    associatedPropertyValues: associatedPropertyValues,
     67                    filterParams: params]
    6068        }
    6169
    6270        // filterPane:
    6371        return[ personList: filterService.filter( params, Person ),
    64             personTotal: filterService.count( params, Person ),
    65             filterParams: com.zeddware.grails.plugins.filterpane.FilterUtils.extractFilterParams(params),
    66             params:params ]
     72                personTotal: filterService.count( params, Person ),
     73                associatedPropertyValues: associatedPropertyValues,
     74                filterParams: com.zeddware.grails.plugins.filterpane.FilterUtils.extractFilterParams(params),
     75                params:params ]
    6776    }
    6877
  • trunk/grails-app/views/person/list.gsp

    r836 r956  
    1313
    1414    <div class="body">
    15         <g:if test="${flash.message}">
    16         <div class="message">${flash.message}</div>
    17         </g:if>
     15        <g:render template="/shared/messages" />
     16
    1817        <filterpane:currentCriteria domainBean="Person"
    1918                                action="list"
    2019                                dateFormat="EEE, dd-MMM-yyyy"
    21                                 removeImgDir="images" 
     20                                removeImgDir="images"
    2221                                removeImgFile="bullet_delete.png"
    2322                                title="Search"/>
     
    121120
    122121        <filterpane:filterPane domainBean="Person"
    123                                 title="Search"
    124                                 action="list"
    125                                 class="overlayPane"
    126                                 excludeProperties="password, sessionTimeout"
    127                                 associatedProperties="authorities.authority, personGroups.name"
    128                                     filterPropertyValues="${['personGroups.name':[values:PersonGroup.list()],
    129                                                                                 'authorities.authority':[values:Authority.list()]]}" />
     122                               title="Search"
     123                               action="list"
     124                               class="overlayPane"
     125                               excludeProperties="password, sessionTimeout"
     126                               associatedProperties="authorities.authority, personGroups.name"
     127                               filterPropertyValues="${['personGroups.name':[values: associatedPropertyValues.personGroupList],
     128                                                        'authorities.authority':[values: associatedPropertyValues.authorityList]]}" />
    130129
    131130
Note: See TracChangeset for help on using the changeset viewer.