forms — Swingtime Forms

Convenience forms for adding and updating Event and Occurrence objects.

Functions

timeslot_options

forms.timeslot_options([interval=swingtime_settings.TIMESLOT_INTERVAL, start_time=swingtime_settings.TIMESLOT_START_TIME, end_delta=swingtime_settings.TIMESLOT_END_TIME_DURATION, fmt=swingtime_settings.TIMESLOT_TIME_FORMAT])

Create a list of time slot options for use in swingtime forms.

The list is comprised of 2-tuples containing a 24-hour time value and a 12-hour temporal representation of that offset.

timeslot_offset_options

forms.timeslot_offset_options([interval=swingtime_settings.TIMESLOT_INTERVAL, start_time=swingtime_settings.TIMESLOT_START_TIME, end_delta=swingtime_settings.TIMESLOT_END_TIME_DURATION, fmt=swingtime_settings.TIMESLOT_TIME_FORMAT])

Create a list of time slot options for use in swingtime forms.

The list is comprised of 2-tuples containing the number of seconds since the start of the day and a 12-hour temporal representation of that offset.

Data

default_timeslot_options

forms.default_timeslot_options
defaults to timeslot_options()

default_timeslot_offset_options

forms.default_timeslot_offset_options
defaults to timeslot_offset_options()

Classes

MultipleIntegerField

class forms.MultipleIntegerField(django.forms.MultipleChoiceField)

A form field for handling multiple integers.

def __init__(self, choices, size=None, label=None, widget=None):
if widget is None:
widget = forms.SelectMultiple(attrs={‘size’ : size or len(choices)})

SplitDateTimeWidget

class forms.SplitDateTimeWidget(django.forms.MultiWidget)

A Widget that splits datetime input into a SelectDateWidget for dates and Select widget for times.

__init__(attrs=None)
uses widgets SelectDateWidget and forms.Select(choices=default_timeslot_options

MultipleOccurrenceForm

class forms.MultipleOccurrenceForm(django.forms.Form)
day
forms.DateField
start_time_delta
forms.IntegerField
end_time_delta
forms.IntegerField
repeats
forms.ChoiceField
count
forms.IntegerField
until
forms.DateField
freq
forms.IntegerField
interval
forms.IntegerField
week_days
MultipleIntegerField
month_ordinal
forms.IntegerField
month_ordinal_day
forms.IntegerField
each_month_day = MultipleIntegerField(
year_months
MultipleIntegerField
is_year_month_ordinal
forms.BooleanField(required=False)
year_month_ordinal
forms.IntegerField(widget=forms.Select(choices=ORDINAL))
year_month_ordinal_day
forms.IntegerField(widget=forms.Select(choices=WEEKDAY_LONG))
__init__([*args, **kws])
if initial contains dtstart - a datetime.datetime instance - the appropriate unspecified initial will be defaulted for the form.
clean()
populates cleaned_data with start_time and end_time values
save(event):
Returns an Event object

EventForm

class forms.EventForm(django.forms.ModelForm)
A simple form for adding and updating Event attributes

SingleOccurrenceForm

class forms.SingleOccurrenceForm(django.forms.ModelForm)
A simple form for adding and updating single Occurrence attributes