Changeset 1623

Show
Ignore:
Timestamp:
11-03-11 12:40:10 (3 years ago)
Author:
work@…
Message:

- resolves #354

Files:
1 modified

Legend:

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

    r1621 r1623  
    456456                // Administrators are allowed to read everything 
    457457                if (user.hasAdminRights()) { 
    458                         return c.list { 
     458                        return c.listDistinct { 
    459459                                maxResults(max) 
    460460                                order("title", "asc") 
     
    463463                } 
    464464 
    465                 return c.list { 
     465                return c.listDistinct { 
    466466                        maxResults(max) 
    467467                        order("title", "asc") 
     
    483483                // Administrators are allowed to read everything 
    484484                if (user == null) { 
    485                         return c.list { 
     485                        return c.listDistinct { 
    486486                                maxResults(max) 
    487487                                firstResult(offset) 
     
    493493                        }.unique() 
    494494                } else if (user.hasAdminRights()) { 
    495                         return c.list { 
     495                        return c.listDistinct { 
    496496                                maxResults(max) 
    497497                                firstResult(offset) 
     
    499499                        }.unique() 
    500500                } else { 
    501                         return c.list { 
     501                        return c.listDistinct { 
    502502                                maxResults(max) 
    503503                                firstResult(offset) 
     
    529529                if (user == null) { 
    530530                        // regular user 
    531                         return c.list { 
     531                        return c.listDistinct { 
    532532                                or { 
    533533                                        ilike("title", "%${query}%") 
     
    541541                } else if (user.hasAdminRights()) { 
    542542                        // admin can search everything 
    543                         return c.list { 
     543                        return c.listDistinct { 
    544544                                or { 
    545545                                        ilike("title", "%${query}%") 
     
    548548                        } 
    549549                } else { 
    550                         return c.list { 
     550                        return c.listDistinct { 
    551551                                or { 
    552552                                        ilike("title", "%${query}%") 
     
    579579        public static countPublicStudies(boolean published) { 
    580580                def c = Study.createCriteria() 
    581                 return c.count { 
     581                return (c.listDistinct { 
    582582                        and { 
    583583                                eq("published", published) 
    584584                                eq("publicstudy", true) 
    585585                        } 
    586                 } 
     586                }).size() 
    587587        } 
    588588 
     
    594594        public static countPrivateStudies(boolean published) { 
    595595                def c = Study.createCriteria() 
    596                 return c.count { 
     596                return (c.listDistinct { 
    597597                        and { 
    598598                                eq("publicstudy", false) 
     
    602602                                eq("publicstudy", true) 
    603603                        } 
    604                 } 
     604                }).size() 
    605605        } 
    606606 
     
    623623                        return Study.count() 
    624624                } else { 
    625                         return c.count { 
     625                        return (c.listDistinct { 
    626626                                or { 
    627627                                        eq("owner", user) 
     
    636636                                        } 
    637637                                } 
    638                         } 
     638                        }).size() 
    639639                } 
    640640        } 
     
    652652                        return Study.count() 
    653653                } else { 
    654                         return c.count { 
     654                        return (c.listDistinct { 
    655655                                or { 
    656656                                        eq("owner", user) 
     
    659659                                        } 
    660660                                } 
    661                         } 
     661                        }).size() 
    662662                } 
    663663        }