Translations

Forms for creating, modifying and configuring machine translations

Translations Management Form

class integreat_cms.cms.forms.translations.translations_management_form.CustomCheckboxSelectMultiple(attrs=None, choices=())[source]

Bases: CheckboxSelectMultiple

Custom CheckboxSelectMultiple child class which appends a machine translation provider to option labels or disables them if no provider is available

__init__(attrs=None, choices=())[source]
add_id_index = True[source]
allow_multiple_selected = True[source]
build_attrs(base_attrs, extra_attrs=None)[source]

Build an attribute dictionary.

checked_attribute = {'checked': True}[source]
create_option(name, value, label, selected, index, subindex=None, attrs=None)[source]
format_value(value)[source]

Return selected values as a list.

get_context(name, value, attrs)[source]
id_for_label(id_, index=None)[source]

Don’t include for=”field_0” in <label> to improve accessibility when using a screen reader, in addition clicking such a label would toggle the first input.

input_type = 'checkbox'[source]
property is_hidden[source]
is_localized = False[source]
is_required = False[source]
property media[source]
needs_multipart_form = False[source]
optgroups(name, value, attrs=None)[source]

Return a list of optgroups for this widget.

option_inherits_attrs = True[source]
option_template_name = 'django/forms/widgets/checkbox_option.html'[source]
options(name, value, attrs=None)[source]

Yield a flat list of options for this widget.

render(name, value, attrs=None, renderer=None)[source]

Render the widget as an HTML string.

subwidgets(name, value, attrs=None)[source]

Yield all “subwidgets” of this widget. Used to enable iterating options from a BoundField for choice widgets.

supports_microseconds = True[source]
template_name: str = 'translations/languages_input.html'[source]

The template to use when rendering this widget

use_fieldset = True[source]
use_required_attribute(initial)[source]
value_from_datadict(data, files, name)[source]

Given a dictionary of data and this widget’s name, return the value of this widget or None if it’s not provided.

value_omitted_from_data(data, files, name)[source]
class integreat_cms.cms.forms.translations.translations_management_form.TranslationLanguageOptions(language_tree_node: LanguageTreeNode)[source]

Bases: object

Helper class to easily provide the translation providers for a language for form fields.

Parameters:

language_tree_node (LanguageTreeNode) –

__init__(language_tree_node: LanguageTreeNode) None[source]
Parameters:

language_tree_node (LanguageTreeNode) –

Return type:

None

property choices: list[tuple[str, str]][source]

mt_providers as list of tuples for django.forms.ChoiceField.choices

property initial: str[source]

mt_provider.name for django.forms.Field.initial

language_tree_node: LanguageTreeNode[source]
property providers: dict[str, MachineTranslationProviderType][source]

mt_providers as a dict, indexed by name

class integreat_cms.cms.forms.translations.translations_management_form.TranslationsManagementForm(*args: Any, **kwargs: Any)[source]

Bases: CustomModelForm

Form for modifying machine translation settings of a region

Form fields:

Parameters:
  • args (Any) –

  • kwargs (Any) –

__init__(*args: Any, **kwargs: Any) None[source]

Initialize translations management form

Parameters:
  • *args (Any) – The supplied arguments

  • **kwargs (Any) – The supplied keyword arguments

Return type:

None

add_error(field, error)[source]

Update the content of self._errors.

The field argument is the name of the field to which the errors should be added. If it’s None, treat the errors as NON_FIELD_ERRORS.

The error argument can be a single error, a list of errors, or a dictionary that maps field names to lists of errors. An “error” can be either a simple string or an instance of ValidationError with its message attribute set and a “list or dictionary” can be an actual list or dict or an instance of ValidationError with its error_list or error_dict attribute set.

If error is a dictionary, the field argument must be None and errors will be added to the fields that correspond to the keys of the dictionary.

add_error_messages(request: HttpRequest) None[source]

This function accepts the current request and adds the form’s error messages to the message queue of django.contrib.messages.

Parameters:

request (HttpRequest) – The current request submitting the form

Return type:

None

add_initial_prefix(field_name)[source]

Add an ‘initial’ prefix for checking dynamic initial values.

add_prefix(field_name)[source]

Return the field name with a prefix appended, if this Form has a prefix set.

Subclasses may wish to override.

as_div()[source]

Render as <div> elements.

as_p()[source]

Render as <p> elements.

as_table()[source]

Render as <tr> elements excluding the surrounding <table> tag.

as_ul()[source]

Render as <li> elements excluding the surrounding <ul> tag.

changed_data[source]
clean() dict[str, Any][source]

This method extends the default clean()-method of the base ModelForm to provide debug logging

Returns:

The cleaned data (see Overriding the clean() method)

Return type:

dict[str, Any]

default_renderer = None[source]
property errors[source]

Return an ErrorDict for the data provided for the form.

field_order = None[source]
full_clean()[source]

Clean all of self.data and populate self._errors and self.cleaned_data.

get_context()[source]
get_error_messages() list[dict[str, str]][source]

Return all error messages of this form and append labels to field-errors

Returns:

The errors of this form

Return type:

list[dict[str, str]]

get_initial_for_field(field, field_name)[source]

Return initial data for field on form. Use initial data from the form or the field, in that order. Evaluate callable values.

get_language_fields() Iterator[forms.ChoiceField][source]

Generator for a django.forms.ChoiceField for each language with the available translation providers

Return type:

Iterator[forms.ChoiceField]

has_changed()[source]

Return True if data differs from initial.

has_error(field, code=None)[source]
hidden_fields()[source]

Return a list of all the BoundField objects that are hidden fields. Useful for manual form layout in templates.

is_multipart()[source]

Return True if the form needs to be multipart-encoded, i.e. it has FileInput, or False otherwise.

is_valid()[source]

Return True if the form has no errors, or False otherwise.

property media[source]

Return all media required to render the widgets on this form.

non_field_errors()[source]

Return an ErrorList of errors that aren’t associated with a particular field – i.e., from Form.clean(). Return an empty ErrorList if there are none.

order_fields(field_order)[source]

Rearrange the fields according to field_order.

field_order is a list of field names specifying the order. Append fields not included in the list in the default order for backward compatibility with subclasses not overriding field_order. If field_order is None, keep all fields in the order defined in the class. Ignore unknown fields in field_order to allow disabling fields in form subclasses without redefining ordering.

prefix = None[source]
render(template_name=None, context=None, renderer=None)[source]
save(commit: bool = True) Region[source]

This method extends the default save()-method of the base ModelForm to set attributes which are not directly determined by input fields.

Parameters:

commit (bool) – Whether or not the changes should be written to the database

Returns:

The saved region object

Return type:

Region

property template_name[source]
template_name_div = 'django/forms/div.html'[source]
template_name_label = 'django/forms/label.html'[source]
template_name_p = 'django/forms/p.html'[source]
template_name_table = 'django/forms/table.html'[source]
template_name_ul = 'django/forms/ul.html'[source]
unavailable_languages: list[str] = [][source]

The languages that cannot be selected at the moment

use_required_attribute = True[source]
validate_unique()[source]

Call the instance’s validate_unique() method and update the form’s validation errors if any were raised.

visible_fields()[source]

Return a list of BoundField objects that aren’t hidden fields. The opposite of the hidden_fields() method.