diff --git a/index.css b/index.css index ee074850..633515c4 100644 --- a/index.css +++ b/index.css @@ -712,7 +712,8 @@ fieldset.can.view>div.output div.item>span.toggle { width:var(--code-font-size); fieldset.can.view>div.output div.item>span.inner { color:var(--disable-fg-color); } fieldset.can.view>div.output div.list { border-left:var(--disable-fg-color) dashed 1px; padding-left:10px; margin-left:4px; } fieldset.form>div.output>div.code { display:flex; flex-direction:column; justify-content:center; align-items:center; } -fieldset.form>div.output>div.code>div.info { font-size:20px; padding:40px 20px; overflow:auto; white-space:break-spaces; } +fieldset.form>div.output>div.code>div.info { font-size:20px; text-align:center; padding:40px 20px; overflow:auto; white-space:break-spaces; } +fieldset.form>div.output>div.code>div.info>span.title { font-style:italic; } fieldset.form>div.output>div.code>input[type=button] { font-size:24px; border:var(--notice-bg-color) solid 1px; height:48px; width:240px; margin:20px; display:block; } fieldset>div.output.form { padding:20px; display:flex; flex-direction:column; align-items:center; } fieldset>div.output.form>div.item { text-align:left; margin:10px; height:unset; } diff --git a/lib/user.js b/lib/user.js index 7fb1d565..505eddd8 100644 --- a/lib/user.js +++ b/lib/user.js @@ -48,7 +48,7 @@ Volcanos("user", { if (location.search.indexOf("debug=true") > 0 && url.indexOf("debug=true") == -1) { var ls = url.split("#"); ls[0] += (ls[0].indexOf("?") > 0? "&": "?") + "debug=true", url = ls.join("#") } - window.open(url) || (location.href = url) + window.open(url) || (location.hostname != tcp.LOCALHOST && (location.href = url)) }, close: function(url) { return window.close() }, theme: function(can, name) { can.base.isString(name) && (name = [name]) || name || [] @@ -259,6 +259,7 @@ Volcanos("user", { }) }, login: function(can, _cb, _msg) { can.page.ClassList.add(can, document.body.parentNode, aaa.LOGIN), can.onimport.theme(can), can.misc.CookieSessid(can, "") + var ui var socket = can.ondaemon._init(can, "", aaa.LOGIN, function(event, msg, cmd, arg, cb) { function check() { if (can.misc.CookieSessid(can)) { can.page.ClassList.del(can, document.body.parentNode, aaa.LOGIN) @@ -266,7 +267,7 @@ Volcanos("user", { return can.base.isFunc(_cb) && _cb(), _cb = null, true } can.core.Timer(1000, function() { check() }), can.onimport.theme(can) } - if (cmd == cli.PWD) { if (check()) { return } can.page.ClassList.add(can, document.body, aaa.LOGIN), can._wss_name = can.ondaemon._list[0] = arg[0] + if (cmd == cli.PWD) { if (check() || ui) { return } can.page.ClassList.add(can, document.body, aaa.LOGIN), can._wss_name = can.ondaemon._list[0] = arg[0] var _list = [], list = {}; _msg.Table(function(value) { if (value.order == "") {} else if (value.type == mdb.PLUGIN) { can.user.trans(can, kit.Dict(value.name, value.help)) _list.push(value.name), list[value.name] = function(target) { @@ -277,7 +278,7 @@ Volcanos("user", { } } else if (value.type == cli.QRCODE) { can.user.trans(can, kit.Dict(value.name, value.help)) _list.push(value.name), list[value.name] = function(target) { can.page.Modify(can, target, arg[2]) } } }) - var ui = can.onappend.tabview(can, list, _list, can.page.Append(can, document.body, [{view: "input login float flex"}])._target) + ui = can.onappend.tabview(can, list, _list, can.page.Append(can, document.body, [{view: "input login float flex"}])._target) if (window.parent != window && window.innerHeight < 480) { can.onmotion.hidden(can, ui.output) } var _cmd = "space login "+arg[0]; ui.display = can.page.Append(can, ui._target, [html.DISPLAY])._target, can.onappend.style(can, html.FLEX, ui.display) can.page.Appends(can, ui.display, [{text: [ @@ -288,8 +289,7 @@ Volcanos("user", { can.user.jumps(can.base.MergeURL(value.link, ice.BACK, location.href)) }} }) }]) - can.page.style(can, ui._target, {left: (can.page.width()-ui._target.offsetWidth)/2, - top: can.page.height() < 640? (can.page.height()-ui._target.offsetHeight)/2: (can.page.height()-ui._target.offsetHeight-html.HEADER_HEIGHT-html.ACTION_HEIGHT)/4+html.HEADER_HEIGHT}) + can.page.style(can, ui._target, {left: (can.page.width()-ui._target.offsetWidth)/2, top: can.page.height() < 640? (can.page.height()-ui._target.offsetHeight)/2: (can.page.height()-ui._target.offsetHeight-html.HEADER_HEIGHT-html.ACTION_HEIGHT)/4+html.HEADER_HEIGHT}) cb && cb(); return true } else if (cmd == ice.MSG_SESSID) { if (!can.misc.CookieSessid(can, arg[0])) { can.user.info.sessid = arg[0] } check(), cb && cb(); return true } }) diff --git a/plugin/state.js b/plugin/state.js index 0ebd3e0e..a773bf80 100644 --- a/plugin/state.js +++ b/plugin/state.js @@ -107,11 +107,10 @@ Volcanos(chat.ONIMPORT, { can.page.SelectArgs(can, can._action, "", function(target) { target.value = his[i++]||"" }); break } can.Update(event) }, }) -Volcanos(chat.ONACTION, {list: [ - function(can) { if (!can.user.isMobile) { return "刷新数据" } }, +Volcanos(chat.ONACTION, {list: ["刷新数据", function(can) { if (!can.user.isMobile) { return "刷新界面" } }, - function(can) { if (!can.user.isMobile) { return "切换浮动" } }, - function(can) { if (!can.user.isMobile) { return "切换全屏" } }, + function(can) { if (!can.user.isMobile && !can.isCmdMode()) { return "切换浮动" } }, + function(can) { if (!can.user.isMobile && !can.isCmdMode()) { return "切换全屏" } }, function(can) { if (can.isCmdMode()) { return "打开首页" } }, function(can) { if (can.ConfSpace() || can.isCmdMode() && can.misc.Search(can, ice.POD)) { return "打开空间" } }, function(can) { if (!can.isCmdMode()) { return "打开链接" } }, @@ -284,8 +283,7 @@ Volcanos(chat.ONACTION, {list: [ recorder.onstop = function() { cb(blobs, nfs.WEBM) }, recorder.start(1) }) }, }) -Volcanos(chat.ONEXPORT, { - _output: function(can, msg) {}, +Volcanos(chat.ONEXPORT, {_output: function(can, msg) {}, output: function(can, msg) {}, action: function(can, button, data) {}, record: function(can, value, key, data) {}, title: function(can, title) { can.isCmdMode() && can.user.title(title) }, marginTop: function() { return 0 }, marginBottom: function() { return 0 }, @@ -299,7 +297,13 @@ Volcanos(chat.ONEXPORT, { statusHeight: function(can) { return can.page.ClassList.has(can, can._target, html.OUTPUT) || !can.page.isDisplay(can._status) || (can._target.offsetHeight > 0 && can._status.offsetHeight == 0) || can._status.innerHTML == "" && !can.page.ClassList.has(can, can._target, html.PLUG)? 0: html.STATUS_HEIGHT }, - link: function(can) { var args = can.Option(); args.pod = can.ConfSpace(), args.cmd = can.ConfIndex(); return can.misc.MergePodCmd(can, args, true) }, + link: function(can) { + var args = can.Option(); + args.pod = can.ConfSpace(), args.cmd = can.ConfIndex(); + can.core.Item(args, function(key, value) { + if (!value) { delete(args[key]) } + }) + return can.misc.MergePodCmd(can, args, true) }, args: function(can) { return can.Option() }, close: function(can, msg) {}, })