# D:\cu\cms\mycms\blog\forms.py

from django import forms
from .models import Article

class CustomMultiFileInput(forms.ClearableFileInput):
    """
    Custom widget ที่รองรับการเลือกหลายไฟล์พร้อมกันในครั้งเดียว
    """
    allow_multiple_selected = True

class MultipleImageUploadForm(forms.ModelForm):
    """
    ฟอร์มสำหรับ Article ที่มีฟิลด์ images (หลายไฟล์) สำหรับ Gallery
    """
    images = forms.FileField(
        widget=CustomMultiFileInput(attrs={'multiple': True}),
        required=False,
        label="Gallery Images"
    )

    class Meta:
        model = Article
        fields = ['title', 'content', 'cover_image', 'category']

    def is_multipart(self):
        """
        บังคับให้ Django รู้ว่าเป็นฟอร์มแบบ multipart,
        เพื่อส่งไฟล์หลาย ๆ ได้
        """
        return True
