This commit is contained in:
@@ -5,13 +5,14 @@ from .models import SimpsonsData,simpsons_data_object
|
|||||||
from .utils import mark_episode_watched,unwatch_all_episodes,generate_new_urls_for_episode
|
from .utils import mark_episode_watched,unwatch_all_episodes,generate_new_urls_for_episode
|
||||||
from import_export import resources
|
from import_export import resources
|
||||||
from import_export.admin import ImportExportModelAdmin
|
from import_export.admin import ImportExportModelAdmin
|
||||||
|
from django.utils import timezone
|
||||||
# Register your models here.
|
# Register your models here.
|
||||||
|
|
||||||
DB = 'simpsons_db'
|
DB = 'simpsons_db'
|
||||||
|
|
||||||
@admin.action(description="Mark episode as seen")
|
@admin.action(description="Mark episode as seen")
|
||||||
def make_seen(modeladmin, request, queryset):
|
def make_seen(modeladmin, request, queryset):
|
||||||
updated = queryset.update(seen="True")
|
updated = queryset.update(seen="True",modified_at=timezone.now())
|
||||||
|
|
||||||
for query in queryset.values():
|
for query in queryset.values():
|
||||||
print(query)
|
print(query)
|
||||||
@@ -63,9 +64,11 @@ def generate_new_urls(modeladmin, request, queryset):
|
|||||||
@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','modified_at']
|
||||||
|
#list_filter = ['seen']
|
||||||
fields = ['season', 'episode', 'url', 'seen']
|
fields = ['season', 'episode', 'url', 'seen']
|
||||||
actions = [make_seen,make_unseen,unseen_betaserie,generate_new_urls]
|
actions = [make_seen,make_unseen,unseen_betaserie,generate_new_urls]
|
||||||
|
search_fields = ['season', 'episode', 'url', 'seen']
|
||||||
|
|
||||||
def get_queryset(self, request):
|
def get_queryset(self, request):
|
||||||
return super().get_queryset(request).using(DB)
|
return super().get_queryset(request).using(DB)
|
||||||
|
|||||||
@@ -0,0 +1,18 @@
|
|||||||
|
# Generated by Django 4.2.29 on 2026-07-05 13:32
|
||||||
|
|
||||||
|
from django.db import migrations, models
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
('simpsons', '0001_initial'),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.AddField(
|
||||||
|
model_name='simpsonsdata',
|
||||||
|
name='modified_at',
|
||||||
|
field=models.DateTimeField(auto_now=True),
|
||||||
|
),
|
||||||
|
]
|
||||||
@@ -0,0 +1,19 @@
|
|||||||
|
# Generated by Django 4.2.29 on 2026-07-05 13:40
|
||||||
|
|
||||||
|
import datetime
|
||||||
|
from django.db import migrations, models
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
('simpsons', '0002_simpsonsdata_modified_at'),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='simpsonsdata',
|
||||||
|
name='modified_at',
|
||||||
|
field=models.DateTimeField(default=datetime.datetime(1970, 1, 1, 0, 0)),
|
||||||
|
),
|
||||||
|
]
|
||||||
@@ -0,0 +1,17 @@
|
|||||||
|
# Generated by Django 4.2.29 on 2026-07-05 13:43
|
||||||
|
|
||||||
|
from django.db import migrations
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
('simpsons', '0003_alter_simpsonsdata_modified_at'),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.RemoveField(
|
||||||
|
model_name='simpsonsdata',
|
||||||
|
name='modified_at',
|
||||||
|
),
|
||||||
|
]
|
||||||
@@ -0,0 +1,19 @@
|
|||||||
|
# Generated by Django 4.2.29 on 2026-07-05 13:43
|
||||||
|
|
||||||
|
import datetime
|
||||||
|
from django.db import migrations, models
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
('simpsons', '0004_remove_simpsonsdata_modified_at'),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.AddField(
|
||||||
|
model_name='simpsonsdata',
|
||||||
|
name='modified_at',
|
||||||
|
field=models.DateTimeField(default=datetime.datetime(1970, 1, 1, 0, 0)),
|
||||||
|
),
|
||||||
|
]
|
||||||
@@ -1,11 +1,12 @@
|
|||||||
from django.db import models
|
from django.db import models
|
||||||
|
from datetime import datetime
|
||||||
|
|
||||||
class SimpsonsData(models.Model):
|
class SimpsonsData(models.Model):
|
||||||
season = models.IntegerField()
|
season = models.IntegerField()
|
||||||
episode = models.IntegerField()
|
episode = models.IntegerField()
|
||||||
url = models.CharField(max_length=1000)
|
url = models.CharField(max_length=1000)
|
||||||
seen = models.BooleanField()
|
seen = models.BooleanField()
|
||||||
|
modified_at = models.DateTimeField(default=datetime.fromtimestamp(0))
|
||||||
class Meta:
|
class Meta:
|
||||||
db_table = 'episodes'
|
db_table = 'episodes'
|
||||||
|
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ from django.db.models import Count
|
|||||||
from django.core.exceptions import MultipleObjectsReturned
|
from django.core.exceptions import MultipleObjectsReturned
|
||||||
from celery.worker.state import active_requests
|
from celery.worker.state import active_requests
|
||||||
from requests.compat import str
|
from requests.compat import str
|
||||||
|
from django.utils import timezone
|
||||||
from apps.betaserie.utils import betaserieUtils
|
from apps.betaserie.utils import betaserieUtils
|
||||||
from .models import simpsons_data_object
|
from .models import simpsons_data_object
|
||||||
|
|
||||||
@@ -12,7 +13,7 @@ simpsons_id = 12
|
|||||||
|
|
||||||
def mark_episode_watched(season,episode,action,verbose=False):
|
def mark_episode_watched(season,episode,action,verbose=False):
|
||||||
#mark episode as seen in DB
|
#mark episode as seen in DB
|
||||||
simpsons_data_object.filter(season=season, episode=episode).values('seen').update(seen=True)
|
simpsons_data_object.filter(season=season, episode=episode).values('seen').update(seen=True,modified_at=timezone.now())
|
||||||
|
|
||||||
|
|
||||||
if verbose : print("season_number: "+str(season))
|
if verbose : print("season_number: "+str(season))
|
||||||
|
|||||||
@@ -0,0 +1,18 @@
|
|||||||
|
# Generated by Django 4.2.29 on 2026-07-05 13:32
|
||||||
|
|
||||||
|
from django.db import migrations, models
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
('redirect', '0001_initial'),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='redirectdata',
|
||||||
|
name='addedDate',
|
||||||
|
field=models.DateField(auto_now_add=True, null=True, verbose_name='Published'),
|
||||||
|
),
|
||||||
|
]
|
||||||
Reference in New Issue
Block a user