from django import forms from .models import Event, EventTag class EventForm(forms.ModelForm): class Meta: model = Event fields = [ 'title', 'description', 'start_datetime', 'end_datetime', 'timezone', 'location_name', 'location_address', 'city', 'state', 'is_online', 'online_url', 'visibility', 'group', 'capacity', 'cover_image', 'tags' ] labels = { 'title': 'Session Title', 'description': 'Session Description', 'is_online': 'This is an online session', 'group': 'Squad', } widgets = { 'start_datetime': forms.DateTimeInput(attrs={'type': 'datetime-local', 'class': 'form-control'}), 'end_datetime': forms.DateTimeInput(attrs={'type': 'datetime-local', 'class': 'form-control'}), 'description': forms.Textarea(attrs={'rows': 4, 'class': 'form-control'}), 'title': forms.TextInput(attrs={'class': 'form-control'}), 'timezone': forms.TextInput(attrs={'class': 'form-control'}), 'location_name': forms.TextInput(attrs={'class': 'form-control'}), 'location_address': forms.TextInput(attrs={'class': 'form-control'}), 'city': forms.TextInput(attrs={'class': 'form-control'}), 'state': forms.TextInput(attrs={'class': 'form-control'}), 'online_url': forms.URLInput(attrs={'class': 'form-control'}), 'visibility': forms.Select(attrs={'class': 'form-select'}), 'group': forms.Select(attrs={'class': 'form-select'}), 'capacity': forms.NumberInput(attrs={'class': 'form-control'}), 'cover_image': forms.FileInput(attrs={'class': 'form-control'}), 'tags': forms.SelectMultiple(attrs={'class': 'form-select'}), }