Skip to content
Snippets Groups Projects
preferences.py 1.85 KiB
Newer Older
from django.utils.translation import gettext as _

from dynamic_preferences.preferences import Section
from dynamic_preferences.types import BooleanPreference, StringPreference

from aleksis.core.registries import site_preferences_registry

matrix = Section("matrix", verbose_name=_("Matrix"))


@site_preferences_registry.register
class Homeserver(StringPreference):
    section = matrix
    name = "homeserver"
    verbose_name = _("URL of Matrix homeserver")
    default = ""
Jonathan Weth's avatar
Jonathan Weth committed
@site_preferences_registry.register
class HomeserverForIDs(StringPreference):
    section = matrix
    name = "homeserver_ids"
    verbose_name = _("Name of Matrix homeserver used for auto-generating Matrix IDs")
    help_text = _("Leave empty to not create Matrix IDs automatically")
    default = ""


@site_preferences_registry.register
class AccessToken(StringPreference):
    section = matrix
    name = "access_token"
    verbose_name = _("Access token to access homeserver")
    default = ""


@site_preferences_registry.register
class User(StringPreference):
    section = matrix
    name = "user"
    verbose_name = _("User to access homeserver")
    default = ""


@site_preferences_registry.register
class DeviceID(StringPreference):
    section = matrix
    name = "device_id"
    verbose_name = _("Device ID")
    default = ""


@site_preferences_registry.register
class DeviceName(StringPreference):
    section = matrix
    name = "device_name"
    verbose_name = _("Device name")
    default = "AlekSIS"


@site_preferences_registry.register
class DisambiguateRoomAliases(BooleanPreference):
    section = matrix
    name = "disambiguate_room_aliases"
    verbose_name = _("Disambiguate room aliases")
    default = True


@site_preferences_registry.register
class UseSpaces(BooleanPreference):
    section = matrix
    name = "use_spaces"
    verbose_name = _("Use Matrix spaces")
    default = True