seaweedfs/weed/server/filer_ui/breadcrumb.go

29 lines
480 B
Go
Raw Normal View History

2018-05-25 06:42:13 +00:00
package master_ui
import (
"path/filepath"
2018-05-27 18:52:26 +00:00
"strings"
2018-05-25 06:42:13 +00:00
)
type Breadcrumb struct {
Name string
Link string
}
func ToBreadcrumb(fullpath string) (crumbs []Breadcrumb) {
parts := strings.Split(fullpath, "/")
for i := 0; i < len(parts); i++ {
2019-12-12 07:09:01 +00:00
crumb := Breadcrumb{
Name: parts[i] + " /",
Link: "/" + filepath.ToSlash(filepath.Join(parts[0:i+1]...)),
2019-12-12 07:09:01 +00:00
}
if !strings.HasSuffix(crumb.Link, "/") {
crumb.Link += "/"
}
crumbs = append(crumbs, crumb)
2018-05-25 06:42:13 +00:00
}
return
}