This commit is contained in:
@@ -2,7 +2,7 @@ from django.contrib import admin,messages
|
|||||||
from django.utils.translation import ngettext
|
from django.utils.translation import ngettext
|
||||||
from prompt_toolkit.shortcuts import print_container
|
from prompt_toolkit.shortcuts import print_container
|
||||||
from .models import SimpsonsData,simpsons_data_object
|
from .models import SimpsonsData,simpsons_data_object
|
||||||
from .utils import mark_episode_watched
|
from .utils import mark_episode_watched,unwatch_all_episodes
|
||||||
from import_export import resources
|
from import_export import resources
|
||||||
from import_export.admin import ImportExportModelAdmin
|
from import_export.admin import ImportExportModelAdmin
|
||||||
# Register your models here.
|
# Register your models here.
|
||||||
@@ -50,16 +50,17 @@ def make_unseen(modeladmin, request, queryset):
|
|||||||
messages.SUCCESS,
|
messages.SUCCESS,
|
||||||
)
|
)
|
||||||
|
|
||||||
@admin.action(description="create_entry")
|
@admin.action(description="mark all of them as unseen on betaserie")
|
||||||
def create_entry(modeladmin, request, queryset):
|
def unseen_betaserie(modeladmin, request, queryset):
|
||||||
simpsons_data_object.create(season=2, episode=3, url="google.com", seen=True)
|
unwatch_all_episodes()
|
||||||
|
|
||||||
|
|
||||||
@admin.register(SimpsonsData)
|
@admin.register(SimpsonsData)
|
||||||
class EpisodeAdmin(ImportExportModelAdmin):
|
class EpisodeAdmin(ImportExportModelAdmin):
|
||||||
list_display = [field.name for field in SimpsonsData._meta.fields if field.name != 'id']
|
list_display = [field.name for field in SimpsonsData._meta.fields if field.name != 'id']
|
||||||
list_filter = ['seen']
|
list_filter = ['seen']
|
||||||
fields = ['season', 'episode', 'url', 'seen']
|
fields = ['season', 'episode', 'url', 'seen']
|
||||||
actions = [make_seen,make_unseen,create_entry]
|
actions = [make_seen,make_unseen,unseen_betaserie]
|
||||||
|
|
||||||
def get_queryset(self, request):
|
def get_queryset(self, request):
|
||||||
return super().get_queryset(request).using(DB)
|
return super().get_queryset(request).using(DB)
|
||||||
|
|||||||
@@ -1,5 +1,8 @@
|
|||||||
from apps.betaserie.utils import betaserieUtils
|
from apps.betaserie.utils import betaserieUtils
|
||||||
|
from django.db.models import Count
|
||||||
from celery.worker.state import active_requests
|
from celery.worker.state import active_requests
|
||||||
|
from requests.compat import str
|
||||||
|
from .models import simpsons_data_object
|
||||||
|
|
||||||
betaserie = betaserieUtils()
|
betaserie = betaserieUtils()
|
||||||
|
|
||||||
@@ -19,4 +22,16 @@ def mark_episode_watched(season,episode,action):
|
|||||||
elif action == "unwatched":
|
elif action == "unwatched":
|
||||||
betaserie.unmark_episodes_watched(episode_id)
|
betaserie.unmark_episodes_watched(episode_id)
|
||||||
else:
|
else:
|
||||||
print("Parameter action not in range")
|
print("Parameter action not in range")
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
def unwatch_all_episodes():
|
||||||
|
maximum_number_of_seasons = simpsons_data_object.aggregate(unique_season=Count('season', distinct=True))['unique_season']
|
||||||
|
print("maximum_number_of_seasons: "+str(maximum_number_of_seasons))
|
||||||
|
for season in range(1,maximum_number_of_seasons+1):
|
||||||
|
maximum_number_of_episodes = simpsons_data_object.filter(season=season).count()
|
||||||
|
print("maximum_number_of_episodes for "+str(season)+": "+str(maximum_number_of_episodes))
|
||||||
|
for episode in range(1,maximum_number_of_episodes+1):
|
||||||
|
print("S"+str(season)+"E"+str(episode))
|
||||||
|
mark_episode_watched(season,episode,"unwatched")
|
||||||
|
|||||||
@@ -1,7 +1,8 @@
|
|||||||
from django.http import HttpResponse
|
from django.http import HttpResponse
|
||||||
from django.db.models import Count
|
from django.db.models import Count
|
||||||
from django.shortcuts import redirect
|
from django.shortcuts import redirect
|
||||||
from apps.random_simpsons.models import SimpsonsData,simpsons_data_object
|
from .models import SimpsonsData,simpsons_data_object
|
||||||
|
from .utils import mark_episode_watched
|
||||||
import random
|
import random
|
||||||
|
|
||||||
|
|
||||||
@@ -36,6 +37,9 @@ def episode_generator(request):
|
|||||||
# It will still update an already seem episode but it works and I'm lazy
|
# It will still update an already seem episode but it works and I'm lazy
|
||||||
|
|
||||||
simpsons_data_object.filter(season=random_seasons, episode=random_episode).values('seen').update(seen=True)
|
simpsons_data_object.filter(season=random_seasons, episode=random_episode).values('seen').update(seen=True)
|
||||||
|
|
||||||
|
#Mark episode as seen on betaseries
|
||||||
|
mark_episode_watched(random_seasons,random_episode,"watched")
|
||||||
|
|
||||||
return redirect(str(random_url))
|
return redirect(str(random_url))
|
||||||
|
|
||||||
@@ -60,3 +64,4 @@ def download_mo(request,file):
|
|||||||
file_name = file[5:]
|
file_name = file[5:]
|
||||||
response['Content-Disposition'] = 'inline; filename=' + file_name
|
response['Content-Disposition'] = 'inline; filename=' + file_name
|
||||||
return response
|
return response
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user