+ else:
+ return_fields = self.return_fields.keys()
+
+ # Must query at least person_id, site_ids, and role_ids (see
+ # Person.can_view() and below).
+ if return_fields is not None:
+ added_fields = set(['person_id', 'site_ids', 'role_ids','roles']).difference(return_fields)
+ return_fields += added_fields
+ else:
+ added_fields = []