Source code for wtfs.layouts.scan_job

from functools import cached_property
from onegov.core.elements import Confirm
from onegov.core.elements import Intercooler
from onegov.core.elements import Link
from onegov.wtfs import _
from onegov.wtfs.layouts.default import DefaultLayout
from onegov.wtfs.security import AddModel
from onegov.wtfs.security import AddModelUnrestricted
from onegov.wtfs.security import DeleteModel
from onegov.wtfs.security import EditModel
from onegov.wtfs.security import EditModelUnrestricted


from typing import TYPE_CHECKING
if TYPE_CHECKING:
    from onegov.core.elements import Element


[docs] class ScanJobsLayout(DefaultLayout): @cached_property
[docs] def title(self) -> str: return _('Scan jobs')
@cached_property @cached_property
[docs] def breadcrumbs(self) -> list['Element']: return [ Link(_('Homepage'), self.homepage_url), Link(self.title, self.scan_jobs_url) ]
[docs] class ScanJobLayout(DefaultLayout): @cached_property
[docs] def title(self) -> str: return self.model.title
@cached_property
[docs] def subtitle(self) -> str: return '{}, {}'.format( self.model.municipality.name, self.format_date(self.model.dispatch_date, 'date'), )
@cached_property @cached_property
[docs] def breadcrumbs(self) -> list['Element']: return [ Link(_('Homepage'), self.homepage_url), Link(_('Scan jobs'), self.scan_jobs_url), Link(self.model.delivery_number, '#') ]
[docs] class AddScanJobLayout(DefaultLayout): @cached_property
[docs] def title(self) -> str: return _('Add scan job')
@cached_property
[docs] def breadcrumbs(self) -> list['Element']: return [ Link(_('Homepage'), self.homepage_url), Link(_('Scan jobs'), self.scan_jobs_url), Link(_('Add'), '#') ]
@cached_property
[docs] def cancel_url(self) -> str: return self.scan_jobs_url
@cached_property
[docs] def success_url(self) -> str: return self.scan_jobs_url
[docs] class EditScanJobLayout(DefaultLayout): @cached_property
[docs] def title(self) -> str: return _('Edit scan job')
@cached_property
[docs] def breadcrumbs(self) -> list['Element']: return [ Link(_('Homepage'), self.homepage_url), Link(_('Scan jobs'), self.scan_jobs_url), Link(self.model.delivery_number, self.request.link(self.model)), Link(_('Edit'), '#') ]
@cached_property
[docs] def cancel_url(self) -> str: return self.request.link(self.model)
@cached_property
[docs] def success_url(self) -> str: return self.request.link(self.model)
[docs] class DeliveryNoteLayout(DefaultLayout): @cached_property
[docs] def title(self) -> str: return _('Delivery note')
@cached_property @cached_property
[docs] def breadcrumbs(self) -> list['Element']: return [ Link(_('Homepage'), self.homepage_url), Link(_('Scan jobs'), self.scan_jobs_url), Link(self.model.delivery_number, self.request.link(self.model)), Link(self.title, '#') ]