diff --git a/base/web/dream.go b/base/web/dream.go index c35e2db7..a9cee213 100644 --- a/base/web/dream.go +++ b/base/web/dream.go @@ -249,8 +249,8 @@ func init() { if aaa.IsTechOrRoot(m) && m.Option(ctx.ACTION) == GRANT { m.Cmdy(aaa.USER).Cut(aaa.USERNAME, aaa.USERNICK).Option(ice.TABLE_CHECKBOX, ice.FALSE) } else { - m.Push(arg[0], m.Option(ice.MSG_USERNAME)) m.Push(arg[0], m.Option(tcp.NODENAME)) + m.Push(arg[0], m.Option(ice.MSG_USERNAME)) } case nfs.REPOS: case nfs.BINARY: @@ -489,10 +489,7 @@ func init() { if ice.Info.NodeType == WORKER { return } - if _dream_list(m); m.Length() == 0 { - m.EchoInfoButton(m.Trans("please scan or create new dream", "请扫描或创建新空间"), mdb.CREATE, nfs.SCAN) - return - } + _dream_list(m) if _dream_list_more(m); !aaa.IsTechOrRoot(m) || m.IsCliUA() { m.Action() } else if m.IsDebug() && cli.SystemFindGo(m) { @@ -500,6 +497,10 @@ func init() { } else { m.Action(mdb.CREATE, STARTALL, STOPALL) } + if m.Length() == 0 { + m.EchoInfoButton(m.Trans("please scan or create new dream", "请扫描或创建新空间"), mdb.CREATE, nfs.SCAN) + return + } ctx.DisplayTableCard(m) m.Options(ice.MSG_TOOLKIT, "web.code.compose.insight") m.Sort("type,status,name", []string{aaa.LOGIN, WORKER, SERVER, ORIGIN}, []string{cli.START, cli.STOP, cli.BEGIN}, ice.STR_R) diff --git a/base/web/serve.go b/base/web/serve.go index 22a030a2..ba4aeecb 100644 --- a/base/web/serve.go +++ b/base/web/serve.go @@ -220,7 +220,7 @@ func _serve_handle(key string, cmd *ice.Command, m *ice.Message, w http.Response } func() { defer InfoLock.Lock()() - Info.Commands[kit.Select(cmds[0], m.Option(ice.MSG_INDEX))]++ + Info.Commands[kit.Select(kit.Select("", cmds, 0), m.Option(ice.MSG_INDEX))]++ switch r.Method { case http.MethodGet: Info.ServeGetCount++ diff --git a/base/web/space.go b/base/web/space.go index 004d8c00..7ad8018c 100644 --- a/base/web/space.go +++ b/base/web/space.go @@ -98,7 +98,8 @@ func _space_fork(m *ice.Message) { if msg := m.Cmd(TOKEN, m.Option(TOKEN)); msg.Append(mdb.TIME) > m.Time() && kit.IsIn(msg.Append(mdb.TYPE), SERVER, SPIDE) { aaa.SessAuth(m, kit.Dict(m.Cmd(aaa.USER, m.Option(ice.MSG_USERNAME, msg.Append(mdb.NAME))).AppendSimple())) name = SpaceName(kit.Select(name, msg.Append(mdb.TEXT))) - kit.If(ProxyDomain(m.Spawn(kit.Dict(ice.MSG_USERROLE, aaa.TECH)), name), func(p string) { text = p }) + // kit.If(ProxyDomain(m.Spawn(kit.Dict(ice.MSG_USERROLE, aaa.TECH)), name), func(p string) { text = p }) + kit.If(ProxyDomain(m, name), func(p string) { text = p }) safe = aaa.IsTechOrRoot(m) } } diff --git a/base/web/spide.go b/base/web/spide.go index 3043f107..f10b76e3 100644 --- a/base/web/spide.go +++ b/base/web/spide.go @@ -389,8 +389,9 @@ func init() { mdb.HashModify(m, mdb.NAME, m.Option(CLIENT_NAME), TOKEN, "") }}, DEV_CREATE_TOKEN: {Hand: func(m *ice.Message, arg ...string) { + m.Option(CLIENT_NAME, m.Option(ice.FROM_SPACE)) mdb.HashModify(m, m.OptionSimple(CLIENT_NAME, TOKEN)) - m.Cmd(SPACE, tcp.DIAL, ice.DEV, m.Option(CLIENT_NAME), m.OptionSimple(TOKEN)).Sleep300ms() + m.Cmd(SPACE, tcp.DIAL, m.Option(CLIENT_NAME)).Sleep300ms() }}, DEV_REQUEST_TEXT: {Hand: func(m *ice.Message, arg ...string) { m.Echo(SpaceName(ice.Info.NodeName)) }}, }, DevTokenAction(CLIENT_NAME, CLIENT_URL), mdb.ImportantHashAction(mdb.SHORT, CLIENT_NAME, mdb.FIELD, "time,icons,client.name,client.url,client.type,token")), Hand: func(m *ice.Message, arg ...string) { diff --git a/base/web/store.go b/base/web/store.go index a93bdfb0..86fe5086 100644 --- a/base/web/store.go +++ b/base/web/store.go @@ -65,7 +65,7 @@ func init() { list := m.Spawn(ice.Maps{ice.MSG_FIELDS: ""}).CmdMap(SPACE, mdb.NAME) m.Cmd(SPIDE, arg, kit.Dict(ice.MSG_FIELDS, "time,icons,client.type,client.name,client.origin")).Table(func(value ice.Maps) { kit.If(value[CLIENT_TYPE] == nfs.REPOS && value[CLIENT_NAME] != ice.SHY, func() { - // kit.If(value[CLIENT_NAME] == ice.OPS, func() { value[CLIENT_ORIGIN] = UserHost(m) }) + kit.If(value[CLIENT_NAME] == ice.OPS, func() { value[CLIENT_ORIGIN] = UserHost(m) }) m.Push(mdb.TYPE, ORIGIN).Push(mdb.NAME, value[CLIENT_NAME]).Push(mdb.ICONS, value[mdb.ICONS]).Push(ORIGIN, value[CLIENT_ORIGIN]) if _, ok := list[value[CLIENT_NAME]]; ok || kit.IsIn(value[CLIENT_NAME], ice.OPS, ice.DEV) { m.Push(mdb.STATUS, ice.TRUE)