mirror of
https://github.com/chibicitiberiu/ytsm.git
synced 2024-02-24 05:43:31 +00:00
Added docker support
This commit is contained in:
102
app/YtManagerApp/migrations/0001_initial.py
Normal file
102
app/YtManagerApp/migrations/0001_initial.py
Normal file
@ -0,0 +1,102 @@
|
||||
# Generated by Django 2.1.2 on 2018-10-11 00:19
|
||||
|
||||
from django.conf import settings
|
||||
from django.db import migrations, models
|
||||
import django.db.models.deletion
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
initial = True
|
||||
|
||||
dependencies = [
|
||||
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.CreateModel(
|
||||
name='Channel',
|
||||
fields=[
|
||||
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('channel_id', models.TextField(unique=True)),
|
||||
('username', models.TextField(null=True, unique=True)),
|
||||
('custom_url', models.TextField(null=True, unique=True)),
|
||||
('name', models.TextField()),
|
||||
('description', models.TextField()),
|
||||
('icon_default', models.TextField()),
|
||||
('icon_best', models.TextField()),
|
||||
('upload_playlist_id', models.TextField()),
|
||||
],
|
||||
),
|
||||
migrations.CreateModel(
|
||||
name='Subscription',
|
||||
fields=[
|
||||
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('name', models.TextField()),
|
||||
('playlist_id', models.TextField(unique=True)),
|
||||
('description', models.TextField()),
|
||||
('icon_default', models.TextField()),
|
||||
('icon_best', models.TextField()),
|
||||
('auto_download', models.BooleanField(null=True)),
|
||||
('download_limit', models.IntegerField(null=True)),
|
||||
('download_order', models.TextField(null=True)),
|
||||
('manager_delete_after_watched', models.BooleanField(null=True)),
|
||||
('channel', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='YtManagerApp.Channel')),
|
||||
],
|
||||
),
|
||||
migrations.CreateModel(
|
||||
name='SubscriptionFolder',
|
||||
fields=[
|
||||
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('name', models.TextField()),
|
||||
('parent', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='YtManagerApp.SubscriptionFolder')),
|
||||
],
|
||||
),
|
||||
migrations.CreateModel(
|
||||
name='UserSettings',
|
||||
fields=[
|
||||
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('mark_deleted_as_watched', models.BooleanField(null=True)),
|
||||
('delete_watched', models.BooleanField(null=True)),
|
||||
('auto_download', models.BooleanField(null=True)),
|
||||
('download_global_limit', models.IntegerField(null=True)),
|
||||
('download_subscription_limit', models.IntegerField(null=True)),
|
||||
('download_order', models.TextField(null=True)),
|
||||
('download_path', models.TextField(null=True)),
|
||||
('download_file_pattern', models.TextField(null=True)),
|
||||
('download_format', models.TextField(null=True)),
|
||||
('download_subtitles', models.BooleanField(null=True)),
|
||||
('download_autogenerated_subtitles', models.BooleanField(null=True)),
|
||||
('download_subtitles_all', models.BooleanField(null=True)),
|
||||
('download_subtitles_langs', models.TextField(null=True)),
|
||||
('download_subtitles_format', models.TextField(null=True)),
|
||||
('user', models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
|
||||
],
|
||||
),
|
||||
migrations.CreateModel(
|
||||
name='Video',
|
||||
fields=[
|
||||
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('video_id', models.TextField()),
|
||||
('name', models.TextField()),
|
||||
('description', models.TextField()),
|
||||
('watched', models.BooleanField(default=False)),
|
||||
('downloaded_path', models.TextField(blank=True, null=True)),
|
||||
('playlist_index', models.IntegerField()),
|
||||
('publish_date', models.DateTimeField()),
|
||||
('icon_default', models.TextField()),
|
||||
('icon_best', models.TextField()),
|
||||
('subscription', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='YtManagerApp.Subscription')),
|
||||
],
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='subscription',
|
||||
name='parent_folder',
|
||||
field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='YtManagerApp.SubscriptionFolder'),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='subscription',
|
||||
name='user',
|
||||
field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL),
|
||||
),
|
||||
]
|
22
app/YtManagerApp/migrations/0002_subscriptionfolder_user.py
Normal file
22
app/YtManagerApp/migrations/0002_subscriptionfolder_user.py
Normal file
@ -0,0 +1,22 @@
|
||||
# Generated by Django 2.1.2 on 2018-10-11 18:16
|
||||
|
||||
from django.conf import settings
|
||||
from django.db import migrations, models
|
||||
import django.db.models.deletion
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
|
||||
('YtManagerApp', '0001_initial'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AddField(
|
||||
model_name='subscriptionfolder',
|
||||
name='user',
|
||||
field=models.ForeignKey(default=1, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL),
|
||||
preserve_default=False,
|
||||
),
|
||||
]
|
29
app/YtManagerApp/migrations/0003_auto_20181013_2018.py
Normal file
29
app/YtManagerApp/migrations/0003_auto_20181013_2018.py
Normal file
@ -0,0 +1,29 @@
|
||||
# Generated by Django 2.1.2 on 2018-10-13 17:18
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('YtManagerApp', '0002_subscriptionfolder_user'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AddField(
|
||||
model_name='video',
|
||||
name='rating',
|
||||
field=models.FloatField(default=0.5),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='video',
|
||||
name='uploader_name',
|
||||
field=models.TextField(default=None),
|
||||
preserve_default=False,
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='video',
|
||||
name='views',
|
||||
field=models.IntegerField(default=0),
|
||||
),
|
||||
]
|
18
app/YtManagerApp/migrations/0004_auto_20181014_1702.py
Normal file
18
app/YtManagerApp/migrations/0004_auto_20181014_1702.py
Normal file
@ -0,0 +1,18 @@
|
||||
# Generated by Django 2.1.2 on 2018-10-14 14:02
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('YtManagerApp', '0003_auto_20181013_2018'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name='subscriptionfolder',
|
||||
name='name',
|
||||
field=models.CharField(max_length=250),
|
||||
),
|
||||
]
|
134
app/YtManagerApp/migrations/0005_auto_20181026_2013.py
Normal file
134
app/YtManagerApp/migrations/0005_auto_20181026_2013.py
Normal file
@ -0,0 +1,134 @@
|
||||
# Generated by Django 2.1.2 on 2018-10-26 17:13
|
||||
|
||||
from django.db import migrations, models
|
||||
import django.db.models.deletion
|
||||
import django.db.models.functions.text
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('YtManagerApp', '0004_auto_20181014_1702'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterModelOptions(
|
||||
name='subscriptionfolder',
|
||||
options={'ordering': [django.db.models.functions.text.Lower('parent__name'), django.db.models.functions.text.Lower('name')]},
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='subscription',
|
||||
name='auto_download',
|
||||
field=models.BooleanField(blank=True, null=True),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='subscription',
|
||||
name='download_limit',
|
||||
field=models.IntegerField(blank=True, null=True),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='subscription',
|
||||
name='download_order',
|
||||
field=models.CharField(blank=True, choices=[('newest', 'Newest'), ('oldest', 'Oldest'), ('playlist', 'Playlist order'), ('playlist_reverse', 'Reverse playlist order'), ('popularity', 'Popularity'), ('rating', 'Top rated')], max_length=128, null=True),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='subscription',
|
||||
name='icon_best',
|
||||
field=models.CharField(max_length=1024),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='subscription',
|
||||
name='icon_default',
|
||||
field=models.CharField(max_length=1024),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='subscription',
|
||||
name='manager_delete_after_watched',
|
||||
field=models.BooleanField(blank=True, null=True),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='subscription',
|
||||
name='name',
|
||||
field=models.CharField(max_length=1024),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='subscription',
|
||||
name='parent_folder',
|
||||
field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='YtManagerApp.SubscriptionFolder'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='subscription',
|
||||
name='playlist_id',
|
||||
field=models.CharField(max_length=128),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='usersettings',
|
||||
name='auto_download',
|
||||
field=models.BooleanField(blank=True, help_text='Enables or disables automatic downloading.', null=True),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='usersettings',
|
||||
name='delete_watched',
|
||||
field=models.BooleanField(blank=True, help_text='Videos marked as watched are automatically deleted.', null=True),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='usersettings',
|
||||
name='download_autogenerated_subtitles',
|
||||
field=models.BooleanField(blank=True, help_text='Enables downloading the automatically generated subtitle. The flag is passed directly to youtube-dl. You can find more information <a href="https://github.com/rg3/youtube-dl/blob/master/README.md#subtitle-options">here</a>.', null=True),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='usersettings',
|
||||
name='download_file_pattern',
|
||||
field=models.CharField(blank=True, help_text='A pattern which describes how downloaded files are organized. Extensions are automatically appended. You can use the following fields, using the <code>${field}</code> syntax: channel, channel_id, playlist, playlist_id, playlist_index, title, id. Example: <code>${channel}/${playlist}/S01E${playlist_index} - ${title} [${id}]</code>', max_length=1024, null=True),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='usersettings',
|
||||
name='download_format',
|
||||
field=models.CharField(blank=True, help_text='Download format that will be passed to youtube-dl. See the <a href="https://github.com/rg3/youtube-dl/blob/master/README.md#format-selection"> youtube-dl documentation</a> for more details.', max_length=256, null=True),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='usersettings',
|
||||
name='download_global_limit',
|
||||
field=models.IntegerField(blank=True, help_text='Limits the total number of videos downloaded (-1 = no limit).', null=True),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='usersettings',
|
||||
name='download_order',
|
||||
field=models.CharField(blank=True, choices=[('newest', 'Newest'), ('oldest', 'Oldest'), ('playlist', 'Playlist order'), ('playlist_reverse', 'Reverse playlist order'), ('popularity', 'Popularity'), ('rating', 'Top rated')], help_text='The order in which videos will be downloaded.', max_length=100, null=True),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='usersettings',
|
||||
name='download_path',
|
||||
field=models.CharField(blank=True, help_text='Path on the disk where downloaded videos are stored. You can use environment variables using syntax: <code>${env:...}</code>', max_length=1024, null=True),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='usersettings',
|
||||
name='download_subscription_limit',
|
||||
field=models.IntegerField(blank=True, help_text='Limits the number of videos downloaded per subscription (-1 = no limit). This setting can be overriden for each individual subscription in the subscription edit dialog.', null=True),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='usersettings',
|
||||
name='download_subtitles',
|
||||
field=models.BooleanField(blank=True, help_text='Enable downloading subtitles for the videos. The flag is passed directly to youtube-dl. You can find more information <a href="https://github.com/rg3/youtube-dl/blob/master/README.md#subtitle-options">here</a>.', null=True),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='usersettings',
|
||||
name='download_subtitles_all',
|
||||
field=models.BooleanField(blank=True, help_text='If enabled, all the subtitles in all the available languages will be downloaded. The flag is passed directly to youtube-dl. You can find more information <a href="https://github.com/rg3/youtube-dl/blob/master/README.md#subtitle-options">here</a>.', null=True),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='usersettings',
|
||||
name='download_subtitles_format',
|
||||
field=models.CharField(blank=True, help_text='Subtitles format preference. Examples: srt/ass/best The flag is passed directly to youtube-dl. You can find more information <a href="https://github.com/rg3/youtube-dl/blob/master/README.md#subtitle-options">here</a>.', max_length=100, null=True),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='usersettings',
|
||||
name='download_subtitles_langs',
|
||||
field=models.CharField(blank=True, help_text='Comma separated list of languages for which subtitles will be downloaded. The flag is passed directly to youtube-dl. You can find more information <a href="https://github.com/rg3/youtube-dl/blob/master/README.md#subtitle-options">here</a>.', max_length=250, null=True),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='usersettings',
|
||||
name='mark_deleted_as_watched',
|
||||
field=models.BooleanField(blank=True, help_text="When a downloaded video is deleted from the system, it will be marked as 'watched'.", null=True),
|
||||
),
|
||||
]
|
18
app/YtManagerApp/migrations/0006_auto_20181027_0256.py
Normal file
18
app/YtManagerApp/migrations/0006_auto_20181027_0256.py
Normal file
@ -0,0 +1,18 @@
|
||||
# Generated by Django 2.1.2 on 2018-10-26 23:56
|
||||
|
||||
from django.db import migrations
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('YtManagerApp', '0005_auto_20181026_2013'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.RenameField(
|
||||
model_name='subscription',
|
||||
old_name='manager_delete_after_watched',
|
||||
new_name='delete_after_watched',
|
||||
),
|
||||
]
|
32
app/YtManagerApp/migrations/0007_auto_20181029_1638.py
Normal file
32
app/YtManagerApp/migrations/0007_auto_20181029_1638.py
Normal file
@ -0,0 +1,32 @@
|
||||
# Generated by Django 2.1.2 on 2018-10-29 16:38
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('YtManagerApp', '0006_auto_20181027_0256'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.RemoveField(
|
||||
model_name='subscription',
|
||||
name='channel',
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='subscription',
|
||||
name='channel_id',
|
||||
field=models.CharField(default='test', max_length=128),
|
||||
preserve_default=False,
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='subscription',
|
||||
name='channel_name',
|
||||
field=models.CharField(default='Unknown', max_length=1024),
|
||||
preserve_default=False,
|
||||
),
|
||||
migrations.DeleteModel(
|
||||
name='Channel',
|
||||
),
|
||||
]
|
0
app/YtManagerApp/migrations/__init__.py
Normal file
0
app/YtManagerApp/migrations/__init__.py
Normal file
Reference in New Issue
Block a user