from rest_framework import serializers
from images.models import Image


class ImageSerializer(serializers.ModelSerializer):
    class Meta:
        model = Image
        fields = ['id', 'image', 'created_at', 'created_by']
        read_only_fields = ['id', 'created_at', 'created_by']


class ImageCreateSerializer(serializers.ModelSerializer):
    class Meta:
        model = Image
        fields = ['image']

    def validate_image(self, value):
        """Validation personnalisée pour l'image"""
        if not value:
            raise serializers.ValidationError("Image is required")

        # Vérifier la taille du fichier (max 5MB)
        max_size = 5 * 1024 * 1024  # 5MB
        if value.size > max_size:
            raise serializers.ValidationError("L'image ne doit pas dépasser 5MB")

        return value