mirror of
https://github.com/ae-utbm/sith.git
synced 2025-09-18 14:13:49 +00:00
Fix Multiple Fields Inputs & check
being override in base Models class
This commit is contained in:
@@ -13,3 +13,23 @@
|
||||
# OR WITHIN THE LOCAL FILE "LICENSE"
|
||||
#
|
||||
#
|
||||
|
||||
from django import forms
|
||||
|
||||
|
||||
class MultipleFileInput(forms.ClearableFileInput):
|
||||
allow_multiple_selected = True
|
||||
|
||||
|
||||
class MultipleFileField(forms.FileField):
|
||||
def __init__(self, *args, **kwargs):
|
||||
kwargs.setdefault("widget", MultipleFileInput())
|
||||
super().__init__(*args, **kwargs)
|
||||
|
||||
def clean(self, data, initial=None):
|
||||
single_file_clean = super().clean
|
||||
if isinstance(data, (list, tuple)):
|
||||
result = [single_file_clean(d, initial) for d in data]
|
||||
else:
|
||||
result = single_file_clean(data, initial)
|
||||
return result
|
||||
|
@@ -33,6 +33,7 @@ import os
|
||||
|
||||
from ajax_select import make_ajax_field
|
||||
|
||||
from core import MultipleFileField
|
||||
from core.models import SithFile, RealGroup, Notification
|
||||
from core.views import (
|
||||
CanViewMixin,
|
||||
@@ -83,8 +84,7 @@ class AddFilesForm(forms.Form):
|
||||
folder_name = forms.CharField(
|
||||
label=_("Add a new folder"), max_length=30, required=False
|
||||
)
|
||||
file_field = forms.FileField(
|
||||
widget=forms.ClearableFileInput(attrs={"multiple": True}),
|
||||
file_field = MultipleFileField(
|
||||
label=_("Files"),
|
||||
required=False,
|
||||
)
|
||||
|
Reference in New Issue
Block a user