From 25f79e9e21bb1c90325d0ab256d72179969bd33d Mon Sep 17 00:00:00 2001 From: Walter Date: Tue, 18 Feb 2025 16:02:27 +0100 Subject: [PATCH] Some cleanup with references to player model --- app/bloonsa_api/views.py | 10 ++++---- .../bloonsa_game/modules/profilebox.html | 4 ++-- app/bloonsa_game/views.py | 4 +--- app/users/forms.py | 2 +- .../0024_player_avatar_player_bio.py | 24 +++++++++++++++++++ app/users/util.py | 4 ++-- app/users/views.py | 7 +++--- 7 files changed, 38 insertions(+), 17 deletions(-) create mode 100644 app/users/migrations/0024_player_avatar_player_bio.py diff --git a/app/bloonsa_api/views.py b/app/bloonsa_api/views.py index 70c5ba1..621734a 100644 --- a/app/bloonsa_api/views.py +++ b/app/bloonsa_api/views.py @@ -32,7 +32,7 @@ class LoadLevel(CSRFexemptTemplateView): if request.user.is_authenticated: bloonsa_util.tag_player(request=request) - player: Player = Player.objects.get(user=request.user) + player: Player = request.user.player player.bloonsa_levels_played.add(level) bloonsa_util.log(player=player, action=actions.bloonsa_load_level_by_id, @@ -46,7 +46,7 @@ class RandomLevel(CSRFexemptTemplateView): def post(self, request, *args, **kwargs): if request.user.is_authenticated: bloonsa_util.tag_player(request=request) - player: Player = Player.objects.get(user=request.user) + player: Player = request.user.player level: Level = Level.objects.order_by("?").filter(~Q(played_by=player)).first() if not level: @@ -82,7 +82,7 @@ class CompleteLevel(CSRFexemptTemplateView): pops = int(request.POST.get("pops")) level: Level = Level.objects.get(level_id=level_id) - player: Player = Player.objects.get(user=request.user) + player: Player = request.user.player score = LevelScore.objects.filter(player=player, level=level).first() @@ -137,7 +137,7 @@ class RateLevel(CSRFexemptTemplateView): rating = int(request.POST.get("rating")) level_id = int(request.POST.get("level_id")) level: Level = Level.objects.get(level_id=level_id) - player: Player = Player.objects.get(user=request.user) + player: Player = request.user.player ratingObject = player.bloonsa_level_ratings.filter(level=level).first() bloonsa_util.log(player=player, action=actions.bloonsa_rate_level, @@ -185,7 +185,7 @@ class GetStatusData(CSRFexemptTemplateView): } if request.user.is_authenticated: - player: Player = Player.objects.get(user=request.user) + player: Player = request.user.player score: LevelScore = LevelScore.objects.filter(player=player, level=level).first() level_cleared = player.has_beaten_bloonsa_level(level=level) diff --git a/app/bloonsa_game/templates/bloonsa_game/modules/profilebox.html b/app/bloonsa_game/templates/bloonsa_game/modules/profilebox.html index 4cc014e..8f1cae5 100644 --- a/app/bloonsa_game/templates/bloonsa_game/modules/profilebox.html +++ b/app/bloonsa_game/templates/bloonsa_game/modules/profilebox.html @@ -15,7 +15,7 @@ class="level-plays-img filter-grey" id="profile-plays-img" type="image/svg+xml"> - {{ player.bloonsa_levels_played_count }} + {{ user.player.bloonsa_levels_played_count }} / {{ total_levels }} @@ -24,7 +24,7 @@ class="level-wins-img filter-orange" id="profile-clears-img" type="image/svg+xml"> - {{ player.bloonsa_levels_beaten_count }} + {{ user.player.bloonsa_levels_beaten_count }} / {{ total_levels }} diff --git a/app/bloonsa_game/views.py b/app/bloonsa_game/views.py index 9538ad1..e2f1106 100644 --- a/app/bloonsa_game/views.py +++ b/app/bloonsa_game/views.py @@ -32,13 +32,11 @@ class GameView(TemplateView): action=actions.bloonsa_load_level_by_url, note=level) return render(request, "bloonsa_game/game.html", context={ - "player": player, "total_levels": total_levels, "flashVars": level.get_flash_vars(seperator="&"), }) return render(request, "bloonsa_game/game.html", - context={"player": player, - "total_levels": total_levels,}) + context={"total_levels": total_levels,}) class WIPView(TemplateView): diff --git a/app/users/forms.py b/app/users/forms.py index be33494..25dd0a4 100644 --- a/app/users/forms.py +++ b/app/users/forms.py @@ -71,4 +71,4 @@ class UserLoginForm(AuthenticationForm): ] class UserConfigForm(): - raise NotImplementedError() \ No newline at end of file + ... \ No newline at end of file diff --git a/app/users/migrations/0024_player_avatar_player_bio.py b/app/users/migrations/0024_player_avatar_player_bio.py new file mode 100644 index 0000000..38348a2 --- /dev/null +++ b/app/users/migrations/0024_player_avatar_player_bio.py @@ -0,0 +1,24 @@ +# Generated by Django 5.1.6 on 2025-02-18 14:08 + +import django_resized.forms +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('users', '0023_alter_player_user'), + ] + + operations = [ + migrations.AddField( + model_name='player', + name='avatar', + field=django_resized.forms.ResizedImageField(crop=None, default='default.jpg', force_format='JPEG', keep_meta=False, quality=75, scale=None, size=[256, 256], upload_to='avatars'), + ), + migrations.AddField( + model_name='player', + name='bio', + field=models.TextField(max_length=128, null=True), + ), + ] diff --git a/app/users/util.py b/app/users/util.py index d0817dc..07142af 100644 --- a/app/users/util.py +++ b/app/users/util.py @@ -23,7 +23,7 @@ class BloonsaUtil: def init_player(self, request): if not request.user.is_authenticated: return - player = Player.objects.filter(user=request.user).first() + player = request.user.player if player: return player ip = self.get_ip(request=request) @@ -39,7 +39,7 @@ class BloonsaUtil: return if not request.user.is_authenticated: return - player = Player.objects.filter(user=request.user).first() + player = request.user.player if not player: player = self.init_player(request=request) if player.banned: diff --git a/app/users/views.py b/app/users/views.py index 42dd452..54f27bf 100644 --- a/app/users/views.py +++ b/app/users/views.py @@ -19,9 +19,8 @@ class LoginView(TemplateView): if not form.is_valid(): return render(request=request, template_name="users/login.html", context={"form": form}) user = form.get_user() - player = bloonsa_util.init_player(request=request) login(request=request, user=user) - bloonsa_util.log(player=player, + bloonsa_util.log(player=user.player, action=actions.login) return redirect("bloonsa_game:game") @@ -39,7 +38,8 @@ class RegisterView(TemplateView): user = form.save() player = bloonsa_util.init_player(request=request) login(request=request, user=user) - bloonsa_util.log(player=player, + + bloonsa_util.log(player=user.player, action=actions.login) return redirect("bloonsa_game:game") @@ -70,7 +70,6 @@ class ConfigView(TemplateView): template_name="users/config.html", context={"form": form}) user = form.save() - player = bloonsa_util.init_player(request=request) login(request=request, user=user) #bloonsa_util.log(player=player, # action=actions.login)