服务配置菜单项增加配置代号

This commit is contained in:
GoEdgeLab
2023-04-09 15:59:37 +08:00
parent 5c6bfe50f4
commit 368149b70c
3 changed files with 85 additions and 67 deletions

View File

@@ -181,7 +181,7 @@ func (this *ServerHelper) createLogMenu(secondMenuItem string, serverIdString st
// 统计菜单 // 统计菜单
func (this *ServerHelper) createStatMenu(secondMenuItem string, serverIdString string, serverConfig *serverconfigs.ServerConfig) []maps.Map { func (this *ServerHelper) createStatMenu(secondMenuItem string, serverIdString string, serverConfig *serverconfigs.ServerConfig) []maps.Map {
menuItems := []maps.Map{} var menuItems = []maps.Map{}
menuItems = append(menuItems, maps.Map{ menuItems = append(menuItems, maps.Map{
"name": "流量统计", "name": "流量统计",
"url": "/servers/server/stat?serverId=" + serverIdString, "url": "/servers/server/stat?serverId=" + serverIdString,
@@ -212,7 +212,7 @@ func (this *ServerHelper) createStatMenu(secondMenuItem string, serverIdString s
// 设置菜单 // 设置菜单
func (this *ServerHelper) createSettingsMenu(secondMenuItem string, serverIdString string, serverConfig *serverconfigs.ServerConfig) (items []maps.Map) { func (this *ServerHelper) createSettingsMenu(secondMenuItem string, serverIdString string, serverConfig *serverconfigs.ServerConfig) (items []maps.Map) {
menuItems := []maps.Map{ var menuItems = []maps.Map{
{ {
"name": "基本信息", "name": "基本信息",
"url": "/servers/server/settings?serverId=" + serverIdString, "url": "/servers/server/settings?serverId=" + serverIdString,
@@ -253,6 +253,7 @@ func (this *ServerHelper) createSettingsMenu(secondMenuItem string, serverIdStri
"url": "/servers/server/settings/reverseProxy?serverId=" + serverIdString, "url": "/servers/server/settings/reverseProxy?serverId=" + serverIdString,
"isActive": secondMenuItem == "reverseProxy", "isActive": secondMenuItem == "reverseProxy",
"isOn": serverConfig.ReverseProxyRef != nil && serverConfig.ReverseProxyRef.IsOn, "isOn": serverConfig.ReverseProxyRef != nil && serverConfig.ReverseProxyRef.IsOn,
"configCode": serverconfigs.ConfigCodeReverseProxy,
}) })
menuItems = filterMenuItems(serverConfig, menuItems, serverIdString, secondMenuItem) menuItems = filterMenuItems(serverConfig, menuItems, serverIdString, secondMenuItem)
@@ -267,6 +268,7 @@ func (this *ServerHelper) createSettingsMenu(secondMenuItem string, serverIdStri
"url": "/servers/server/settings/redirects?serverId=" + serverIdString, "url": "/servers/server/settings/redirects?serverId=" + serverIdString,
"isActive": secondMenuItem == "redirects", "isActive": secondMenuItem == "redirects",
"isOn": serverConfig.Web != nil && len(serverConfig.Web.HostRedirects) > 0, "isOn": serverConfig.Web != nil && len(serverConfig.Web.HostRedirects) > 0,
"configCode": serverconfigs.ConfigCodeHostRedirects,
}) })
menuItems = append(menuItems, maps.Map{ menuItems = append(menuItems, maps.Map{
"name": "路由规则", "name": "路由规则",
@@ -291,54 +293,63 @@ func (this *ServerHelper) createSettingsMenu(secondMenuItem string, serverIdStri
"url": "/servers/server/settings/cache?serverId=" + serverIdString, "url": "/servers/server/settings/cache?serverId=" + serverIdString,
"isActive": secondMenuItem == "cache", "isActive": secondMenuItem == "cache",
"isOn": serverConfig.Web != nil && serverConfig.Web.Cache != nil && serverConfig.Web.Cache.IsOn, "isOn": serverConfig.Web != nil && serverConfig.Web.Cache != nil && serverConfig.Web.Cache.IsOn,
"configCode": serverconfigs.ConfigCodeCache,
}) })
menuItems = append(menuItems, maps.Map{ menuItems = append(menuItems, maps.Map{
"name": "访问鉴权", "name": "访问鉴权",
"url": "/servers/server/settings/access?serverId=" + serverIdString, "url": "/servers/server/settings/access?serverId=" + serverIdString,
"isActive": secondMenuItem == "access", "isActive": secondMenuItem == "access",
"isOn": serverConfig.Web != nil && serverConfig.Web.Auth != nil && serverConfig.Web.Auth.IsOn, "isOn": serverConfig.Web != nil && serverConfig.Web.Auth != nil && serverConfig.Web.Auth.IsOn,
"configCode": serverconfigs.ConfigCodeAuth,
}) })
menuItems = append(menuItems, maps.Map{ menuItems = append(menuItems, maps.Map{
"name": "防盗链", "name": "防盗链",
"url": "/servers/server/settings/referers?serverId=" + serverIdString, "url": "/servers/server/settings/referers?serverId=" + serverIdString,
"isActive": secondMenuItem == "referer", "isActive": secondMenuItem == "referer",
"isOn": serverConfig.Web != nil && serverConfig.Web.Referers != nil && serverConfig.Web.Referers.IsOn, "isOn": serverConfig.Web != nil && serverConfig.Web.Referers != nil && serverConfig.Web.Referers.IsOn,
"configCode": serverconfigs.ConfigCodeReferers,
}) })
menuItems = append(menuItems, maps.Map{ menuItems = append(menuItems, maps.Map{
"name": "UA名单", "name": "UA名单",
"url": "/servers/server/settings/userAgent?serverId=" + serverIdString, "url": "/servers/server/settings/userAgent?serverId=" + serverIdString,
"isActive": secondMenuItem == "userAgent", "isActive": secondMenuItem == "userAgent",
"isOn": serverConfig.Web != nil && serverConfig.Web.UserAgent != nil && serverConfig.Web.UserAgent.IsOn, "isOn": serverConfig.Web != nil && serverConfig.Web.UserAgent != nil && serverConfig.Web.UserAgent.IsOn,
"configCode": serverconfigs.ConfigCodeUserAgent,
}) })
menuItems = append(menuItems, maps.Map{ menuItems = append(menuItems, maps.Map{
"name": "字符编码", "name": "字符编码",
"url": "/servers/server/settings/charset?serverId=" + serverIdString, "url": "/servers/server/settings/charset?serverId=" + serverIdString,
"isActive": secondMenuItem == "charset", "isActive": secondMenuItem == "charset",
"isOn": serverConfig.Web != nil && serverConfig.Web.Charset != nil && serverConfig.Web.Charset.IsOn, "isOn": serverConfig.Web != nil && serverConfig.Web.Charset != nil && serverConfig.Web.Charset.IsOn,
"configCode": serverconfigs.ConfigCodeCharset,
}) })
menuItems = append(menuItems, maps.Map{ menuItems = append(menuItems, maps.Map{
"name": "访问日志", "name": "访问日志",
"url": "/servers/server/settings/accessLog?serverId=" + serverIdString, "url": "/servers/server/settings/accessLog?serverId=" + serverIdString,
"isActive": secondMenuItem == "accessLog", "isActive": secondMenuItem == "accessLog",
"isOn": serverConfig.Web != nil && serverConfig.Web.AccessLogRef != nil && serverConfig.Web.AccessLogRef.IsOn, "isOn": serverConfig.Web != nil && serverConfig.Web.AccessLogRef != nil && serverConfig.Web.AccessLogRef.IsOn,
"configCode": serverconfigs.ConfigCodeAccessLog,
}) })
menuItems = append(menuItems, maps.Map{ menuItems = append(menuItems, maps.Map{
"name": "统计", "name": "统计",
"url": "/servers/server/settings/stat?serverId=" + serverIdString, "url": "/servers/server/settings/stat?serverId=" + serverIdString,
"isActive": secondMenuItem == "stat", "isActive": secondMenuItem == "stat",
"isOn": serverConfig.Web != nil && serverConfig.Web.StatRef != nil && serverConfig.Web.StatRef.IsOn, "isOn": serverConfig.Web != nil && serverConfig.Web.StatRef != nil && serverConfig.Web.StatRef.IsOn,
"configCode": serverconfigs.ConfigCodeStat,
}) })
menuItems = append(menuItems, maps.Map{ menuItems = append(menuItems, maps.Map{
"name": "内容压缩", "name": "内容压缩",
"url": "/servers/server/settings/compression?serverId=" + serverIdString, "url": "/servers/server/settings/compression?serverId=" + serverIdString,
"isActive": secondMenuItem == "compression", "isActive": secondMenuItem == "compression",
"isOn": serverConfig.Web != nil && serverConfig.Web.Compression != nil && serverConfig.Web.Compression.IsOn, "isOn": serverConfig.Web != nil && serverConfig.Web.Compression != nil && serverConfig.Web.Compression.IsOn,
"configCode": serverconfigs.ConfigCodeCompression,
}) })
menuItems = append(menuItems, maps.Map{ menuItems = append(menuItems, maps.Map{
"name": "自定义页面", "name": "自定义页面",
"url": "/servers/server/settings/pages?serverId=" + serverIdString, "url": "/servers/server/settings/pages?serverId=" + serverIdString,
"isActive": secondMenuItem == "pages", "isActive": secondMenuItem == "pages",
"isOn": serverConfig.Web != nil && (len(serverConfig.Web.Pages) > 0 || (serverConfig.Web.Shutdown != nil && serverConfig.Web.Shutdown.IsOn)), "isOn": serverConfig.Web != nil && (len(serverConfig.Web.Pages) > 0 || (serverConfig.Web.Shutdown != nil && serverConfig.Web.Shutdown.IsOn)),
"configCode": serverconfigs.ConfigCodePages,
}) })
menuItems = append(menuItems, maps.Map{ menuItems = append(menuItems, maps.Map{
"name": "HTTP Header", "name": "HTTP Header",
@@ -351,12 +362,14 @@ func (this *ServerHelper) createSettingsMenu(secondMenuItem string, serverIdStri
"url": "/servers/server/settings/websocket?serverId=" + serverIdString, "url": "/servers/server/settings/websocket?serverId=" + serverIdString,
"isActive": secondMenuItem == "websocket", "isActive": secondMenuItem == "websocket",
"isOn": serverConfig.Web != nil && serverConfig.Web.WebsocketRef != nil && serverConfig.Web.WebsocketRef.IsOn, "isOn": serverConfig.Web != nil && serverConfig.Web.WebsocketRef != nil && serverConfig.Web.WebsocketRef.IsOn,
"configCode": serverconfigs.ConfigCodeWebsocket,
}) })
menuItems = append(menuItems, maps.Map{ menuItems = append(menuItems, maps.Map{
"name": "WebP", "name": "WebP",
"url": "/servers/server/settings/webp?serverId=" + serverIdString, "url": "/servers/server/settings/webp?serverId=" + serverIdString,
"isActive": secondMenuItem == "webp", "isActive": secondMenuItem == "webp",
"isOn": serverConfig.Web != nil && serverConfig.Web.WebP != nil && serverConfig.Web.WebP.IsOn, "isOn": serverConfig.Web != nil && serverConfig.Web.WebP != nil && serverConfig.Web.WebP.IsOn,
"configCode": serverconfigs.ConfigCodeWebp,
}) })
menuItems = append(menuItems, maps.Map{ menuItems = append(menuItems, maps.Map{
@@ -364,6 +377,7 @@ func (this *ServerHelper) createSettingsMenu(secondMenuItem string, serverIdStri
"url": "/servers/server/settings/web?serverId=" + serverIdString, "url": "/servers/server/settings/web?serverId=" + serverIdString,
"isActive": secondMenuItem == "web", "isActive": secondMenuItem == "web",
"isOn": serverConfig.Web != nil && serverConfig.Web.Root != nil && serverConfig.Web.Root.IsOn, "isOn": serverConfig.Web != nil && serverConfig.Web.Root != nil && serverConfig.Web.Root.IsOn,
"configCode": serverconfigs.ConfigCodeRoot,
}) })
menuItems = append(menuItems, maps.Map{ menuItems = append(menuItems, maps.Map{
"name": "Fastcgi", "name": "Fastcgi",
@@ -383,6 +397,7 @@ func (this *ServerHelper) createSettingsMenu(secondMenuItem string, serverIdStri
"url": "/servers/server/settings/remoteAddr?serverId=" + serverIdString, "url": "/servers/server/settings/remoteAddr?serverId=" + serverIdString,
"isActive": secondMenuItem == "remoteAddr", "isActive": secondMenuItem == "remoteAddr",
"isOn": serverConfig.Web != nil && serverConfig.Web.RemoteAddr != nil && serverConfig.Web.RemoteAddr.IsOn, "isOn": serverConfig.Web != nil && serverConfig.Web.RemoteAddr != nil && serverConfig.Web.RemoteAddr.IsOn,
"configCode": serverconfigs.ConfigCodeRemoteAddr,
}) })
menuItems = append(menuItems, maps.Map{ menuItems = append(menuItems, maps.Map{
@@ -390,6 +405,7 @@ func (this *ServerHelper) createSettingsMenu(secondMenuItem string, serverIdStri
"url": "/servers/server/settings/requestLimit?serverId=" + serverIdString, "url": "/servers/server/settings/requestLimit?serverId=" + serverIdString,
"isActive": secondMenuItem == "requestLimit", "isActive": secondMenuItem == "requestLimit",
"isOn": serverConfig.Web != nil && serverConfig.Web.RequestLimit != nil && serverConfig.Web.RequestLimit.IsOn, "isOn": serverConfig.Web != nil && serverConfig.Web.RequestLimit != nil && serverConfig.Web.RequestLimit.IsOn,
"configCode": serverconfigs.ConfigCodeRequestLimit,
}) })
menuItems = filterMenuItems2(serverConfig, menuItems, serverIdString, secondMenuItem) menuItems = filterMenuItems2(serverConfig, menuItems, serverIdString, secondMenuItem)

View File

@@ -79,5 +79,5 @@ Vue.component("more-items-angle", {
return false return false
} }
}, },
template: `<a href="" class="item" @click.prevent="show"><i class="icon angle" :class="{down: !visible, up: visible}"></i></a>` template: `<a href="" class="item" @click.prevent="show" style="padding-right: 0"><span style="font-size: 0.8em">切换</span><i class="icon angle" :class="{down: !visible, up: visible}"></i></a>`
}) })

View File

@@ -8,4 +8,6 @@
<more-items-angle <more-items-angle
:v-data-url="'/servers/nearby?serverId=' + server.id" :v-data-url="'/servers/nearby?serverId=' + server.id"
:v-url="'/servers/server/settings?serverId=${serverId}'"></more-items-angle> :v-url="'/servers/server/settings?serverId=${serverId}'"></more-items-angle>
<span class="disabled item" style="font-size: 0.8em" v-if="leftMenuActiveItem != null && leftMenuActiveItem.configCode != null && leftMenuActiveItem.configCode.length > 0">|</span>
<server-config-copy-link :v-server-id="server.id" :v-config-code="leftMenuActiveItem.configCode" v-if="leftMenuActiveItem != null && leftMenuActiveItem.configCode != null && leftMenuActiveItem.configCode.length > 0"></server-config-copy-link>
</first-menu> </first-menu>