diff --git a/api/funkwhale_api/instance/dynamic_preferences_registry.py b/api/funkwhale_api/instance/dynamic_preferences_registry.py new file mode 100644 index 0000000000000000000000000000000000000000..1d93c383eb80372c507862a3b4f2e3450d792fca --- /dev/null +++ b/api/funkwhale_api/instance/dynamic_preferences_registry.py @@ -0,0 +1,37 @@ +from dynamic_preferences import types +from dynamic_preferences.registries import global_preferences_registry + +raven = types.Section('raven') + + +@global_preferences_registry.register +class RavenDSN(types.StringPreference): + show_in_api = True + section = raven + name = 'front_dsn' + default = 'https://9e0562d46b09442bb8f6844e50cbca2b@sentry.eliotberriot.com/4' + verbose_name = ( + 'A raven DSN key used to report front-ent errors to ' + 'a sentry instance' + ) + help_text = ( + 'Keeping the default one will report errors to funkwhale developers' + ) + + +SENTRY_HELP_TEXT = ( + 'Error reporting is disabled by default but you can enable it if' + ' you want to help us improve funkwhale' +) + + +@global_preferences_registry.register +class RavenEnabled(types.BooleanPreference): + show_in_api = True + section = raven + name = 'front_enabled' + default = False + verbose_name = ( + 'Wether error reporting to a Sentry instance using raven is enabled' + ' for front-end errors' + )