1
0
mirror of https://shylinux.com/x/icebergs synced 2025-04-25 17:18:05 +08:00
This commit is contained in:
IT 老营长 @云轩领航-创始人 2023-07-22 10:57:06 +08:00
parent 6c2899868b
commit a23d14b11a
5 changed files with 26 additions and 5 deletions

View File

@ -57,6 +57,11 @@ const (
BLACK = "black"
RIGHT = "right"
)
const (
AUTH = "auth"
PUBLIC = "public"
PRIVATE = "private"
)
const ROLE = "role"
func init() {

16
base/web/admin.go Normal file
View File

@ -0,0 +1,16 @@
package web
import (
ice "shylinux.com/x/icebergs"
kit "shylinux.com/x/toolkits"
)
func init() {
Index.MergeCommands(ice.Commands{
"admin": {Name: "admin", Help: "管理", Hand: func(m *ice.Message, arg ...string) {
args := []string{}
kit.For(arg[1:], func(v string) { args = append(args, ice.ARG, v) })
m.Cmdy(SPIDE, ice.OPS, SPIDE_RAW, "/chat/cmd/"+arg[0], args)
}},
})
}

View File

@ -52,8 +52,7 @@ func _space_fork(m *ice.Message) {
text := kit.Select(addr, m.Option(mdb.TEXT))
if kit.IsIn(m.Option(mdb.TYPE), CHROME) && m.Option(mdb.NAME) != "chrome" || !(ice.Info.Localhost && tcp.IsLocalHost(m, m.R.RemoteAddr) ||
m.Option(TOKEN) != "" && m.Cmdv(TOKEN, m.Option(TOKEN), mdb.TIME) > m.Time()) {
name = kit.ReplaceAll(addr, "[", "_", "]", "_", nfs.DF, "_", nfs.PT, "_")
text = kit.Select(addr, m.Option(mdb.NAME), m.Option(mdb.TEXT))
name, text = kit.Hashs(name), kit.Select(addr, m.Option(mdb.NAME), m.Option(mdb.TEXT))
}
args := kit.Simple(mdb.TYPE, kit.Select(WORKER, m.Option(mdb.TYPE)), mdb.NAME, name, mdb.TEXT, text, m.OptionSimple(cli.DAEMON, ice.MSG_USERUA), m.OptionSimple(nfs.MODULE, nfs.VERSION))
if c, e := websocket.Upgrade(m.W, m.R); !m.Warn(e) {

View File

@ -77,7 +77,7 @@ Volcanos(chat.ONIMPORT, {
sub.onexport.marginBottom = function() { return 100 }
sub.onexport.actionHeight = function(sub) { return can.page.ClassList.has(can, sub._target, html.OUTPUT)? 0: html.ACTION_HEIGHT+20 },
can.onmotion.move(can, sub._target, {"z-index": 10, top: item.top, left: item.left}), sub.onmotion.resize(can, sub._target, function(height, width) { sub.onimport.size(sub, height, width) }, 25)
sub._target.onclick = function(event) { can.page.Select(can, sub._target.parentNode, html.FIELDSET, function(target) { can.page.style(can, target, "z-index", target == sub._target? "10": "9") }) }
sub._target.onclick = function(event) { can.ondetail.select(can, sub._target) }
}, can.ui.desktop)
},
session: function(can, list) { can.page.Select(can, can._output, html.DIV_DESKTOP, function(target) { can.page.Remove(can, target) })

View File

@ -151,7 +151,7 @@ func init() {
}
case UPLOAD_PACK:
if mdb.Conf(m, Prefix(SERVICE), kit.Keym("auth")) == "private" {
if mdb.Conf(m, Prefix(SERVICE), kit.Keym(aaa.AUTH)) == aaa.PRIVATE {
if err := _service_login(m); m.Warn(err, ice.ErrNotLogin) {
web.RenderHeader(m.W, "WWW-Authenticate", `Basic realm="git server"`)
return
@ -198,7 +198,8 @@ func init() {
mdb.HashSelect(m, arg...).Table(func(value ice.Maps) {
m.Push(nfs.SIZE, kit.Split(m.Cmdx(cli.SYSTEM, "du", "-sh", path.Join(ice.USR_LOCAL_REPOS, value[REPOS])))[0])
m.PushScript(kit.Format("git clone %s", tcp.PublishLocalhost(m, kit.Split(web.MergeURL2(m, "/x/"+value[REPOS]+".git"), mdb.QS)[0])))
}).Sort(REPOS).Cmdy("web.code.publish", ice.CONTEXTS, "dev")
}).Sort(REPOS).Cmdy("web.code.publish", ice.CONTEXTS, ice.DEV)
kit.If(mdb.Config(m, aaa.AUTH) == aaa.PRIVATE, func() { m.StatusTimeCount(aaa.AUTH, aaa.PRIVATE) })
} else if len(arg) == 1 {
_repos_branch(m, _repos_open(m, arg[0]))
m.EchoScript(tcp.PublishLocalhost(m, kit.Split(web.MergeURL2(m, "/x/"+arg[0]), mdb.QS)[0]))