@model Disco.Web.Models.Device.ShowModel @using Disco.Services.Devices.DeviceFlags; @{ var flagAssignments = Model.Device.DeviceFlagAssignments.Select(a => Tuple.Create(a, DeviceFlagService.GetDeviceFlag(a.DeviceFlagId))).Where(a => a.Item2.permission.CanShow()).ToList(); var activeAssignmentCount = flagAssignments.Count(a => !a.Item1.RemovedDate.HasValue); }
@if (flagAssignments.Count > 0) { @foreach (var fa in flagAssignments.OrderByDescending(a => a.Item1.AddedDate)) { }
Name Added Comments Removed
@if (Authorization.Has(Claims.Config.DeviceFlag.Show)) { @Html.ActionLink(fa.Item2.flag.Name, MVC.Config.DeviceFlag.Index(fa.Item2.flag.Id)) } else { @fa.Item2.flag.Name } @CommonHelpers.FriendlyDateAndUser(fa.Item1.AddedDate, fa.Item1.AddedUser) @if (fa.Item1.OnAssignmentExpressionResult != null) {
@fa.Item1.OnAssignmentExpressionResult
}
@if (fa.Item2.permission.CanEdit()) {
} @if (fa.Item1.Comments == null) {
[no comments]
} else {
@fa.Item1.Comments.ToHtmlComment()
@fa.Item1.Comments
}
@if (fa.Item1.RemovedDate.HasValue) { @CommonHelpers.FriendlyDateAndUser(fa.Item1.RemovedDate.Value, fa.Item1.RemovedUser) if (fa.Item1.OnUnassignmentExpressionResult != null) {
@fa.Item1.OnUnassignmentExpressionResult
} } else if (fa.Item1.CanRemove()) { Remove }
@using (Html.BeginForm(MVC.API.DeviceFlagAssignment.RemoveDevice())) { @Html.AntiForgeryToken()

 Are you sure?

}
@using (Html.BeginForm(MVC.API.DeviceFlagAssignment.UpdateComments())) { @Html.AntiForgeryToken()

Comments:

}
} else {
This device has no associated flags
}