# Generated by Django 5.2 on 2025-05-06 01:44

import django.db.models.deletion
from django.conf import settings
from django.db import migrations, models


class Migration(migrations.Migration):

    initial = True

    dependencies = [
        migrations.swappable_dependency(settings.AUTH_USER_MODEL),
    ]

    operations = [
        migrations.CreateModel(
            name='LinkGroup',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('title', models.CharField(help_text='Название группы', max_length=100)),
                ('order', models.PositiveIntegerField(default=0, help_text='Порядок сортировки')),
                ('image', models.ImageField(blank=True, help_text='Изображение группы ссылок', null=True, upload_to='link_groups/')),
                ('created_at', models.DateTimeField(auto_now_add=True, help_text='Дата и время создания')),
                ('updated_at', models.DateTimeField(auto_now=True, help_text='Дата и время последнего обновления')),
                ('is_active', models.BooleanField(default=True, help_text='Активность группы ссылок')),
                ('description', models.TextField(blank=True, help_text='Описание группы ссылок')),
                ('is_public', models.BooleanField(default=False, help_text='Публичная группа ссылок')),
                ('is_featured', models.BooleanField(default=False, help_text='Выделенная группа ссылок')),
                ('is_private', models.BooleanField(default=False, help_text='Закрытая группа ссылок')),
                ('is_password_protected', models.BooleanField(default=False, help_text='Группа ссылок защищена паролем')),
                ('password', models.CharField(blank=True, help_text='Пароль для доступа к группе ссылок', max_length=128)),
                ('is_approved', models.BooleanField(default=False, help_text='Группа ссылок одобрена администратором')),
                ('is_rejected', models.BooleanField(default=False, help_text='Группа ссылок отклонена администратором')),
                ('is_deleted', models.BooleanField(default=False, help_text='Группа ссылок удалена')),
                ('is_archived', models.BooleanField(default=False, help_text='Группа ссылок архивирована')),
                ('is_scheduled', models.BooleanField(default=False, help_text='Группа ссылок запланирована на публикацию')),
                ('scheduled_at', models.DateTimeField(blank=True, help_text='Дата и время запланированной публикации', null=True)),
                ('is_expired', models.BooleanField(default=False, help_text='Группа ссылок истекла')),
                ('expiration_date', models.DateTimeField(blank=True, help_text='Дата и время истечения срока действия группы ссылок', null=True)),
                ('is_featured_on_homepage', models.BooleanField(default=False, help_text='Группа ссылок выделена на главной странице')),
                ('is_featured_on_profile', models.BooleanField(default=False, help_text='Группа ссылок выделена на профиле пользователя')),
                ('is_featured_on_category', models.BooleanField(default=False, help_text='Группа ссылок выделена в категории')),
                ('is_featured_on_tag', models.BooleanField(default=False, help_text='Группа ссылок выделена по тегу')),
                ('is_featured_on_search', models.BooleanField(default=False, help_text='Группа ссылок выделена в результатах поиска')),
                ('is_featured_on_related', models.BooleanField(default=False, help_text='Группа ссылок выделена в связанных ссылках')),
                ('is_featured_on_recommended', models.BooleanField(default=False, help_text='Группа ссылок выделена в рекомендуемых ссылках')),
                ('is_featured_on_popular', models.BooleanField(default=False, help_text='Группа ссылок выделена в популярных ссылках')),
                ('is_featured_on_trending', models.BooleanField(default=False, help_text='Группа ссылок выделена в трендовых ссылках')),
                ('is_featured_on_new', models.BooleanField(default=False, help_text='Группа ссылок выделена в новых ссылках')),
                ('is_featured_on_top', models.BooleanField(default=False, help_text='Группа ссылок выделена в верхних ссылках')),
                ('is_featured_on_bottom', models.BooleanField(default=False, help_text='Группа ссылок выделена в нижних ссылках')),
                ('is_featured_on_sidebar', models.BooleanField(default=False, help_text='Группа ссылок выделена в боковой панели')),
                ('is_featured_on_footer', models.BooleanField(default=False, help_text='Группа ссылок выделена в нижнем колонтитуле')),
                ('is_featured_on_header', models.BooleanField(default=False, help_text='Группа ссылок выделена в верхнем колонтитуле')),
                ('is_featured_on_banner', models.BooleanField(default=False, help_text='Группа ссылок выделена в баннере')),
                ('is_featured_on_popup', models.BooleanField(default=False, help_text='Группа ссылок выделена в всплывающем окне')),
                ('is_featured_on_modal', models.BooleanField(default=False, help_text='Группа ссылок выделена в модальном окне')),
                ('is_featured_on_notification', models.BooleanField(default=False, help_text='Группа ссылок выделена в уведомлении')),
                ('is_featured_on_alert', models.BooleanField(default=False, help_text='Группа ссылок выделена в алерте')),
                ('is_featured_on_toast', models.BooleanField(default=False, help_text='Группа ссылок выделена в тосте')),
                ('is_featured_on_snackbar', models.BooleanField(default=False, help_text='Группа ссылок выделена в снэкбаре')),
                ('is_featured_on_tooltip', models.BooleanField(default=False, help_text='Группа ссылок выделена в тултипе')),
                ('owner', models.ForeignKey(help_text='Владелец группы ссылок', on_delete=django.db.models.deletion.CASCADE, related_name='link_groups', to=settings.AUTH_USER_MODEL)),
            ],
            options={
                'ordering': ['order'],
                'unique_together': {('owner', 'title')},
            },
        ),
        migrations.CreateModel(
            name='Link',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('title', models.CharField(help_text='Текст ссылки', max_length=200)),
                ('url', models.URLField(help_text='URL-адрес')),
                ('order', models.PositiveIntegerField(default=0, help_text='Порядок сортировки внутри группы')),
                ('is_active', models.BooleanField(default=True, help_text='Активность ссылки')),
                ('created_at', models.DateTimeField(auto_now_add=True, help_text='Дата и время создания')),
                ('updated_at', models.DateTimeField(auto_now=True, help_text='Дата и время последнего обновления')),
                ('image', models.ImageField(blank=True, help_text='Изображение ссылки', null=True, upload_to='links/')),
                ('description', models.TextField(blank=True, help_text='Описание ссылки')),
                ('is_public', models.BooleanField(default=False, help_text='Публичная ссылка')),
                ('is_featured', models.BooleanField(default=False, help_text='Выделенная ссылка')),
                ('is_private', models.BooleanField(default=False, help_text='Закрытая ссылка')),
                ('is_password_protected', models.BooleanField(default=False, help_text='Ссылка защищена паролем')),
                ('password', models.CharField(blank=True, help_text='Пароль для доступа к ссылке', max_length=128)),
                ('is_approved', models.BooleanField(default=False, help_text='Ссылка одобрена администратором')),
                ('is_rejected', models.BooleanField(default=False, help_text='Ссылка отклонена администратором')),
                ('is_deleted', models.BooleanField(default=False, help_text='Ссылка удалена')),
                ('is_archived', models.BooleanField(default=False, help_text='Ссылка архивирована')),
                ('is_scheduled', models.BooleanField(default=False, help_text='Ссылка запланирована на публикацию')),
                ('scheduled_at', models.DateTimeField(blank=True, help_text='Дата и время запланированной публикации', null=True)),
                ('is_expired', models.BooleanField(default=False, help_text='Ссылка истекла')),
                ('expiration_date', models.DateTimeField(blank=True, help_text='Дата и время истечения срока действия ссылки', null=True)),
                ('is_featured_on_homepage', models.BooleanField(default=False, help_text='Ссылка выделена на главной странице')),
                ('is_featured_on_profile', models.BooleanField(default=False, help_text='Ссылка выделена на профиле пользователя')),
                ('is_featured_on_category', models.BooleanField(default=False, help_text='Ссылка выделена в категории')),
                ('is_featured_on_tag', models.BooleanField(default=False, help_text='Ссылка выделена по тегу')),
                ('is_featured_on_search', models.BooleanField(default=False, help_text='Ссылка выделена в результатах поиска')),
                ('is_featured_on_related', models.BooleanField(default=False, help_text='Ссылка выделена в связанных ссылках')),
                ('is_featured_on_recommended', models.BooleanField(default=False, help_text='Ссылка выделена в рекомендуемых ссылках')),
                ('is_featured_on_popular', models.BooleanField(default=False, help_text='Ссылка выделена в популярных ссылках')),
                ('is_featured_on_trending', models.BooleanField(default=False, help_text='Ссылка выделена в трендовых ссылках')),
                ('is_featured_on_new', models.BooleanField(default=False, help_text='Ссылка выделена в новых ссылках')),
                ('is_featured_on_top', models.BooleanField(default=False, help_text='Ссылка выделена в верхних ссылках')),
                ('is_featured_on_bottom', models.BooleanField(default=False, help_text='Ссылка выделена в нижних ссылках')),
                ('is_featured_on_sidebar', models.BooleanField(default=False, help_text='Ссылка выделена в боковой панели')),
                ('is_featured_on_footer', models.BooleanField(default=False, help_text='Ссылка выделена в нижнем колонтитуле')),
                ('is_featured_on_header', models.BooleanField(default=False, help_text='Ссылка выделена в верхнем колонтитуле')),
                ('is_featured_on_banner', models.BooleanField(default=False, help_text='Ссылка выделена в баннере')),
                ('is_featured_on_popup', models.BooleanField(default=False, help_text='Ссылка выделена в всплывающем окне')),
                ('is_featured_on_modal', models.BooleanField(default=False, help_text='Ссылка выделена в модальном окне')),
                ('is_featured_on_notification', models.BooleanField(default=False, help_text='Ссылка выделена в уведомлении')),
                ('is_featured_on_alert', models.BooleanField(default=False, help_text='Ссылка выделена в алерте')),
                ('is_featured_on_toast', models.BooleanField(default=False, help_text='Ссылка выделена в тосте')),
                ('is_featured_on_snackbar', models.BooleanField(default=False, help_text='Ссылка выделена в снэкбаре')),
                ('is_featured_on_tooltip', models.BooleanField(default=False, help_text='Ссылка выделена в тултипе')),
                ('is_featured_on_qr_code', models.BooleanField(default=False, help_text='Ссылка выделена в QR-коде')),
                ('group', models.ForeignKey(help_text='Группа, к которой относится ссылка', on_delete=django.db.models.deletion.CASCADE, related_name='links', to='links.linkgroup')),
            ],
            options={
                'ordering': ['order'],
            },
        ),
    ]
