From 462a64fd81e93146eac62359facb916742e48ec9 Mon Sep 17 00:00:00 2001 From: Walter Date: Fri, 21 Feb 2025 04:22:28 +0100 Subject: [PATCH] Fixed some bugs --- app/bloonsa_game/models.py | 2 +- app/users/util.py | 7 ++++--- app/users/validators.py | 9 +++++++-- 3 files changed, 12 insertions(+), 6 deletions(-) diff --git a/app/bloonsa_game/models.py b/app/bloonsa_game/models.py index 7072427..afe0842 100644 --- a/app/bloonsa_game/models.py +++ b/app/bloonsa_game/models.py @@ -23,7 +23,7 @@ class Author(ModelWithUpdate): class Level(models.Model): author = models.ForeignKey(Author, on_delete=models.CASCADE) - title = models.CharField(max_length=16) + title = models.CharField(max_length=64) level_id = models.IntegerField() darts = models.SmallIntegerField() target = models.SmallIntegerField() diff --git a/app/users/util.py b/app/users/util.py index 27b1f3a..92fea14 100644 --- a/app/users/util.py +++ b/app/users/util.py @@ -39,12 +39,12 @@ class BloonsaUtil: return player # Update activity timestamp and IP - def tag_player(self, request): + def tag_player(self, player=None, request=None): if not self.tracking: return - if not request.user.is_authenticated: + if request and not request.user.is_authenticated: return - player = self.init_player(request=request) + player = player or self.init_player(request=request) if player.banned: # TODO message popup? logout(request) @@ -61,6 +61,7 @@ class BloonsaUtil: if not request or not request.user.is_authenticated: return player = self.init_player(request=request) + self.tag_player(request=request, player=player) item = Log(player=player, action=action, note=note) diff --git a/app/users/validators.py b/app/users/validators.py index 0cbac16..d8955e6 100644 --- a/app/users/validators.py +++ b/app/users/validators.py @@ -29,5 +29,10 @@ def invitecode_validator(invitecode): if len(invitecode) > 64: raise ValidationError("Invite code too long") - if not InviteCode.objects.filter(code=invitecode).exists(): - raise ValidationError("Invite code doesn't exist") \ No newline at end of file + codeObject = InviteCode.objects.filter(code=invitecode).first() + + if not codeObject: + raise ValidationError("Invite code doesn't exist") + + if not codeObject.active: + raise ValidationError("Invite code inactive") \ No newline at end of file