diff --git a/models/oauth2.go b/models/oauth2.go index e50d4039..c5d58c07 100644 --- a/models/oauth2.go +++ b/models/oauth2.go @@ -6,8 +6,6 @@ package models import ( "errors" - - "github.com/gogits/gogs/modules/log" ) // OT: Oauth2 Type @@ -20,7 +18,6 @@ const ( var ( ErrOauth2RecordNotExists = errors.New("not exists oauth2 record") ErrOauth2NotAssociatedWithUser = errors.New("not associated with user") - ErrOauth2NotExist = errors.New("not exist oauth2") ) type Oauth2 struct { @@ -61,12 +58,11 @@ func GetOauth2(identity string) (oa *Oauth2, err error) { func GetOauth2ById(id int64) (oa *Oauth2, err error) { oa = new(Oauth2) has, err := orm.Id(id).Get(oa) - log.Info("oa: %v", oa) if err != nil { return nil, err } if !has { - return nil, ErrOauth2NotExist + return nil, ErrOauth2RecordNotExists } return oa, nil } diff --git a/routers/user/social.go b/routers/user/social.go index 8568bc2a..3e5f69be 100644 --- a/routers/user/social.go +++ b/routers/user/social.go @@ -17,7 +17,6 @@ import ( "github.com/gogits/gogs/modules/base" "github.com/gogits/gogs/modules/log" "github.com/gogits/gogs/modules/middleware" - "github.com/gogits/gogs/modules/oauth2" ) type SocialConnector interface { @@ -77,7 +76,10 @@ func extractPath(next string) string { } // github && google && ... -func SocialSignIn(ctx *middleware.Context, tokens oauth2.Tokens) { +func SocialSignIn(ctx *middleware.Context) { + //if base.OauthService != nil && base.OauthService.GitHub.Enabled { + //} + var socid int64 var ok bool next := extractPath(ctx.Query("next")) @@ -142,9 +144,9 @@ func SocialSignIn(ctx *middleware.Context, tokens oauth2.Tokens) { return } case models.ErrOauth2NotAssociatedWithUser: + ctx.Session.Set("socialId", oa.Id) ctx.Session.Set("socialName", soc.Name()) ctx.Session.Set("socialEmail", soc.Email()) - ctx.Session.Set("socialId", oa.Id) ctx.Redirect("/user/sign_up") return default: diff --git a/routers/user/user.go b/routers/user/user.go index 253ab7be..8585267a 100644 --- a/routers/user/user.go +++ b/routers/user/user.go @@ -82,7 +82,6 @@ func SignIn(ctx *middleware.Context) { ctx.Data["OauthGitHubEnabled"] = base.OauthService.GitHub.Enabled } - var user *models.User // Check auto-login. userName := ctx.GetCookie(base.CookieUserName) if len(userName) == 0 { @@ -91,7 +90,6 @@ func SignIn(ctx *middleware.Context) { } isSucceed := false - var err error defer func() { if !isSucceed { log.Trace("%s auto-login cookie cleared: %s", ctx.Req.RequestURI, userName) @@ -101,7 +99,7 @@ func SignIn(ctx *middleware.Context) { } }() - user, err = models.GetUserByName(userName) + user, err := models.GetUserByName(userName) if err != nil { ctx.HTML(500, "user/signin") return @@ -181,6 +179,8 @@ func SignOut(ctx *middleware.Context) { ctx.Session.Delete("userId") ctx.Session.Delete("userName") ctx.Session.Delete("socialId") + ctx.Session.Delete("socialName") + ctx.Session.Delete("socialEmail") ctx.SetCookie(base.CookieUserName, "", -1) ctx.SetCookie(base.CookieRememberName, "", -1) ctx.Redirect("/") diff --git a/templates/user/signin.tmpl b/templates/user/signin.tmpl index a06e3ca8..6ccad79e 100644 --- a/templates/user/signin.tmpl +++ b/templates/user/signin.tmpl @@ -3,7 +3,15 @@