# Generated by Django 4.2 on 2023-05-13 20:33

import core.fields
import core.models
from django.conf import settings
import django.core.validators
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='Atracao',
            fields=[
                ('atracao', models.CharField(max_length=25, primary_key=True, serialize=False, verbose_name='Tipo de Local')),
                ('descricao', models.CharField(max_length=25, verbose_name='Descrição')),
            ],
        ),
        migrations.CreateModel(
            name='Categoria',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('criado', models.DateField(auto_now_add=True, verbose_name='Criação')),
                ('modificado', models.DateField(auto_now=True, verbose_name='Modificado')),
                ('ativo', models.BooleanField(default=True, verbose_name='Ativo ?')),
                ('categoria', models.CharField(max_length=20, unique=True, verbose_name='Categoria')),
                ('menu_categoria', models.CharField(default='pills-cat', max_length=25, verbose_name='pills-categoria')),
                ('href_categoria', models.CharField(default='#pills-cat', max_length=25, verbose_name='Href #pills-categoria')),
                ('tab_categoria', models.CharField(default='pills-cat-tab', max_length=25, verbose_name='pills-categoria-tab')),
                ('descricao', models.TextField(max_length=300, verbose_name='Descrição')),
                ('imagem', models.ImageField(blank=True, default='', upload_to='categoria', verbose_name='Imagem')),
            ],
            options={
                'verbose_name': 'Categoria',
                'verbose_name_plural': 'Categorias',
            },
        ),
        migrations.CreateModel(
            name='CategoriaGastro',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('criado', models.DateField(auto_now_add=True, verbose_name='Criação')),
                ('modificado', models.DateField(auto_now=True, verbose_name='Modificado')),
                ('ativo', models.BooleanField(default=True, verbose_name='Ativo ?')),
                ('categoria_gastro', models.CharField(default='Cafe', max_length=20, verbose_name='Categoria Gastro')),
                ('descricao', models.TextField(max_length=300, verbose_name='Descrição')),
                ('height', models.IntegerField(default=900, verbose_name='Height')),
                ('width', models.IntegerField(default=900, verbose_name='Width')),
                ('imagem', core.fields.WEBPField(default='', height_field='height', upload_to=core.models.categoria_gastro_folder, verbose_name='Imagem', width_field='width')),
            ],
            options={
                'verbose_name': 'Categoria Gastro',
                'verbose_name_plural': 'Categorias Gastro',
            },
        ),
        migrations.CreateModel(
            name='ClienteGastro',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('criado', models.DateField(auto_now_add=True, verbose_name='Criação')),
                ('modificado', models.DateField(auto_now=True, verbose_name='Modificado')),
                ('ativo', models.BooleanField(default=True, verbose_name='Ativo ?')),
                ('nome', models.CharField(max_length=40, unique=True, verbose_name='Nome')),
                ('frase', models.CharField(max_length=100, verbose_name='Frase')),
                ('localizacao', models.CharField(max_length=100, verbose_name='Localização')),
                ('freguesia', models.CharField(blank=True, default='Centro', max_length=40, verbose_name='Freguesia')),
                ('concelho', models.CharField(blank=True, default='Viana do Castelo', max_length=40, verbose_name='Concelho')),
                ('email', models.EmailField(max_length=60, verbose_name='E-mail')),
                ('telefone', models.CharField(max_length=20, null=True, verbose_name='Telefone')),
                ('descricao', models.TextField(blank=True, max_length=300, verbose_name='Descrição')),
                ('historia', models.TextField(blank=True, max_length=300, verbose_name='História')),
                ('plano_basico', models.BooleanField(default=True, verbose_name='Somente Plano Básico ? ')),
                ('tem_small_place', models.BooleanField(default=False, verbose_name='Tem Site Small-Place ? ')),
                ('fotos_local', models.IntegerField(default=0, null=True, verbose_name='Nº Fotos Plano')),
                ('maximo_produtos', models.IntegerField(default=0, null=True, verbose_name='Máximo de Produtos')),
                ('tem_menu', models.BooleanField(default=False, verbose_name='Plano com Menu ? ')),
                ('tem_reservas', models.BooleanField(default=False, verbose_name='Tem Reservas ? ')),
                ('redes_sociais', models.BooleanField(default=False, verbose_name='Plano Link Redes Sociais ? ')),
                ('instagram', models.CharField(max_length=40, null=True, verbose_name='Instagram')),
                ('facebook', models.CharField(max_length=40, null=True, verbose_name='Facebook')),
                ('twitter', models.CharField(max_length=40, null=True, verbose_name='Twitter')),
                ('whatsapp', models.CharField(max_length=40, null=True, verbose_name='whatsapp')),
                ('valor_implantacao', models.DecimalField(decimal_places=2, max_digits=10, null=True, verbose_name='Preço Implantacao')),
                ('valor_mensal', models.DecimalField(decimal_places=2, max_digits=10, null=True, verbose_name='Preço Mensal Plano')),
                ('height', models.IntegerField(default=900, verbose_name='Height')),
                ('width', models.IntegerField(default=900, verbose_name='Width')),
                ('imagem', core.fields.WEBPField(default='', height_field='height', upload_to=core.models.gastro_folder, verbose_name='Imagem', width_field='width')),
                ('categoria_gastro', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, to='core.categoriagastro')),
            ],
            options={
                'verbose_name': 'Cliente Gastronomia',
                'verbose_name_plural': 'Clientes Gastronomia',
            },
        ),
        migrations.CreateModel(
            name='Empresa',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('criado', models.DateField(auto_now_add=True, verbose_name='Criação')),
                ('modificado', models.DateField(auto_now=True, verbose_name='Modificado')),
                ('ativo', models.BooleanField(default=True, verbose_name='Ativo ?')),
                ('nome', models.CharField(max_length=40, unique=True, verbose_name='Nome')),
                ('titulo', models.CharField(max_length=40, verbose_name='Titulo')),
                ('descricao', models.TextField(blank=True, max_length=500, verbose_name='Descrição')),
                ('historia', models.TextField(blank=True, max_length=500, verbose_name='História')),
                ('extra', models.TextField(blank=True, max_length=500, verbose_name='Texto Extra')),
                ('data_empresa', models.DateField(verbose_name='Data Abertura')),
                ('moeda', models.CharField(blank=True, default='€', max_length=3, verbose_name='Moeda')),
                ('background_site', models.CharField(blank=True, default='', max_length=6, verbose_name='Cor Background Site')),
                ('background_pagina_principal', models.CharField(blank=True, default='', max_length=6, verbose_name='Background Página Principal')),
                ('gastronomia', models.CharField(blank=True, default='', max_length=20, verbose_name='Menu_gastronomia')),
                ('gastronomia_titulo', models.CharField(blank=True, default='', max_length=30, verbose_name='Titulo gastronomia')),
                ('produtos', models.CharField(blank=True, default='Menu', max_length=20, verbose_name='Menu_Produtos')),
                ('produtos_titulo', models.CharField(blank=True, default='Menu', max_length=30, verbose_name='Titulo Produtos')),
                ('offers', models.CharField(blank=True, default='Pratos do Dia', max_length=20, verbose_name='Menu_Offers')),
                ('offers_titulo', models.CharField(blank=True, default='Pratos do Dia', max_length=30, verbose_name='Titulo Offers')),
                ('sobre', models.CharField(blank=True, default='Sobre', max_length=20, verbose_name='Menu_Sobre')),
                ('sobre_titulo', models.CharField(blank=True, default='Gabriella Small', max_length=30, verbose_name='Titulo Sobre')),
                ('galeria', models.CharField(blank=True, default='Galeria', max_length=20, verbose_name='Menu_Galeria')),
                ('galeria_titulo', models.CharField(blank=True, default='Galeria', max_length=30, verbose_name='Titulo Galeria')),
                ('contato', models.CharField(blank=True, default='Contato', max_length=20, verbose_name='Menu_Contato')),
                ('contato_titulo', models.CharField(blank=True, default='Contato', max_length=30, verbose_name='Titulo Contato')),
                ('blog', models.CharField(blank=True, default='Blog', max_length=20, verbose_name='Menu_Blog')),
                ('blog_titulo', models.CharField(blank=True, default='Blog', max_length=30, verbose_name='Titulo Blog')),
                ('passeio', models.CharField(blank=True, default='Viagens', max_length=20, verbose_name='Menu_Passeio')),
                ('passeio_titulo', models.CharField(blank=True, default='Blog de Viagens', max_length=30, verbose_name='Titulo Passeio')),
                ('reserva', models.CharField(blank=True, default='Reservas', max_length=20, verbose_name='Menu_Reserva')),
                ('reserva_titulo', models.CharField(blank=True, default='Reserva', max_length=30, verbose_name='Titulo Reserva')),
                ('botao_produto', models.CharField(default='Comprar', max_length=15, verbose_name='Título Botão Produtos')),
                ('botao_contato', models.CharField(default='Enviar', max_length=15, verbose_name='Título Botão Contato')),
                ('valor_produtos', models.BooleanField(default=True, verbose_name='Produto tem Valor ?')),
                ('height', models.IntegerField(default=900, verbose_name='Height')),
                ('width', models.IntegerField(default=900, verbose_name='Width')),
                ('imagem_principal', core.fields.WEBPField(default='', height_field='height', upload_to=core.models.empresa_folder, verbose_name='Página Principal', width_field='width')),
                ('imagem_empresa', core.fields.WEBPField(default='', height_field='height', upload_to=core.models.empresa_folder, verbose_name='Página empresa', width_field='width')),
                ('imagem_reserva', core.fields.WEBPField(default='', height_field='height', upload_to=core.models.empresa_folder, verbose_name='Página reserva', width_field='width')),
            ],
            options={
                'verbose_name': 'Empresa',
                'verbose_name_plural': 'Empresas',
            },
        ),
        migrations.CreateModel(
            name='FotoPaginaPrincipal',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('criado', models.DateField(auto_now_add=True, verbose_name='Criação')),
                ('modificado', models.DateField(auto_now=True, verbose_name='Modificado')),
                ('ativo', models.BooleanField(default=True, verbose_name='Ativo ?')),
                ('titulo', models.CharField(blank=True, max_length=40, null=True, verbose_name='Título Página Principal')),
                ('alto', models.BooleanField(default=False, verbose_name='Título Superior ? ')),
                ('centro', models.BooleanField(default=False, verbose_name='Título Centro ? ')),
                ('baixo', models.BooleanField(default=False, verbose_name='Título Inferior ? ')),
                ('height', models.IntegerField(default=900, verbose_name='Height')),
                ('width', models.IntegerField(default=900, verbose_name='Width')),
                ('image', core.fields.WEBPField(height_field='height', upload_to=core.models.principal_folder, verbose_name='Image', width_field='width')),
                ('image_celular', core.fields.WEBPField(blank=True, default='', height_field='height', null=True, upload_to=core.models.principal_folder, verbose_name='Image', width_field='width')),
            ],
            options={
                'verbose_name': 'Foto_Principal',
                'verbose_name_plural': 'Fotos_Principal',
            },
        ),
        migrations.CreateModel(
            name='FotoPaginaSobre',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('criado', models.DateField(auto_now_add=True, verbose_name='Criação')),
                ('modificado', models.DateField(auto_now=True, verbose_name='Modificado')),
                ('ativo', models.BooleanField(default=True, verbose_name='Ativo ?')),
                ('titulo', models.CharField(blank=True, max_length=40, null=True, verbose_name='Título para essa foto')),
                ('alto', models.BooleanField(default=False, verbose_name='Título Superior ? ')),
                ('centro', models.BooleanField(default=False, verbose_name='Título Centro ? ')),
                ('baixo', models.BooleanField(default=False, verbose_name='Título Inferior ? ')),
                ('descricao', models.TextField(blank=True, max_length=500, verbose_name='Descrição')),
                ('historia', models.TextField(blank=True, max_length=500, verbose_name='História')),
                ('height', models.IntegerField(default=600, verbose_name='Height')),
                ('width', models.IntegerField(default=600, verbose_name='Width')),
                ('image', core.fields.WEBPField(height_field='height', upload_to=core.models.principal_folder, verbose_name='Imagem', width_field='width')),
            ],
            options={
                'verbose_name': 'Foto_Sobre',
                'verbose_name_plural': 'Fotos_Sobre',
            },
        ),
        migrations.CreateModel(
            name='PaginaPrincipal',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('criado', models.DateField(auto_now_add=True, verbose_name='Criação')),
                ('modificado', models.DateField(auto_now=True, verbose_name='Modificado')),
                ('ativo', models.BooleanField(default=True, verbose_name='Ativo ?')),
                ('titulo', models.CharField(blank=True, max_length=30, null=True, verbose_name='Título Página Principal')),
                ('descricao', models.CharField(blank=True, max_length=160, null=True, verbose_name='Descrição')),
                ('rodape', models.CharField(blank=True, max_length=30, null=True, verbose_name='Rodapé')),
                ('href', models.CharField(blank=True, max_length=20, null=True, verbose_name='Redireciona #')),
                ('historia', models.BooleanField(default=False, verbose_name='Historia ? ')),
                ('passeios', models.BooleanField(default=False, verbose_name='Passeios ? ')),
                ('blog', models.BooleanField(default=False, verbose_name='Blog / News ? ')),
                ('galeria', models.BooleanField(default=False, verbose_name='Galeria de Fotos ? ')),
                ('menu', models.BooleanField(default=False, verbose_name='Comidas ? ')),
                ('gastronomia', models.BooleanField(default=False, verbose_name='Gastronomia ? ')),
                ('informacoes', models.BooleanField(default=False, verbose_name='Informações ? ')),
                ('serviços', models.BooleanField(default=False, verbose_name='Serviços ? ')),
                ('height', models.IntegerField(default=900, verbose_name='Height')),
                ('width', models.IntegerField(default=900, verbose_name='Width')),
                ('imagem', core.fields.WEBPField(blank=True, default='', height_field='height', null=True, upload_to=core.models.principal_folder, verbose_name='Image', width_field='width')),
                ('imagem2', core.fields.WEBPField(blank=True, default='', height_field='height', null=True, upload_to=core.models.principal_folder, verbose_name='Image', width_field='width')),
            ],
            options={
                'verbose_name': 'Página Principal',
                'verbose_name_plural': 'Página Principal',
            },
        ),
        migrations.CreateModel(
            name='Passeio',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('title', models.CharField(max_length=200, unique=True)),
                ('slug', models.SlugField(max_length=200, unique=True)),
                ('updated_on', models.DateTimeField(auto_now=True)),
                ('content', models.TextField()),
                ('created_on', models.DateTimeField(auto_now_add=True)),
                ('status', models.IntegerField(choices=[(0, 'Draft'), (1, 'Publish')], default=0)),
                ('height', models.IntegerField(default=600, verbose_name='Height')),
                ('width', models.IntegerField(default=600, verbose_name='Width')),
                ('foto', core.fields.WEBPField(default='', height_field='height', upload_to=core.models.passeios_folder, verbose_name='Foto', width_field='width')),
                ('video', models.FileField(blank=True, null=True, upload_to='videos', validators=[django.core.validators.FileExtensionValidator(allowed_extensions=['MOV', 'avi', 'mp4', 'webm', 'mkv'])], verbose_name='Vídeo')),
                ('pais', models.CharField(max_length=40, verbose_name='Nome do País')),
                ('cidade', models.CharField(max_length=40, verbose_name='Concelho / Cidade')),
                ('localizacao', models.CharField(max_length=100, verbose_name='Localização')),
                ('pode_publicar', models.BooleanField(default=True, verbose_name='Pode Publicar ?')),
                ('atracao', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, to='core.atracao')),
                ('author', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='passeio_posts', to=settings.AUTH_USER_MODEL)),
            ],
            options={
                'verbose_name': 'Passeio',
                'verbose_name_plural': 'Passeios',
                'ordering': ['atracao'],
            },
        ),
        migrations.CreateModel(
            name='ReferenciaFoto',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('referencia', models.CharField(max_length=40, verbose_name='Tipo da Foto')),
                ('descricao', models.TextField(max_length=300, verbose_name='Descrição')),
                ('height', models.IntegerField(default=900, verbose_name='Height')),
                ('width', models.IntegerField(default=900, verbose_name='Width')),
                ('imagem', core.fields.WEBPField(default='', height_field='height', upload_to=core.models.referencia_foto_folder, verbose_name='Imagem', width_field='width')),
            ],
            options={
                'verbose_name': 'Tipo Foto',
                'verbose_name_plural': 'Tipo Fotos',
            },
        ),
        migrations.CreateModel(
            name='Reserva',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('criado', models.DateField(auto_now_add=True, verbose_name='Criação')),
                ('modificado', models.DateField(auto_now=True, verbose_name='Modificado')),
                ('ativo', models.BooleanField(default=True, verbose_name='Ativo ?')),
                ('nome', models.CharField(max_length=40, verbose_name='Nome')),
                ('email', models.EmailField(max_length=60, verbose_name='E-mail')),
                ('telefone', models.CharField(max_length=20, null=True, verbose_name='Telefone')),
                ('data', models.DateField(verbose_name='Data Reserva')),
                ('hora', models.TimeField(verbose_name='Horário')),
                ('pessoas', models.PositiveIntegerField(verbose_name='Quantas Pessoas ?')),
                ('mensagem', models.TextField(max_length=100, verbose_name='Mensagem')),
                ('confirmacao', models.BooleanField(default=False, verbose_name='Confirmado')),
                ('user', models.ForeignKey(default=None, null=True, on_delete=django.db.models.deletion.SET_NULL, to=settings.AUTH_USER_MODEL)),
            ],
            options={
                'verbose_name': 'Reserva',
                'verbose_name_plural': 'Reservas',
            },
        ),
        migrations.CreateModel(
            name='Produto',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('criado', models.DateField(auto_now_add=True, verbose_name='Criação')),
                ('modificado', models.DateField(auto_now=True, verbose_name='Modificado')),
                ('ativo', models.BooleanField(default=True, verbose_name='Ativo ?')),
                ('nome', models.CharField(max_length=40, unique=True, verbose_name='Nome')),
                ('descricao', models.TextField(max_length=300, verbose_name='Descrição')),
                ('promocao', models.BooleanField(default=False, verbose_name='Promoção ? ')),
                ('preco', models.DecimalField(decimal_places=2, max_digits=10, verbose_name='Preço')),
                ('preco_promocao', models.DecimalField(decimal_places=2, default=0.0, max_digits=10, verbose_name='Preço Especial')),
                ('height', models.IntegerField(default=600, verbose_name='Height')),
                ('width', models.IntegerField(default=600, verbose_name='Width')),
                ('imagem', core.fields.WEBPField(default='', height_field='height', upload_to=core.models.produtos_folder, verbose_name='Imagem', width_field='width')),
                ('categoria', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='core.categoria')),
            ],
            options={
                'verbose_name': 'Produto',
                'verbose_name_plural': 'Produtos',
            },
        ),
        migrations.CreateModel(
            name='Post',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('title', models.CharField(max_length=200, unique=True)),
                ('slug', models.SlugField(max_length=200, unique=True)),
                ('updated_on', models.DateTimeField(auto_now=True)),
                ('content', models.TextField()),
                ('created_on', models.DateTimeField(auto_now_add=True)),
                ('status', models.IntegerField(choices=[(0, 'Draft'), (1, 'Publish')], default=0)),
                ('height', models.IntegerField(default=600, verbose_name='Height')),
                ('width', models.IntegerField(default=600, verbose_name='Width')),
                ('foto', core.fields.WEBPField(default='', height_field='height', upload_to=core.models.blog_folder, verbose_name='Foto', width_field='width')),
                ('video', models.FileField(blank=True, default='', null=True, upload_to='posts', validators=[django.core.validators.FileExtensionValidator(allowed_extensions=['MOV', 'avi', 'mp4', 'webm', 'mkv'])], verbose_name='Vídeo')),
                ('author', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='blog_posts', to=settings.AUTH_USER_MODEL)),
            ],
            options={
                'verbose_name': 'Post',
                'verbose_name_plural': 'Posts',
                'ordering': ['-created_on'],
            },
        ),
        migrations.CreateModel(
            name='PasseioFoto',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('titulo', models.CharField(blank=True, default='', max_length=40, verbose_name='Título para essa foto')),
                ('texto', models.TextField(blank=True, max_length=500, verbose_name='Descrição')),
                ('created_on', models.DateTimeField(auto_now_add=True, verbose_name='Data e Hora')),
                ('active', models.BooleanField(default=True, verbose_name='Ativo')),
                ('height', models.IntegerField(default=600, verbose_name='Height')),
                ('width', models.IntegerField(default=600, verbose_name='Width')),
                ('imagem', core.fields.WEBPField(height_field='height', upload_to=core.models.passeio_folder, verbose_name='Image', width_field='width')),
                ('passeio', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='passeio_fotos', to='core.passeio')),
            ],
            options={
                'verbose_name': 'Foto_Passeio',
                'verbose_name_plural': 'Fotos_Passeio',
                'ordering': ['created_on'],
            },
        ),
        migrations.CreateModel(
            name='PasseioComment',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('name', models.CharField(max_length=80, verbose_name='Nome')),
                ('email', models.EmailField(max_length=254, verbose_name='E-mail')),
                ('body', models.TextField(verbose_name='Comentário')),
                ('created_on', models.DateTimeField(auto_now_add=True, verbose_name='Data e Hora')),
                ('active', models.BooleanField(default=False, verbose_name='Ativo')),
                ('passeio', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='passeio_comments', to='core.passeio')),
            ],
            options={
                'verbose_name': 'Comentário Passeio',
                'verbose_name_plural': 'Comentários Passeio',
                'ordering': ['created_on'],
            },
        ),
        migrations.CreateModel(
            name='GastroDetail',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('criado', models.DateField(auto_now_add=True, verbose_name='Criação')),
                ('modificado', models.DateField(auto_now=True, verbose_name='Modificado')),
                ('ativo', models.BooleanField(default=True, verbose_name='Ativo ?')),
                ('height', models.IntegerField(default=500, verbose_name='Height')),
                ('width', models.IntegerField(default=500, verbose_name='Width')),
                ('titulo_restaurante', models.CharField(blank=True, max_length=40, null=True, verbose_name='Título para essa foto')),
                ('descricao_restaurante', models.TextField(blank=True, max_length=200, verbose_name='Descrição')),
                ('imagem_restaurante', core.fields.WEBPField(blank=True, default='', height_field='height', upload_to=core.models.gastro_detail_folder, verbose_name='Imagem Restaurante', width_field='width')),
                ('titulo_prato', models.CharField(blank=True, max_length=40, null=True, verbose_name='Título para essa foto')),
                ('descricao_prato', models.TextField(blank=True, max_length=200, verbose_name='Descrição Prato')),
                ('imagem_prato', core.fields.WEBPField(blank=True, default='', height_field='height', upload_to=core.models.gastro_pratos_folder, verbose_name='Imagem', width_field='width')),
                ('restaurante', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='gastro_detalhes', to='core.clientegastro')),
            ],
            options={
                'verbose_name': 'Gastro Detalhe',
                'verbose_name_plural': 'Gastro Detalhes',
            },
        ),
        migrations.CreateModel(
            name='Galeria',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('criado', models.DateField(auto_now_add=True, verbose_name='Criação')),
                ('modificado', models.DateField(auto_now=True, verbose_name='Modificado')),
                ('ativo', models.BooleanField(default=True, verbose_name='Ativo ?')),
                ('autor', models.CharField(default='Marcio Small', max_length=25, verbose_name='Fotografado por:')),
                ('titulo', models.CharField(max_length=40, verbose_name='Título da Foto')),
                ('descricao', models.TextField(blank=True, max_length=300, verbose_name='Descrição')),
                ('video', models.FileField(blank=True, null=True, upload_to='galeria', validators=[django.core.validators.FileExtensionValidator(allowed_extensions=['MOV', 'avi', 'mp4', 'webm', 'mkv'])], verbose_name='Vídeo')),
                ('height', models.IntegerField(default=600, verbose_name='Height')),
                ('width', models.IntegerField(default=600, verbose_name='Width')),
                ('imagem', core.fields.WEBPField(default='', height_field='height', upload_to=core.models.galeria_folder, verbose_name='Imagem', width_field='width')),
                ('referencia', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, to='core.referenciafoto')),
                ('user', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, to=settings.AUTH_USER_MODEL)),
            ],
            options={
                'verbose_name': 'Foto',
                'verbose_name_plural': 'Fotos',
            },
        ),
        migrations.CreateModel(
            name='Contato',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('criado', models.DateField(auto_now_add=True, verbose_name='Criação')),
                ('modificado', models.DateField(auto_now=True, verbose_name='Modificado')),
                ('ativo', models.BooleanField(default=True, verbose_name='Ativo ?')),
                ('nome', models.CharField(max_length=40, verbose_name='Nome')),
                ('email', models.EmailField(max_length=60, verbose_name='E-mail')),
                ('assunto', models.CharField(max_length=60, verbose_name='Assunto')),
                ('foto', models.ImageField(blank=True, default='', upload_to='contato', verbose_name='Imagem')),
                ('pode_publicar', models.BooleanField(default=False, verbose_name='Pode Publicar ?')),
                ('mensagem', models.TextField(max_length=600, verbose_name='Mensagem')),
                ('user', models.ForeignKey(default=None, null=True, on_delete=django.db.models.deletion.SET_NULL, to=settings.AUTH_USER_MODEL)),
            ],
            options={
                'verbose_name': 'Contato',
                'verbose_name_plural': 'Contatos',
            },
        ),
        migrations.CreateModel(
            name='Comment',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('name', models.CharField(max_length=80, verbose_name='Nome')),
                ('email', models.EmailField(max_length=254, verbose_name='E-mail')),
                ('body', models.TextField(verbose_name='Comentário')),
                ('created_on', models.DateTimeField(auto_now_add=True, verbose_name='Data e Hora')),
                ('active', models.BooleanField(default=False, verbose_name='Ativo')),
                ('post', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='comments', to='core.post')),
            ],
            options={
                'verbose_name': 'Comentário',
                'verbose_name_plural': 'Comentários',
                'ordering': ['created_on'],
            },
        ),
    ]
