Documentation
¶
Index ¶
- Constants
- func SetCurrentAuthUser(u *AuthUser, r *http.Request) (modified *http.Request)
- func SetCurrentUser(u *User, r *http.Request) (modified *http.Request)
- type AuthProvider
- type AuthUser
- type AuthUserApi
- type AuthUserManager
- type AuthUserProvider
- type Group
- type Groups
- func (g Groups) Append(groups ...Group) (modified Groups)
- func (g Groups) AppendString(names ...string) (modified Groups)
- func (g Groups) AsNewlines() (newlines string)
- func (g Groups) Has(group Group) (present bool)
- func (g Groups) Len() int
- func (g Groups) Remove(groups ...Group) (modified Groups)
- func (g Groups) String() (s string)
- type GroupsManager
- type GroupsProvider
- type Manager
- type SecretsProvider
- type User
- type UserActionsProvider
- type UserManager
- type UserProvider
- type UsersManager
Constants ¶
View Source
const ( UserSignupSignal signaling.Signal = "user-signup" UserLoginSignal signaling.Signal = "user-login" UserLoadedSignal signaling.Signal = "user-loaded" )
View Source
const CurrentAuthUserKey beContext.RequestKey = "current-auth-user"
View Source
const CurrentUserKey beContext.RequestKey = "current-user"
Variables ¶
This section is empty.
Functions ¶
func SetCurrentAuthUser ¶ added in v0.2.0
Types ¶
type AuthProvider ¶
type AuthUser ¶ added in v0.2.0
type AuthUser struct {
RID string `json:"real-id"`
EID string `json:"enjin-id"`
Name string `json:"name"`
Email string `json:"email"`
Image string `json:"image"`
Origin string `json:"origin"`
Context beContext.Context `json:"context"`
}
func GetCurrentAuthUser ¶ added in v0.2.0
type AuthUserApi ¶ added in v0.2.0
type AuthUserManager ¶ added in v0.2.0
type AuthUserManager interface {
// NewAuthUser constructs a new AuthUser instance and saves it to the
// userbase
NewAuthUser(rid, name, email, picture, audience string, attributes map[string]interface{}) (user *AuthUser, err error)
// SetAuthUser writes the given User to the system
SetAuthUser(user *AuthUser) (err error)
// RemoveAuthUser deletes a user from the system
RemoveAuthUser(eid string) (err error)
}
type AuthUserProvider ¶ added in v0.2.0
type Groups ¶ added in v0.2.0
type Groups []Group
Groups are the collection of one or more groups
func NewGroupsFromStringNL ¶ added in v0.2.0
func NewGroupsFromStrings ¶ added in v0.2.0
func (Groups) AppendString ¶ added in v0.2.0
func (Groups) AsNewlines ¶ added in v0.2.0
type GroupsManager ¶ added in v0.2.0
type GroupsManager interface {
// GetGroupActions returns the list of actions associated with group
GetGroupActions(group Group) (actions feature.Actions)
// UpdateGroup appends the given actions to the group, creating the group
// if non exists
UpdateGroup(group Group, actions ...feature.Action) (err error)
// RemoveGroup deletes the given group from the system. Does not delete any
// fallback groups
RemoveGroup(group Group) (err error)
// AddUserToGroup adds a user to the list of groups given
AddUserToGroup(eid string, groups ...Group) (err error)
// RemoveUserFromGroup removes a user from each of the given groups
RemoveUserFromGroup(eid string, groups ...Group) (err error)
}
type GroupsProvider ¶
type Manager ¶ added in v0.2.0
type Manager interface {
AuthUserProvider
AuthUserManager
UserProvider
UserManager
GroupsProvider
GroupsManager
}
type SecretsProvider ¶
type User ¶
type User struct {
page.CPage
AuthUser
Origin string `json:"origin"`
Groups Groups `json:"-"`
Actions feature.Actions `json:"-"`
}
func GetCurrentUser ¶
func NewUserFromPageMatter ¶ added in v0.2.0
func NewUserFromPageMatter(user *AuthUser, pm *matter.PageMatter, formats feature.PageFormatProvider, enjin beContext.Context) (u *User, err error)
type UserActionsProvider ¶ added in v0.2.0
type UserManager ¶ added in v0.2.0
type UserManager interface {
// NewUser constructs a new User instance and adds it to the userbase
NewUser(au *AuthUser) (user *User, err error)
// SetUser writes the given User to the system
SetUser(user *User) (err error)
// RemoveUser deletes a user from the system
RemoveUser(eid string) (err error)
}
type UserProvider ¶ added in v0.2.0
type UsersManager ¶ added in v0.2.0
type UsersManager interface {
UserProvider
UserManager
}
Click to show internal directories.
Click to hide internal directories.