diff --git a/frame.js b/frame.js index 17effc18..96bf321f 100644 --- a/frame.js +++ b/frame.js @@ -366,17 +366,14 @@ Volcanos(chat.ONAPPEND, { } msg.Defer(), can.base.isFunc(cb) && cb(msg) can._output.scrollTop = output_old.scrollTop, can._output.scrollLeft = output_old.scrollLeft can.isCmdMode() && can.user.agent.init(can, can.user.info.titles) - can.page.style(can, can._target, "visibility", "") - can.page.style(can, can._output, "visibility", "") + can.page.style(can, can._target, "visibility", ""), can.page.style(can, can._output, "visibility", "") if (!can.page.ClassList.has(can, can._target, "_back") && !can.page.ClassList.has(can, can._target, "_goto")) { - can.page.style(can, can._output, html.LEFT, 0) - can.page.ClassList.del(can, can._output, "_prepare") + can.page.ClassList.del(can, can._output, "_prepare"), can.page.style(can, can._output, html.LEFT, 0) can.page.Remove(can, output_old) return } - var width = can.ConfWidth(), begin = width*3/4 - can.page.ClassList.add(can, output_old, "_unload") - can.core.Timer({interval: 5, length: width/20}, function(timer, interval, index, list) { + var width = can.ConfWidth(), begin = width-200; can.page.ClassList.add(can, output_old, "_unload") + can.core.Timer({length: (width-begin)/10, interval: 10}, function(timer, interval, index, list) { if (can.page.ClassList.has(can, can._target, "_back")) { can.page.style(can, can._output, html.LEFT, -width+(width-begin)/list.length*(index+1)+begin) can.page.style(can, output_old, html.LEFT, (width-begin)/list.length*(index+1)+begin) @@ -385,8 +382,7 @@ Volcanos(chat.ONAPPEND, { can.page.style(can, output_old, html.LEFT, -(width-begin)/list.length*(index+1)-begin) } }, function() { - can.page.style(can, can._output, html.LEFT, 0) - can.page.ClassList.del(can, can._output, "_prepare") + can.page.ClassList.del(can, can._output, "_prepare"), can.page.style(can, can._output, html.LEFT, 0) can.page.Remove(can, output_old) }) }, target: output}), msg.Defer() @@ -647,13 +643,13 @@ Volcanos(chat.ONAPPEND, { if (key == mdb.VALUE) { key = data.key } data = {}, can.core.List(list, function(item) { data[item.key] = item.value }) - if (can.user.isMobile && key == "key" && !data[value]) { return } - if (can.user.isMobile && key != "key" && !data[key]) { return } + if (can.user.isMobile && key == mdb.KEY && !data[value]) { return } + if (can.user.isMobile && key != mdb.KEY && !data[key]) { return } } function request(event) { delete(data.action); return can.request(event, data, can.Option()) } function run(event, cmd, arg) { can.misc.Event(event, can, function(msg) { can.run(request(event), [ctx.ACTION, cmd].concat(arg)) }) } function img(p) { return !msg.IsDetail()? can.page.Format(html.IMG, p, 48, 48): can.user.isMobile? can.page.Format(html.IMG, p, null, 320): can.page.Format(html.IMG, p, 320, null) } - if (key == mdb.ICON && value) { _value = can.base.contains(value, ".ico", ".png", ".jpg")? img(can.misc.Resource(can, data[key], data[ice.POD]||data[web.SPACE])): "" } + if (key == mdb.ICON && value) { _value = can.base.contains(value, ".ico", ".png", ".jpg")? img(can.misc.Resource(can, data[key], data.pod||data.space||data.nodename)): "" } if (key == mdb.ICONS && value) { _value = img(can.misc.Resource(can, data[key])) } if (key == aaa.AVATAR && value) { _value = img(can.misc.Resource(can, data[key])) } if (key == "user_avatar" && value) { _value = img(can.misc.Resource(can, data[key])) } @@ -665,7 +661,6 @@ Volcanos(chat.ONAPPEND, { if (key == "secret" && value) { _value = value.slice(0, 4)+"****" } if (key == web.TOKEN && value) { _value = value.slice(0, 4)+"****" } if (key == aaa.PASSWORD && value) { _value = "********" } - function onclick() { return false } if (key == mdb.STATUS && can.base.isIn(value, mdb.DISABLE, ice.FALSE)) { _value = `` function onclick() { run(event, mdb.MODIFY, [mdb.STATUS, mdb.ENABLE]); return true } diff --git a/lib/user.js b/lib/user.js index 91b3edcf..fd7b5d56 100644 --- a/lib/user.js +++ b/lib/user.js @@ -249,7 +249,7 @@ Volcanos("user", { focus: function() { can.onmotion.focus(can, can.page.Select(can, ui._target, html.INPUT_ARGS)[0]) }, cancel: function(event) { can.onengine.signal(can, "onremove", can.request(event, {query: can.page.getquery(can, ui._target)})), can.page.Remove(can, ui._target) }, submit: function(event, can, button) { var args = [], data = {}, err = false - var list = can.page.Select(can, ui.table, html.OPTION_ARGS, function(item) { + var list = can.page.Select(can, ui._target, html.OPTION_ARGS, function(item) { if (item.value == "" && need[item.name] == "must") { err = true, item.focus(), can.user.toast(can, item.name+" 是必选字段, 请重新输入") } return item.name && args.push(item.name, item.value||""), data[item.name] = item.value||"" }); if (err) { return } can.onkeymap.prevent(event) diff --git a/plugin/state.js b/plugin/state.js index 06eaa442..ff7e2ee5 100644 --- a/plugin/state.js +++ b/plugin/state.js @@ -358,7 +358,9 @@ Volcanos(chat.ONEXPORT, { }, title: function(can, title) { if (!can.isCmdMode()) { return } var list = []; function push(p) { p && list.indexOf(p) == -1 && list.push(p) } - if (arguments.length == 2 && !can.base.isIn(can.ConfIndex(), web.PORTAL, code.VIMER, wiki.FEEL)) { push(can.user.trans(can, can.ConfIndex().split(".").pop(), can.ConfHelp())) } + if (!can.user.isMobile) { + if (arguments.length == 2 && !can.base.isIn(can.ConfIndex(), web.PORTAL, code.VIMER, wiki.FEEL)) { push(can.user.trans(can, can.ConfIndex().split(".").pop(), can.ConfHelp())) } + } can.core.List(arguments, function(title, index) { index > 0 && push(title) }) can.user.isMobile || push(can.user.info.titles||can.ConfSpace()||can.misc.Search(can, ice.POD)) can.user.title(list.join(" ")) diff --git a/plugin/table.js b/plugin/table.js index f7ee35f2..6175d2ce 100644 --- a/plugin/table.js +++ b/plugin/table.js @@ -22,6 +22,7 @@ Volcanos(chat.ONIMPORT, { can.page.Append(can, can._output, msg.Table(function(value) { return can.onimport.itemcard(can, value, cb(value)) })) + msg.Result() && can.onappend.board(can, msg) } }, itemcard: function(can, value, list, cb) { @@ -36,7 +37,7 @@ Volcanos(chat.ONIMPORT, { }) }}, {view: html.OUTPUT, list: [ - {img: can.misc.ResourceIcons(can, value.icons||value.avatar||value.user_avatar)}, {view: html.INFO, list: list}, + {img: can.misc.ResourceIcons(can, value.icons||value.icon||value.avatar||value.user_avatar, value.nodename)}, {view: html.INFO, list: list}, ], _init: function(target) { if (!value.action) { return } can.onmotion.slideAction(can, target) }},