2025-11-27 11:53:46 +05:30
|
|
|
from django import forms
|
|
|
|
|
from .models import Event
|
2025-11-28 03:11:38 +05:30
|
|
|
from .models import EventImages
|
|
|
|
|
|
2025-11-27 11:53:46 +05:30
|
|
|
|
|
|
|
|
class EventForm(forms.ModelForm):
|
|
|
|
|
class Meta:
|
|
|
|
|
model = Event
|
2025-11-28 03:11:38 +05:30
|
|
|
fields = "__all__"
|
|
|
|
|
widgets = {
|
|
|
|
|
'name': forms.TextInput(attrs={'class': 'form-control'}),
|
|
|
|
|
'description': forms.Textarea(attrs={'class': 'form-control'}),
|
|
|
|
|
'start_date': forms.DateInput(attrs={'class': 'form-control', 'type': 'date'}),
|
|
|
|
|
'end_date': forms.DateInput(attrs={'class': 'form-control', 'type': 'date'}),
|
|
|
|
|
'latitude': forms.NumberInput(attrs={'class': 'form-control'}),
|
|
|
|
|
'longitude': forms.NumberInput(attrs={'class': 'form-control'}),
|
|
|
|
|
'pincode': forms.TextInput(attrs={'class': 'form-control'}),
|
|
|
|
|
'district': forms.TextInput(attrs={'class': 'form-control'}),
|
|
|
|
|
'state': forms.TextInput(attrs={'class': 'form-control'}),
|
|
|
|
|
'place': forms.TextInput(attrs={'class': 'form-control'}),
|
|
|
|
|
'outside_event_url': forms.URLInput(attrs={'class': 'form-control'}),
|
|
|
|
|
'event_status': forms.Select(attrs={'class': 'form-select'}),
|
|
|
|
|
'event_type': forms.Select(attrs={'class': 'form-select'}),
|
|
|
|
|
'cancelled_reason': forms.Textarea(attrs={'class': 'form-control'}),
|
|
|
|
|
'is_bookable': forms.CheckboxInput(attrs={'class': 'form-check-input'}),
|
|
|
|
|
'is_eventify_event': forms.CheckboxInput(attrs={'class': 'form-check-input'}),
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class MultipleFileInput(forms.ClearableFileInput):
|
|
|
|
|
allow_multiple_selected = True
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class EventImagesForm(forms.ModelForm):
|
|
|
|
|
event_image = forms.ImageField(
|
|
|
|
|
widget=MultipleFileInput(
|
|
|
|
|
attrs={
|
|
|
|
|
'multiple': True,
|
|
|
|
|
'class': 'form-control',
|
|
|
|
|
}
|
|
|
|
|
),
|
|
|
|
|
label="Upload Images"
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
class Meta:
|
|
|
|
|
model = EventImages
|
|
|
|
|
fields = ['event_image', 'is_primary']
|
2025-11-27 11:53:46 +05:30
|
|
|
widgets = {
|
2025-11-28 03:11:38 +05:30
|
|
|
'is_primary': forms.CheckboxInput(attrs={'class': 'form-check-input'}),
|
|
|
|
|
}
|
|
|
|
|
labels = {
|
|
|
|
|
'is_primary': 'Set as Primary Image (If only one uploaded)',
|
2025-11-27 11:53:46 +05:30
|
|
|
}
|