from django import forms
from .models import Porta, TIPO_PORTA_CHOICES, MATERIAL_PORTA_CHOICES, DIFERENCIAL_INSOLACAO_PORTA

class PortaForm(forms.ModelForm):
    # Campos NORTE
    tipo_porta_norte = forms.ChoiceField(choices=TIPO_PORTA_CHOICES, label="Tipo de Porta Norte")
    diferencial_insolacao_norte = forms.ChoiceField(choices=DIFERENCIAL_INSOLACAO_PORTA['norte'], label="Diferencial de Insolação Norte")

    # Campos SUL
    tipo_porta_sul = forms.ChoiceField(choices=TIPO_PORTA_CHOICES, label="Tipo de Porta Sul")
    diferencial_insolacao_sul = forms.ChoiceField(choices=DIFERENCIAL_INSOLACAO_PORTA['sul'], label="Diferencial de Insolação Sul")

    # Campos LESTE
    tipo_porta_leste = forms.ChoiceField(choices=TIPO_PORTA_CHOICES, label="Tipo de Porta Leste")
    diferencial_insolacao_leste = forms.ChoiceField(choices=DIFERENCIAL_INSOLACAO_PORTA['leste'], label="Diferencial de Insolação Leste")

    # Campos OESTE
    tipo_porta_oeste = forms.ChoiceField(choices=TIPO_PORTA_CHOICES, label="Tipo de Porta Oeste")
    diferencial_insolacao_oeste = forms.ChoiceField(choices=DIFERENCIAL_INSOLACAO_PORTA['oeste'], label="Diferencial de Insolação Oeste")

    class Meta:
        model = Porta
        fields = [
            # NORTE
            'tipo_porta_norte', 'area_porta_norte', 'coeficiente_porta_norte', 'diferencial_insolacao_norte',
            # SUL
            'tipo_porta_sul', 'area_porta_sul', 'coeficiente_porta_sul', 'diferencial_insolacao_sul',
            # LESTE
            'tipo_porta_leste', 'area_porta_leste', 'coeficiente_porta_leste', 'diferencial_insolacao_leste',
            # OESTE
            'tipo_porta_oeste', 'area_porta_oeste', 'coeficiente_porta_oeste', 'diferencial_insolacao_oeste'
        ]

        widgets = {
            'area_porta_norte': forms.NumberInput(attrs={'step': '0.01'}),
            'coeficiente_porta_norte': forms.NumberInput(attrs={'step': '0.01'}),
            'area_porta_sul': forms.NumberInput(attrs={'step': '0.01'}),
            'coeficiente_porta_sul': forms.NumberInput(attrs={'step': '0.01'}),
            'area_porta_leste': forms.NumberInput(attrs={'step': '0.01'}),
            'coeficiente_porta_leste': forms.NumberInput(attrs={'step': '0.01'}),
            'area_porta_oeste': forms.NumberInput(attrs={'step': '0.01'}),
            'coeficiente_porta_oeste': forms.NumberInput(attrs={'step': '0.01'}),
        }



# from django import forms
# from .models import PortaMadeira, PortaVidro, TIPO_PORTA_CHOICES, DIFERENCIAL_INSOLACAO_MADEIRA_CHOICES, DIFERENCIAL_INSOLACAO_VIDRO_CHOICES

# # Formulário para Porta de Madeira
# class PortaMadeiraForm(forms.ModelForm):
#     tipo_porta_norte = forms.ChoiceField(choices=TIPO_PORTA_CHOICES, label="Tipo de Porta Norte")
#     diferencial_insolacao_norte = forms.ChoiceField(choices=DIFERENCIAL_INSOLACAO_MADEIRA_CHOICES['norte'], label="Diferencial de Insolação Norte")

#     tipo_porta_sul = forms.ChoiceField(choices=TIPO_PORTA_CHOICES, label="Tipo de Porta Sul")
#     diferencial_insolacao_sul = forms.ChoiceField(choices=DIFERENCIAL_INSOLACAO_MADEIRA_CHOICES['sul'], label="Diferencial de Insolação Sul")

#     tipo_porta_leste = forms.ChoiceField(choices=TIPO_PORTA_CHOICES, label="Tipo de Porta Leste")
#     diferencial_insolacao_leste = forms.ChoiceField(choices=DIFERENCIAL_INSOLACAO_MADEIRA_CHOICES['leste'], label="Diferencial de Insolação Leste")

#     tipo_porta_oeste = forms.ChoiceField(choices=TIPO_PORTA_CHOICES, label="Tipo de Porta Oeste")
#     diferencial_insolacao_oeste = forms.ChoiceField(choices=DIFERENCIAL_INSOLACAO_MADEIRA_CHOICES['oeste'], label="Diferencial de Insolação Oeste")

#     class Meta:
#         model = PortaMadeira
#         fields = [
#             'tipo_porta_norte', 'area_porta_norte', 'coeficiente_porta_norte', 'diferencial_insolacao_norte',
#             'tipo_porta_sul', 'area_porta_sul', 'coeficiente_porta_sul', 'diferencial_insolacao_sul',
#             'tipo_porta_leste', 'area_porta_leste', 'coeficiente_porta_leste', 'diferencial_insolacao_leste',
#             'tipo_porta_oeste', 'area_porta_oeste', 'coeficiente_porta_oeste', 'diferencial_insolacao_oeste'
#         ]
#         widgets = {
#             'area_porta_norte': forms.NumberInput(attrs={'step': '0.01'}),
#             'coeficiente_porta_norte': forms.NumberInput(attrs={'step': '0.01'}),
#             'area_porta_sul': forms.NumberInput(attrs={'step': '0.01'}),
#             'coeficiente_porta_sul': forms.NumberInput(attrs={'step': '0.01'}),
#             'area_porta_leste': forms.NumberInput(attrs={'step': '0.01'}),
#             'coeficiente_porta_leste': forms.NumberInput(attrs={'step': '0.01'}),
#             'area_porta_oeste': forms.NumberInput(attrs={'step': '0.01'}),
#             'coeficiente_porta_oeste': forms.NumberInput(attrs={'step': '0.01'}),
#         }

# # Formulário para Porta de Vidro
# class PortaVidroForm(forms.ModelForm):
#     tipo_porta_norte = forms.ChoiceField(choices=TIPO_PORTA_CHOICES, label="Tipo de Porta Norte")
#     diferencial_insolacao_norte = forms.ChoiceField(choices=DIFERENCIAL_INSOLACAO_VIDRO_CHOICES['norte'], label="Diferencial de Insolação Norte")

#     tipo_porta_sul = forms.ChoiceField(choices=TIPO_PORTA_CHOICES, label="Tipo de Porta Sul")
#     diferencial_insolacao_sul = forms.ChoiceField(choices=DIFERENCIAL_INSOLACAO_VIDRO_CHOICES['sul'], label="Diferencial de Insolação Sul")

#     tipo_porta_leste = forms.ChoiceField(choices=TIPO_PORTA_CHOICES, label="Tipo de Porta Leste")
#     diferencial_insolacao_leste = forms.ChoiceField(choices=DIFERENCIAL_INSOLACAO_VIDRO_CHOICES['leste'], label="Diferencial de Insolação Leste")

#     tipo_porta_oeste = forms.ChoiceField(choices=TIPO_PORTA_CHOICES, label="Tipo de Porta Oeste")
#     diferencial_insolacao_oeste = forms.ChoiceField(choices=DIFERENCIAL_INSOLACAO_VIDRO_CHOICES['oeste'], label="Diferencial de Insolação Oeste")

#     class Meta:
#         model = PortaVidro
#         fields = [
#             'tipo_porta_norte', 'area_porta_norte', 'coeficiente_porta_norte', 'diferencial_insolacao_norte',
#             'tipo_porta_sul', 'area_porta_sul', 'coeficiente_porta_sul', 'diferencial_insolacao_sul',
#             'tipo_porta_leste', 'area_porta_leste', 'coeficiente_porta_leste', 'diferencial_insolacao_leste',
#             'tipo_porta_oeste', 'area_porta_oeste', 'coeficiente_porta_oeste', 'diferencial_insolacao_oeste'
#         ]
#         widgets = {
#             'area_porta_norte': forms.NumberInput(attrs={'step': '0.01'}),
#             'coeficiente_porta_norte': forms.NumberInput(attrs={'step': '0.01'}),
#             'area_porta_sul': forms.NumberInput(attrs={'step': '0.01'}),
#             'coeficiente_porta_sul': forms.NumberInput(attrs={'step': '0.01'}),
#             'area_porta_leste': forms.NumberInput(attrs={'step': '0.01'}),
#             'coeficiente_porta_leste': forms.NumberInput(attrs={'step': '0.01'}),
#             'area_porta_oeste': forms.NumberInput(attrs={'step': '0.01'}),
#             'coeficiente_porta_oeste': forms.NumberInput(attrs={'step': '0.01'}),
#         }
