Source code for landsgemeinde.views.settings

""" The settings view, defining things like the logo or color of the org. """
from __future__ import annotations

from onegov.core.security import Secret
from onegov.landsgemeinde.forms.settings import AssemblySettingsForm
from onegov.org import _
from onegov.org.models import Organisation
from onegov.landsgemeinde import LandsgemeindeApp
from onegov.landsgemeinde.forms import OpenDataSettingsForm
from onegov.town6.layout import SettingsLayout
from onegov.org.views.settings import handle_generic_settings

from typing import TYPE_CHECKING
if TYPE_CHECKING:
    from onegov.core.types import RenderData
    from onegov.town6.request import TownRequest
    from webob import Response


@LandsgemeindeApp.form(
    model=Organisation, name='open-data-settings', permission=Secret,
    template='form.pt', form=OpenDataSettingsForm,
    setting=_('Open Data'), icon='far fa-file-export', order=500
)
[docs] def handle_open_data_settings( self: Organisation, request: TownRequest, form: OpenDataSettingsForm ) -> RenderData | Response: layout = SettingsLayout(self, request, _('Open Data')) return handle_generic_settings(self, request, form, _('Open Data'), layout)
@LandsgemeindeApp.form( model=Organisation, name='assembly-settings', permission=Secret, template='form.pt', form=AssemblySettingsForm, setting=_('General Assemblies'), icon='far fa-vote-yea', order=500 )
[docs] def handle_assembly_settings( self: Organisation, request: TownRequest, form: AssemblySettingsForm ) -> RenderData | Response: layout = SettingsLayout(self, request, _('General Assemblies')) return handle_generic_settings( self, request, form, _('General Assemblies'), layout )