Events
Forms for creating or saving event objects and their corresponding event translation objects and recurrence rule objects
Event Filter Form
Form for submitting filter requests
- class integreat_cms.cms.forms.events.event_filter_form.EventFilterForm(**kwargs: Any)[source]
Bases:
CustomFilterFormForm fields:
all_day: All Day (TypedMultipleChoiceField)recurring: Recurring (TypedMultipleChoiceField)date_from: Date From (DateField)date_to: Date To (DateField)events_time_range: Events Time Range (MultipleChoiceField)imported_event: Imported Event (TypedMultipleChoiceField)poi_id: Poi Id (IntegerField)query: Query (CharField)status: Publication status (ChoiceField)
- Parameters:
kwargs (Any)
- apply(events: EventQuerySet, region: Region, language_slug: str) tuple[EventQuerySet, POI, str][source]
Filter the events according to the given filter data
- Parameters:
events (EventQuerySet) – The list of events
region (Region) – The current region
language_slug (str) – The slug of the current language
- Returns:
The filtered list of events, the poi used for filtering, and the search query
- Return type:
tuple[EventQuerySet, POI, str]
- filter_events_by_all_day(events: EventQuerySet) EventQuerySet[source]
Filter events by all-day property
- Parameters:
events (EventQuerySet) – the unfiltered events
events – the filtered events
- Return type:
- filter_events_by_imported_event(events: EventQuerySet) EventQuerySet[source]
Filter events by imported event
- Parameters:
events (EventQuerySet) – the unfiltered events
events – the filtered events
- Return type:
- filter_events_by_location(events: EventQuerySet) tuple[EventQuerySet, POI][source]
Filter events by location
- Parameters:
events (EventQuerySet) – the unfiltered events
events – the filtered events
- Return type:
- filter_events_by_recurrence(events: EventQuerySet) EventQuerySet[source]
Filter events by recurrence
- Parameters:
events (EventQuerySet) – the unfiltered events
events – the filtered events
- Return type:
- filter_events_by_status(events: EventQuerySet, language_slug: str) EventQuerySet[source]
This method filters events by their status (draft, published, etc.) :param events: Queryset of events that should be filtered
- Parameters:
events (EventQuerySet)
language_slug (str)
- Return type:
- filter_events_by_time_range(events: EventQuerySet) EventQuerySet[source]
Filter events by time range
- Parameters:
events (EventQuerySet) – the unfiltered events
events – the filtered events
- Return type:
- property media[source]
Return all media required to render the widgets on this form.
- search_events(events: EventQuerySet) tuple[EventQuerySet, str][source]
Search events for given query
- Parameters:
events (EventQuerySet) – The unsearched events
- Return events:
The searched events
- Return type:
Event Form
- class integreat_cms.cms.forms.events.event_form.EventForm(**kwargs: Any)[source]
Bases:
CustomModelFormForm for creating and modifying event objects
Form fields:
start: Start (DateTimeField)end: End (DateTimeField)icon: Icon (ModelChoiceField)location: Location (ModelChoiceField)meeting_url: Online event link (URLField)external_calendar: External calendar (ModelChoiceField)external_event_id: The ID of this event in the external calendar (CharField)only_weekdays: Only Mondays to Fridays (BooleanField)do_not_translate_title: Do not translate the title (BooleanField)is_all_day: All-day (BooleanField)is_recurring: Recurring (BooleanField)has_not_location: Event does not have a physical location (BooleanField)start_date: start date (DateField)end_date: end date (DateField)start_time: start time (TimeField)end_time: end time (TimeField)is_long_term: Is Long Term (BooleanField)
- Parameters:
kwargs (Any)
- __init__(**kwargs: Any) None[source]
Initialize event form
- Parameters:
**kwargs (Any) – The supplied keyword arguments
- Return type:
None
- clean() dict[str, Any][source]
Validate form fields which depend on each other, see
django.forms.Form.clean()
- property media[source]
Return all media required to render the widgets on this form.
- save(commit: bool = True) Any[source]
This method extends the default
save()-method of the baseModelFormto provide debug logging- Parameters:
commit (bool) – Whether or not the changes should be written to the database
- Returns:
The saved object returned by The save() method
- Return type:
Any
Event Translation Form
- class integreat_cms.cms.forms.events.event_translation_form.EventTranslationForm(**kwargs: Any)[source]
Bases:
MachineTranslationFormForm for creating and modifying event translation objects
Form fields:
title: Title of the event (CharField)status: Status (TypedChoiceField)content: Description (CharField)minor_edit: Minor edit (BooleanField)automatic_translation: Automatic translation (BooleanField)machine_translated: Machine translated (BooleanField)slug: Event link (SlugField)mt_translations_to_create: Create new translations: (ModelMultipleChoiceField)mt_translations_to_update: Update existing translations: (ModelMultipleChoiceField)
- Parameters:
kwargs (Any)
- property media[source]
Return all media required to render the widgets on this form.
External Calendar Form
- class integreat_cms.cms.forms.events.external_calendar_form.ExternalCalendarForm(user: User | None, *args: Any, **kwargs: Any)[source]
Bases:
CustomModelFormForm for adding a new external calendar
Form fields:
name: Calendar name (CharField)url: URL (URLField)import_filter_category: The category that events need to have to get imported (Leave blank to import all events) (CharField)
- Parameters:
user (User | None)
args (Any)
kwargs (Any)
- __init__(user: User | None, *args: Any, **kwargs: Any) None[source]
Initialize placeholder model form
- property media[source]
Return all media required to render the widgets on this form.
Recurrence Rule Form
- class integreat_cms.cms.forms.events.recurrence_rule_form.RecurrenceRuleForm(**kwargs: Any)[source]
Bases:
CustomModelFormForm for creating and modifying event recurrence rule objects
Form fields:
frequency: Frequency (TypedChoiceField)interval: Repeat every … time(s) (IntegerField)weekdays_for_weekly: Weekdays (SimpleArrayField)weekday_for_monthly: Weekday (TypedChoiceField)week_for_monthly: Week (TypedChoiceField)recurrence_end_date: Recurrence end date (DateField)
- Parameters:
kwargs (Any)
- __init__(**kwargs: Any) None[source]
Initialize recurrence rule form
- Parameters:
**kwargs (Any) – The supplied keyword arguments
- Return type:
None
- clean() dict[str, Any][source]
Validate form fields which depend on each other, see
django.forms.Form.clean()
- has_changed() bool[source]
This function provides a workaround for the
weekdays_for_weeklyfield to be correctly recognized as changed.- Returns:
Whether or not the recurrence rule form has changed
- Return type:
- property media[source]
Return all media required to render the widgets on this form.