diff options
author | Unknwon <u@gogs.io> | 2016-03-11 11:56:52 -0500 |
---|---|---|
committer | Unknwon <u@gogs.io> | 2016-03-11 11:56:52 -0500 |
commit | 514382e2ebfe6869268aeb919c1fa4d224687e13 (patch) | |
tree | 1aa8c4b3b1e771a5dc6f0bdd74567961570efcaa /modules/middleware/org.go | |
parent | cb1eadc2768ea5ffb2967eb4262e96730c3f9ba5 (diff) | |
download | gitea-514382e2ebfe6869268aeb919c1fa4d224687e13.tar.gz gitea-514382e2ebfe6869268aeb919c1fa4d224687e13.zip |
Rename module: middleware -> context
Diffstat (limited to 'modules/middleware/org.go')
-rw-r--r-- | modules/middleware/org.go | 141 |
1 files changed, 0 insertions, 141 deletions
diff --git a/modules/middleware/org.go b/modules/middleware/org.go deleted file mode 100644 index eec2b556fd..0000000000 --- a/modules/middleware/org.go +++ /dev/null @@ -1,141 +0,0 @@ -// Copyright 2014 The Gogs Authors. All rights reserved. -// Use of this source code is governed by a MIT-style -// license that can be found in the LICENSE file. - -package middleware - -import ( - "strings" - - "gopkg.in/macaron.v1" - - "github.com/gogits/gogs/models" - "github.com/gogits/gogs/modules/setting" -) - -func HandleOrgAssignment(ctx *Context, args ...bool) { - var ( - requireMember bool - requireOwner bool - requireTeamMember bool - requireTeamAdmin bool - ) - if len(args) >= 1 { - requireMember = args[0] - } - if len(args) >= 2 { - requireOwner = args[1] - } - if len(args) >= 3 { - requireTeamMember = args[2] - } - if len(args) >= 4 { - requireTeamAdmin = args[3] - } - - orgName := ctx.Params(":org") - - var err error - ctx.Org.Organization, err = models.GetUserByName(orgName) - if err != nil { - if models.IsErrUserNotExist(err) { - ctx.Handle(404, "GetUserByName", err) - } else { - ctx.Handle(500, "GetUserByName", err) - } - return - } - org := ctx.Org.Organization - ctx.Data["Org"] = org - - // Force redirection when username is actually a user. - if !org.IsOrganization() { - ctx.Redirect("/" + org.Name) - return - } - - // Admin has super access. - if ctx.IsSigned && ctx.User.IsAdmin { - ctx.Org.IsOwner = true - ctx.Org.IsMember = true - ctx.Org.IsTeamMember = true - ctx.Org.IsTeamAdmin = true - } else if ctx.IsSigned { - ctx.Org.IsOwner = org.IsOwnedBy(ctx.User.Id) - if ctx.Org.IsOwner { - ctx.Org.IsMember = true - ctx.Org.IsTeamMember = true - ctx.Org.IsTeamAdmin = true - } else { - if org.IsOrgMember(ctx.User.Id) { - ctx.Org.IsMember = true - } - } - } else { - // Fake data. - ctx.Data["SignedUser"] = &models.User{} - } - if (requireMember && !ctx.Org.IsMember) || - (requireOwner && !ctx.Org.IsOwner) { - ctx.Handle(404, "OrgAssignment", err) - return - } - ctx.Data["IsOrganizationOwner"] = ctx.Org.IsOwner - ctx.Data["IsOrganizationMember"] = ctx.Org.IsMember - - ctx.Org.OrgLink = setting.AppSubUrl + "/org/" + org.Name - ctx.Data["OrgLink"] = ctx.Org.OrgLink - - // Team. - if ctx.Org.IsMember { - if ctx.Org.IsOwner { - if err := org.GetTeams(); err != nil { - ctx.Handle(500, "GetTeams", err) - return - } - } else { - if err := org.GetUserTeams(ctx.User.Id); err != nil { - ctx.Handle(500, "GetUserTeams", err) - return - } - } - } - - teamName := ctx.Params(":team") - if len(teamName) > 0 { - teamExists := false - for _, team := range org.Teams { - if team.LowerName == strings.ToLower(teamName) { - teamExists = true - ctx.Org.Team = team - ctx.Org.IsTeamMember = true - ctx.Data["Team"] = ctx.Org.Team - break - } - } - - if !teamExists { - ctx.Handle(404, "OrgAssignment", err) - return - } - - ctx.Data["IsTeamMember"] = ctx.Org.IsTeamMember - if requireTeamMember && !ctx.Org.IsTeamMember { - ctx.Handle(404, "OrgAssignment", err) - return - } - - ctx.Org.IsTeamAdmin = ctx.Org.Team.IsOwnerTeam() || ctx.Org.Team.Authorize >= models.ACCESS_MODE_ADMIN - ctx.Data["IsTeamAdmin"] = ctx.Org.IsTeamAdmin - if requireTeamAdmin && !ctx.Org.IsTeamAdmin { - ctx.Handle(404, "OrgAssignment", err) - return - } - } -} - -func OrgAssignment(args ...bool) macaron.Handler { - return func(ctx *Context) { - HandleOrgAssignment(ctx, args...) - } -} |