swissvotes.layouts.default
==========================

.. py:module:: swissvotes.layouts.default


Classes
-------

.. autoapisummary::

   swissvotes.layouts.default.DefaultLayout


Module Contents
---------------

.. py:class:: DefaultLayout(model: Any, request: onegov.swissvotes.request.SwissvotesRequest)

   Bases: :py:obj:`onegov.core.layout.ChameleonLayout`


   Extends the base layout class with methods related to chameleon
   template rendering.

   This class assumes the existance of two templates:

   - layout.pt -> Contains the page skeleton with headers, body and so on.
   - macros.pt -> Contains chameleon macros.



   .. py:attribute:: app
      :type:  onegov.swissvotes.app.SwissvotesApp

      Returns the application behind the request. 



   .. py:attribute:: request
      :type:  onegov.swissvotes.request.SwissvotesRequest


   .. py:attribute:: day_long_format
      :value: 'skeleton:MMMMd'



   .. py:attribute:: date_long_format
      :value: 'long'



   .. py:attribute:: datetime_long_format
      :value: 'medium'



   .. py:attribute:: pages


   .. py:property:: title
      :type: str



   .. py:property:: top_navigation
      :type: list[onegov.core.elements.Link]



   .. py:property:: editbar_links
      :type: list[onegov.core.elements.Link | onegov.core.elements.LinkGroup]



   .. py:property:: breadcrumbs
      :type: list[onegov.core.elements.Link]



   .. py:property:: static_path
      :type: str



   .. py:property:: sentry_init_path
      :type: str



   .. py:property:: homepage_url
      :type: str



   .. py:property:: disclaimer_link
      :type: onegov.core.elements.Link



   .. py:property:: imprint_link
      :type: onegov.core.elements.Link



   .. py:property:: data_protection_link
      :type: onegov.core.elements.Link



   .. py:property:: votes_url
      :type: str



   .. py:property:: login_url
      :type: str | None



   .. py:property:: logout_url
      :type: str | None



   .. py:property:: move_page_url_template
      :type: str



   .. py:property:: locales
      :type: list[tuple[str, str, str, str]]



   .. py:method:: format_policy_areas(vote: onegov.swissvotes.models.SwissVote) -> markupsafe.Markup


   .. py:method:: format_bfs_number(number: decimal.Decimal) -> str

      Hide the decimal places if there are none (simple votes). 



   .. py:method:: format_number(number: numbers.Number | decimal.Decimal | float | str | None, decimal_places: int | None = None, padding: str = '') -> str

      Takes the given numer and formats it according to locale.

      If the number is an integer, the default decimal places are 0,
      otherwise 2.

      Overwrites parent class to use "." instead of "," for fr_CH locale
      as would be returned by babel.