/// <summary> /// Creates a new <see cref="MenuItemDefinition" /> object. /// </summary> public MenuItemDefinition( string name, ILocalizableString displayName, string icon = null, string url = null, bool requiresAuthentication = false, string requiredPermissionName = null, IPermissionDependency permissionDependency = null, int order = 0, object customData = null, IFeatureDependency featureDependency = null, string target = null, bool isEnabled = true, bool isVisible = true) { Check.NotNull(name, nameof(name)); Check.NotNull(displayName, nameof(displayName)); Name = name; DisplayName = displayName; Icon = icon; Url = url; RequiresAuthentication = requiresAuthentication; RequiredPermissionName = requiredPermissionName; PermissionDependency = permissionDependency; Order = order; CustomData = customData; FeatureDependency = featureDependency; Target = target; IsEnabled = isEnabled; IsVisible = isVisible; Items = new List <MenuItemDefinition>(); }
public AddressMapViewModel(IMvxNavigationService navigationService, IConnection connection, IMvxMessenger messenger, IPermissionDependency permissionDependency, IGoogleMapsApiService googleMapsApiService, IGoogleMapTableAccess googleMapTableAccess, IQuickMessageDependency quickMessageDependency) { _navigationService = navigationService; _connection = connection; _messenger = messenger; _permissionDependency = permissionDependency; _googleMapsApiService = googleMapsApiService; _googleMapTableAccess = googleMapTableAccess; _quickMessageDependency = quickMessageDependency; Title = "Address Book"; Init(); _token = _messenger.Subscribe <AddressResult>((addr) => { try { if (addr != null) { if (!AddedAddresses.Any(x => x.PlaceId == addr.Address.PlaceId)) { _googleMapTableAccess.Insert(addr.Address); AddedAddresses.Add(addr.Address); ExecuteSelect(addr.Address); } } } catch (Exception ex) { _quickMessageDependency.ShowToastMessage(ex.Message); } }); }
/// <param name="name"></param> /// <param name="displayName"></param> /// <param name="icon"></param> /// <param name="url"></param> /// <param name="requiresAuthentication"></param> /// <param name="PermissionNames">This parameter is obsolete. Use <paramref name="permissionDependency"/> instead!</param> /// <param name="order"></param> /// <param name="customData"></param> /// <param name="featureDependency"></param> /// <param name="target"></param> /// <param name="isEnabled"></param> /// <param name="isVisible"></param> /// <param name="permissionDependency"></param> public NavigationItemDefinition( string name, ILocalizableString displayName, // string url = null, bool requiresAuthentication = false, Permission[] permissionNames = null, object customData = null, // IFeatureDependency featureDependency = null, // bool isEnabled = true, bool isVisible = true, IPermissionDependency permissionDependency = null ) { Check.NotNull(name, nameof(name)); Check.NotNull(displayName, nameof(displayName)); Name = name; DisplayName = displayName; RequiresAuthentication = requiresAuthentication; HasPermissions = permissionNames; // RequiredPermissionName = HasPermissions; CustomData = customData; // FeatureDependency = featureDependency; // IsEnabled = isEnabled; IsVisible = isVisible; // PermissionDependency = permissionDependency; // Items = new List<INavigationItemDefinition>(); }
/// <summary> /// 构造函数 /// </summary> /// <param name="name">唯一名称.</param> /// <param name="entityType">类型.</param> /// <param name="displayName">显示名称.</param> /// <param name="description">描述</param> /// <param name="permissionDependency">权限依赖关系。 如果满足该依赖关系,则该通知将可供用户使用。.</param> /// <param name="featureDependency">A feature dependency. This notification will be available to a tenant if this feature is enabled.</param> public NotificationDefinition(string name, Type entityType = null, ILocalizableString displayName = null, ILocalizableString description = null, IPermissionDependency permissionDependency = null, IFeatureDependency featureDependency = null) { if (string.IsNullOrWhiteSpace(name)) { throw new ArgumentNullException("name", "name can not be null, empty or whitespace!"); } Name = name; EntityType = entityType; DisplayName = displayName; Description = description; PermissionDependency = permissionDependency; FeatureDependency = featureDependency; Attributes = new Dictionary <string, object>(); }
/// <summary> /// Initializes a new instance of the <see cref="NotificationDefinition"/> class. /// </summary> /// <param name="name">Unique name of the notification.</param> /// <param name="entityType">Related entity type with this notification (optional).</param> /// <param name="displayName">Display name of the notification.</param> /// <param name="description">Description for the notification</param> /// <param name="permissionDependency">A permission dependency. This notification will be available to a user if this dependency is satisfied.</param> /// <param name="featureDependency">A feature dependency. This notification will be available to a tenant if this feature is enabled.</param> public NotificationDefinition(string name, Type entityType = null, ILocalizableString displayName = null, ILocalizableString description = null, IPermissionDependency permissionDependency = null, IFeatureDependency featureDependency = null) { if (string.IsNullOrWhiteSpace(name)) { throw new ArgumentNullException("name", "name can not be null, empty or whitespace!"); } Name = name; EntityType = entityType; DisplayName = displayName; Description = description; PermissionDependency = permissionDependency; FeatureDependency = featureDependency; Attributes = new Dictionary<string, object>(); }
public static Permission Create(string name, string navigation, string type, string resourceKey, ILocalizableString displayName, IPermissionDependency permissionDependency = null) { Permission p = new Permission { Name = name, Navigation = navigation, Type = type, ResourceKey = resourceKey, DisplayName = displayName, }; var pDependency = permissionDependency != null ? permissionDependency : new DefaultPermissionDependency(p); p.PermissionDependency = pDependency; return(p); }
public RequiresPermissionSettingClientVisibilityProvider(IPermissionDependency permissionDependency) { _permissionDependency = permissionDependency; }
/// <summary> /// Checks if permission dependency is satisfied. /// </summary> /// <param name="permissionDependency">The permission dependency</param> /// <param name="context">Context.</param> public static bool IsSatisfied(this IPermissionDependency permissionDependency, IPermissionDependencyContext context) { return(AsyncHelper.RunSync(() => permissionDependency.IsSatisfiedAsync(context))); }