fixes, orval, downloader functioning again

This commit is contained in:
2026-04-21 00:47:10 +02:00
parent 659999f4fd
commit cf08dbaf15
93 changed files with 1662 additions and 1333 deletions

View File

@@ -1,5 +1,7 @@
# Generated by Django 5.2.7 on 2025-12-18 15:11
# Generated by Django 5.2.7 on 2026-04-20 17:54
import django.db.models.deletion
from django.conf import settings
from django.db import migrations, models
@@ -8,6 +10,7 @@ class Migration(migrations.Migration):
initial = True
dependencies = [
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
]
operations = [
@@ -18,13 +21,21 @@ class Migration(migrations.Migration):
('is_deleted', models.BooleanField(default=False)),
('deleted_at', models.DateTimeField(blank=True, null=True)),
('url', models.URLField()),
('download_time', models.DateTimeField(auto_now_add=True)),
('title', models.CharField(blank=True, default='', max_length=500)),
('platform', models.CharField(blank=True, default='', help_text='e.g. youtube, tiktok, vimeo', max_length=100)),
('format', models.CharField(max_length=50)),
('length_of_media', models.IntegerField(help_text='Length of media in seconds')),
('file_size', models.BigIntegerField(help_text='File size in bytes')),
('video_quality', models.IntegerField(blank=True, help_text='Video height in pixels (e.g. 1080). Null for audio-only.', null=True)),
('is_audio_only', models.BooleanField(default=False)),
('length_of_media', models.IntegerField(blank=True, help_text='Length of media in seconds', null=True)),
('file_size', models.BigIntegerField(blank=True, help_text='File size in bytes', null=True)),
('processing_time', models.FloatField(blank=True, help_text='Server-side processing time in seconds', null=True)),
('success', models.BooleanField(default=True)),
('error_message', models.TextField(blank=True, default='')),
('download_time', models.DateTimeField(auto_now_add=True)),
('user', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='downloads', to=settings.AUTH_USER_MODEL)),
],
options={
'abstract': False,
'ordering': ['-download_time'],
},
),
]

View File

@@ -1,70 +0,0 @@
# Generated by Django 5.2.7 on 2026-04-19 21:51
import django.db.models.deletion
from django.conf import settings
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('downloader', '0001_initial'),
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
]
operations = [
migrations.AlterModelOptions(
name='downloaderrecord',
options={'ordering': ['-download_time']},
),
migrations.AddField(
model_name='downloaderrecord',
name='error_message',
field=models.TextField(blank=True, default=''),
),
migrations.AddField(
model_name='downloaderrecord',
name='is_audio_only',
field=models.BooleanField(default=False),
),
migrations.AddField(
model_name='downloaderrecord',
name='platform',
field=models.CharField(blank=True, default='', help_text='e.g. youtube, tiktok, vimeo', max_length=100),
),
migrations.AddField(
model_name='downloaderrecord',
name='processing_time',
field=models.FloatField(blank=True, help_text='Server-side processing time in seconds', null=True),
),
migrations.AddField(
model_name='downloaderrecord',
name='success',
field=models.BooleanField(default=True),
),
migrations.AddField(
model_name='downloaderrecord',
name='title',
field=models.CharField(blank=True, default='', max_length=500),
),
migrations.AddField(
model_name='downloaderrecord',
name='user',
field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='downloads', to=settings.AUTH_USER_MODEL),
),
migrations.AddField(
model_name='downloaderrecord',
name='video_quality',
field=models.IntegerField(blank=True, help_text='Video height in pixels (e.g. 1080). Null for audio-only.', null=True),
),
migrations.AlterField(
model_name='downloaderrecord',
name='file_size',
field=models.BigIntegerField(blank=True, help_text='File size in bytes', null=True),
),
migrations.AlterField(
model_name='downloaderrecord',
name='length_of_media',
field=models.IntegerField(blank=True, help_text='Length of media in seconds', null=True),
),
]

View File

@@ -0,0 +1,30 @@
import uuid
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('downloader', '0001_initial'),
]
operations = [
migrations.CreateModel(
name='DownloadJob',
fields=[
('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)),
('status', models.CharField(
choices=[('pending', 'Pending'), ('processing', 'Processing'), ('done', 'Done'), ('error', 'Error')],
default='pending', max_length=20,
)),
('message', models.CharField(blank=True, default='', max_length=500)),
('file_path', models.CharField(blank=True, default='', max_length=1000)),
('filename', models.CharField(blank=True, default='', max_length=500)),
('content_type', models.CharField(blank=True, default='application/octet-stream', max_length=100)),
('file_size', models.BigIntegerField(blank=True, null=True)),
('created_at', models.DateTimeField(auto_now_add=True)),
('updated_at', models.DateTimeField(auto_now=True)),
],
options={'ordering': ['-created_at']},
),
]

View File

@@ -0,0 +1,16 @@
# Generated by Django 5.2.7 on 2026-04-20 20:14
from django.db import migrations
class Migration(migrations.Migration):
dependencies = [
('downloader', '0002_downloadjob'),
]
operations = [
migrations.DeleteModel(
name='DownloadJob',
),
]