from django import forms
from .models import Csv, Order
from .validators import file_size

class UploadFileForm(forms.ModelForm):
    org_file = forms.FileField(
        required=True, 
        label="Plik do modyfikacji", 
        help_text="Maksymalny rozmiar pliku to 15MB.", 
        validators=[file_size]
        )
    user_comment = forms.CharField(
        required=False,
        label="Komentarz użytkownika",
        widget=forms.Textarea(attrs={"rows":5}),
    )
    
    class Meta:
        model = Order
        fields = ('org_file', 'user_comment')
        
# Formularz przesyłania pliku csv
class CsvUploadForm(forms.ModelForm):
    class Meta:
        model = Csv
        fields = ('file', )
        labels = {
            "file": "Plik CSV",
        }
        error_messages = {
            'file_name': {
                'required': "Ten plik jest wymagany do przesłania formularza.",
                'invalid': "Zły format pliku (tylko *.csv).",
            },
        }
        
class OrderReleaseForm(forms.ModelForm):
    class Meta:
        model = Order
        fields = ('status', )
        labels = {
            "status": "Opis",
        }