diff options
| author | jc0b <j@jc0b.computer> | 2020-06-26 12:30:16 +0200 |
|---|---|---|
| committer | jc0b <j@jc0b.computer> | 2020-06-26 12:30:16 +0200 |
| commit | f1017676a150de60b13ff2b33ca83079d87aebfc (patch) | |
| tree | 15c84fd426f65d54c70d405b9a2fc82b579c2812 /opendc/models/user.py | |
| parent | 6f51282cd7c3945ddd0fac68407a7a7be57aa2ba (diff) | |
| parent | 19bede4fc7f7320bb4eb16c3fe1a211b19ab4714 (diff) | |
Merged refactoring changes with upstream
Diffstat (limited to 'opendc/models/user.py')
| -rw-r--r-- | opendc/models/user.py | 18 |
1 files changed, 5 insertions, 13 deletions
diff --git a/opendc/models/user.py b/opendc/models/user.py index ea8b1f3f..cd314457 100644 --- a/opendc/models/user.py +++ b/opendc/models/user.py @@ -1,5 +1,6 @@ from opendc.models.model import Model from opendc.util.database import DB +from opendc.util.exceptions import ClientError from opendc.util.rest import Response @@ -14,21 +15,12 @@ class User(Model): def from_google_id(cls, google_id): return User(DB.fetch_one({'googleId': google_id}, User.collection_name)) - def validate(self, request_google_id=None): - super_validation = super().validate(request_google_id) - - if super_validation is not None: - return super_validation - + def check_correct_user(self, request_google_id): if request_google_id is not None and self.obj['googleId'] != request_google_id: - return Response(403, f'Forbidden from editing user with ID {self.obj["_id"]}.') + raise ClientError(Response(403, f'Forbidden from editing user with ID {self.obj["_id"]}.')) - return None - - def validate_insertion(self): + def check_already_exists(self): existing_user = DB.fetch_one({'googleId': self.obj['googleId']}, self.collection_name) if existing_user is not None: - return Response(409, f'User already exists.') - - return None + raise ClientError(Response(409, 'User already exists.')) |
