Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/MHSanaei/3x-ui.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHo3ein <ho3ein.sanaei@gmail.com>2023-05-31 09:17:02 +0300
committerGitHub <noreply@github.com>2023-05-31 09:17:02 +0300
commit94fad02737d82817ca69f1f05872b49e769a0cb4 (patch)
tree55e7ead217c5a3e82791c0edae6ad44de1ba524f /web/controller
parent8442836512d82b705e404bc1749e3000115ba550 (diff)
parentd694e6eafccad246c63264714897316f671d6428 (diff)
Merge pull request #545 from hamid-gh98/main
🔀 New Feature + Fix URLs + Some Improvements 🛠️🌐
Diffstat (limited to 'web/controller')
-rw-r--r--web/controller/inbound.go2
-rw-r--r--web/controller/setting.go97
2 files changed, 33 insertions, 66 deletions
diff --git a/web/controller/inbound.go b/web/controller/inbound.go
index 5ce58d53..815f1788 100644
--- a/web/controller/inbound.go
+++ b/web/controller/inbound.go
@@ -65,6 +65,7 @@ func (a *InboundController) getInbounds(c *gin.Context) {
}
jsonObj(c, inbounds, nil)
}
+
func (a *InboundController) getInbound(c *gin.Context) {
id, err := strconv.Atoi(c.Param("id"))
if err != nil {
@@ -168,6 +169,7 @@ func (a *InboundController) clearClientIps(c *gin.Context) {
}
jsonMsg(c, "Log Cleared", nil)
}
+
func (a *InboundController) addInboundClient(c *gin.Context) {
data := &model.Inbound{}
err := c.ShouldBind(data)
diff --git a/web/controller/setting.go b/web/controller/setting.go
index 0292c46a..cd509293 100644
--- a/web/controller/setting.go
+++ b/web/controller/setting.go
@@ -65,77 +65,42 @@ func (a *SettingController) getDefaultJsonConfig(c *gin.Context) {
}
func (a *SettingController) getDefaultSettings(c *gin.Context) {
- expireDiff, err := a.settingService.GetExpireDiff()
- if err != nil {
- jsonMsg(c, I18nWeb(c, "pages.settings.toasts.getSettings"), err)
- return
- }
- trafficDiff, err := a.settingService.GetTrafficDiff()
- if err != nil {
- jsonMsg(c, I18nWeb(c, "pages.settings.toasts.getSettings"), err)
- return
- }
- defaultCert, err := a.settingService.GetCertFile()
- if err != nil {
- jsonMsg(c, I18nWeb(c, "pages.settings.toasts.getSettings"), err)
- return
- }
- defaultKey, err := a.settingService.GetKeyFile()
- if err != nil {
- jsonMsg(c, I18nWeb(c, "pages.settings.toasts.getSettings"), err)
- return
- }
- tgBotEnable, err := a.settingService.GetTgbotenabled()
- if err != nil {
- jsonMsg(c, I18nWeb(c, "pages.settings.toasts.getSettings"), err)
- return
- }
- subEnable, err := a.settingService.GetSubEnable()
- if err != nil {
- jsonMsg(c, I18nWeb(c, "pages.settings.toasts.getSettings"), err)
- return
- }
- subPort, err := a.settingService.GetSubPort()
- if err != nil {
- jsonMsg(c, I18nWeb(c, "pages.settings.toasts.getSettings"), err)
- return
- }
- subPath, err := a.settingService.GetSubPath()
- if err != nil {
- jsonMsg(c, I18nWeb(c, "pages.settings.toasts.getSettings"), err)
- return
- }
- subDomain, err := a.settingService.GetSubDomain()
- if err != nil {
- jsonMsg(c, I18nWeb(c, "pages.settings.toasts.getSettings"), err)
- return
- }
- subKeyFile, err := a.settingService.GetSubKeyFile()
- if err != nil {
- jsonMsg(c, I18nWeb(c, "pages.settings.toasts.getSettings"), err)
- return
+ type settingFunc func() (interface{}, error)
+
+ settings := map[string]settingFunc{
+ "expireDiff": func() (interface{}, error) { return a.settingService.GetExpireDiff() },
+ "trafficDiff": func() (interface{}, error) { return a.settingService.GetTrafficDiff() },
+ "defaultCert": func() (interface{}, error) { return a.settingService.GetCertFile() },
+ "defaultKey": func() (interface{}, error) { return a.settingService.GetKeyFile() },
+ "tgBotEnable": func() (interface{}, error) { return a.settingService.GetTgbotenabled() },
+ "subEnable": func() (interface{}, error) { return a.settingService.GetSubEnable() },
+ "subPort": func() (interface{}, error) { return a.settingService.GetSubPort() },
+ "subPath": func() (interface{}, error) { return a.settingService.GetSubPath() },
+ "subDomain": func() (interface{}, error) { return a.settingService.GetSubDomain() },
+ "subKeyFile": func() (interface{}, error) { return a.settingService.GetSubKeyFile() },
+ "subCertFile": func() (interface{}, error) { return a.settingService.GetSubCertFile() },
}
- subCertFile, err := a.settingService.GetSubCertFile()
- if err != nil {
- jsonMsg(c, I18nWeb(c, "pages.settings.toasts.getSettings"), err)
- return
+
+ result := make(map[string]interface{})
+
+ for key, fn := range settings {
+ value, err := fn()
+ if err != nil {
+ jsonMsg(c, I18nWeb(c, "pages.settings.toasts.getSettings"), err)
+ return
+ }
+ result[key] = value
}
+
subTLS := false
- if subKeyFile != "" || subCertFile != "" {
+ if result["subKeyFile"] != "" || result["subCertFile"] != "" {
subTLS = true
}
- result := map[string]interface{}{
- "expireDiff": expireDiff,
- "trafficDiff": trafficDiff,
- "defaultCert": defaultCert,
- "defaultKey": defaultKey,
- "tgBotEnable": tgBotEnable,
- "subEnable": subEnable,
- "subPort": subPort,
- "subPath": subPath,
- "subDomain": subDomain,
- "subTLS": subTLS,
- }
+ result["subTLS"] = subTLS
+
+ delete(result, "subKeyFile")
+ delete(result, "subCertFile")
+
jsonObj(c, result, nil)
}