Volcanos(chat.ONIMPORT, { _init: function(can, msg) { can.page.Append(can, can._output, msg.Table(function(value) { if (value.type == "title") { return {view: [[html.ITEM, html.TITLE], "", can.user.trans(can, value.name, value.help)]} } return {view: [[html.ITEM, value.type, value.name]], list: [{text: [can.user.trans(can, value.name, value.help, "value.setting"), "", mdb.NAME]}, can.onimport[value.type](can, value)]} })) can.user.trans(can, { desktopInsert: "添加到桌面", openAddress: "选择地址", openLocation: "查看位置", getLocation: "上报位置", scan: "扫码", portal: "进入官网", logout: "退出登录", }) can.core.List([ can.user.isTechOrRoot(can) && "desktopInsert", can.user.isMobile && can.user.isWeiXin && "openAddress", can.user.isMobile && can.user.isWeiXin && "openLocation", can.user.isMobile && can.user.isWeiXin && "getLocation", can.user.isMobile && can.user.isWeiXin && "scan", "portal", "logout", ], function(item) { if (!item) { return } typeof item == "string" && (item = {name: item}) item.type = item.type||html.BUTTON, item.onclick = function(event) { var cb = can.onaction[item.name]; if (cb) { return cb(event, can, item.name) } var cb = can.sup.onaction[item.name]; if (cb) { return cb(event, can.sup, item.name) } can.runAction(event, item.name, []) }, can.onappend.input(can, item, "", can._output) }) if (!can.misc.isDebug(can)) { return } can.user.isTechOrRoot(can) && can.onimport._plugin(can, {index: "can.cookie"}) localStorage.length && can.onimport._plugin(can, {index: "can.localStorage"}) sessionStorage.length && can.onimport._plugin(can, {index: "can.sessionStorage"}) // can.onimport._plugin(can, {index: "can.runtime"}) can.page.Append(can, can._output, [{text: "debug"}]) }, _plugin: function(can, value) { value.width = can.ConfWidth()-20 can.onappend.plugin(can, value, function(sub) { sub.onexport.output = function() { if (!sub._output.innerHTML) { can.onmotion.hidden(can, sub._target) } } }) }, title: function(can, value) { return {text: [value.name, "", value.type]} }, radio: function(can, value) { return {text: ["", "", ["outer", value.value]], list: [{text: ["", "", "inner"]}], onclick: function(event) { if (value.value == "on") { value.value = "off" } else { value.value = "on" } can.runAction(can.request(event, value, can.Option(), {_toast: value.name}), mdb.UPDATE, []) }} }, input: function(can, value) { return {type: "input", data: {type: "text", value: value.value}, onkeyup: function(event) { if (event.key == code.ENTER) { can.runAction(can.request(event, {value: event.target.value}, value, can.Option(), {_toast: value.name}), mdb.UPDATE, []) } }} }, story: function(can, value) { return {text: ["", "i", "bi bi-chevron-double-right"], _init: function(target) { target.parentNode.onclick = function() { var list = can.core.Split(value.value) can.onimport.myStory(can, {index: list[0], args: list.slice(1)}) } }} }, }) Volcanos(chat.ONACTION, { desktopInsert: function(event, can, button) { var icons = ""; can.core.List(can._stacks_current, function(p) { if (!p.current) { return } icons = p.current.icons||p.ConfIcons()||can.misc.Resource(can, can._stacks_current[0].Conf("icon"), can._stacks_current[0].Conf("space"))||icons }) can.runAction(can.request(event, {icons: icons, score: "20000"}), button, []) }, scan: function(event, can, button) { can.user.agent.scanQRCode(can, function(value) { var data = can.misc.ParseURL(can, value.text) can.onimport.myStory(can, {space: data.pod, index: data.cmd, opts: data}) can.page.Append(can, can._output, [{text: value.text, onclick: function(event) { can.user.copy(event, can, value.text) }}]) }) }, portal: function(event, can, button) { can.user.open("/") }, logout: function(event, can, button) { if (can.user.confirm("请确认退出登录")) { can.misc.CookieSessid(can, ""), location.reload() } }, })