Imprint

This package contains all views related to the imprint

Imprint Actions

This module contains view actions related to the imprint.

integreat_cms.cms.views.imprint.imprint_actions.delete_imprint(request: HttpRequest, region_slug: str) HttpResponseRedirect[source]

Delete imprint object

Parameters:
  • request (HttpRequest) – The current request

  • region_slug (str) – The slug of the current region

Raises:

Http404 – If no imprint exists for the region

Returns:

A redirection to the ImprintFormView

Return type:

HttpResponseRedirect

integreat_cms.cms.views.imprint.imprint_actions.expand_imprint_translation_id(request: HttpRequest, imprint_translation_id: int) HttpResponseRedirect | HttpResponseNotFound[source]

Searches for an imprint translation with corresponding ID and redirects browser to web app

Parameters:
  • request (HttpRequest) – The current request

  • imprint_translation_id (int) – The id of the requested imprint translation

Returns:

A redirection to WEBAPP_URL

Return type:

HttpResponseRedirect | HttpResponseNotFound

Imprint Context Mixin

class integreat_cms.cms.views.imprint.imprint_context_mixin.ImprintContextMixin[source]

Bases: ContextMixin

This mixin provides extra context for imprint views

get_context_data(**kwargs: Any) dict[str, Any][source]

Returns a dictionary representing the template context (see get_context_data()).

Parameters:

**kwargs (Any) – The given keyword arguments

Returns:

The template context

Return type:

dict[str, Any]

Imprint Form View

class integreat_cms.cms.views.imprint.imprint_form_view.ImprintFormView(**kwargs)[source]

Bases: TemplateView, ImprintContextMixin, MediaContextMixin

View for the imprint page form and imprint page translation form

extra_context = {'translation_status': <module 'integreat_cms.cms.constants.translation_status' from '/home/circleci/project/integreat_cms/cms/constants/translation_status.py'>}[source]

The context dict passed to the template (see ContextMixin)

get(request: HttpRequest, *args: Any, **kwargs: Any) HttpResponse[source]

Render ImprintTranslationForm

Parameters:
  • request (HttpRequest) – The current request

  • *args (Any) – The supplied arguments

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

Returns:

The rendered template response

Return type:

HttpResponse

static get_side_by_side_language_options(region: Region, language: Language, imprint: ImprintPage | None) list[dict[str, Any]][source]

This is a helper function to generate the side-by-side language options for both the get and post requests.

Parameters:
  • region (Region) – The current region

  • language (Language) – The current language

  • imprint (ImprintPage | None) – The current imprint

Returns:

The list of language options, each represented by a dict

Return type:

list[dict[str, Any]]

post(request: HttpRequest, *args: Any, **kwargs: Any) HttpResponse[source]

Binds the user input data to the imprint form and validates the input. Forms containing images/files need to be additionally instantiated with the FILES attribute of request objects, see File Uploads

Parameters:
  • request (HttpRequest) – Request submitted for saving imprint form

  • *args (Any) – The supplied arguments

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

Returns:

Redirection to the populated imprint form

Return type:

HttpResponse

template_name = 'imprint/imprint_form.html'[source]

The template to render (see TemplateResponseMixin)

Imprint Sbs View

class integreat_cms.cms.views.imprint.imprint_sbs_view.ImprintSideBySideView(**kwargs)[source]

Bases: TemplateView, ImprintContextMixin, MediaContextMixin

View for the imprint side by side form

get(request: HttpRequest, *args: Any, **kwargs: Any) HttpResponse[source]

Render ImprintTranslationForm on the side by side view

Parameters:
  • request (HttpRequest) – The current request

  • *args (Any) – The supplied arguments

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

Raises:

Http404 – If no imprint exists for the region

Returns:

The rendered template response

Return type:

HttpResponse

get_context_data(**kwargs: Any) dict[str, Any][source]

Returns a dictionary representing the template context (see get_context_data()).

Parameters:

**kwargs (Any) – The given keyword arguments

Returns:

The template context

Return type:

dict[str, Any]

post(request: HttpRequest, *args: Any, **kwargs: Any) HttpResponse[source]

Submit ImprintTranslationForm and save ImprintPageTranslation object

Parameters:
  • request (HttpRequest) – The current request

  • *args (Any) – The supplied arguments

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

Raises:

Http404 – If no imprint exists for the region

Returns:

The rendered template response

Return type:

HttpResponse

template_name = 'imprint/imprint_sbs.html'[source]

The template to render (see TemplateResponseMixin)

integreat_cms.cms.views.imprint.imprint_sbs_view.get_old_source_content(imprint: ImprintPage, source_language: Language, target_language: Language) str[source]

This function returns the content of the source language translation that was up to date when the latest (no minor edit) target language translation was created.

Parameters:
  • imprint (ImprintPage) – The imprint

  • source_language (Language) – The source language of the imprint

  • target_language (Language) – The target language of the imprint

Returns:

The content of the translation

Return type:

str

Imprint Version View

class integreat_cms.cms.views.imprint.imprint_version_view.ImprintVersionView(**kwargs)[source]

Bases: ImprintContextMixin, ContentVersionView

View for browsing the imprint versions and restoring old imprint versions

back_to_form_label: Promise = 'Back to the imprint form'[source]

The label of the “back to form” button

property edit_url: str[source]

The url to the form in the current language

Returns:

The edit url

get_object(queryset: Any | None = None) ImprintPage[source]

Get the current imprint object

Raises:

Http404 – HTTP status 404 if the imprint is not found

Returns:

The imprint object

Parameters:

queryset (Any | None)

Return type:

ImprintPage

has_publish_permission() bool[source]

All users who can change the imprint also can publish these changes

Returns:

Whether the user can publish the imprint

Return type:

bool

model[source]

The current content model (see SingleObjectMixin)

Parameters:

Relationship fields:

Parameters:

region (ForeignKey to Region) – Region (related name: imprints)

Reverse relationships:

Parameters:

translations (Reverse ForeignKey from ImprintPageTranslation) – All translations of this imprint (related name of page)

alias of ImprintPage

property versions_url: str[source]

The url to the form in the current language

Returns:

The edit url