translator_directory.collections.translator =========================================== .. py:module:: translator_directory.collections.translator Attributes ---------- .. autoapisummary:: translator_directory.collections.translator.order_cols Classes ------- .. autoapisummary:: translator_directory.collections.translator.TranslatorCollection Module Contents --------------- .. py:data:: order_cols :value: ('last_name', 'drive_distance') .. py:class:: TranslatorCollection(app: onegov.translator_directory.app.TranslatorDirectoryApp, page: int = 0, written_langs: list[str] | None = None, spoken_langs: list[str] | None = None, monitor_langs: list[str] | None = None, order_by: str | None = None, order_desc: bool = False, user_role: str | None = None, search: str | None = None, guilds: list[str] | None = None, interpret_types: list[str] | None = None, state: str | None = 'published', admissions: list[str] | None = None, genders: list[str] | None = None) Bases: :py:obj:`onegov.core.collection.GenericCollection`\ [\ :py:obj:`onegov.translator_directory.models.translator.Translator`\ ], :py:obj:`onegov.core.collection.Pagination`\ [\ :py:obj:`onegov.translator_directory.models.translator.Translator`\ ] Abstract base class for generic types. A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as:: class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc. This class can then be used as follows:: def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default .. py:attribute:: batch_size :value: 10 .. py:attribute:: app .. py:attribute:: page :value: 0 .. py:attribute:: user_role :value: None .. py:attribute:: search .. py:attribute:: guilds :value: [] .. py:attribute:: interpret_types :value: [] .. py:attribute:: state :value: 'published' .. py:attribute:: admissions :value: [] .. py:attribute:: genders :value: [] .. py:attribute:: written_langs :value: None .. py:attribute:: spoken_langs :value: None .. py:attribute:: monitor_langs :value: None .. py:attribute:: order_by :value: None .. py:attribute:: order_desc :value: False .. py:method:: __eq__(other: object) -> bool Returns True if the current and the other Pagination instance are equal. Used to find the current page in a list of pages. .. py:method:: add(update_user: bool = True, **kwargs: Any) -> onegov.translator_directory.models.translator.Translator .. py:method:: delete(item: onegov.translator_directory.models.translator.Translator) -> None .. py:method:: confirm_current_data(item: onegov.translator_directory.models.translator.Translator) -> None .. py:method:: update_user(item: onegov.translator_directory.models.translator.Translator, new_email: str | None) -> None Keep the translator and its user account in sync. * Creates a new user account if an email address is set (if not already existing). * Disable user accounts if an email has been deleted. * Change usernames if an email has changed. * Make sure used user accounts have the right role. * Make sure used user accounts are activated. * Make sure the password is changed if activated or disabled. .. py:method:: truncate(text: str | None, maxchars: int = 25) -> str | None :staticmethod: .. py:property:: model_class :type: type[onegov.translator_directory.models.translator.Translator] .. py:method:: subset() -> sqlalchemy.orm.Query[onegov.translator_directory.models.translator.Translator] Returns an SQLAlchemy query containing all records that should be considered for pagination. .. py:property:: page_index :type: int Returns the current page index (starting at 0). .. py:property:: order_expression :type: sqlalchemy.sql.ColumnElement[Any] .. py:property:: by_spoken_lang_expression :type: tuple[sqlalchemy.sql.ColumnElement[bool], Ellipsis] .. py:property:: by_written_lang_expression :type: tuple[sqlalchemy.sql.ColumnElement[bool], Ellipsis] .. py:property:: by_monitor_lang_expression :type: tuple[sqlalchemy.sql.ColumnElement[bool], Ellipsis] .. py:property:: by_search_term_expression :type: tuple[sqlalchemy.sql.ColumnElement[bool], Ellipsis] Search for any word in any field of the search columns .. py:property:: by_professional_guilds_expression :type: tuple[sqlalchemy.sql.ColumnElement[bool], Ellipsis] .. py:property:: by_interpreting_types_expression :type: tuple[sqlalchemy.sql.ColumnElement[bool], Ellipsis] .. py:property:: by_admission :type: tuple[sqlalchemy.sql.ColumnElement[bool], Ellipsis] .. py:property:: by_gender :type: tuple[sqlalchemy.sql.ColumnElement[bool], Ellipsis] .. py:method:: by_lastname(lastname: str) -> onegov.translator_directory.models.translator.Translator | None .. py:method:: page_by_index(index: int) -> Self Returns the page at the given index. A page here means an instance of the class inheriting from the ``Pagination`` base class. .. py:property:: search_columns :type: list[sqlalchemy.sql.ColumnElement[Any]] The columns used for text search. .. py:method:: query() -> sqlalchemy.orm.Query[onegov.translator_directory.models.translator.Translator] .. py:method:: by_form(form: onegov.translator_directory.forms.translator.TranslatorSearchForm) -> Self .. py:property:: available_additional_professional_guilds :type: list[str]