diff --git a/aleksis/apps/ldap/preferences.py b/aleksis/apps/ldap/preferences.py index 1fee28579d82fe9235b7f90afb4539660e6b48d8..eec40b61e920f360cb37d781de1b2ce1dc878c0b 100644 --- a/aleksis/apps/ldap/preferences.py +++ b/aleksis/apps/ldap/preferences.py @@ -35,6 +35,15 @@ class LDAPSyncCreateMissingPersons(BooleanPreference): verbose_name = _("Create missing persons for LDAP users") +@site_preferences_registry.register +class LDAPPersonSyncOnLogin(BooleanPreference): + section = ldap + name = "person_sync_on_login" + default = True + required = False + verbose_name = _("Sync LDAP user with person on login") + + @site_preferences_registry.register class EnableLDAPGroupSync(BooleanPreference): section = ldap @@ -51,6 +60,7 @@ class LDAPGroupSyncFieldShortName(StringPreference): default = "cn" required = False verbose_name = _("Field for short name of group") + row = "ldap_group_sync_field_short_name" @site_preferences_registry.register @@ -59,10 +69,9 @@ class LDAPGroupSyncFieldShortNameRE(StringPreference): name = "group_sync_field_short_name_re" default = "" required = False - verbose_name = _( - "Regular expression to match LDAP value for group short name against," - "e.g. class_(?P<class>.*); separate multiple patterns by |" - ) + verbose_name = _("Regular expression to match LDAP value for group short name against") + help_text = _("e.g. class_(?P<class>.*); separate multiple patterns by |") + row = "ldap_group_sync_field_short_name" @site_preferences_registry.register @@ -71,10 +80,9 @@ class LDAPGroupSyncFieldShortNameReplace(StringPreference): name = "group_sync_field_short_name_replace" default = "" required = False - verbose_name = _( - "Replacement template to apply to group short name," - "e.g. \\g<class>; separate multiple templates by |" - ) + verbose_name = _("Replacement template to apply to group short name") + help_text = _("e.g. \\g<class>; separate multiple templates by |") + row = "ldap_group_sync_field_short_name" @site_preferences_registry.register @@ -84,6 +92,7 @@ class LDAPGroupSyncFieldName(StringPreference): default = "cn" required = False verbose_name = _("Field for name of group") + row = "ldap_group_sync_field_name" @site_preferences_registry.register @@ -92,10 +101,9 @@ class LDAPGroupSyncFieldNameRE(StringPreference): name = "group_sync_field_name_re" default = "" required = False - verbose_name = _( - "Regular expression to match LDAP value for group name against," - "e.g. class_(?P<class>.*); separate multiple patterns by |" - ) + verbose_name = _("Regular expression to match LDAP value for group name against,") + help_text = _("e.g. class_(?P<class>.*); separate multiple patterns by |") + row = "ldap_group_sync_field_name" @site_preferences_registry.register @@ -104,10 +112,9 @@ class LDAPGroupSyncFieldNameReplace(StringPreference): name = "group_sync_field_name_replace" default = "" required = False - verbose_name = _( - "Replacement template to apply to group name," - "e.g. \\g<class>; separate multiple templates by |" - ) + verbose_name = _("Replacement template to apply to group name") + help_text = _("e.g. \\g<class>; separate multiple templates by |") + row = "ldap_group_sync_field_name" @site_preferences_registry.register @@ -117,6 +124,7 @@ class LDAPGroupSyncOwnerAttr(StringPreference): default = "" required = False verbose_name = _("LDAP field with dn of group owner") + row = "ldap_group_sync_owner_attr" @site_preferences_registry.register @@ -130,12 +138,4 @@ class LDAPGroupSyncOwnerAttrType(ChoicePreference): ("dn", _("Distinguished Name")), ("uid", _("UID")), ] - - -@site_preferences_registry.register -class LDAPPersonSyncOnLogin(BooleanPreference): - section = ldap - name = "person_sync_on_login" - default = True - required = False - verbose_name = _("Sync LDAP user with person on login") + row = "ldap_group_sync_owner_attr" diff --git a/aleksis/apps/ldap/util/ldap_sync.py b/aleksis/apps/ldap/util/ldap_sync.py index 766860184fce31880971686a66d5eb5f1a0b6537..a03e096efe299c1dde7ffdc9699283297a71191c 100644 --- a/aleksis/apps/ldap/util/ldap_sync.py +++ b/aleksis/apps/ldap/util/ldap_sync.py @@ -76,9 +76,10 @@ def update_dynamic_preferences(): class _GeneratedPreference(StringPreference): section = section_ldap name = setting_name - verbose_name = _(f"LDAP field for {field.verbose_name} on {model._meta.label}") + verbose_name = _(f"LDAP field for '{field.verbose_name}' on {model._meta.label}") required = False default = "" + row = setting_name @site_preferences_registry.register class _GeneratedPreferenceRe(StringPreference): @@ -86,20 +87,23 @@ def update_dynamic_preferences(): name = setting_name + "_re" verbose_name = _( f"Regular expression to match LDAP value for" - f" {field.verbose_name} on {model._meta.label} against" + f" '{field.verbose_name}' on {model._meta.verbose_name} against" ) required = False default = "" + row = setting_name @site_preferences_registry.register class _GeneratedPreferenceReplace(StringPreference): section = section_ldap name = setting_name + "_replace" verbose_name = _( - f"Replacement template to apply to {field.verbose_name} on {model._meta.label}" + f"Replacement template to apply to '{field.verbose_name}'" + f" on {model._meta.verbose_name}" ) required = False default = "" + row = setting_name @site_preferences_registry.register class LDAPMatchingFields(MultipleChoicePreference):