From 42d66bbd9434eb3b2a8ece52f2caaf360b670ef6 Mon Sep 17 00:00:00 2001 From: shaoying Date: Tue, 2 Jul 2019 20:40:43 +0800 Subject: [PATCH] add aaa.email --- Makefile | 1 + src/contexts/aaa/aaa.go | 21 +++++++++++++++++++++ src/contexts/cli/cli.go | 3 ++- src/contexts/cli/version.go | 2 +- src/contexts/web/web.go | 1 + usr/librarys/example.css | 4 ++++ 6 files changed, 30 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index ea41a43e..e272a732 100644 --- a/Makefile +++ b/Makefile @@ -9,6 +9,7 @@ install: @go get github.com/gomarkdown/markdown @go get github.com/PuerkitoBio/goquery @go get github.com/go-cas/cas + @go get github.com/gopkg.in/gomail.v2 GOPATH=$(PWD):$(GOPATH) go install $(BENCH) @date # bench web.code.counter nmake 1 diff --git a/src/contexts/aaa/aaa.go b/src/contexts/aaa/aaa.go index 95bb0afc..4a086078 100644 --- a/src/contexts/aaa/aaa.go +++ b/src/contexts/aaa/aaa.go @@ -1,6 +1,7 @@ package aaa import ( + "gopkg.in/gomail.v2" "contexts/ctx" "crypto" "crypto/aes" @@ -128,6 +129,11 @@ var Index = &ctx.Context{Name: "aaa", Help: "认证中心", }, Help: "散列"}, "expire": &ctx.Config{Name: "expire(s)", Value: "72000", Help: "会话超时"}, + "email": &ctx.Config{Name: "email", Value: map[string]interface{}{ + "self": "shylinux@163.com", + "smtp": "smtp.163.com", + "port": "25", + }, Help: "会话超时"}, }, Commands: map[string]*ctx.Command{ "_init": &ctx.Command{Name: "_init", Help: "数字摘要", Hand: func(m *ctx.Message, c *ctx.Context, key string, arg ...string) (e error) { @@ -712,6 +718,21 @@ var Index = &ctx.Context{Name: "aaa", Help: "认证中心", return }}, + "email": &ctx.Command{Name: "email", Help: "数字摘要", Hand: func(m *ctx.Message, c *ctx.Context, key string, arg ...string) (e error) { + msg := gomail.NewMessage() + msg.SetHeader("From", m.Conf("email", "self")) + msg.SetHeader("To", arg[0]) + msg.SetHeader("Subject", arg[1]) + msg.SetBody("text/html", strings.Join(arg[2:], "")) + d := gomail.NewDialer(m.Conf("email", "smtp"), kit.Int(m.Conf("email", "port")), m.Conf("email", "self"), m.Conf("email", "code")) + if e := d.DialAndSend(msg); e != nil { + m.Echo("%v", e) + } else { + m.Echo("success") + } + return + }}, + "relay": &ctx.Command{Name: "relay check hash | share role", Help: "授权", Hand: func(m *ctx.Message, c *ctx.Context, key string, arg ...string) (e error) { if len(arg) == 0 { // 会话列表 m.Cmdy("aaa.auth", "relay") diff --git a/src/contexts/cli/cli.go b/src/contexts/cli/cli.go index ab145891..34624ff3 100644 --- a/src/contexts/cli/cli.go +++ b/src/contexts/cli/cli.go @@ -146,6 +146,7 @@ var Index = &ctx.Context{Name: "cli", Help: "管理中心", "github.com/gomodule/redigo", "github.com/go-sql-driver/mysql", "github.com/gomarkdown/markdown", + "github.com/gopkg.in/gomail.v2", "github.com/skip2/go-qrcode", "github.com/PuerkitoBio/goquery", "github.com/go-cas/cas", @@ -762,7 +763,7 @@ var version = struct { m.Add("append", "status", "stop") } }) - m.Sort("status").Table() + m.Sort("you", "str_r").Sort("status").Table() return } diff --git a/src/contexts/cli/version.go b/src/contexts/cli/version.go index 4f7a09f1..a8237008 100644 --- a/src/contexts/cli/version.go +++ b/src/contexts/cli/version.go @@ -4,5 +4,5 @@ var version = struct { host string self int }{ - "2019-07-02 17:07:03", "ZYB-20190522USI", 84, + "2019-07-02 20:23:38", "ZYB-20190522USI", 85, } diff --git a/src/contexts/web/web.go b/src/contexts/web/web.go index b67f4223..ed56e67d 100644 --- a/src/contexts/web/web.go +++ b/src/contexts/web/web.go @@ -652,6 +652,7 @@ var Index = &ctx.Context{Name: "web", Help: "应用中心", res, e := web.Client.Do(req) if e != nil { m.Log("warn", "%v", e) + m.Echo("%v", e) return e } diff --git a/usr/librarys/example.css b/usr/librarys/example.css index 47be0a5e..e913b5d9 100644 --- a/usr/librarys/example.css +++ b/usr/librarys/example.css @@ -167,6 +167,10 @@ fieldset.Login>form.option button { height:28px; } +fieldset.item>div.output { + overflow:auto; +} + .hidden { display:none; }