from django.forms import ModelForm

from containers.models import Container


class ContainerBaseForm(ModelForm):
    class Meta:
        model = Container
        fields = '__all__'

class ContainerReceiveForm(ContainerBaseForm):
    """
    Form for creating a new Container instance.
    Inherits from ContainerBaseForm.
    """
    class Meta(ContainerBaseForm.Meta):
        fields = ['number', 'receive_vehicle', 'damages', 'heavy_damaged', 'position',]




class ContainerExpeditionForm(ContainerBaseForm):
    """
    Form for updating an existing Container instance.
    Inherits from ContainerBaseForm.
    """
    class Meta(ContainerBaseForm.Meta):
        fields = ['number', 'expedition_vehicle', 'position', 'line', 'container_type', 'damages', 'heavy_damaged']

    def __init__(self, *args, **kwargs):
        super().__init__(*args, **kwargs)
        readonly_fields = ['number', 'position', 'line', 'container_type', 'damages', 'heavy_damaged']
        for field in readonly_fields:
            self.fields[field].widget.attrs['readonly'] = True
            self.fields[field].disabled = True