move organization visibility from gitea to SDK and add it on CreateOptions (#165)
This commit is contained in:
parent
2858b80da5
commit
13a7bf625b
2 changed files with 63 additions and 12 deletions
|
@ -19,6 +19,7 @@ type Organization struct {
|
||||||
Description string `json:"description"`
|
Description string `json:"description"`
|
||||||
Website string `json:"website"`
|
Website string `json:"website"`
|
||||||
Location string `json:"location"`
|
Location string `json:"location"`
|
||||||
|
Visibility VisibleType `json:"visibility"`
|
||||||
}
|
}
|
||||||
|
|
||||||
// ListMyOrgs list all of current user's organizations
|
// ListMyOrgs list all of current user's organizations
|
||||||
|
@ -47,6 +48,7 @@ type CreateOrgOption struct {
|
||||||
Description string `json:"description"`
|
Description string `json:"description"`
|
||||||
Website string `json:"website"`
|
Website string `json:"website"`
|
||||||
Location string `json:"location"`
|
Location string `json:"location"`
|
||||||
|
Visibility VisibleType `json:"visibility"`
|
||||||
}
|
}
|
||||||
|
|
||||||
// EditOrgOption options for editing an organization
|
// EditOrgOption options for editing an organization
|
||||||
|
|
49
gitea/org_type.go
Normal file
49
gitea/org_type.go
Normal file
|
@ -0,0 +1,49 @@
|
||||||
|
// Copyright 2019 The Gitea 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 gitea
|
||||||
|
|
||||||
|
// VisibleType defines the visibility (Organization only)
|
||||||
|
type VisibleType int
|
||||||
|
|
||||||
|
const (
|
||||||
|
// VisibleTypePublic Visible for everyone
|
||||||
|
VisibleTypePublic VisibleType = iota
|
||||||
|
|
||||||
|
// VisibleTypeLimited Visible for every connected user
|
||||||
|
VisibleTypeLimited
|
||||||
|
|
||||||
|
// VisibleTypePrivate Visible only for organization's members
|
||||||
|
VisibleTypePrivate
|
||||||
|
)
|
||||||
|
|
||||||
|
// VisibilityModes is a map of org Visibility types
|
||||||
|
var VisibilityModes = map[string]VisibleType{
|
||||||
|
"public": VisibleTypePublic,
|
||||||
|
"limited": VisibleTypeLimited,
|
||||||
|
"private": VisibleTypePrivate,
|
||||||
|
}
|
||||||
|
|
||||||
|
// IsPublic returns true if VisibleType is public
|
||||||
|
func (vt VisibleType) IsPublic() bool {
|
||||||
|
return vt == VisibleTypePublic
|
||||||
|
}
|
||||||
|
|
||||||
|
// IsLimited returns true if VisibleType is limited
|
||||||
|
func (vt VisibleType) IsLimited() bool {
|
||||||
|
return vt == VisibleTypeLimited
|
||||||
|
}
|
||||||
|
|
||||||
|
// IsPrivate returns true if VisibleType is private
|
||||||
|
func (vt VisibleType) IsPrivate() bool {
|
||||||
|
return vt == VisibleTypePrivate
|
||||||
|
}
|
||||||
|
|
||||||
|
// ExtractKeysFromMapString provides a slice of keys from map
|
||||||
|
func ExtractKeysFromMapString(in map[string]VisibleType) (keys []string) {
|
||||||
|
for k := range in {
|
||||||
|
keys = append(keys, k)
|
||||||
|
}
|
||||||
|
return
|
||||||
|
}
|
Loading…
Reference in a new issue