public FileInfo(File file, ActionList actions) { this.Name = new Link(UiFormConstants.FileUrl(file.Id), file.Name); this.CreatedOn = file.CreatedOn; this.FileExtension = file.Extension; this.Preview = GetPreviewImage(file); this.Actions = actions; this.Size = new FileSize(file.Size); }
protected override Response Handle(Request message) { var query = this.userManager.Users .Include(t => t.Roles) .ThenInclude(t => t.Role) .AsNoTracking(); if (!string.IsNullOrEmpty(message.Email?.Value)) { query = query.Where(u => u.Email.Contains(message.Email.Value)); } if (!string.IsNullOrEmpty(message.Name)) { query = query.Where(u => u.UserName.Contains(message.Name)); } if (message.Id != null) { query = query.Where(u => u.Id.Equals(message.Id)); } if (message.Roles?.Items?.Count > 0) { query = query.Where(u => u.Roles.Any(t => message.Roles.Items.Contains(t.Role.Name))); } if (message.Activation != null) { query = message.Activation.Value == UserActivation.Active ? query.Where(u => u.DateActivated.HasValue) : query.Where(u => !u.DateActivated.HasValue); } var result = query .OrderBy(t => t.Id) .Paginate(t => new Item(t, this), message.Paginator); return(new Response { Users = result, Actions = this.permissionManager.CanAccess <AddUser>() ? new ActionList(AddUser.Button()) : null, ExportToExcel = UiFormConstants.ExportToExcelLink(typeof(ManageUsers).GetFormId(), nameof(Response.Users), message) }); }
public override IEnumerable <MenuItem> GetDynamicMenuItems() { if (this.userSecurityContext.CanAccess(typeof(MyNotifications))) { //var notificationCount = this.context.Notifications // .Count(t => t.ReadOn == null && t.ArchivedOn == null); var count = new Random().Next(1, 100); yield return(MyNotifications .Button($"<i class='far fa-bell' title='Notifications'></i>{UiFormConstants.CounterForTopMenu(count)}") .AsMenuItem(Notifications)); } }
internal static Image GetPreviewImage(File a) { return(a.Name.IsImageFilename() ? new Image(UiFormConstants.FileUrl(a.Id)) : null); }