# HG changeset patch # User Sverre Rabbelier # Date 1225666612 0 # Node ID a4fc430fefac67f678e1dec6ecd3fb6beb81a891 # Parent 001b981be45e6e4ce01b8bacf8799005edb2ea81 Added key field definitions to the User logic This is the first part of making the User views generic. diff -r 001b981be45e -r a4fc430fefac app/soc/logic/models/user.py --- a/app/soc/logic/models/user.py Sun Nov 02 22:56:28 2008 +0000 +++ b/app/soc/logic/models/user.py Sun Nov 02 22:56:52 2008 +0000 @@ -40,6 +40,29 @@ self._model = soc.models.user.User self._skip_properties = ['former_ids'] + def getKeyValues(self, entity): + """See base.Logic.getKeyNameValues. + """ + + return [entity.link_name] + + def getKeyValuesFromFields(self, fields): + """See base.Logic.getKeyValuesFromFields. + """ + + properties = { + 'link_name': fields['link_name'] + } + + entity = self.getForFields(properties, unique=True) + return [entity.id.email()] + + def getKeyFieldNames(self): + """See base.Logic.getKeyFieldNames + """ + + return ['email'] + def _updateField(self, model, name, value): """Special case logic for id.