forked from x/icebergs
add checkbox
This commit is contained in:
parent
93a9591cf7
commit
e18395626a
@ -76,6 +76,12 @@ func _hash_select(m *ice.Message, prefix, chain, field, value string) {
|
||||
defer m.SortStrR(TIME)
|
||||
fields := _hash_fields(m)
|
||||
defer RLock(m, prefix)()
|
||||
if strings.Contains(value, ",") {
|
||||
kit.For(kit.Split(value), func(value string) {
|
||||
Richs(m, prefix, chain, value, func(key string, value Map) { _mdb_select(m, m.OptionCB(""), key, value, fields, nil) })
|
||||
})
|
||||
return
|
||||
}
|
||||
Richs(m, prefix, chain, value, func(key string, value Map) { _mdb_select(m, m.OptionCB(""), key, value, fields, nil) })
|
||||
}
|
||||
func _hash_select_field(m *ice.Message, prefix, chain string, key string, field string) (value string) {
|
||||
@ -221,7 +227,7 @@ func HashModify(m *ice.Message, arg ...Any) *ice.Message {
|
||||
return m.Cmd(MODIFY, m.PrefixKey(), m.Option(SUBKEY), HASH, arg)
|
||||
}
|
||||
func HashSelect(m *ice.Message, arg ...string) *ice.Message {
|
||||
if len(arg) > 0 && arg[0] == FOREACH {
|
||||
if len(arg) > 0 && (arg[0] == FOREACH || strings.Contains(arg[0], ",")) {
|
||||
m.Fields(0, HashField(m))
|
||||
} else {
|
||||
m.Fields(len(kit.Slice(arg, 0, 1)), HashField(m))
|
||||
|
1
conf.go
1
conf.go
@ -247,6 +247,7 @@ const ( // MSG
|
||||
LOG_TRACEID = "log.id"
|
||||
|
||||
TOAST_DURATION = "toast.duration"
|
||||
TABLE_CHECKBOX = "table.checkbox"
|
||||
)
|
||||
const ( // RENDER
|
||||
RENDER_BUTTON = "_button"
|
||||
|
@ -158,7 +158,7 @@ func (s relay) Stats(m *ice.Message) {
|
||||
}
|
||||
return nil
|
||||
}).ProcessInner()
|
||||
s.ForEach(m.Spawn(ice.Maps{MACHINE: "", ice.CMD: "contexts/bin/ice.bin web.admin runtime"})).Table(func(value ice.Maps) {
|
||||
s.ForEach(m.Spawn(ice.Maps{MACHINE: m.Option(MACHINE), ice.CMD: "contexts/bin/ice.bin web.admin runtime"})).Table(func(value ice.Maps) {
|
||||
res := kit.UnMarshal(value[ice.RES])
|
||||
data := kit.Value(res, cli.MAKE)
|
||||
s.Modify(m, kit.Simple(MACHINE, value[MACHINE], kit.Dict(
|
||||
@ -227,6 +227,7 @@ func (s relay) List(m *ice.Message, arg ...string) *ice.Message {
|
||||
})
|
||||
_stats := kit.Dict(MEM, kit.FmtSize(stats[MEM_FREE], stats[MEM_TOTAL]), DISK, kit.FmtSize(stats[DISK_USED], stats[DISK_TOTAL]))
|
||||
m.StatusTimeCount(m.Spawn().Options(stats, _stats).OptionSimple(VCPU, MEM, DISK, SOCKET, PROC))
|
||||
m.Option(ice.TABLE_CHECKBOX, ice.TRUE)
|
||||
m.RewriteAppend(func(value, key string, index int) string {
|
||||
if key == MEM {
|
||||
if ls := kit.Split(value, " /"); len(ls) > 0 && kit.Int(ls[0]) < 256*1024*1024 {
|
||||
@ -241,7 +242,7 @@ func (s relay) Install(m *ice.Message, arg ...string) {
|
||||
s.shell(m, m.Template(INSTALL_SH), arg...)
|
||||
}
|
||||
func (s relay) Upgrade(m *ice.Message, arg ...string) {
|
||||
if len(arg) == 0 && m.Option(MACHINE) == "" {
|
||||
if len(arg) == 0 && (m.Option(MACHINE) == "" || strings.Contains(m.Option(MACHINE), ",")) {
|
||||
m.Options(ice.CMD, m.Template(UPGRADE_SH), cli.DELAY, "0", "interval", "3s")
|
||||
s.ForFlow(m)
|
||||
} else {
|
||||
@ -294,7 +295,7 @@ func (s relay) shell(m *ice.Message, init string, arg ...string) {
|
||||
}
|
||||
func (s relay) foreach(m *ice.Message, cb func(*ice.Message, []string)) {
|
||||
cmd := kit.Filters(strings.Split(m.Option(ice.CMD), lex.NL), "")
|
||||
s.Hash.ForEach(m, "", func(msg *ice.Message) { cb(msg, cmd) })
|
||||
s.Hash.ForEach(m, MACHINE, func(msg *ice.Message) { cb(msg, cmd) })
|
||||
}
|
||||
func (s relay) foreachModify(m *ice.Message, key, cmd string, cb func([]string) string) {
|
||||
kit.If(cb == nil, func() { cb = func(ls []string) string { return kit.Join(ls) } })
|
||||
|
Loading…
x
Reference in New Issue
Block a user