diff --git a/base/web/space.go b/base/web/space.go index 82a59fae..5a77b38f 100644 --- a/base/web/space.go +++ b/base/web/space.go @@ -192,9 +192,6 @@ func _space_exec(m *ice.Message, name string, source, target []string, c *websoc } m.Option(ice.MSG_HANDLE, ice.TRUE) defer m.Cost(kit.Format("%v->%v %v %v", source, target, m.Detailv(), m.FormatSize())) - if m.Option("space.noecho") == ice.TRUE { - return - } m.Options(ice.MSG_USERWEB, m.Optionv(ice.MSG_USERWEB), ice.MSG_USERPOD, m.Optionv(ice.MSG_USERPOD)) _space_echo(m.Set(ice.MSG_OPTS).Options(m.OptionSimple(ice.MSG_HANDLE, ice.LOG_DEBUG, ice.LOG_DISABLE, ice.LOG_TRACEID)), []string{}, kit.Reverse(kit.Simple(source)), c) } diff --git a/base/web/token.go b/base/web/token.go index f8386bbf..185980aa 100644 --- a/base/web/token.go +++ b/base/web/token.go @@ -38,7 +38,7 @@ func DevTokenAction(name, origin string) ice.Actions { )) }}, mdb.DEV_CHOOSE: {Hand: func(m *ice.Message, arg ...string) { - m.EchoInfoButton(kit.JoinWord(m.ShortKey(), m.Cmdx(nfs.CAT, path.Join(nfs.SRC_TEMPLATE, "web.token", "saveto.html")), m.Option(cli.BACK)), mdb.DEV_RESPONSE) + m.EchoInfoButton(kit.JoinWord(m.ShortKey(), m.Cmdx(nfs.CAT, path.Join(nfs.SRC_TEMPLATE, m.PrefixKey(), "saveto.html")), m.Option(cli.BACK)), mdb.DEV_RESPONSE) }}, mdb.DEV_RESPONSE: {Help: "确认", Hand: func(m *ice.Message, arg ...string) { if !m.WarnNotAllow(m.Option(ice.MSG_METHOD) != http.MethodPost) { @@ -47,7 +47,7 @@ func DevTokenAction(name, origin string) ice.Actions { } }}, mdb.DEV_CONFIRM: {Hand: func(m *ice.Message, arg ...string) { - m.EchoInfoButton(kit.JoinWord(m.ShortKey(), m.Cmdx(nfs.CAT, path.Join(nfs.SRC_TEMPLATE, "web.token", "savefrom.html")), m.Option(name)), mdb.DEV_CREATE) + m.EchoInfoButton(kit.JoinWord(m.ShortKey(), m.Cmdx(nfs.CAT, path.Join(nfs.SRC_TEMPLATE, m.PrefixKey(), "savefrom.html")), m.Option(name)), mdb.DEV_CREATE) }}, mdb.DEV_CREATE: {Help: "创建", Hand: func(m *ice.Message, arg ...string) { if !m.WarnNotAllow(m.Option(ice.MSG_METHOD) != http.MethodPost) { diff --git a/core/chat/header.go b/core/chat/header.go index 5212ccde..04262a47 100644 --- a/core/chat/header.go +++ b/core/chat/header.go @@ -97,7 +97,7 @@ func init() { if arg[0] == mdb.INPUTS || arg[0] == mdb.ACTION && arg[1] == mdb.INPUTS { m.Cmdy(web.Space(m, m.Option(ice.POD)), MESSAGE, arg) } else { - m.Cmdy(web.Space(m, m.Option(ice.POD)), MESSAGE, tcp.SEND, arg).ToastSuccess() + m.Cmdy(web.Space(m, m.Option(ice.POD)), MESSAGE, mdb.INSERT, arg).ToastSuccess() } }}, aaa.LOGOUT: {Hand: aaa.SessLogout}, diff --git a/core/chat/message.js b/core/chat/message.js index 9587d2ce..88e68888 100644 --- a/core/chat/message.js +++ b/core/chat/message.js @@ -139,10 +139,16 @@ Volcanos(chat.ONFIGURE, { var list = can.core.Split(can.ConfSpace()||can.misc.Search(can, ice.POD)||"", ".") var _list = can.core.Split(value.direct == "recv"? can.db.zone.target: "", ".") can.base.isIn(_list[0], "ops", "dev") && (list.pop(), _list.shift()) - value._space = list.concat(_list).join(".").replaceAll("..", ".") - value._commands = {direct: value.direct, target: can.db.zone.target} + value._space = list.concat(_list).join(".").replaceAll("..", "."), value._commands = {direct: value.direct, target: can.db.zone.target} value.title = value.name; if (value.text) { var msg = can.request(); msg._xhr = {responseText: value.text}, value.msg = msg, msg.Copy(JSON.parse(value.text)) } can.onappend.plugin(can, value, function(sub) { sub.onimport.size(sub, height, width, false) + sub.Conf("_plugin_action", [{view: "item.button.pluginCreate.icons.state", _init: function(target) { + can.page.Append(can, target, [{icon: "bi bi-box-arrow-in-down", onclick: function(event) { + can.core.Next(sub._msg.Table(), function(value, next, index, list) { can.user.toastProcess(can, "create "+index+"/"+list.length, sub.ConfIndex()) + can.runAction(can.request(event, sub.Option(), value), ctx.RUN, ["", sub.ConfIndex(), mdb.CREATE], function() { next() }) + }, function() { can.user.toastSuccess(can, mdb.CREATE) }) + }}]) + }}]) sub.onexport.output = function() { sub.onimport.size(sub, height, width, false) can.page.style(can, target, html.HEIGHT, sub._target.offsetHeight+2) can.page.style(can, target, html.HEIGHT, sub._target.offsetHeight+2, html.WIDTH, sub._target.offsetWidth)