1
0
forked from x/icebergs
This commit is contained in:
IT 老营长 @云轩领航-创始人 2023-08-21 01:33:55 +08:00
parent c9a8bbbcf4
commit fc59317d85
8 changed files with 35 additions and 10 deletions

View File

@ -27,7 +27,8 @@ func init() {
EMAIL: {Name: "email name auto create website", Help: "邮件", Actions: ice.MergeActions(ice.Actions{ EMAIL: {Name: "email name auto create website", Help: "邮件", Actions: ice.MergeActions(ice.Actions{
"website": {Help: "邮箱", Hand: func(m *ice.Message, arg ...string) { "website": {Help: "邮箱", Hand: func(m *ice.Message, arg ...string) {
// m.ProcessOpen(m.Cmdv("web.spide", EMAIL, "client.url")) // m.ProcessOpen(m.Cmdv("web.spide", EMAIL, "client.url"))
m.EchoIFrame(m.Cmdv("web.spide", EMAIL, "client.url")).ProcessInner() // m.EchoIFrame(m.Cmdv("web.spide", EMAIL, "client.url")).ProcessInner()
m.EchoIFrame("/chat/pod/20230511-golang-story/cmd/web.chat.email.client").ProcessInner()
}}, }},
SEND: {Name: "send to*='shylinux@163.com' subject*=hi content*:textarea=hello", Help: "发送", Hand: func(m *ice.Message, arg ...string) { SEND: {Name: "send to*='shylinux@163.com' subject*=hi content*:textarea=hello", Help: "发送", Hand: func(m *ice.Message, arg ...string) {
msg := m.Cmd("", m.OptionDefault(mdb.NAME, ADMIN)) msg := m.Cmd("", m.OptionDefault(mdb.NAME, ADMIN))

View File

@ -116,6 +116,10 @@ func PodCmd(m *ice.Message, arg ...ice.Any) bool {
m.Options(ice.POD, []string{}, ice.MSG_USERPOD, pod).Cmdy(append(kit.List(ice.SPACE, pod), arg...)...) m.Options(ice.POD, []string{}, ice.MSG_USERPOD, pod).Cmdy(append(kit.List(ice.SPACE, pod), arg...)...)
return true return true
} }
if pod := m.Option(ice.SPACE); pod != "" {
m.Options(ice.SPACE, []string{}, ice.MSG_USERPOD, pod).Cmdy(append(kit.List(ice.SPACE, pod), arg...)...)
return true
}
return false return false
} }
func Run(m *ice.Message, arg ...string) { func Run(m *ice.Message, arg ...string) {

View File

@ -51,12 +51,18 @@ func _dream_start(m *ice.Message, name string) {
} }
defer m.ProcessOpen(m.MergePod(m.Option(mdb.NAME, name))) defer m.ProcessOpen(m.MergePod(m.Option(mdb.NAME, name)))
p := path.Join(ice.USR_LOCAL_WORK, name) p := path.Join(ice.USR_LOCAL_WORK, name)
if pid := m.Cmdx(nfs.CAT, path.Join(p, ice.Info.PidPath), kit.Dict(ice.MSG_USERROLE, aaa.TECH)); pid != "" && nfs.Exists(m, "/proc/"+pid) { if pid := m.Cmdx(nfs.CAT, path.Join(p, ice.Info.PidPath), kit.Dict(ice.MSG_USERROLE, aaa.TECH)); pid != "" {
m.Info("already exists %v", pid) if nfs.Exists(m, "/proc/"+pid) {
return m.Info("already exists %v", pid)
} else if msg := m.Cmd(SPACE, name); msg.Length() > 0 { return
m.Info("already exists %v", name) }
return for i := 0; i < 3; i++ {
if msg := m.Cmd(SPACE, name); msg.Length() > 0 {
m.Info("already exists %v", name)
return
}
m.Sleep("1s")
}
} }
defer ToastProcess(m)() defer ToastProcess(m)()
defer m.Sleep("1s") defer m.Sleep("1s")

View File

@ -10,4 +10,6 @@ const (
const ( const (
FLOAT = "float" FLOAT = "float"
OUTPUT = "output" OUTPUT = "output"
TEXT_PLAIN = "text/plain"
) )

View File

@ -174,6 +174,12 @@ func init() {
}) })
m.Optionv(ice.MSG_ARGS, kit.Simple(m.Optionv(ice.MSG_ARGS))) m.Optionv(ice.MSG_ARGS, kit.Simple(m.Optionv(ice.MSG_ARGS)))
}}, }},
mdb.INPUTS: {Hand: func(m *ice.Message, arg ...string) {
switch arg[0] {
case SPACE:
m.Cmdy("").CutTo(mdb.NAME, arg[0])
}
}},
tcp.DIAL: {Name: "dial dev=ops name", Hand: func(m *ice.Message, arg ...string) { tcp.DIAL: {Name: "dial dev=ops name", Hand: func(m *ice.Message, arg ...string) {
if strings.HasPrefix(m.Option(ice.DEV), HTTP) { if strings.HasPrefix(m.Option(ice.DEV), HTTP) {
m.Cmd(SPIDE, mdb.CREATE, m.OptionSimple(ice.DEV)) m.Cmd(SPIDE, mdb.CREATE, m.OptionSimple(ice.DEV))

View File

@ -42,7 +42,7 @@ type Client struct {
user string `name:"user" help:"用户"` user string `name:"user" help:"用户"`
orgs string `name:"orgs" help:"组织"` orgs string `name:"orgs" help:"组织"`
repo string `name:"repo" help:"源码"` repo string `name:"repo" help:"源码"`
list string `name:"list hash auto"` list string `name:"list hash auto" help:"授权"`
} }
func (s Client) Init(m *ice.Message, arg ...string) { func (s Client) Init(m *ice.Message, arg ...string) {
@ -74,7 +74,7 @@ func (s Client) Auth(m *ice.Message, arg ...string) {
} }
func (s Client) User(m *ice.Message, arg ...string) { func (s Client) User(m *ice.Message, arg ...string) {
if res := s.Get(m, m.Option(mdb.HASH), m.Option(USERS_URL)); res != nil { if res := s.Get(m, m.Option(mdb.HASH), m.Option(USERS_URL)); res != nil {
m.Options(res).Cmd(aaa.USER, mdb.CREATE, aaa.USERNICK, m.Option("full_name"), m.OptionSimple(aaa.USERNAME), m.Options(res).Cmd(aaa.USER, mdb.CREATE, aaa.USERNICK, m.Option("full_name"), m.OptionSimple(aaa.USERNAME), aaa.AVATAR, m.Option(aaa.AVATAR_URL),
aaa.USERROLE, kit.Select(aaa.VOID, aaa.TECH, m.Option("is_admin") == ice.TRUE), aaa.USERZONE, m.Option(web.DOMAIN), aaa.USERROLE, kit.Select(aaa.VOID, aaa.TECH, m.Option("is_admin") == ice.TRUE), aaa.USERZONE, m.Option(web.DOMAIN),
m.OptionSimple(aaa.EMAIL, aaa.LANGUAGE, aaa.AVATAR_URL)) m.OptionSimple(aaa.EMAIL, aaa.LANGUAGE, aaa.AVATAR_URL))
} }

View File

@ -82,6 +82,12 @@ func init() {
m.Cmdy(m.Option(ctx.ACTION), mdb.INPUTS, arg) m.Cmdy(m.Option(ctx.ACTION), mdb.INPUTS, arg)
default: default:
switch arg[0] { switch arg[0] {
case web.SPACE:
m.Cmdy(web.SPACE, mdb.INPUTS, arg)
case ctx.INDEX:
m.Cmdy(web.Space(m, m.Option(web.SPACE)), ctx.COMMAND)
case ctx.ARGS:
m.Cmdy(web.Space(m, m.Option(web.SPACE)), ctx.COMMAND, mdb.INPUTS, m.Option(ctx.INDEX))
case nfs.FILE: case nfs.FILE:
list := ice.Map{} list := ice.Map{}
push := func(k, p string) { push := func(k, p string) {

View File

@ -220,5 +220,5 @@ func (m *Message) resource(file string) string {
p = strings.Split(p, "/pkg/mod/")[1] p = strings.Split(p, "/pkg/mod/")[1]
} }
kit.If(file == "", func() { p = kit.ExtChange(p, "js") }, func() { p = path.Join(path.Dir(p), file) }) kit.If(file == "", func() { p = kit.ExtChange(p, "js") }, func() { p = path.Join(path.Dir(p), file) })
return "/require/" + p return kit.MergeURL("/require/"+p, POD, m.Option(MSG_USERPOD))
} }