diff options
author | Unknwon <u@gogs.io> | 2015-08-05 20:26:00 +0800 |
---|---|---|
committer | Unknwon <u@gogs.io> | 2015-08-05 20:26:00 +0800 |
commit | 2c507667bfd17f88dc4bfabc426c74cd5f8e4461 (patch) | |
tree | 31b267331f84d45a92f6a0bfe7eaafa124f4578f /modules | |
parent | 0705f55ce097b9892a7c4c11faa5396c4e557232 (diff) | |
parent | b9527cd1bfabcce3be62b43f0c199b1418519549 (diff) |
Merge branch 'develop' of github.com:gogits/gogs into feature/milestone
# Conflicts:
# gogs.go
# models/issue.go
# templates/.VERSION
Diffstat (limited to 'modules')
-rw-r--r-- | modules/auth/auth.go | 6 | ||||
-rw-r--r-- | modules/auth/org.go | 2 | ||||
-rw-r--r-- | modules/middleware/org.go | 2 | ||||
-rw-r--r-- | modules/middleware/repo.go | 18 |
4 files changed, 21 insertions, 7 deletions
diff --git a/modules/auth/auth.go b/modules/auth/auth.go index 155a8272..7e01abc3 100644 --- a/modules/auth/auth.go +++ b/modules/auth/auth.go @@ -55,7 +55,7 @@ func SignedInId(req *http.Request, sess session.Store) int64 { } if id, ok := uid.(int64); ok { if _, err := models.GetUserById(id); err != nil { - if err != models.ErrUserNotExist { + if !models.IsErrUserNotExist(err) { log.Error(4, "GetUserById: %v", err) } return 0 @@ -80,7 +80,7 @@ func SignedInUser(req *http.Request, sess session.Store) (*models.User, bool) { if len(webAuthUser) > 0 { u, err := models.GetUserByName(webAuthUser) if err != nil { - if err != models.ErrUserNotExist { + if !models.IsErrUserNotExist(err) { log.Error(4, "GetUserByName: %v", err) return nil, false } @@ -115,7 +115,7 @@ func SignedInUser(req *http.Request, sess session.Store) (*models.User, bool) { u, err := models.UserSignIn(uname, passwd) if err != nil { - if err != models.ErrUserNotExist { + if !models.IsErrUserNotExist(err) { log.Error(4, "UserSignIn: %v", err) } return nil, false diff --git a/modules/auth/org.go b/modules/auth/org.go index 3e6c55c1..0dfab951 100644 --- a/modules/auth/org.go +++ b/modules/auth/org.go @@ -26,7 +26,7 @@ func (f *CreateOrgForm) Validate(ctx *macaron.Context, errs binding.Errors) bind } type UpdateOrgSettingForm struct { - OrgUserName string `form:"uname" binding:"Required;MaxSize(35)"` + OrgUserName string `form:"uname" binding:"Required;AlphaDashDot;MaxSize(30)" locale:"org.org_name_holder"` OrgFullName string `form:"fullname" binding:"MaxSize(100)"` Email string `form:"email" binding:"Required;Email;MaxSize(50)"` Description string `form:"desc" binding:"MaxSize(255)"` diff --git a/modules/middleware/org.go b/modules/middleware/org.go index 1ac4bcf1..065e1b1e 100644 --- a/modules/middleware/org.go +++ b/modules/middleware/org.go @@ -34,7 +34,7 @@ func OrgAssignment(redirect bool, args ...bool) macaron.Handler { var err error ctx.Org.Organization, err = models.GetUserByName(orgName) if err != nil { - if err == models.ErrUserNotExist { + if models.IsErrUserNotExist(err) { ctx.Handle(404, "GetUserByName", err) } else if redirect { log.Error(4, "GetUserByName", err) diff --git a/modules/middleware/repo.go b/modules/middleware/repo.go index de0d7829..12164632 100644 --- a/modules/middleware/repo.go +++ b/modules/middleware/repo.go @@ -10,6 +10,8 @@ import ( "strings" "github.com/Unknwon/macaron" + "github.com/mcuadros/go-version" + "github.com/mssola/user_agent" "github.com/gogits/gogs/models" "github.com/gogits/gogs/modules/base" @@ -18,6 +20,11 @@ import ( "github.com/gogits/gogs/modules/setting" ) +const ( + FIREFOX_COPY_SUPPORT = "41.0" + CHROME_COPY_SUPPORT = "43.0.2356" +) + func ApiRepoAssignment() macaron.Handler { return func(ctx *Context) { userName := ctx.Params(":username") @@ -34,7 +41,7 @@ func ApiRepoAssignment() macaron.Handler { } else { u, err = models.GetUserByName(userName) if err != nil { - if err == models.ErrUserNotExist { + if models.IsErrUserNotExist(err) { ctx.Error(404) } else { ctx.JSON(500, &base.ApiJsonErr{"GetUserByName: " + err.Error(), base.DOC_URL}) @@ -210,7 +217,7 @@ func RepoAssignment(redirect bool, args ...bool) macaron.Handler { } else { u, err = models.GetUserByName(userName) if err != nil { - if err == models.ErrUserNotExist { + if models.IsErrUserNotExist(err) { ctx.Handle(404, "GetUserByName", err) } else { ctx.Handle(500, "GetUserByName", err) @@ -345,6 +352,13 @@ func RepoAssignment(redirect bool, args ...bool) macaron.Handler { ctx.Data["BranchName"] = ctx.Repo.BranchName ctx.Data["CommitId"] = ctx.Repo.CommitId + + userAgent := ctx.Req.Header.Get("User-Agent") + ua := user_agent.New(userAgent) + browserName, browserVer := ua.Browser() + + ctx.Data["BrowserSupportsCopy"] = (browserName == "Chrome" && version.Compare(browserVer, CHROME_COPY_SUPPORT, ">=")) || + (browserName == "Firefox" && version.Compare(browserVer, FIREFOX_COPY_SUPPORT, ">=")) } } |