~syst3mw0rm/mailman/bug-890675

« back to all changes in this revision

Viewing changes to src/mailman/rest/addresses.py

  • Committer: Barry Warsaw
  • Date: 2011-10-24 02:10:36 UTC
  • mfrom: (7059.1.8 postgres)
  • Revision ID: barry@list.org-20111024021036-aify9cmomf76w4hm
PostgreSQL support contributed by Stephen A. Goss, with refactoring and test
suite compliance by Barry. (LP: #860159)

Show diffs side-by-side

added added

removed removed

Lines of Context:
137
137
 
138
138
 
139
139
 
 
140
def membership_key(member):
 
141
    # Sort first by mailing list, then by address, then by role.
 
142
    return member.mailing_list, member.address.email, int(member.role)
 
143
 
 
144
 
140
145
class AddressMemberships(MemberCollection):
141
146
    """All the memberships of a particular email address."""
142
147
 
157
162
        user = getUtility(IUserManager).get_user(self._address.email)
158
163
        if user is None:
159
164
            return []
160
 
        return [member for member in user.memberships.members
161
 
                if member.address == self._address]
 
165
        return sorted((member for member in user.memberships.members
 
166
                       if member.address == self._address),
 
167
                      key=membership_key)