Source code for pas.layouts.presidential_allowance
from __future__ import annotations
from functools import cached_property
from onegov.core.elements import Link
from onegov.core.elements import LinkGroup
from onegov.pas import _
from onegov.pas.collections.presidential_allowance import (
PresidentialAllowanceCollection,
)
from onegov.pas.layouts.default import DefaultLayout
[docs]
class PresidentialAllowanceCollectionLayout(DefaultLayout):
@cached_property
@cached_property
@cached_property
[docs]
def breadcrumbs(self) -> list[Link]:
return [
Link(_('Homepage'), self.homepage_url),
Link(
_('PAS settings'), self.pas_settings_url
),
Link(
self.title,
self.request.link(self.model),
),
]
@cached_property
[docs]
def editbar_links(
self,
) -> list[LinkGroup] | None:
if self.request.is_manager:
return [
LinkGroup(
title=_('Add'),
links=[
Link(
text=_('Add quarterly allowance'),
url=self.request.link(
self.model, 'new'
),
attrs={
'class': (
'new-presidential-allowance'
)
},
),
],
),
]
return None
[docs]
class PresidentialAllowanceFormLayout(DefaultLayout):
@cached_property
[docs]
def collection(
self,
) -> PresidentialAllowanceCollection:
return PresidentialAllowanceCollection(
self.request.session
)
@cached_property
@cached_property
@cached_property
[docs]
def breadcrumbs(self) -> list[Link]:
return [
Link(_('Homepage'), self.homepage_url),
Link(
_('PAS settings'), self.pas_settings_url
),
Link(
_('Presidential allowances'),
self.request.link(self.collection),
),
Link(
self.title,
self.request.link(self.model, 'new'),
),
]