pretalx-plugin-broadcast-tools/pretalx_broadcast_tools/forms.py

87 lines
3.0 KiB
Python

from django.forms import BooleanField, CharField, ChoiceField, Textarea
from django.utils.translation import gettext_lazy as _
from hierarkey.forms import HierarkeyForm
from i18nfield.forms import I18nFormField, I18nFormMixin, I18nTextInput
class BroadcastToolsSettingsForm(I18nFormMixin, HierarkeyForm):
broadcast_tools_lower_thirds_no_talk_info = I18nFormField(
help_text=_(
"Will be shown as talk title if there's currently no talk running."
),
label=_('"No talk running" information'),
widget=I18nTextInput,
required=True,
)
broadcast_tools_lower_thirds_info_string = I18nFormField(
help_text=_(
"Will only be shown if there's a talk running. You may use "
"the place holders mentioned below."
),
label=_("Info line"),
required=False,
widget=I18nTextInput,
)
broadcast_tools_room_info_lower_content = ChoiceField(
choices=(
("", "No lower content"),
("public_qr", "QR code linking to the 'talk detail' page"),
(
"feedback_qr",
"QR code linking to the feedback page of the currently running talk",
),
("talk_image", "session image uploaded by the speaker(s)"),
),
help_text=_(
"If a talk is running, the room info page will always show "
"the talk title and the list of speakers. The content below "
"is configurable here."
),
label=_("lower content"),
required=False,
)
broadcast_tools_room_info_show_next_talk = BooleanField(
help_text=_(
"If no talk is running in the room, show the time and title "
"of the next talk in the room."
),
label=_("Show next talk"),
required=False,
)
broadcast_tools_pdf_show_internal_notes = BooleanField(
help_text=_(
"If checked, the value of the 'internal notes' field in a "
"submission will get added to the pdf export."
),
label=_("Show internal notes in pdf export"),
required=False,
)
broadcast_tools_pdf_ignore_do_not_record = BooleanField(
help_text=_(
"If checked, 'do not record' talks will not generate a page "
"in the pdf export."
),
label=_("Ignore 'do not record' talks when generating pdf"),
required=False,
)
broadcast_tools_pdf_questions_to_include = CharField(
help_text=_(
"Comma-Separated list of question ids to include in pdf export. "
"If empty, no questions will get added."
),
label=_("Questions to include"),
required=False,
)
broadcast_tools_pdf_additional_content = CharField(
help_text=_(
"Additional content to print onto the PDF export. "
"Will get printed as-is. You may use the place holders "
"mentioned below."
),
label=_("Additional text"),
required=False,
widget=Textarea,
)