mirror of
https://shylinux.com/x/icebergs
synced 2025-04-26 01:24:05 +08:00
opt aaa.sess
This commit is contained in:
parent
8e49c83780
commit
85c44706ae
@ -25,8 +25,8 @@ type apply struct {
|
|||||||
|
|
||||||
func (s apply) Sso(m *ice.Message, arg ...string) {
|
func (s apply) Sso(m *ice.Message, arg ...string) {
|
||||||
m.Cmd(web.CHAT_HEADER, mdb.CREATE, mdb.TYPE, cli.QRCODE, mdb.NAME, "扫码登录", mdb.ORDER, "10")
|
m.Cmd(web.CHAT_HEADER, mdb.CREATE, mdb.TYPE, cli.QRCODE, mdb.NAME, "扫码登录", mdb.ORDER, "10")
|
||||||
m.Cmd(web.CHAT_HEADER, mdb.CREATE, mdb.TYPE, mdb.PLUGIN, mdb.NAME, "邮箱登录", mdb.ORDER, "11", ctx.INDEX, m.PrefixKey(), ctx.ARGS, kit.FuncName(s.Email))
|
m.Cmd(web.CHAT_HEADER, mdb.CREATE, mdb.TYPE, mdb.PLUGIN, mdb.NAME, "邮箱登录", mdb.ORDER, "20", ctx.INDEX, m.PrefixKey(), ctx.ARGS, kit.FuncName(s.Email))
|
||||||
m.Cmd(web.CHAT_HEADER, mdb.CREATE, mdb.TYPE, mdb.PLUGIN, mdb.NAME, "注册用户", mdb.ORDER, "12", ctx.INDEX, m.PrefixKey(), ctx.ARGS, kit.FuncName(s.Input))
|
m.Cmd(web.CHAT_HEADER, mdb.CREATE, mdb.TYPE, mdb.PLUGIN, mdb.NAME, "注册用户", mdb.ORDER, "30", ctx.INDEX, m.PrefixKey(), ctx.ARGS, kit.FuncName(s.Input))
|
||||||
}
|
}
|
||||||
func (s apply) Input(m *ice.Message, arg ...string) {
|
func (s apply) Input(m *ice.Message, arg ...string) {
|
||||||
kit.If(m.Option(mdb.HASH) == kit.FuncName(s.Input), func() { m.Options(mdb.HASH, "") })
|
kit.If(m.Option(mdb.HASH) == kit.FuncName(s.Input), func() { m.Options(mdb.HASH, "") })
|
||||||
|
@ -36,7 +36,7 @@ const SESS = "sess"
|
|||||||
|
|
||||||
func init() {
|
func init() {
|
||||||
Index.MergeCommands(ice.Commands{
|
Index.MergeCommands(ice.Commands{
|
||||||
SESS: {Help: "会话", Actions: ice.MergeActions(ice.Actions{
|
SESS: {Name: "sess hash auto filter:text", Help: "会话", Actions: ice.MergeActions(ice.Actions{
|
||||||
mdb.CREATE: {Name: "create username*", Hand: func(m *ice.Message, arg ...string) {
|
mdb.CREATE: {Name: "create username*", Hand: func(m *ice.Message, arg ...string) {
|
||||||
_sess_create(m, m.Option(USERNAME), UA, m.Option(ice.MSG_USERUA), IP, m.Option(ice.MSG_USERIP))
|
_sess_create(m, m.Option(USERNAME), UA, m.Option(ice.MSG_USERUA), IP, m.Option(ice.MSG_USERIP))
|
||||||
}},
|
}},
|
||||||
|
@ -70,8 +70,7 @@ func init() {
|
|||||||
m.OptionDefault(FG, BLACK, BG, WHITE)
|
m.OptionDefault(FG, BLACK, BG, WHITE)
|
||||||
_qrcode_cli(m, kit.Select(kit.Select(ice.Info.Make.Domain, ice.Info.Domain), arg, 0))
|
_qrcode_cli(m, kit.Select(kit.Select(ice.Info.Make.Domain, ice.Info.Domain), arg, 0))
|
||||||
} else {
|
} else {
|
||||||
m.OptionDefault(SIZE, kit.Select("360", "260", m.IsMobileUA()))
|
m.OptionDefault(SIZE, kit.Select("360", "280", m.IsMobileUA()))
|
||||||
// m.OptionDefault(SIZE, kit.Select("320", "368", m.IsWeixinUA()))
|
|
||||||
m.Option(FG, kit.Select(m.Option(ice.MSG_FG), arg, 1))
|
m.Option(FG, kit.Select(m.Option(ice.MSG_FG), arg, 1))
|
||||||
m.Option(BG, kit.Select(m.Option(ice.MSG_BG), arg, 2))
|
m.Option(BG, kit.Select(m.Option(ice.MSG_BG), arg, 2))
|
||||||
switch m.Option(ice.MSG_THEME) {
|
switch m.Option(ice.MSG_THEME) {
|
||||||
|
@ -169,16 +169,11 @@ func _serve_domain(m *ice.Message) string {
|
|||||||
}
|
}
|
||||||
func _serve_auth(m *ice.Message, key string, cmds []string, w http.ResponseWriter, r *http.Request) ([]string, bool) {
|
func _serve_auth(m *ice.Message, key string, cmds []string, w http.ResponseWriter, r *http.Request) ([]string, bool) {
|
||||||
kit.If(len(cmds) > 0, func() { cmds = append(kit.Split(cmds[0], ","), cmds[1:]...) })
|
kit.If(len(cmds) > 0, func() { cmds = append(kit.Split(cmds[0], ","), cmds[1:]...) })
|
||||||
defer func() {
|
|
||||||
kit.For(m.Optionv(""), func(key string) {
|
|
||||||
kit.If(strings.HasPrefix(key, ice.MSG_SESSID), func() { m.Set(ice.MSG_OPTION, key) })
|
|
||||||
})
|
|
||||||
}()
|
|
||||||
if r.URL.Path == PP(SPACE) {
|
if r.URL.Path == PP(SPACE) {
|
||||||
aaa.SessCheck(m, m.Option(ice.MSG_SESSID))
|
aaa.SessCheck(m, m.Option(ice.MSG_SESSID))
|
||||||
return cmds, true
|
return cmds, true
|
||||||
}
|
}
|
||||||
defer func() { m.Options(ice.MSG_CMDS, "", ice.MSG_SESSID, "") }()
|
defer func() { m.Options(ice.MSG_CMDS, "") }()
|
||||||
if aaa.SessCheck(m, m.Option(ice.MSG_SESSID)); m.Option(ice.MSG_USERNAME) == "" {
|
if aaa.SessCheck(m, m.Option(ice.MSG_SESSID)); m.Option(ice.MSG_USERNAME) == "" {
|
||||||
if ls := kit.Simple(mdb.Cache(m, m.Option(ice.MSG_USERIP), func() ice.Any {
|
if ls := kit.Simple(mdb.Cache(m, m.Option(ice.MSG_USERIP), func() ice.Any {
|
||||||
if !IsLocalHost(m) {
|
if !IsLocalHost(m) {
|
||||||
|
@ -68,8 +68,9 @@ func _space_fork(m *ice.Message) {
|
|||||||
addr := kit.Select(m.R.RemoteAddr, m.R.Header.Get(ice.MSG_USERADDR))
|
addr := kit.Select(m.R.RemoteAddr, m.R.Header.Get(ice.MSG_USERADDR))
|
||||||
text := strings.ReplaceAll(kit.Select(addr, m.Option(mdb.TEXT)), "%2F", nfs.PS)
|
text := strings.ReplaceAll(kit.Select(addr, m.Option(mdb.TEXT)), "%2F", nfs.PS)
|
||||||
name := kit.ReplaceAll(kit.Select(addr, m.Option(mdb.NAME)), "[", "_", "]", "_", nfs.DF, "_", nfs.PT, "_")
|
name := kit.ReplaceAll(kit.Select(addr, m.Option(mdb.NAME)), "[", "_", "]", "_", nfs.DF, "_", nfs.PT, "_")
|
||||||
if kit.IsIn(m.Option(mdb.TYPE), PORTAL) && m.Option(mdb.NAME) != html.CHROME || mdb.HashSelect(m.Spawn(), name).Length() > 0 ||
|
if kit.IsIn(m.Option(mdb.TYPE), PORTAL, aaa.LOGIN) && len(m.Option(mdb.NAME)) == 32 && kit.IsIn(mdb.HashSelects(m.Spawn(), name).Append(aaa.IP), "", m.Option(ice.MSG_USERIP)) {
|
||||||
!(IsLocalHost(m) || m.Option(TOKEN) != "" && m.Cmdv(TOKEN, m.Option(TOKEN), mdb.TIME) > m.Time()) {
|
|
||||||
|
} else if mdb.HashSelect(m.Spawn(), name).Length() > 0 || !(IsLocalHost(m) || m.Option(TOKEN) != "" && m.Cmdv(TOKEN, m.Option(TOKEN), mdb.TIME) > m.Time()) {
|
||||||
name, text = kit.Hashs(name), 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))
|
||||||
}
|
}
|
||||||
if kit.IsIn(m.Option(mdb.TYPE), WORKER, PORTAL) && tcp.IsLocalHost(m, m.Option(ice.MSG_USERIP)) {
|
if kit.IsIn(m.Option(mdb.TYPE), WORKER, PORTAL) && tcp.IsLocalHost(m, m.Option(ice.MSG_USERIP)) {
|
||||||
|
@ -36,39 +36,29 @@ func init() {
|
|||||||
} else if msg := m.Cmd(web.SPACE, m.Option(web.SPACE)); m.Warn(msg.Append(mdb.TYPE) != aaa.LOGIN, ice.ErrNotFound, m.Option(web.SPACE)) {
|
} else if msg := m.Cmd(web.SPACE, m.Option(web.SPACE)); m.Warn(msg.Append(mdb.TYPE) != aaa.LOGIN, ice.ErrNotFound, m.Option(web.SPACE)) {
|
||||||
return
|
return
|
||||||
} else {
|
} else {
|
||||||
if m.IsWeixinUA() {
|
kit.If(m.Option(ice.MSG_SESSID) == "" || m.Cmd(aaa.SESS, m.Option(ice.MSG_SESSID)).Length() == 0, func() { web.RenderCookie(m, aaa.SessCreate(m, m.Option(ice.MSG_USERNAME))) })
|
||||||
m.Options(ice.MSG_USERIP, msg.Append(aaa.IP), ice.MSG_USERUA, msg.Append(aaa.UA))
|
m.Option(ice.MSG_USERUA, msg.Append(aaa.UA))
|
||||||
m.Cmd(web.SPACE, m.Option(web.SPACE), ice.MSG_SESSID, aaa.SessCreate(m, m.Option(ice.MSG_USERNAME)))
|
if ls := kit.Split(m.Option(web.SPACE), nfs.PT); len(ls) > 1 {
|
||||||
m.Echo(ice.SUCCESS)
|
m.Option(ice.MSG_SESSID, m.Cmdx(web.SPACE, kit.Keys(kit.Slice(ls, 0, -1)), aaa.SESS, mdb.CREATE, m.Option(ice.MSG_USERNAME)))
|
||||||
} else {
|
} else {
|
||||||
kit.If(m.Option(ice.MSG_SESSID) == "", func() { web.RenderCookie(m, aaa.SessCreate(m, m.Option(ice.MSG_USERNAME))) })
|
aaa.SessCreate(m, m.Option(ice.MSG_USERNAME))
|
||||||
m.Option(ice.MSG_USERUA, msg.Append(ice.MSG_USERUA))
|
|
||||||
if ls := kit.Split(m.Option(web.SPACE), nfs.PT); len(ls) > 1 {
|
|
||||||
space := kit.Keys(kit.Slice(ls, 0, -1))
|
|
||||||
m.Option(ice.MSG_SESSID, m.Cmdx(web.SPACE, space, aaa.SESS, mdb.CREATE, m.Option(ice.MSG_USERNAME)))
|
|
||||||
m.ProcessLocation(web.MergeURL2(m, msg.Append(mdb.TEXT), ice.POD, space))
|
|
||||||
} else {
|
|
||||||
aaa.SessCreate(m, m.Option(ice.MSG_USERNAME))
|
|
||||||
m.ProcessLocation(web.MergeURL2(m, msg.Append(mdb.TEXT)))
|
|
||||||
}
|
|
||||||
m.Cmd(web.SPACE, m.Option(web.SPACE), ice.MSG_SESSID, m.Option(ice.MSG_SESSID))
|
|
||||||
}
|
}
|
||||||
|
m.Cmd(web.SPACE, m.Option(web.SPACE), ice.MSG_SESSID, m.Option(ice.MSG_SESSID))
|
||||||
|
m.ProcessLocation(web.MergeLink(m, msg.Append(mdb.TEXT)))
|
||||||
|
kit.If(m.IsWeixinUA(), func() { m.Echo(ice.SUCCESS) })
|
||||||
gdb.Event(m, web.SPACE_GRANT, m.OptionSimple(web.SPACE))
|
gdb.Event(m, web.SPACE_GRANT, m.OptionSimple(web.SPACE))
|
||||||
}
|
}
|
||||||
}},
|
}},
|
||||||
}, aaa.RoleAction(aaa.CONFIRM), gdb.EventsAction(web.SPACE_LOGIN)), Hand: func(m *ice.Message, arg ...string) {
|
}, aaa.RoleAction(aaa.CONFIRM), gdb.EventsAction(web.SPACE_LOGIN)), Hand: func(m *ice.Message, arg ...string) {
|
||||||
msg := m.Cmd(web.SPACE, m.Option(web.SPACE, arg[0]))
|
msg := m.Cmd(web.SPACE, m.Option(web.SPACE, arg[0]))
|
||||||
m.Option(tcp.HOSTNAME, ice.Info.Hostname)
|
m.Options(tcp.HOSTNAME, ice.Info.Hostname, nfs.PATH, msg.Append(mdb.TEXT))
|
||||||
m.Option(nfs.PATH, msg.Append(mdb.TEXT))
|
|
||||||
if !m.Warn(m.Option(nfs.PATH) == "", ice.ErrNotFound, arg[0]) {
|
if !m.Warn(m.Option(nfs.PATH) == "", ice.ErrNotFound, arg[0]) {
|
||||||
if m.IsWeixinUA() {
|
if m.EchoInfoButton(nfs.Template(m, "auth.html"), aaa.CONFIRM); m.IsWeixinUA() {
|
||||||
m.Push(aaa.IP, msg.Append(aaa.IP))
|
m.OptionFields(mdb.DETAIL)
|
||||||
m.Push(web.SPACE, arg[0])
|
m.Push(web.SPACE, arg[0])
|
||||||
|
m.Push(aaa.IP, msg.Append(aaa.IP))
|
||||||
|
m.Push(aaa.UA, msg.Append(aaa.UA))
|
||||||
m.PushAction(aaa.CONFIRM)
|
m.PushAction(aaa.CONFIRM)
|
||||||
} else {
|
|
||||||
m.Option(aaa.UA, msg.Append(aaa.UA))
|
|
||||||
m.Option(aaa.IP, msg.Append(aaa.IP))
|
|
||||||
m.Echo(nfs.Template(m, "auth.html"))
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}},
|
}},
|
||||||
|
@ -85,14 +85,13 @@ func init() {
|
|||||||
}
|
}
|
||||||
m.Echo(msg.Append(TICKET)).Status(msg.AppendSimple(EXPIRE))
|
m.Echo(msg.Append(TICKET)).Status(msg.AppendSimple(EXPIRE))
|
||||||
}},
|
}},
|
||||||
web.SSO: {Name: "sso name*=微信扫码 wifi env=release,trial,develop", Help: "登录", Hand: func(m *ice.Message, arg ...string) {
|
web.SSO: {Name: "sso name*=微信扫码 order=11 wifi env=release,trial,develop", Help: "登录", Hand: func(m *ice.Message, arg ...string) {
|
||||||
m.Cmd(web.CHAT_HEADER, mdb.CREATE, mdb.TYPE, mdb.PLUGIN, m.OptionSimple(mdb.NAME),
|
m.Cmd(web.CHAT_HEADER, mdb.CREATE, mdb.TYPE, mdb.PLUGIN, m.OptionSimple(mdb.NAME, mdb.ORDER),
|
||||||
ctx.INDEX, m.PrefixKey(), ctx.ARGS, kit.Join(kit.Simple(aaa.LOGIN, m.Option(ACCESS), m.Option(tcp.WIFI), m.Option(ENV))))
|
ctx.INDEX, m.PrefixKey(), ctx.ARGS, kit.Join(kit.Simple(aaa.LOGIN, m.Option(ACCESS), m.Option(tcp.WIFI), m.Option(ENV))))
|
||||||
}},
|
}},
|
||||||
aaa.LOGIN: {Hand: func(m *ice.Message, arg ...string) {
|
aaa.LOGIN: {Hand: func(m *ice.Message, arg ...string) {
|
||||||
if m.Cmd("", m.Option(ACCESS, arg[0])).Append(mdb.TYPE) == ice.WEB {
|
if m.Cmd("", m.Option(ACCESS, arg[0])).Append(mdb.TYPE) == ice.WEB {
|
||||||
m.Cmdy(SCAN, mdb.CREATE, mdb.TYPE, QR_STR_SCENE, mdb.NAME, m.Option(web.SPACE), mdb.TEXT, m.Option(web.SPACE),
|
m.Cmdy(SCAN, mdb.CREATE, mdb.TYPE, QR_STR_SCENE, mdb.NAME, "请授权登录", mdb.TEXT, m.Option(web.SPACE), ctx.INDEX, web.CHAT_GRANT, ctx.ARGS, m.Option(web.SPACE))
|
||||||
ctx.INDEX, web.CHAT_GRANT, ctx.ARGS, m.Option(web.SPACE))
|
|
||||||
} else {
|
} else {
|
||||||
h := m.Cmdx(IDE, mdb.CREATE, mdb.NAME, m.Option(web.SPACE), PAGES, PAGES_ACTION, tcp.WIFI, kit.Select("", arg, 1),
|
h := m.Cmdx(IDE, mdb.CREATE, mdb.NAME, m.Option(web.SPACE), PAGES, PAGES_ACTION, tcp.WIFI, kit.Select("", arg, 1),
|
||||||
ctx.INDEX, web.CHAT_GRANT, ctx.ARGS, kit.JoinQuery(m.OptionSimple(web.SPACE, log.DEBUG)...),
|
ctx.INDEX, web.CHAT_GRANT, ctx.ARGS, kit.JoinQuery(m.OptionSimple(web.SPACE, log.DEBUG)...),
|
||||||
|
@ -60,7 +60,8 @@ func init() {
|
|||||||
meta = path.Join("s", u.Host, scene)
|
meta = path.Join("s", u.Host, scene)
|
||||||
}
|
}
|
||||||
msg := spidePost(m, WXACODE_UNLIMIT, web.SPIDE_DATA, kit.Format(kit.Dict(
|
msg := spidePost(m, WXACODE_UNLIMIT, web.SPIDE_DATA, kit.Format(kit.Dict(
|
||||||
"env_version", m.Option(ENV), "page", info.Append(PAGES), SCENE, meta, IS_HYALINE, m.Option(IS_HYALINE) == ice.TRUE, html.WIDTH, 320,
|
"env_version", m.Option(ENV), "page", info.Append(PAGES), SCENE, meta, IS_HYALINE, m.Option(IS_HYALINE) == ice.TRUE,
|
||||||
|
html.WIDTH, kit.Int(kit.Select("360", "280", m.IsMobileUA())),
|
||||||
)))
|
)))
|
||||||
switch kit.Select("", kit.Split(msg.Option(html.ContentType), "; "), 0) {
|
switch kit.Select("", kit.Split(msg.Option(html.ContentType), "; "), 0) {
|
||||||
case web.IMAGE_JPEG:
|
case web.IMAGE_JPEG:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user