mirror of
				https://github.com/go-gitea/gitea.git
				synced 2025-11-04 10:44:12 +01:00 
			
		
		
		
	This PR reduces the complexity of the system setting system. It only needs one line to introduce a new option, and the option can be used anywhere out-of-box. It is still high-performant (and more performant) because the config values are cached in the config system.
		
			
				
	
	
		
			24 lines
		
	
	
		
			677 B
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			24 lines
		
	
	
		
			677 B
		
	
	
	
		
			Go
		
	
	
	
	
	
// Copyright 2022 The Gitea Authors. All rights reserved.
 | 
						|
// SPDX-License-Identifier: MIT
 | 
						|
 | 
						|
package v1_18 //nolint
 | 
						|
 | 
						|
import (
 | 
						|
	"code.gitea.io/gitea/modules/timeutil"
 | 
						|
 | 
						|
	"xorm.io/xorm"
 | 
						|
)
 | 
						|
 | 
						|
type SystemSetting struct {
 | 
						|
	ID           int64              `xorm:"pk autoincr"`
 | 
						|
	SettingKey   string             `xorm:"varchar(255) unique"` // ensure key is always lowercase
 | 
						|
	SettingValue string             `xorm:"text"`
 | 
						|
	Version      int                `xorm:"version"` // prevent to override
 | 
						|
	Created      timeutil.TimeStamp `xorm:"created"`
 | 
						|
	Updated      timeutil.TimeStamp `xorm:"updated"`
 | 
						|
}
 | 
						|
 | 
						|
func CreateSystemSettingsTable(x *xorm.Engine) error {
 | 
						|
	return x.Sync(new(SystemSetting))
 | 
						|
}
 |