fix: #56
parent
b0d76dff3e
commit
3895e90876
27
README.md
27
README.md
|
@ -65,6 +65,33 @@ sudo sh -c "curl -fsSL RELEASE_URL | tar -C /usr/local/bin/ -xz"
|
||||||
|
|
||||||
`configui -f PATH/TO/CONFIG`
|
`configui -f PATH/TO/CONFIG`
|
||||||
|
|
||||||
|
## Add custom links in nav
|
||||||
|
|
||||||
|
**config**
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"cust":"path/to/dir"
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
**No link**
|
||||||
|
> path/to/dir/none.tmpl
|
||||||
|
```go
|
||||||
|
{{ define "links" }}
|
||||||
|
<!-- none -->
|
||||||
|
{{end}}
|
||||||
|
```
|
||||||
|
|
||||||
|
**Custom links**
|
||||||
|
> path/to/dir/links.tmpl
|
||||||
|
```go
|
||||||
|
{{ define "links" }}
|
||||||
|
<a class="button is-white level-item"
|
||||||
|
href="https://kumoly.io/tools/configui/issues"
|
||||||
|
>Report Issue</a>
|
||||||
|
{{end}}
|
||||||
|
```
|
||||||
|
|
||||||
## Add integrations to ConfigUI
|
## Add integrations to ConfigUI
|
||||||
|
|
||||||
```go
|
```go
|
||||||
|
|
12
configui.go
12
configui.go
|
@ -7,6 +7,7 @@ import (
|
||||||
"fmt"
|
"fmt"
|
||||||
"html/template"
|
"html/template"
|
||||||
"os"
|
"os"
|
||||||
|
"path/filepath"
|
||||||
"runtime"
|
"runtime"
|
||||||
"strings"
|
"strings"
|
||||||
"sync"
|
"sync"
|
||||||
|
@ -76,6 +77,7 @@ type ConfigUI struct {
|
||||||
LogLevel klog.Llevel `json:"log_level"`
|
LogLevel klog.Llevel `json:"log_level"`
|
||||||
|
|
||||||
TmplFS embed.FS `json:"-"`
|
TmplFS embed.FS `json:"-"`
|
||||||
|
CustTmpl string `json:"cust,omitempty"`
|
||||||
tmpl *engine.Engine
|
tmpl *engine.Engine
|
||||||
PublicFS embed.FS `json:"-"`
|
PublicFS embed.FS `json:"-"`
|
||||||
log *klog.Logger
|
log *klog.Logger
|
||||||
|
@ -175,6 +177,16 @@ func (cui *ConfigUI) LoadConfig(confstr string) error {
|
||||||
cui.NoReconfig = tmpConf.NoReconfig
|
cui.NoReconfig = tmpConf.NoReconfig
|
||||||
cui.ResultBellow = tmpConf.ResultBellow
|
cui.ResultBellow = tmpConf.ResultBellow
|
||||||
|
|
||||||
|
cui.CustTmpl = tmpConf.CustTmpl
|
||||||
|
if cui.CustTmpl != "" {
|
||||||
|
ntmpl, err := cui.tmpl.OverrideGlob(filepath.Join(cui.CustTmpl, "*.tmpl"))
|
||||||
|
if err != nil {
|
||||||
|
cui.log.Error(err)
|
||||||
|
} else {
|
||||||
|
cui.tmpl = ntmpl
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
cui.Actions = tmpConf.Actions
|
cui.Actions = tmpConf.Actions
|
||||||
for i := range cui.Actions {
|
for i := range cui.Actions {
|
||||||
if cui.Actions[i].Name == "" {
|
if cui.Actions[i].Name == "" {
|
||||||
|
|
2
file.go
2
file.go
|
@ -17,7 +17,7 @@ type File struct {
|
||||||
Cmd string `json:"cmd"`
|
Cmd string `json:"cmd"`
|
||||||
// RO is readonly
|
// RO is readonly
|
||||||
RO bool `json:"ro"`
|
RO bool `json:"ro"`
|
||||||
Lang string `json:"lang"`
|
Lang string `json:"lang,omitempty"`
|
||||||
|
|
||||||
// Order order of the display on ui
|
// Order order of the display on ui
|
||||||
Order int `json:"order"`
|
Order int `json:"order"`
|
||||||
|
|
|
@ -5,14 +5,22 @@
|
||||||
var Active = "{{.File.Name}}";
|
var Active = "{{.File.Name}}";
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<nav class="level">
|
<nav class="level py-1">
|
||||||
<div class="level-left">
|
<div class="level-left">
|
||||||
<div class="level-item">
|
<div class="level-item">
|
||||||
<a class="title is-size-4 ml-2 mt-1" href="{{.BaseUrl}}">
|
<a class="title is-size-4 ml-2" href="{{.BaseUrl}}">
|
||||||
{{.AppName}}
|
{{.AppName}}
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="level-right">
|
||||||
|
{{ block "links" .}}
|
||||||
|
<a class="button is-white level-item"
|
||||||
|
href="https://kumoly.io/tools/configui/issues"
|
||||||
|
>Report Issue</a>
|
||||||
|
{{end}}
|
||||||
|
<p class="level-item mr-2"></p>
|
||||||
|
</div>
|
||||||
</nav>
|
</nav>
|
||||||
|
|
||||||
<div class="columns">
|
<div class="columns">
|
||||||
|
|
Loading…
Reference in New Issue