fix(services): set SendNotificationEmailOnNewUser
regression from 767e9634d3. It changed
the parsing of the [admin] section from being derived from the content
of each key with mustMapSetting(rootCfg, "admin", &Admin) to
explicitly listing all keys in the code.
SEND_NOTIFICATION_EMAIL_ON_NEW_USER was not added and therefore
ignored. As a consequence notifications of newly registered users were
never sent.
			
			
This commit is contained in:
		
							parent
							
								
									8c3c68e613
								
							
						
					
					
						commit
						ff2a3f4e3a
					
				
					 3 changed files with 34 additions and 0 deletions
				
			
		| 
						 | 
				
			
			@ -20,6 +20,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(",")...)
 | 
			
		||||
	Admin.ExternalUserDisableFeatures = container.SetOf(sec.Key("EXTERNAL_USER_DISABLE_FEATURES").Strings(",")...)
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										32
									
								
								modules/setting/admin_test.go
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										32
									
								
								modules/setting/admin_test.go
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,32 @@
 | 
			
		|||
// 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
 | 
			
		||||
  EXTERNAL_USER_DISABLE_FEATURES = x,y
 | 
			
		||||
	`
 | 
			
		||||
	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)
 | 
			
		||||
	assert.EqualValues(t, container.SetOf("x", "y"), Admin.ExternalUserDisableFeatures)
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										1
									
								
								release-notes/8.0.0/fix/3904.md
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								release-notes/8.0.0/fix/3904.md
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1 @@
 | 
			
		|||
- a v7.0.0 regression causing `[admin].SEND_NOTIFICATION_EMAIL_ON_NEW_USER=true` to always be ignored.
 | 
			
		||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue