cf7a5ce714
- Move config meta data into REST - seperate views for config groups
191 lines
5.5 KiB
Python
191 lines
5.5 KiB
Python
from django.core.validators import MaxLengthValidator, MinValueValidator
|
|
|
|
from openslides.core.config import ConfigVariable
|
|
|
|
|
|
def get_config_variables():
|
|
"""
|
|
Generator which yields all config variables of this app.
|
|
|
|
It has to be evaluated during app loading (see apps.py).
|
|
"""
|
|
|
|
# General
|
|
|
|
yield ConfigVariable(
|
|
name="agenda_start_event_date_time",
|
|
default_value=None,
|
|
input_type="datetimepicker",
|
|
label="Begin of event",
|
|
help_text="Input format: DD.MM.YYYY HH:MM",
|
|
weight=200,
|
|
group="Agenda",
|
|
)
|
|
|
|
yield ConfigVariable(
|
|
name="agenda_show_subtitle",
|
|
default_value=False,
|
|
input_type="boolean",
|
|
label="Show subtitles in the agenda",
|
|
weight=201,
|
|
group="Agenda",
|
|
)
|
|
|
|
# Numbering
|
|
|
|
yield ConfigVariable(
|
|
name="agenda_enable_numbering",
|
|
label="Enable numbering for agenda items",
|
|
input_type="boolean",
|
|
default_value=True,
|
|
weight=205,
|
|
group="Agenda",
|
|
subgroup="Numbering",
|
|
)
|
|
|
|
yield ConfigVariable(
|
|
name="agenda_number_prefix",
|
|
default_value="",
|
|
label="Numbering prefix for agenda items",
|
|
help_text="This prefix will be set if you run the automatic agenda numbering.",
|
|
weight=206,
|
|
group="Agenda",
|
|
subgroup="Numbering",
|
|
validators=(MaxLengthValidator(20),),
|
|
)
|
|
|
|
yield ConfigVariable(
|
|
name="agenda_numeral_system",
|
|
default_value="arabic",
|
|
input_type="choice",
|
|
label="Numeral system for agenda items",
|
|
choices=(
|
|
{"value": "arabic", "display_name": "Arabic"},
|
|
{"value": "roman", "display_name": "Roman"},
|
|
),
|
|
weight=207,
|
|
group="Agenda",
|
|
subgroup="Numbering",
|
|
)
|
|
|
|
# Visibility
|
|
|
|
yield ConfigVariable(
|
|
name="agenda_item_creation",
|
|
label="Add to agenda",
|
|
default_value="default_yes",
|
|
input_type="choice",
|
|
choices=(
|
|
{"value": "always", "display_name": "Always"},
|
|
{"value": "never", "display_name": "Never"},
|
|
{"value": "default_yes", "display_name": "Ask, default yes"},
|
|
{"value": "default_no", "display_name": "Ask, default no"},
|
|
),
|
|
weight=210,
|
|
group="Agenda",
|
|
subgroup="Visibility",
|
|
)
|
|
|
|
yield ConfigVariable(
|
|
name="agenda_new_items_default_visibility",
|
|
default_value="2",
|
|
input_type="choice",
|
|
choices=(
|
|
{"value": "1", "display_name": "Public item"},
|
|
{"value": "2", "display_name": "Internal item"},
|
|
{"value": "3", "display_name": "Hidden item"},
|
|
),
|
|
label="Default visibility for new agenda items (except topics)",
|
|
weight=211,
|
|
group="Agenda",
|
|
subgroup="Visibility",
|
|
)
|
|
|
|
yield ConfigVariable(
|
|
name="agenda_hide_internal_items_on_projector",
|
|
default_value=True,
|
|
input_type="boolean",
|
|
label="Hide internal items when projecting subitems",
|
|
weight=212,
|
|
group="Agenda",
|
|
subgroup="Visibility",
|
|
)
|
|
|
|
# List of speakers
|
|
|
|
yield ConfigVariable(
|
|
name="agenda_show_last_speakers",
|
|
default_value=0,
|
|
input_type="integer",
|
|
label="Number of last speakers to be shown on the projector",
|
|
weight=220,
|
|
group="Agenda",
|
|
subgroup="List of speakers",
|
|
validators=(MinValueValidator(0),),
|
|
)
|
|
|
|
yield ConfigVariable(
|
|
name="agenda_show_next_speakers",
|
|
default_value=-1,
|
|
input_type="integer",
|
|
label="Number of the next speakers to be shown on the projector",
|
|
help_text="Enter number of the next shown speakers. Choose -1 to show all next speakers.",
|
|
weight=222,
|
|
group="Agenda",
|
|
subgroup="List of speakers",
|
|
validators=(MinValueValidator(-1),),
|
|
)
|
|
|
|
yield ConfigVariable(
|
|
name="agenda_countdown_warning_time",
|
|
default_value=0,
|
|
input_type="integer",
|
|
label="Show orange countdown in the last x seconds of speaking time",
|
|
help_text="Enter duration in seconds. Choose 0 to disable warning color.",
|
|
weight=224,
|
|
group="Agenda",
|
|
subgroup="List of speakers",
|
|
validators=(MinValueValidator(0),),
|
|
)
|
|
|
|
yield ConfigVariable(
|
|
name="projector_default_countdown",
|
|
default_value=60,
|
|
input_type="integer",
|
|
label="Predefined seconds of new countdowns",
|
|
weight=226,
|
|
group="Agenda",
|
|
subgroup="List of speakers",
|
|
)
|
|
|
|
yield ConfigVariable(
|
|
name="agenda_couple_countdown_and_speakers",
|
|
default_value=True,
|
|
input_type="boolean",
|
|
label="Couple countdown with the list of speakers",
|
|
help_text="[Begin speech] starts the countdown, [End speech] stops the countdown.",
|
|
weight=228,
|
|
group="Agenda",
|
|
subgroup="List of speakers",
|
|
)
|
|
|
|
yield ConfigVariable(
|
|
name="agenda_hide_amount_of_speakers",
|
|
default_value=False,
|
|
input_type="boolean",
|
|
label="Hide the amount of speakers in subtitle of list of speakers slide",
|
|
weight=230,
|
|
group="Agenda",
|
|
subgroup="List of speakers",
|
|
)
|
|
|
|
yield ConfigVariable(
|
|
name="agenda_present_speakers_only",
|
|
default_value=False,
|
|
input_type="boolean",
|
|
label="Only present participants can be added to the list of speakers",
|
|
weight=232,
|
|
group="Agenda",
|
|
subgroup="List of speakers",
|
|
)
|