feature: custom details first-class

custom details (such as those from the UserDetails plugin) can now be more deeply integrated throughtout the system
This commit is contained in:
Gary Sharp
2021-02-07 18:15:52 +11:00
parent e11d0871c4
commit 3e57af394d
41 changed files with 2700 additions and 1279 deletions
+6
View File
@@ -4,6 +4,7 @@ using Disco.Services;
using Disco.Services.Authorization;
using Disco.Services.Authorization.Roles;
using Disco.Services.Interop.ActiveDirectory;
using Disco.Services.Plugins.Features.DetailsProvider;
using Disco.Services.Plugins.Features.UIExtension;
using Disco.Services.Users;
using Disco.Services.Users.UserFlags;
@@ -56,10 +57,12 @@ namespace Disco.Web.Controllers
.Include("DeviceUserAssignments.Device.DeviceModel")
.Include("DeviceUserAssignments.Device.DeviceProfile")
.Include("DeviceUserAssignments.Device.DeviceBatch")
.Include("DeviceUserAssignments.Device.DeviceDetails")
.Include("UserAttachments.TechUser")
.Include("UserAttachments.DocumentTemplate")
.Include("UserFlagAssignments.AddedUser")
.Include("UserFlagAssignments.RemovedUser")
.Include("UserDetails")
.FirstOrDefault(um => um.UserId == id);
if (m.User == null)
@@ -110,6 +113,9 @@ namespace Disco.Web.Controllers
m.DocumentTemplatePackages = m.User.AvailableDocumentTemplatePackages(Database, UserService.CurrentUser);
}
// Populate Custom Details
m.PopulateDetails(Database);
// UI Extensions
UIExtensions.ExecuteExtensions<UserShowModel>(this.ControllerContext, m);