Merge pull request #2598 from Spitfireap/FixSaveParametersVue

Fixed core parameters unable to save on v2
This commit is contained in:
Antoine Nguyen
2022-09-17 10:22:40 +02:00
committed by GitHub
4 changed files with 18 additions and 7 deletions
+1
View File
@@ -94,6 +94,7 @@ class AdminParametersForm(param_forms.AdminParametersForm):
custom_dns_server = GenericIPAddressField(
label=ugettext_lazy("Custom DNS server"),
required=False,
initial="",
help_text=ugettext_lazy(
"Use a custom DNS server instead of local server configuration"
)
+7 -3
View File
@@ -13,6 +13,7 @@ from modoboa.lib import fields as lib_fields
from ... import constants
from ... import models
from ... import sms_backends
from ... import app_settings
class CoreGlobalParametersSerializer(serializers.Serializer):
@@ -44,7 +45,7 @@ class CoreGlobalParametersSerializer(serializers.Serializer):
required=False, allow_blank=True)
sms_password_recovery = serializers.BooleanField(default=False)
sms_provider = serializers.ChoiceField(
choices=constants.SMS_BACKENDS, required=False)
choices=constants.SMS_BACKENDS, required=False, allow_null=True)
# LDAP settings
ldap_server_address = serializers.CharField(default="localhost")
@@ -106,7 +107,8 @@ class CoreGlobalParametersSerializer(serializers.Serializer):
)
# Dashboard settings
rss_feed_url = serializers.URLField(allow_blank=True)
rss_feed_url = serializers.URLField(
allow_blank=True, required=False, allow_null=True)
hide_features_widget = serializers.BooleanField(default=False)
# Notification settings
@@ -126,7 +128,7 @@ class CoreGlobalParametersSerializer(serializers.Serializer):
log_maximum_age = serializers.IntegerField(default=365)
items_per_page = serializers.IntegerField(default=30)
default_top_redirection = serializers.ChoiceField(
default="user", choices=[""])
default="user", choices=[("user", _("User profile"))], required=False)
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
@@ -134,6 +136,8 @@ class CoreGlobalParametersSerializer(serializers.Serializer):
for field, definition in sms_backend_fields.items():
self.fields[field] = definition["type"](
**definition["attrs"])
# Choices serializer for default_top_redirection field
self.fields["default_top_redirection"].choices = app_settings.enabled_applications()
def validate_ldap_user_dn_template(self, value):
try:
+1 -1
View File
@@ -58,7 +58,7 @@ CORE_SETTINGS = {
"top_notifications_check_interval": 30,
"log_maximum_age": 365,
"items_per_page": 30,
"default_top_redirection": ""
"default_top_redirection": "user"
}
+9 -3
View File
@@ -75,19 +75,25 @@ class OVHBackend(SMSBackend):
"sms_ovh_application_key": {
"type": serializers.CharField,
"attrs": {
"required": False
"required": False,
"allow_blank": True,
"allow_null": True,
}
},
"sms_ovh_application_secret": {
"type": serializers.CharField,
"attrs": {
"required": False
"required": False,
"allow_blank": True,
"allow_null": True,
}
},
"sms_ovh_consumer_key": {
"type": serializers.CharField,
"attrs": {
"required": False
"required": False,
"allow_blank": True,
"allow_null": True,
}
}
}