diff --git a/internal/utils/ip_utils.go b/internal/utils/ip_utils.go new file mode 100644 index 00000000..58105208 --- /dev/null +++ b/internal/utils/ip_utils.go @@ -0,0 +1,19 @@ +package utils + +import ( + "encoding/binary" + "net" +) + +// 将IP转换为整型 +func IP2Long(ip string) uint32 { + s := net.ParseIP(ip) + if s == nil { + return 0 + } + + if len(s) == 16 { + return binary.BigEndian.Uint32(s[12:16]) + } + return binary.BigEndian.Uint32(s) +} diff --git a/internal/web/actions/default/servers/components/waf/ipadmin/createIPPopup.go b/internal/web/actions/default/servers/components/waf/ipadmin/createIPPopup.go index e3760b67..e05fc4c4 100644 --- a/internal/web/actions/default/servers/components/waf/ipadmin/createIPPopup.go +++ b/internal/web/actions/default/servers/components/waf/ipadmin/createIPPopup.go @@ -2,6 +2,7 @@ package ipadmin import ( "github.com/TeaOSLab/EdgeAdmin/internal/oplogs" + "github.com/TeaOSLab/EdgeAdmin/internal/utils" "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/default/servers/components/waf/ipadmin/ipadminutils" "github.com/TeaOSLab/EdgeCommon/pkg/rpc/dao" @@ -45,12 +46,30 @@ func (this *CreateIPPopupAction) RunPost(params struct { CSRF *actionutils.CSRF }) { // TODO 校验ListId所属用户 - // TODO 校验IP格式(ipFrom/ipTo) params.Must. Field("ipFrom", params.IpFrom). Require("请输入开始IP") + // 校验IP格式(ipFrom/ipTo) + ipFromLong := utils.IP2Long(params.IpFrom) + if len(params.IpFrom) > 0 { + if ipFromLong == 0 { + this.Fail("请输入正确的开始IP") + } + } + + ipToLong := utils.IP2Long(params.IpTo) + if len(params.IpTo) > 0 { + if ipToLong == 0 { + this.Fail("请输入正确的结束IP") + } + } + + if ipFromLong > 0 && ipToLong > 0 && ipFromLong > ipToLong { + params.IpTo, params.IpFrom = params.IpFrom, params.IpTo + } + createResp, err := this.RPC().IPItemRPC().CreateIPItem(this.AdminContext(), &pb.CreateIPItemRequest{ IpListId: params.ListId, IpFrom: params.IpFrom, diff --git a/internal/web/actions/default/servers/components/waf/ipadmin/updateIPPopup.go b/internal/web/actions/default/servers/components/waf/ipadmin/updateIPPopup.go index 2da71090..41aa2a1a 100644 --- a/internal/web/actions/default/servers/components/waf/ipadmin/updateIPPopup.go +++ b/internal/web/actions/default/servers/components/waf/ipadmin/updateIPPopup.go @@ -2,6 +2,7 @@ package ipadmin import ( "github.com/TeaOSLab/EdgeAdmin/internal/oplogs" + "github.com/TeaOSLab/EdgeAdmin/internal/utils" "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/default/servers/components/waf/ipadmin/ipadminutils" "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" @@ -58,12 +59,30 @@ func (this *UpdateIPPopupAction) RunPost(params struct { defer this.CreateLog(oplogs.LevelInfo, "修改WAF策略 %d 名单中的IP %d", params.FirewallPolicyId, params.ItemId) // TODO 校验ItemId所属用户 - // TODO 校验IP格式(ipFrom/ipTo) params.Must. Field("ipFrom", params.IpFrom). Require("请输入开始IP") + // 校验IP格式(ipFrom/ipTo) + ipFromLong := utils.IP2Long(params.IpFrom) + if len(params.IpFrom) > 0 { + if ipFromLong == 0 { + this.Fail("请输入正确的开始IP") + } + } + + ipToLong := utils.IP2Long(params.IpTo) + if len(params.IpTo) > 0 { + if ipToLong == 0 { + this.Fail("请输入正确的结束IP") + } + } + + if ipFromLong > 0 && ipToLong > 0 && ipFromLong > ipToLong { + params.IpTo, params.IpFrom = params.IpFrom, params.IpTo + } + _, err := this.RPC().IPItemRPC().UpdateIPItem(this.AdminContext(), &pb.UpdateIPItemRequest{ IpItemId: params.ItemId, IpFrom: params.IpFrom, diff --git a/internal/web/actions/default/servers/server/settings/accessLog/index.go b/internal/web/actions/default/servers/server/settings/accessLog/index.go index 0b2de205..cc46e2c4 100644 --- a/internal/web/actions/default/servers/server/settings/accessLog/index.go +++ b/internal/web/actions/default/servers/server/settings/accessLog/index.go @@ -3,7 +3,7 @@ package accessLog import ( "github.com/TeaOSLab/EdgeAdmin/internal/oplogs" "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" - "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/default/servers/server/settings/webutils" + "github.com/TeaOSLab/EdgeCommon/pkg/rpc/dao" "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" "github.com/TeaOSLab/EdgeCommon/pkg/serverconfigs" "github.com/iwind/TeaGo/actions" @@ -23,7 +23,7 @@ func (this *IndexAction) RunGet(params struct { ServerId int64 }) { // 获取配置 - webConfig, err := webutils.FindWebConfigWithServerId(this.Parent(), params.ServerId) + webConfig, err := dao.SharedHTTPWebDAO.FindWebConfigWithServerId(this.AdminContext(), params.ServerId) if err != nil { this.ErrorPage(err) return diff --git a/internal/web/actions/default/servers/server/settings/cache/index.go b/internal/web/actions/default/servers/server/settings/cache/index.go index 99fb128c..b2b2ef1c 100644 --- a/internal/web/actions/default/servers/server/settings/cache/index.go +++ b/internal/web/actions/default/servers/server/settings/cache/index.go @@ -4,7 +4,6 @@ import ( "encoding/json" "github.com/TeaOSLab/EdgeAdmin/internal/oplogs" "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" - "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/default/servers/server/settings/webutils" "github.com/TeaOSLab/EdgeCommon/pkg/rpc/dao" "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" "github.com/TeaOSLab/EdgeCommon/pkg/serverconfigs" @@ -24,7 +23,7 @@ func (this *IndexAction) Init() { func (this *IndexAction) RunGet(params struct { ServerId int64 }) { - webConfig, err := webutils.FindWebConfigWithServerId(this.Parent(), params.ServerId) + webConfig, err := dao.SharedHTTPWebDAO.FindWebConfigWithServerId(this.AdminContext(), params.ServerId) if err != nil { this.ErrorPage(err) return diff --git a/internal/web/actions/default/servers/server/settings/charset/index.go b/internal/web/actions/default/servers/server/settings/charset/index.go index 8477bfc9..110692bc 100644 --- a/internal/web/actions/default/servers/server/settings/charset/index.go +++ b/internal/web/actions/default/servers/server/settings/charset/index.go @@ -3,8 +3,8 @@ package charset import ( "github.com/TeaOSLab/EdgeAdmin/internal/oplogs" "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" - "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/default/servers/server/settings/webutils" "github.com/TeaOSLab/EdgeCommon/pkg/configutils" + "github.com/TeaOSLab/EdgeCommon/pkg/rpc/dao" "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" "github.com/iwind/TeaGo/actions" ) @@ -21,7 +21,7 @@ func (this *IndexAction) Init() { func (this *IndexAction) RunGet(params struct { ServerId int64 }) { - webConfig, err := webutils.FindWebConfigWithServerId(this.Parent(), params.ServerId) + webConfig, err := dao.SharedHTTPWebDAO.FindWebConfigWithServerId(this.AdminContext(), params.ServerId) if err != nil { this.ErrorPage(err) return diff --git a/internal/web/actions/default/servers/server/settings/gzip/index.go b/internal/web/actions/default/servers/server/settings/gzip/index.go index d977b696..03b743a1 100644 --- a/internal/web/actions/default/servers/server/settings/gzip/index.go +++ b/internal/web/actions/default/servers/server/settings/gzip/index.go @@ -4,7 +4,7 @@ import ( "encoding/json" "github.com/TeaOSLab/EdgeAdmin/internal/oplogs" "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" - "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/default/servers/server/settings/webutils" + "github.com/TeaOSLab/EdgeCommon/pkg/rpc/dao" "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" "github.com/TeaOSLab/EdgeCommon/pkg/serverconfigs" "github.com/iwind/TeaGo/actions" @@ -23,7 +23,7 @@ func (this *IndexAction) Init() { func (this *IndexAction) RunGet(params struct { ServerId int64 }) { - webConfig, err := webutils.FindWebConfigWithServerId(this.Parent(), params.ServerId) + webConfig, err := dao.SharedHTTPWebDAO.FindWebConfigWithServerId(this.AdminContext(), params.ServerId) if err != nil { this.ErrorPage(err) return diff --git a/internal/web/actions/default/servers/server/settings/headers/index.go b/internal/web/actions/default/servers/server/settings/headers/index.go index 3e0acbfa..b80df2e2 100644 --- a/internal/web/actions/default/servers/server/settings/headers/index.go +++ b/internal/web/actions/default/servers/server/settings/headers/index.go @@ -3,7 +3,7 @@ package headers import ( "encoding/json" "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" - "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/default/servers/server/settings/webutils" + "github.com/TeaOSLab/EdgeCommon/pkg/rpc/dao" "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" "github.com/TeaOSLab/EdgeCommon/pkg/serverconfigs/shared" ) @@ -20,7 +20,7 @@ func (this *IndexAction) Init() { func (this *IndexAction) RunGet(params struct { ServerId int64 }) { - webConfig, err := webutils.FindWebConfigWithServerId(this.Parent(), params.ServerId) + webConfig, err := dao.SharedHTTPWebDAO.FindWebConfigWithServerId(this.AdminContext(), params.ServerId) if err != nil { this.ErrorPage(err) return @@ -85,7 +85,7 @@ func (this *IndexAction) RunGet(params struct { // 重新获取配置 if isChanged { - webConfig, err = webutils.FindWebConfigWithServerId(this.Parent(), params.ServerId) + webConfig, err = dao.SharedHTTPWebDAO.FindWebConfigWithServerId(this.AdminContext(), params.ServerId) if err != nil { this.ErrorPage(err) return diff --git a/internal/web/actions/default/servers/server/settings/http/index.go b/internal/web/actions/default/servers/server/settings/http/index.go index e357912f..21dbecc8 100644 --- a/internal/web/actions/default/servers/server/settings/http/index.go +++ b/internal/web/actions/default/servers/server/settings/http/index.go @@ -4,8 +4,8 @@ import ( "encoding/json" "github.com/TeaOSLab/EdgeAdmin/internal/oplogs" "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" - "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/default/servers/server/settings/webutils" "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/default/servers/serverutils" + "github.com/TeaOSLab/EdgeCommon/pkg/rpc/dao" "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" "github.com/TeaOSLab/EdgeCommon/pkg/serverconfigs" "github.com/iwind/TeaGo/actions" @@ -46,7 +46,7 @@ func (this *IndexAction) RunGet(params struct { } // 跳转相关设置 - webConfig, err := webutils.FindWebConfigWithServerId(this.Parent(), params.ServerId) + webConfig, err := dao.SharedHTTPWebDAO.FindWebConfigWithServerId(this.AdminContext(), params.ServerId) if err != nil { this.ErrorPage(err) return diff --git a/internal/web/actions/default/servers/server/settings/locations/accessLog/index.go b/internal/web/actions/default/servers/server/settings/locations/accessLog/index.go index 04d26646..45d44fdd 100644 --- a/internal/web/actions/default/servers/server/settings/locations/accessLog/index.go +++ b/internal/web/actions/default/servers/server/settings/locations/accessLog/index.go @@ -2,7 +2,7 @@ package accessLog import ( "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" - "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/default/servers/server/settings/webutils" + "github.com/TeaOSLab/EdgeCommon/pkg/rpc/dao" "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" "github.com/TeaOSLab/EdgeCommon/pkg/serverconfigs" "github.com/iwind/TeaGo/actions" @@ -20,7 +20,7 @@ func (this *IndexAction) RunGet(params struct { LocationId int64 }) { // 获取配置 - webConfig, err := webutils.FindWebConfigWithLocationId(this.Parent(), params.LocationId) + webConfig, err := dao.SharedHTTPWebDAO.FindWebConfigWithLocationId(this.AdminContext(), params.LocationId) if err != nil { this.ErrorPage(err) return diff --git a/internal/web/actions/default/servers/server/settings/locations/cache/index.go b/internal/web/actions/default/servers/server/settings/locations/cache/index.go index 2b17db80..6f650a59 100644 --- a/internal/web/actions/default/servers/server/settings/locations/cache/index.go +++ b/internal/web/actions/default/servers/server/settings/locations/cache/index.go @@ -3,7 +3,6 @@ package cache import ( "encoding/json" "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" - "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/default/servers/server/settings/webutils" "github.com/TeaOSLab/EdgeCommon/pkg/rpc/dao" "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" "github.com/TeaOSLab/EdgeCommon/pkg/serverconfigs" @@ -22,7 +21,7 @@ func (this *IndexAction) RunGet(params struct { ServerId int64 LocationId int64 }) { - webConfig, err := webutils.FindWebConfigWithLocationId(this.Parent(), params.LocationId) + webConfig, err := dao.SharedHTTPWebDAO.FindWebConfigWithLocationId(this.AdminContext(), params.LocationId) if err != nil { this.ErrorPage(err) return diff --git a/internal/web/actions/default/servers/server/settings/locations/charset/index.go b/internal/web/actions/default/servers/server/settings/locations/charset/index.go index 25791a5e..04db91d9 100644 --- a/internal/web/actions/default/servers/server/settings/locations/charset/index.go +++ b/internal/web/actions/default/servers/server/settings/locations/charset/index.go @@ -2,8 +2,8 @@ package charset import ( "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" - "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/default/servers/server/settings/webutils" "github.com/TeaOSLab/EdgeCommon/pkg/configutils" + "github.com/TeaOSLab/EdgeCommon/pkg/rpc/dao" "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" "github.com/iwind/TeaGo/actions" ) @@ -18,7 +18,7 @@ func (this *IndexAction) Init() { func (this *IndexAction) RunGet(params struct { LocationId int64 }) { - webConfig, err := webutils.FindWebConfigWithLocationId(this.Parent(), params.LocationId) + webConfig, err := dao.SharedHTTPWebDAO.FindWebConfigWithLocationId(this.AdminContext(), params.LocationId) if err != nil { this.ErrorPage(err) return diff --git a/internal/web/actions/default/servers/server/settings/locations/create.go b/internal/web/actions/default/servers/server/settings/locations/create.go index 17a7b7aa..8486e0cc 100644 --- a/internal/web/actions/default/servers/server/settings/locations/create.go +++ b/internal/web/actions/default/servers/server/settings/locations/create.go @@ -3,7 +3,7 @@ package locations import ( "encoding/json" "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" - "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/default/servers/server/settings/webutils" + "github.com/TeaOSLab/EdgeCommon/pkg/rpc/dao" "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" "github.com/TeaOSLab/EdgeCommon/pkg/serverconfigs" "github.com/iwind/TeaGo/actions" @@ -25,7 +25,7 @@ func (this *CreateAction) RunGet(params struct { ServerId int64 ParentId int64 // 父节点 }) { - webConfig, err := webutils.FindWebConfigWithServerId(this.Parent(), params.ServerId) + webConfig, err := dao.SharedHTTPWebDAO.FindWebConfigWithServerId(this.AdminContext(), params.ServerId) if err != nil { this.ErrorPage(err) return @@ -88,7 +88,7 @@ func (this *CreateAction) RunPost(params struct { locationId := locationResp.LocationId // Web中Location - webConfig, err := webutils.FindWebConfigWithId(this.Parent(), params.WebId) + webConfig, err := dao.SharedHTTPWebDAO.FindWebConfigWithId(this.AdminContext(), params.WebId) if err != nil { this.ErrorPage(err) return diff --git a/internal/web/actions/default/servers/server/settings/locations/delete.go b/internal/web/actions/default/servers/server/settings/locations/delete.go index 75ed246d..bc826439 100644 --- a/internal/web/actions/default/servers/server/settings/locations/delete.go +++ b/internal/web/actions/default/servers/server/settings/locations/delete.go @@ -3,7 +3,7 @@ package locations import ( "encoding/json" "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" - "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/default/servers/server/settings/webutils" + "github.com/TeaOSLab/EdgeCommon/pkg/rpc/dao" "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" ) @@ -15,7 +15,7 @@ func (this *DeleteAction) RunPost(params struct { WebId int64 LocationId int64 }) { - webConfig, err := webutils.FindWebConfigWithId(this.Parent(), params.WebId) + webConfig, err := dao.SharedHTTPWebDAO.FindWebConfigWithId(this.AdminContext(), params.WebId) if err != nil { this.ErrorPage(err) return diff --git a/internal/web/actions/default/servers/server/settings/locations/gzip/index.go b/internal/web/actions/default/servers/server/settings/locations/gzip/index.go index e3cf733d..b45b48c4 100644 --- a/internal/web/actions/default/servers/server/settings/locations/gzip/index.go +++ b/internal/web/actions/default/servers/server/settings/locations/gzip/index.go @@ -3,7 +3,7 @@ package gzip import ( "encoding/json" "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" - "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/default/servers/server/settings/webutils" + "github.com/TeaOSLab/EdgeCommon/pkg/rpc/dao" "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" "github.com/TeaOSLab/EdgeCommon/pkg/serverconfigs" "github.com/iwind/TeaGo/actions" @@ -22,7 +22,7 @@ func (this *IndexAction) Init() { func (this *IndexAction) RunGet(params struct { LocationId int64 }) { - webConfig, err := webutils.FindWebConfigWithLocationId(this.Parent(), params.LocationId) + webConfig, err := dao.SharedHTTPWebDAO.FindWebConfigWithLocationId(this.AdminContext(), params.LocationId) if err != nil { this.ErrorPage(err) return diff --git a/internal/web/actions/default/servers/server/settings/locations/headers/index.go b/internal/web/actions/default/servers/server/settings/locations/headers/index.go index c9949acc..9438002e 100644 --- a/internal/web/actions/default/servers/server/settings/locations/headers/index.go +++ b/internal/web/actions/default/servers/server/settings/locations/headers/index.go @@ -3,7 +3,7 @@ package headers import ( "encoding/json" "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" - "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/default/servers/server/settings/webutils" + "github.com/TeaOSLab/EdgeCommon/pkg/rpc/dao" "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" "github.com/TeaOSLab/EdgeCommon/pkg/serverconfigs/shared" "github.com/iwind/TeaGo/actions" @@ -19,7 +19,7 @@ func (this *IndexAction) Init() { func (this *IndexAction) RunGet(params struct { LocationId int64 }) { - webConfig, err := webutils.FindWebConfigWithLocationId(this.Parent(), params.LocationId) + webConfig, err := dao.SharedHTTPWebDAO.FindWebConfigWithLocationId(this.AdminContext(), params.LocationId) if err != nil { this.ErrorPage(err) return @@ -79,7 +79,7 @@ func (this *IndexAction) RunGet(params struct { // 重新获取配置 if isChanged { - webConfig, err = webutils.FindWebConfigWithLocationId(this.Parent(), params.LocationId) + webConfig, err = dao.SharedHTTPWebDAO.FindWebConfigWithLocationId(this.AdminContext(), params.LocationId) if err != nil { this.ErrorPage(err) return diff --git a/internal/web/actions/default/servers/server/settings/locations/http/index.go b/internal/web/actions/default/servers/server/settings/locations/http/index.go index f820a136..0a596ce8 100644 --- a/internal/web/actions/default/servers/server/settings/locations/http/index.go +++ b/internal/web/actions/default/servers/server/settings/locations/http/index.go @@ -2,7 +2,7 @@ package http import ( "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" - "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/default/servers/server/settings/webutils" + "github.com/TeaOSLab/EdgeCommon/pkg/rpc/dao" "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" "github.com/iwind/TeaGo/actions" ) @@ -18,7 +18,7 @@ func (this *IndexAction) RunGet(params struct { LocationId int64 }) { // 跳转相关设置 - webConfig, err := webutils.FindWebConfigWithLocationId(this.Parent(), params.LocationId) + webConfig, err := dao.SharedHTTPWebDAO.FindWebConfigWithLocationId(this.AdminContext(), params.LocationId) if err != nil { this.ErrorPage(err) return diff --git a/internal/web/actions/default/servers/server/settings/locations/index.go b/internal/web/actions/default/servers/server/settings/locations/index.go index cdebd130..5646134e 100644 --- a/internal/web/actions/default/servers/server/settings/locations/index.go +++ b/internal/web/actions/default/servers/server/settings/locations/index.go @@ -2,7 +2,7 @@ package locations import ( "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" - "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/default/servers/server/settings/webutils" + "github.com/TeaOSLab/EdgeCommon/pkg/rpc/dao" ) type IndexAction struct { @@ -17,7 +17,7 @@ func (this *IndexAction) Init() { func (this *IndexAction) RunGet(params struct { ServerId int64 }) { - webConfig, err := webutils.FindWebConfigWithServerId(this.Parent(), params.ServerId) + webConfig, err := dao.SharedHTTPWebDAO.FindWebConfigWithServerId(this.AdminContext(), params.ServerId) if err != nil { this.ErrorPage(err) return diff --git a/internal/web/actions/default/servers/server/settings/locations/pages/index.go b/internal/web/actions/default/servers/server/settings/locations/pages/index.go index 26bb5222..8b9463dd 100644 --- a/internal/web/actions/default/servers/server/settings/locations/pages/index.go +++ b/internal/web/actions/default/servers/server/settings/locations/pages/index.go @@ -2,7 +2,7 @@ package pages import ( "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" - "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/default/servers/server/settings/webutils" + "github.com/TeaOSLab/EdgeCommon/pkg/rpc/dao" "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" "github.com/iwind/TeaGo/actions" ) @@ -17,7 +17,7 @@ func (this *IndexAction) Init() { func (this *IndexAction) RunGet(params struct { LocationId int64 }) { - webConfig, err := webutils.FindWebConfigWithLocationId(this.Parent(), params.LocationId) + webConfig, err := dao.SharedHTTPWebDAO.FindWebConfigWithLocationId(this.AdminContext(), params.LocationId) if err != nil { this.ErrorPage(err) return diff --git a/internal/web/actions/default/servers/server/settings/locations/rewrite/index.go b/internal/web/actions/default/servers/server/settings/locations/rewrite/index.go index 7da59082..201e5669 100644 --- a/internal/web/actions/default/servers/server/settings/locations/rewrite/index.go +++ b/internal/web/actions/default/servers/server/settings/locations/rewrite/index.go @@ -2,7 +2,7 @@ package rewrite import ( "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" - "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/default/servers/server/settings/webutils" + "github.com/TeaOSLab/EdgeCommon/pkg/rpc/dao" ) type IndexAction struct { @@ -15,7 +15,7 @@ func (this *IndexAction) Init() { func (this *IndexAction) RunGet(params struct { LocationId int64 }) { - webConfig, err := webutils.FindWebConfigWithLocationId(this.Parent(), params.LocationId) + webConfig, err := dao.SharedHTTPWebDAO.FindWebConfigWithLocationId(this.AdminContext(), params.LocationId) if err != nil { this.ErrorPage(err) return diff --git a/internal/web/actions/default/servers/server/settings/locations/sort.go b/internal/web/actions/default/servers/server/settings/locations/sort.go index 08097574..4ed9dad9 100644 --- a/internal/web/actions/default/servers/server/settings/locations/sort.go +++ b/internal/web/actions/default/servers/server/settings/locations/sort.go @@ -3,7 +3,7 @@ package locations import ( "encoding/json" "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" - "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/default/servers/server/settings/webutils" + "github.com/TeaOSLab/EdgeCommon/pkg/rpc/dao" "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" "github.com/TeaOSLab/EdgeCommon/pkg/serverconfigs" ) @@ -20,7 +20,7 @@ func (this *SortAction) RunPost(params struct { this.Success() } - webConfig, err := webutils.FindWebConfigWithId(this.Parent(), params.WebId) + webConfig, err := dao.SharedHTTPWebDAO.FindWebConfigWithId(this.AdminContext(), params.WebId) if err != nil { this.ErrorPage(err) return diff --git a/internal/web/actions/default/servers/server/settings/locations/stat/index.go b/internal/web/actions/default/servers/server/settings/locations/stat/index.go index 1d05b7e7..0f7ae4e6 100644 --- a/internal/web/actions/default/servers/server/settings/locations/stat/index.go +++ b/internal/web/actions/default/servers/server/settings/locations/stat/index.go @@ -2,7 +2,7 @@ package stat import ( "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" - "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/default/servers/server/settings/webutils" + "github.com/TeaOSLab/EdgeCommon/pkg/rpc/dao" "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" "github.com/iwind/TeaGo/actions" ) @@ -17,7 +17,7 @@ func (this *IndexAction) Init() { func (this *IndexAction) RunGet(params struct { LocationId int64 }) { - webConfig, err := webutils.FindWebConfigWithLocationId(this.Parent(), params.LocationId) + webConfig, err := dao.SharedHTTPWebDAO.FindWebConfigWithLocationId(this.AdminContext(), params.LocationId) if err != nil { this.ErrorPage(err) return diff --git a/internal/web/actions/default/servers/server/settings/locations/waf/index.go b/internal/web/actions/default/servers/server/settings/locations/waf/index.go index 8c2487c1..ecc90b8c 100644 --- a/internal/web/actions/default/servers/server/settings/locations/waf/index.go +++ b/internal/web/actions/default/servers/server/settings/locations/waf/index.go @@ -2,7 +2,6 @@ package waf import ( "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" - "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/default/servers/server/settings/webutils" "github.com/TeaOSLab/EdgeCommon/pkg/rpc/dao" "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" "github.com/iwind/TeaGo/actions" @@ -20,7 +19,7 @@ func (this *IndexAction) RunGet(params struct { ServerId int64 LocationId int64 }) { - webConfig, err := webutils.FindWebConfigWithLocationId(this.Parent(), params.LocationId) + webConfig, err := dao.SharedHTTPWebDAO.FindWebConfigWithLocationId(this.AdminContext(), params.LocationId) if err != nil { this.ErrorPage(err) return diff --git a/internal/web/actions/default/servers/server/settings/locations/web/index.go b/internal/web/actions/default/servers/server/settings/locations/web/index.go index 0ba350b6..64e45d6b 100644 --- a/internal/web/actions/default/servers/server/settings/locations/web/index.go +++ b/internal/web/actions/default/servers/server/settings/locations/web/index.go @@ -2,7 +2,7 @@ package web import ( "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" - "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/default/servers/server/settings/webutils" + "github.com/TeaOSLab/EdgeCommon/pkg/rpc/dao" "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" "github.com/iwind/TeaGo/actions" ) @@ -17,7 +17,7 @@ func (this *IndexAction) Init() { func (this *IndexAction) RunGet(params struct { LocationId int64 }) { - webConfig, err := webutils.FindWebConfigWithLocationId(this.Parent(), params.LocationId) + webConfig, err := dao.SharedHTTPWebDAO.FindWebConfigWithLocationId(this.AdminContext(), params.LocationId) if err != nil { this.ErrorPage(err) return diff --git a/internal/web/actions/default/servers/server/settings/locations/websocket/index.go b/internal/web/actions/default/servers/server/settings/locations/websocket/index.go index 87f1b513..e8f2c664 100644 --- a/internal/web/actions/default/servers/server/settings/locations/websocket/index.go +++ b/internal/web/actions/default/servers/server/settings/locations/websocket/index.go @@ -3,7 +3,7 @@ package websocket import ( "encoding/json" "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" - "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/default/servers/server/settings/webutils" + "github.com/TeaOSLab/EdgeCommon/pkg/rpc/dao" "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" "github.com/TeaOSLab/EdgeCommon/pkg/serverconfigs" "github.com/iwind/TeaGo/actions" @@ -20,7 +20,7 @@ func (this *IndexAction) Init() { func (this *IndexAction) RunGet(params struct { LocationId int64 }) { - webConfig, err := webutils.FindWebConfigWithLocationId(this.Parent(), params.LocationId) + webConfig, err := dao.SharedHTTPWebDAO.FindWebConfigWithLocationId(this.AdminContext(), params.LocationId) if err != nil { this.ErrorPage(err) return diff --git a/internal/web/actions/default/servers/server/settings/pages/index.go b/internal/web/actions/default/servers/server/settings/pages/index.go index 0c56a126..5e957866 100644 --- a/internal/web/actions/default/servers/server/settings/pages/index.go +++ b/internal/web/actions/default/servers/server/settings/pages/index.go @@ -3,7 +3,7 @@ package pages import ( "github.com/TeaOSLab/EdgeAdmin/internal/oplogs" "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" - "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/default/servers/server/settings/webutils" + "github.com/TeaOSLab/EdgeCommon/pkg/rpc/dao" "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" "github.com/iwind/TeaGo/actions" ) @@ -20,7 +20,7 @@ func (this *IndexAction) Init() { func (this *IndexAction) RunGet(params struct { ServerId int64 }) { - webConfig, err := webutils.FindWebConfigWithServerId(this.Parent(), params.ServerId) + webConfig, err := dao.SharedHTTPWebDAO.FindWebConfigWithServerId(this.AdminContext(), params.ServerId) if err != nil { this.ErrorPage(err) return diff --git a/internal/web/actions/default/servers/server/settings/rewrite/createPopup.go b/internal/web/actions/default/servers/server/settings/rewrite/createPopup.go index 39acb23d..6b40af15 100644 --- a/internal/web/actions/default/servers/server/settings/rewrite/createPopup.go +++ b/internal/web/actions/default/servers/server/settings/rewrite/createPopup.go @@ -3,7 +3,7 @@ package rewrite import ( "encoding/json" "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" - "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/default/servers/server/settings/webutils" + "github.com/TeaOSLab/EdgeCommon/pkg/rpc/dao" "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" "github.com/TeaOSLab/EdgeCommon/pkg/serverconfigs" "github.com/iwind/TeaGo/actions" @@ -55,7 +55,7 @@ func (this *CreatePopupAction) RunPost(params struct { Require("请输入目标URL") // web配置 - webConfig, err := webutils.FindWebConfigWithId(this.Parent(), params.WebId) + webConfig, err := dao.SharedHTTPWebDAO.FindWebConfigWithId(this.AdminContext(), params.WebId) if err != nil { this.ErrorPage(err) return diff --git a/internal/web/actions/default/servers/server/settings/rewrite/delete.go b/internal/web/actions/default/servers/server/settings/rewrite/delete.go index f9c9bd1e..4db7e54c 100644 --- a/internal/web/actions/default/servers/server/settings/rewrite/delete.go +++ b/internal/web/actions/default/servers/server/settings/rewrite/delete.go @@ -3,7 +3,7 @@ package rewrite import ( "encoding/json" "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" - "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/default/servers/server/settings/webutils" + "github.com/TeaOSLab/EdgeCommon/pkg/rpc/dao" "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" "github.com/TeaOSLab/EdgeCommon/pkg/serverconfigs" ) @@ -18,7 +18,7 @@ func (this *DeleteAction) RunPost(params struct { }) { defer this.CreateLogInfo("从Web %d 中删除重写规则 %d", params.WebId, params.RewriteRuleId) - webConfig, err := webutils.FindWebConfigWithId(this.Parent(), params.WebId) + webConfig, err := dao.SharedHTTPWebDAO.FindWebConfigWithId(this.AdminContext(), params.WebId) if err != nil { this.ErrorPage(err) return diff --git a/internal/web/actions/default/servers/server/settings/rewrite/index.go b/internal/web/actions/default/servers/server/settings/rewrite/index.go index c641eb36..f771e176 100644 --- a/internal/web/actions/default/servers/server/settings/rewrite/index.go +++ b/internal/web/actions/default/servers/server/settings/rewrite/index.go @@ -2,7 +2,7 @@ package rewrite import ( "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" - "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/default/servers/server/settings/webutils" + "github.com/TeaOSLab/EdgeCommon/pkg/rpc/dao" ) type IndexAction struct { @@ -17,7 +17,7 @@ func (this *IndexAction) Init() { func (this *IndexAction) RunGet(params struct { ServerId int64 }) { - webConfig, err := webutils.FindWebConfigWithServerId(this.Parent(), params.ServerId) + webConfig, err := dao.SharedHTTPWebDAO.FindWebConfigWithServerId(this.AdminContext(), params.ServerId) if err != nil { this.ErrorPage(err) return diff --git a/internal/web/actions/default/servers/server/settings/rewrite/sort.go b/internal/web/actions/default/servers/server/settings/rewrite/sort.go index 2f4fc4b7..b8f80189 100644 --- a/internal/web/actions/default/servers/server/settings/rewrite/sort.go +++ b/internal/web/actions/default/servers/server/settings/rewrite/sort.go @@ -3,7 +3,7 @@ package rewrite import ( "encoding/json" "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" - "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/default/servers/server/settings/webutils" + "github.com/TeaOSLab/EdgeCommon/pkg/rpc/dao" "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" "github.com/TeaOSLab/EdgeCommon/pkg/serverconfigs" ) @@ -18,7 +18,7 @@ func (this *SortAction) RunPost(params struct { }) { defer this.CreateLogInfo("对Web %d 中的重写规则进行排序", params.WebId) - webConfig, err := webutils.FindWebConfigWithId(this.Parent(), params.WebId) + webConfig, err := dao.SharedHTTPWebDAO.FindWebConfigWithId(this.AdminContext(), params.WebId) if err != nil { this.ErrorPage(err) return diff --git a/internal/web/actions/default/servers/server/settings/rewrite/updatePopup.go b/internal/web/actions/default/servers/server/settings/rewrite/updatePopup.go index b1535825..bb037974 100644 --- a/internal/web/actions/default/servers/server/settings/rewrite/updatePopup.go +++ b/internal/web/actions/default/servers/server/settings/rewrite/updatePopup.go @@ -2,7 +2,7 @@ package rewrite import ( "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" - "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/default/servers/server/settings/webutils" + "github.com/TeaOSLab/EdgeCommon/pkg/rpc/dao" "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" "github.com/iwind/TeaGo/actions" "github.com/iwind/TeaGo/types" @@ -22,7 +22,7 @@ func (this *UpdatePopupAction) RunGet(params struct { }) { this.Data["webId"] = params.WebId - webConfig, err := webutils.FindWebConfigWithId(this.Parent(), params.WebId) + webConfig, err := dao.SharedHTTPWebDAO.FindWebConfigWithId(this.AdminContext(), params.WebId) if err != nil { this.ErrorPage(err) return diff --git a/internal/web/actions/default/servers/server/settings/stat/index.go b/internal/web/actions/default/servers/server/settings/stat/index.go index 5f6c6dac..9eeae21b 100644 --- a/internal/web/actions/default/servers/server/settings/stat/index.go +++ b/internal/web/actions/default/servers/server/settings/stat/index.go @@ -2,7 +2,7 @@ package stat import ( "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" - "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/default/servers/server/settings/webutils" + "github.com/TeaOSLab/EdgeCommon/pkg/rpc/dao" "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" "github.com/iwind/TeaGo/actions" ) @@ -19,7 +19,7 @@ func (this *IndexAction) Init() { func (this *IndexAction) RunGet(params struct { ServerId int64 }) { - webConfig, err := webutils.FindWebConfigWithServerId(this.Parent(), params.ServerId) + webConfig, err := dao.SharedHTTPWebDAO.FindWebConfigWithServerId(this.AdminContext(), params.ServerId) if err != nil { this.ErrorPage(err) return diff --git a/internal/web/actions/default/servers/server/settings/waf/index.go b/internal/web/actions/default/servers/server/settings/waf/index.go index 31e82802..2e662081 100644 --- a/internal/web/actions/default/servers/server/settings/waf/index.go +++ b/internal/web/actions/default/servers/server/settings/waf/index.go @@ -2,7 +2,6 @@ package waf import ( "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" - "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/default/servers/server/settings/webutils" "github.com/TeaOSLab/EdgeCommon/pkg/rpc/dao" "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" "github.com/iwind/TeaGo/actions" @@ -21,7 +20,7 @@ func (this *IndexAction) Init() { func (this *IndexAction) RunGet(params struct { ServerId int64 }) { - webConfig, err := webutils.FindWebConfigWithServerId(this.Parent(), params.ServerId) + webConfig, err := dao.SharedHTTPWebDAO.FindWebConfigWithServerId(this.AdminContext(), params.ServerId) if err != nil { this.ErrorPage(err) return diff --git a/internal/web/actions/default/servers/server/settings/web/index.go b/internal/web/actions/default/servers/server/settings/web/index.go index cb384b4d..f144bd1e 100644 --- a/internal/web/actions/default/servers/server/settings/web/index.go +++ b/internal/web/actions/default/servers/server/settings/web/index.go @@ -2,7 +2,7 @@ package web import ( "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" - "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/default/servers/server/settings/webutils" + "github.com/TeaOSLab/EdgeCommon/pkg/rpc/dao" "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" "github.com/iwind/TeaGo/actions" ) @@ -19,7 +19,7 @@ func (this *IndexAction) Init() { func (this *IndexAction) RunGet(params struct { ServerId int64 }) { - webConfig, err := webutils.FindWebConfigWithServerId(this.Parent(), params.ServerId) + webConfig, err := dao.SharedHTTPWebDAO.FindWebConfigWithServerId(this.AdminContext(), params.ServerId) if err != nil { this.ErrorPage(err) return diff --git a/internal/web/actions/default/servers/server/settings/websocket/index.go b/internal/web/actions/default/servers/server/settings/websocket/index.go index 3b804966..7853f91a 100644 --- a/internal/web/actions/default/servers/server/settings/websocket/index.go +++ b/internal/web/actions/default/servers/server/settings/websocket/index.go @@ -3,7 +3,7 @@ package websocket import ( "encoding/json" "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" - "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/default/servers/server/settings/webutils" + "github.com/TeaOSLab/EdgeCommon/pkg/rpc/dao" "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" "github.com/TeaOSLab/EdgeCommon/pkg/serverconfigs" "github.com/iwind/TeaGo/actions" @@ -21,7 +21,7 @@ func (this *IndexAction) Init() { func (this *IndexAction) RunGet(params struct { ServerId int64 }) { - webConfig, err := webutils.FindWebConfigWithServerId(this.Parent(), params.ServerId) + webConfig, err := dao.SharedHTTPWebDAO.FindWebConfigWithServerId(this.AdminContext(), params.ServerId) if err != nil { this.ErrorPage(err) return diff --git a/internal/web/actions/default/servers/server/settings/webutils/utils.go b/internal/web/actions/default/servers/server/settings/webutils/utils.go deleted file mode 100644 index 9e096616..00000000 --- a/internal/web/actions/default/servers/server/settings/webutils/utils.go +++ /dev/null @@ -1,50 +0,0 @@ -package webutils - -import ( - "encoding/json" - "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils" - "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" - "github.com/TeaOSLab/EdgeCommon/pkg/serverconfigs" -) - -// 根据ServerId查找Web配置 -func FindWebConfigWithServerId(parentAction *actionutils.ParentAction, serverId int64) (*serverconfigs.HTTPWebConfig, error) { - resp, err := parentAction.RPC().ServerRPC().FindAndInitServerWebConfig(parentAction.AdminContext(), &pb.FindAndInitServerWebConfigRequest{ServerId: serverId}) - if err != nil { - return nil, err - } - config := &serverconfigs.HTTPWebConfig{} - err = json.Unmarshal(resp.WebJSON, config) - if err != nil { - return nil, err - } - return config, nil -} - -// 根据LocationId查找Web配置 -func FindWebConfigWithLocationId(parentAction *actionutils.ParentAction, locationId int64) (*serverconfigs.HTTPWebConfig, error) { - resp, err := parentAction.RPC().HTTPLocationRPC().FindAndInitHTTPLocationWebConfig(parentAction.AdminContext(), &pb.FindAndInitHTTPLocationWebConfigRequest{LocationId: locationId}) - if err != nil { - return nil, err - } - config := &serverconfigs.HTTPWebConfig{} - err = json.Unmarshal(resp.WebJSON, config) - if err != nil { - return nil, err - } - return config, nil -} - -// 根据WebId查找Web配置 -func FindWebConfigWithId(parentAction *actionutils.ParentAction, webId int64) (*serverconfigs.HTTPWebConfig, error) { - resp, err := parentAction.RPC().HTTPWebRPC().FindEnabledHTTPWebConfig(parentAction.AdminContext(), &pb.FindEnabledHTTPWebConfigRequest{WebId: webId}) - if err != nil { - return nil, err - } - config := &serverconfigs.HTTPWebConfig{} - err = json.Unmarshal(resp.WebJSON, config) - if err != nil { - return nil, err - } - return config, nil -}