From ed70f03a8338ef421afae12e39c605d54fcac4c5 Mon Sep 17 00:00:00 2001 From: pierregeeraert Date: Thu, 25 Jun 2026 13:56:25 +0100 Subject: [PATCH] add options for the admin page --- django_code/apps/random_simpsons/admin.py | 15 +++++++++++++++ django_code/apps/random_simpsons/utils.py | 22 ++++++++++++++++++++++ 2 files changed, 37 insertions(+) diff --git a/django_code/apps/random_simpsons/admin.py b/django_code/apps/random_simpsons/admin.py index ec531a6..3fcb5be 100644 --- a/django_code/apps/random_simpsons/admin.py +++ b/django_code/apps/random_simpsons/admin.py @@ -1,6 +1,8 @@ from django.contrib import admin,messages from django.utils.translation import ngettext +from prompt_toolkit.shortcuts import print_container from .models import SimpsonsData,simpsons_data_object +from .utils import mark_episode_watched from import_export import resources from import_export.admin import ImportExportModelAdmin # Register your models here. @@ -10,6 +12,13 @@ DB = 'simpsons_db' @admin.action(description="Mark episode as seen") def make_seen(modeladmin, request, queryset): updated = queryset.update(seen="True") + + for query in queryset.values(): + print(query) + season_number = query.get('season') + episode_number = query.get('episode') + mark_episode_watched(season_number,episode_number,"watched") + modeladmin.message_user( request, ngettext( @@ -24,6 +33,12 @@ def make_seen(modeladmin, request, queryset): @admin.action(description="Mark episode as not seen") def make_unseen(modeladmin, request, queryset): updated = queryset.update(seen="False") + for query in queryset.values(): + print(query) + season_number = query.get('season') + episode_number = query.get('episode') + mark_episode_watched(season_number,episode_number,"unwatched") + modeladmin.message_user( request, ngettext( diff --git a/django_code/apps/random_simpsons/utils.py b/django_code/apps/random_simpsons/utils.py index e69de29..66c599f 100644 --- a/django_code/apps/random_simpsons/utils.py +++ b/django_code/apps/random_simpsons/utils.py @@ -0,0 +1,22 @@ +from apps.betaserie.utils import betaserieUtils +from celery.worker.state import active_requests + +betaserie = betaserieUtils() + +simpsons_id = 12 + +def mark_episode_watched(season,episode,action): + + print("season_number: "+str(season)) + print("episode_number: "+str(episode)) + + episode_number = "S"+str(season)+"E"+str(episode) + + episode_id = betaserie.identify_episode(simpsons_id,episode_number) + + if action == "watched": + betaserie.mark_episodes_watched(episode_id) + elif action == "unwatched": + betaserie.unmark_episodes_watched(episode_id) + else: + print("Parameter action not in range") \ No newline at end of file