Added router priority to webui's list and detail page
This commit is contained in:
parent
cd90b9761a
commit
8cd4923e72
43 changed files with 2913 additions and 131 deletions
|
@ -22,8 +22,10 @@ type pageInfo struct {
|
|||
}
|
||||
|
||||
type searchCriterion struct {
|
||||
Search string `url:"search"`
|
||||
Status string `url:"status"`
|
||||
Search string `url:"search"`
|
||||
Status string `url:"status"`
|
||||
ServiceName string `url:"serviceName"`
|
||||
MiddlewareName string `url:"middlewareName"`
|
||||
}
|
||||
|
||||
func newSearchCriterion(query url.Values) *searchCriterion {
|
||||
|
@ -33,12 +35,19 @@ func newSearchCriterion(query url.Values) *searchCriterion {
|
|||
|
||||
search := query.Get("search")
|
||||
status := query.Get("status")
|
||||
serviceName := query.Get("serviceName")
|
||||
middlewareName := query.Get("middlewareName")
|
||||
|
||||
if status == "" && search == "" {
|
||||
if status == "" && search == "" && serviceName == "" && middlewareName == "" {
|
||||
return nil
|
||||
}
|
||||
|
||||
return &searchCriterion{Search: search, Status: status}
|
||||
return &searchCriterion{
|
||||
Search: search,
|
||||
Status: status,
|
||||
ServiceName: serviceName,
|
||||
MiddlewareName: middlewareName,
|
||||
}
|
||||
}
|
||||
|
||||
func (c *searchCriterion) withStatus(name string) bool {
|
||||
|
@ -59,6 +68,34 @@ func (c *searchCriterion) searchIn(values ...string) bool {
|
|||
return false
|
||||
}
|
||||
|
||||
func (c *searchCriterion) filterService(name string) bool {
|
||||
if c.ServiceName == "" {
|
||||
return true
|
||||
}
|
||||
|
||||
if strings.Contains(name, "@") {
|
||||
return c.ServiceName == name
|
||||
}
|
||||
|
||||
before, _, _ := strings.Cut(c.ServiceName, "@")
|
||||
|
||||
return before == name
|
||||
}
|
||||
|
||||
func (c *searchCriterion) filterMiddleware(mns []string) bool {
|
||||
if c.MiddlewareName == "" {
|
||||
return true
|
||||
}
|
||||
|
||||
for _, mn := range mns {
|
||||
if c.MiddlewareName == mn {
|
||||
return true
|
||||
}
|
||||
}
|
||||
|
||||
return false
|
||||
}
|
||||
|
||||
func pagination(request *http.Request, max int) (pageInfo, error) {
|
||||
perPage, err := getIntParam(request, "per_page", defaultPerPage)
|
||||
if err != nil {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue