Class DualPermissions
A dual-permissions object handles two sets of permissions: users and managers. Permissions are set by managers, and users cannot change permissions.
Inheritance
System.Object
DualPermissions
Implements
System.ComponentModel.INotifyPropertyChanged
Assembly: Eco.Gameplay.dll
Syntax
public class DualPermissions : Object, INotifyPropertyChanged, IHasClientControlledContainers, IController, IViewController, IHasUniversalID, IRPCAuthChecks, IThreadSafeSubscriptions, ISubscriptions<ThreadSafeSubscriptions>, ISubscriptions
Constructors
DualPermissions()
Declaration
Fields
ManagerSetChangedEvent
Declaration
public ThreadSafeAction<IEnumerable<User>> ManagerSetChangedEvent
Field Value
OnTryAdd
Declaration
public Func<Player, IAlias, PermissionsType, bool> OnTryAdd
Field Value
OnTryRemove
Declaration
public Func<Player, IAlias, PermissionsType, bool> OnTryRemove
Field Value
OnTrySet
Declaration
public Func<Player, IEnumerable<IAlias>, bool> OnTrySet
Field Value
Type |
Description |
System.Func<Player, System.Collections.Generic.IEnumerable<IAlias>, System.Boolean> |
|
PermissionsChangedEvent
Declaration
public ThreadSafeAction PermissionsChangedEvent
Field Value
UserSetChangedEvent
Declaration
public ThreadSafeAction<IEnumerable<User>> UserSetChangedEvent
Field Value
Properties
AllAliases
Declaration
public IEnumerable<IAlias> AllAliases { get; }
Property Value
Type |
Description |
System.Collections.Generic.IEnumerable<IAlias> |
|
AllManagers
Declaration
public IEnumerable<User> AllManagers { get; }
Property Value
Type |
Description |
System.Collections.Generic.IEnumerable<User> |
|
AllNormalUsers
Declaration
public IEnumerable<User> AllNormalUsers { get; }
Property Value
Type |
Description |
System.Collections.Generic.IEnumerable<User> |
|
AllUsers
Declaration
public IEnumerable<User> AllUsers { get; }
Property Value
Type |
Description |
System.Collections.Generic.IEnumerable<User> |
|
ControllerID
Declaration
public ref int ControllerID { get; }
Property Value
Type |
Description |
System.Int32 |
|
ManagerSet
Declaration
[ClientCanSelectAndAdd("Select Managers", "Manager", "Managers", true)]
public ControllerAliasSet ManagerSet { get; set; }
Property Value
Subscriptions
Declaration
public ref ThreadSafeSubscriptions Subscriptions { get; }
Property Value
UserSet
Declaration
[ClientCanSelectAndAdd("Select Users", "User", "user", true)]
public ControllerAliasSet UserSet { get; set; }
Property Value
Methods
AccessType(Player)
Declaration
public AccountAccess AccessType(Player player)
Parameters
Type |
Name |
Description |
Player |
player |
|
Returns
AccessType(User)
Declaration
public AccountAccess AccessType(User user)
Parameters
Type |
Name |
Description |
User |
user |
|
Returns
CanAccess(IAlias, AccountAccess, Boolean)
Declaration
public bool CanAccess(IAlias alias, AccountAccess access, bool sendNoticeOnFail = false)
Parameters
Returns
Type |
Description |
System.Boolean |
|
Destroyed()
Declaration
Initialize(LocString, LocString, Func<LocString>)
Declaration
public virtual void Initialize(LocString managementTitle, LocString userTitle, Func<LocString> markedUpName)
Parameters
InList(User, AccountAccess)
Declaration
public bool InList(User user, AccountAccess access)
Parameters
Returns
Type |
Description |
System.Boolean |
|
VerifyCanAdd(Player, IClientControlledContainer, Object)
Declaration
public bool VerifyCanAdd(Player player, IClientControlledContainer container, object obj)
Parameters
Returns
Type |
Description |
System.Boolean |
|
VerifyCanRemove(Player, IClientControlledContainer, Object)
Declaration
public Task<Result> VerifyCanRemove(Player player, IClientControlledContainer container, object obj)
Parameters
Returns
Type |
Description |
System.Threading.Tasks.Task<Result> |
|
VerifyNewSetIsValid(Player, IClientControlledContainer, IEnumerable<Object>)
Verify if the player and the new set can be set to the container.
Declaration
public Task<Result> VerifyNewSetIsValid(Player player, IClientControlledContainer container, IEnumerable<object> newSet)
Parameters
Returns
Type |
Description |
System.Threading.Tasks.Task<Result> |
|
Events
PropertyChanged
Declaration
public event PropertyChangedEventHandler PropertyChanged
Event Type
Type |
Description |
System.ComponentModel.PropertyChangedEventHandler |
|
Implements
System.ComponentModel.INotifyPropertyChanged
Extension Methods