News Managers

Abstract News Manager

class integreat_cms.news_managers.abstract_news_manager.AbstractNewsManager[source]

Bases: ABC

__init__()[source]
abstract collect_news_items(region_slug: str, language_slug: str, channel: str) list[NewsItem][source]

Returns news items imported from the source

To be implemented in the inheriting model

Parameters:
  • region_slug (str)

  • language_slug (str)

  • channel (str)

Return type:

list[NewsItem]

abstract import_news_items() None[source]

Imports news items from the source

To be implemented in the inheriting model

Return type:

None

name: str[source]
abstract social_media_headers(request: HttpRequest, region: Region, language: Language, slug: str) HttpResponse[source]

Tries rendering the social media headers for a news page in a specified region and language To be implemented in the inheriting model

Parameters:
Return type:

HttpResponse

class integreat_cms.news_managers.abstract_news_manager.NewsItem[source]

Bases: TypedDict

__init__(*args, **kwargs)[source]
available_languages: dict | None[source]
channel: str | None[source]
clear() None.  Remove all items from D.[source]
copy() a shallow copy of D[source]
display_date: datetime[source]
fromkeys(value=None, /)[source]

Create a new dictionary with keys from iterable and values set to value.

get(key, default=None, /)[source]

Return the value for key if key is in the dictionary, else default.

id: int[source]
items() a set-like object providing a view on D's items[source]
keys() a set-like object providing a view on D's keys[source]
last_updated: datetime[source]
message: str[source]
pop(k[, d]) v, remove specified key and return the corresponding value.[source]

If the key is not found, return the default if given; otherwise, raise a KeyError.

popitem()[source]

Remove and return a (key, value) pair as a 2-tuple.

Pairs are returned in LIFO (last-in, first-out) order. Raises KeyError if the dict is empty.

setdefault(key, default=None, /)[source]

Insert key with a value of default if key is not in the dictionary.

Return the value for key if key is in the dictionary, else default.

source: str[source]
timestamp: datetime[source]
title: str[source]
update([E, ]**F) None.  Update D from dict/iterable E and F.[source]

If E is present and has a .keys() method, then does: for k in E: D[k] = E[k] If E is present and lacks a .keys() method, then does: for k, v in E: D[k] = v In either case, this is followed by: for k in F: D[k] = F[k]

values() an object providing a view on D's values[source]

Pushnews Manager

class integreat_cms.news_managers.pushnews_manager.PushnewsManager[source]

Bases: AbstractNewsManager

__init__()[source]
collect_news_items(region_slug: str, language_slug: str, channel: str) list[NewsItem][source]

Returns push notification news

Parameters:
  • region_slug (str)

  • language_slug (str)

  • channel (str)

Return type:

list[NewsItem]

import_news_items() None[source]

Push notifications live in our own database, so there is nothing to import.

Return type:

None

name: str = 'local'[source]
social_media_headers(request: HttpRequest, region: Region, language: Language, slug: str) HttpResponse[source]

Tries rendering the social media headers for a news page in a specified region and language

Parameters:
Return type:

HttpResponse

Registry

Registry of the available news source managers.

Tunews Manager

class integreat_cms.news_managers.tunews_manager.TunewsManager[source]

Bases: AbstractNewsManager

__init__()[source]
collect_news_items(region_slug: str, language_slug: str, _channel: str) list[NewsItem][source]

Returns Tü News posts

Parameters:
  • region_slug (str)

  • language_slug (str)

  • _channel (str)

Return type:

list[NewsItem]

import_news_items() None[source]

Imports Tü News posts and save them as cache

Return type:

None

name: str = 'tuNews'[source]
social_media_headers(request: HttpRequest, region: Region, language: Language, slug: str) HttpResponse[source]

Tries rendering the social media headers for a news page in a specified region and language

Parameters:
Return type:

HttpResponse

integreat_cms.news_managers.tunews_manager.clean_html(html_string: str) str[source]

Remove unnecessary HTML elements from a Tü News post body.

Parameters:

html_string (str)

Return type:

str