diff --git a/modules/setting/admin.go b/modules/setting/admin.go index 35ffa9efbf..4c46a69677 100644 --- a/modules/setting/admin.go +++ b/modules/setting/admin.go @@ -17,6 +17,7 @@ func loadAdminFrom(rootCfg ConfigProvider) { sec := rootCfg.Section("admin") Admin.DisableRegularOrgCreation = sec.Key("DISABLE_REGULAR_ORG_CREATION").MustBool(false) Admin.DefaultEmailNotification = sec.Key("DEFAULT_EMAIL_NOTIFICATIONS").MustString("enabled") + Admin.SendNotificationEmailOnNewUser = sec.Key("SEND_NOTIFICATION_EMAIL_ON_NEW_USER").MustBool(false) Admin.UserDisabledFeatures = container.SetOf(sec.Key("USER_DISABLED_FEATURES").Strings(",")...) } diff --git a/modules/setting/admin_test.go b/modules/setting/admin_test.go new file mode 100644 index 0000000000..65dbc8adf4 --- /dev/null +++ b/modules/setting/admin_test.go @@ -0,0 +1,30 @@ +// Copyright The Forgejo Authors. +// SPDX-License-Identifier: MIT + +package setting + +import ( + "testing" + + "code.gitea.io/gitea/modules/container" + + "github.com/stretchr/testify/assert" +) + +func Test_loadAdminFrom(t *testing.T) { + iniStr := ` + [admin] + DISABLE_REGULAR_ORG_CREATION = true + DEFAULT_EMAIL_NOTIFICATIONS = z + SEND_NOTIFICATION_EMAIL_ON_NEW_USER = true + USER_DISABLED_FEATURES = a,b + ` + cfg, err := NewConfigProviderFromData(iniStr) + assert.NoError(t, err) + loadAdminFrom(cfg) + + assert.EqualValues(t, true, Admin.DisableRegularOrgCreation) + assert.EqualValues(t, "z", Admin.DefaultEmailNotification) + assert.EqualValues(t, true, Admin.SendNotificationEmailOnNewUser) + assert.EqualValues(t, container.SetOf("a", "b"), Admin.UserDisabledFeatures) +} diff --git a/release-notes/8.0.0/fix/3904.md b/release-notes/8.0.0/fix/3904.md new file mode 100644 index 0000000000..f1a934081b --- /dev/null +++ b/release-notes/8.0.0/fix/3904.md @@ -0,0 +1 @@ +- a v7.0.0 regression causing `[admin].SEND_NOTIFICATION_EMAIL_ON_NEW_USER=true` to always be ignored.