1
0
forked from x/icebergs
This commit is contained in:
IT 老营长 @云轩领航-创始人 2024-02-25 12:14:26 +08:00
parent f8880cdf4c
commit 361f4ee8e9
6 changed files with 17 additions and 16 deletions

View File

@ -13,12 +13,13 @@ import (
type apply struct {
ice.Hash
email string `data:"admin"`
field string `data:"time,hash,status,email,usernick,username,userrole,icons,agent,system,ip,ua"`
apply string `name:"apply" help:"申请" role:"void"`
agree string `name:"agree userrole=tech,void" help:"同意" icon:"bi bi-check2-square"`
login string `name:"login" help:"登录" role:"void"`
list string `name:"list hash auto sso" help:"注册"`
email string `data:"admin"`
checkbox string `data:"true"`
field string `data:"time,hash,status,email,usernick,username,userrole,icons,agent,system,ip,ua"`
apply string `name:"apply" help:"申请" role:"void"`
agree string `name:"agree userrole=tech,void" help:"同意" icon:"bi bi-check2-square"`
login string `name:"login" help:"登录" role:"void"`
list string `name:"list hash auto sso" help:"注册"`
}
func (s apply) Sso(m *ice.Message, arg ...string) {

View File

@ -4,6 +4,7 @@ import (
ice "shylinux.com/x/icebergs"
"shylinux.com/x/icebergs/base/gdb"
"shylinux.com/x/icebergs/base/mdb"
"shylinux.com/x/icebergs/base/web/html"
kit "shylinux.com/x/toolkits"
)
@ -54,7 +55,7 @@ func init() {
mdb.CREATE: {Name: "create usernick username* userrole=void,tech userzone language", Hand: func(m *ice.Message, arg ...string) {
_user_create(m, m.Option(USERNAME), m.OptionSimple(USERNICK, USERROLE, USERZONE, LANGUAGE, EMAIL, BACKGROUND, AVATAR)...)
}},
}, mdb.ImportantHashAction(mdb.SHORT, USERNAME, mdb.FIELD, "time,usernick,username,userrole,userzone,language"))},
}, mdb.ImportantHashAction(mdb.SHORT, USERNAME, mdb.FIELD, "time,usernick,username,userrole,userzone,language", html.CHECKBOX, ice.TRUE))},
})
}

View File

@ -32,14 +32,14 @@ func init() {
cli.OpenCmds(m, kit.Format("cd %s", kit.Path("")), "tail -f var/log/bench.log")
}},
}, Hand: func(m *ice.Message, arg ...string) {
offset, limit, stats := kit.Int(kit.Select("0", arg, 1)), kit.Int(kit.Select("1000", arg, 2)), map[string]int{}
offset, limit := kit.Int(kit.Select("0", arg, 1)), kit.Int(kit.Select("100", arg, 2))
switch arg[0] {
case BENCH, ERROR, DEBUG:
m.Cmd(nfs.CAT, _debug_file(arg[0]), func(text string, index int) {
if index < offset || index >= offset+limit || !strings.Contains(text, kit.Select("", arg, 3)) {
return
}
ls := strings.SplitN(strings.ReplaceAll(text, " ", " "), lex.SP, 8)
ls := strings.SplitN(strings.ReplaceAll(strings.ReplaceAll(text, " ", " "), " ", " "), lex.SP, 8)
if _, e := time.Parse(kit.Split(ice.MOD_TIMES)[0], ls[0]); e != nil || len(ls) < 8 {
m.Push(mdb.TIME, "").Push(ice.LOG_TRACEID, "").Push(mdb.ID, "")
m.Push(nfs.PATH, "").Push(nfs.FILE, "").Push(nfs.LINE, "")
@ -67,24 +67,22 @@ func init() {
}
}
m.Push(ctx.SHIP, ls[5]).Push(LEVEL, ls[6]).Push(nfs.CONTENT, ls[7])
stats[ls[6]]++
})
case WATCH:
m.Cmd(nfs.CAT, ice.VAR_LOG+arg[0]+".log", func(text string, index int) {
if len(arg) > 2 && !strings.Contains(text, arg[2]) || index < offset {
if index < offset || index >= offset+limit || !strings.Contains(text, kit.Select("", arg, 3)) {
return
}
ls := strings.SplitN(strings.ReplaceAll(text, " ", " "), lex.SP, 8)
ls := strings.SplitN(strings.ReplaceAll(strings.ReplaceAll(text, " ", " "), " ", " "), lex.SP, 8)
m.Push(mdb.TIME, ls[0]+lex.SP+ls[1]).Push(ice.LOG_TRACEID, ls[3]).Push(mdb.ID, ls[4])
i := strings.LastIndex(ls[7], lex.SP)
m.Push(nfs.PATH, ice.USR_ICEBERGS)
m.Push(nfs.FILE, strings.TrimSpace(strings.Split(ls[7][i:], nfs.DF)[0]))
m.Push(nfs.LINE, strings.TrimSpace(strings.Split(ls[7][i:], nfs.DF)[1]))
m.Push(ctx.SHIP, ls[5]).Push(LEVEL, ls[6]).Push(nfs.CONTENT, ls[7][:i])
stats[ls[6]]++
})
}
m.StatusTimeCountTotal(offset+m.Length(), stats)
m.StatusTimeCountStats(LEVEL)
}},
})
}

View File

@ -166,7 +166,7 @@ func ShareLocalFile(m *ice.Message, arg ...string) {
return
}
}
if m.Option(ice.POD) == "" {
if m.Option(ice.POD) == "" || (strings.HasPrefix(p, ice.USR_ICONS) && nfs.Exists(m, p)) {
m.RenderDownload(p)
} else if pp := kit.Path(ice.USR_LOCAL_WORK, m.Option(ice.POD), p); nfs.Exists(m, pp) {
m.RenderDownload(pp)

View File

@ -16,7 +16,7 @@ const TOKEN = "token"
func init() {
Index.MergeCommands(ice.Commands{
TOKEN: {Help: "令牌桶", Actions: mdb.HashAction(mdb.SHORT, mdb.UNIQ, mdb.EXPIRE, mdb.MONTH)},
TOKEN: {Help: "令牌桶", Actions: mdb.HashAction(mdb.SHORT, mdb.UNIQ, mdb.EXPIRE, mdb.MONTH, html.CHECKBOX, ice.TRUE)},
})
}

View File

@ -15,6 +15,7 @@ Volcanos(chat.ONIMPORT, {
] }]), can.onmotion.delay(can, function() { can.Status(mdb.COUNT, can.core.Item(list).length+"x"+can.core.Item(machine).length) })
},
void: function(can, space, machine, list) {
return
return {view: html.ACTION, _init: function(target) { var worker = list[space]["localhost"], server = list["contexts"][machine]
worker && can.onappend.input(can, {type: html.BUTTON, name: code.INSTALL, onclick: function(event) {
can.Update(can.request(event, {space: space, machine: machine}, worker), [ctx.ACTION, code.INSTALL])