#138 add/remove individual device flags UI

This commit is contained in:
Gary Sharp
2024-01-14 18:29:58 +11:00
parent 6ce6e2cccf
commit aee467cb53
15 changed files with 1573 additions and 68 deletions
@@ -2694,7 +2694,7 @@ WriteLiteral(" ");
#line 754 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
if (Model.Device.CanUpdateTrustEnrol())
if (Model.Device.CanAddDeviceFlags() && Model.AvailableDeviceFlags != null && Model.AvailableDeviceFlags.Count > 0)
{
@@ -2702,13 +2702,245 @@ WriteLiteral(" ");
#line hidden
#line 756 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
Write(Html.ActionLinkSmallButton("Trust Enrol", MVC.API.Device.UpdateAllowUnauthenticatedEnrol(Model.Device.SerialNumber, true.ToString(), true), "Device_Show_Device_Actions_TrustEnrol_Button"));
Write(Html.ActionLinkSmallButton("Add Flag", MVC.API.DeviceFlagAssignment.AddDevice(), "Device_Show_Details_Actions_AddFlag_Button"));
#line default
#line hidden
#line 756 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
#line default
#line hidden
WriteLiteral(" <div");
WriteLiteral(" id=\"Device_Show_Details_Actions_AddFlag_Dialog\"");
WriteLiteral(" class=\"dialog\"");
WriteLiteral(" title=\"Add Device Flag\"");
WriteLiteral(">\r\n");
#line 758 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
#line default
#line hidden
#line 758 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
using (Html.BeginForm(MVC.API.DeviceFlagAssignment.AddDevice()))
{
#line default
#line hidden
WriteLiteral(" <input");
WriteLiteral(" id=\"Device_Show_Details_Actions_AddFlag_Dialog_Id\"");
WriteLiteral(" type=\"hidden\"");
WriteLiteral(" name=\"id\"");
WriteLiteral(" />\r\n");
WriteLiteral(" <input");
WriteLiteral(" id=\"Device_Show_Details_Actions_AddFlag_Dialog_DeviceSerialNumber\"");
WriteLiteral(" type=\"hidden\"");
WriteLiteral(" name=\"DeviceSerialNumber\"");
WriteAttribute("value", Tuple.Create(" value=\"", 48128), Tuple.Create("\"", 48162)
#line 761 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
, Tuple.Create(Tuple.Create("", 48136), Tuple.Create<System.Object, System.Int32>(Model.Device.SerialNumber
#line default
#line hidden
, 48136), false)
);
WriteLiteral(" />\r\n");
WriteLiteral(" <div");
WriteLiteral(" class=\"flagPicker\"");
WriteLiteral(">\r\n");
#line 763 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
#line default
#line hidden
#line 763 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
foreach (var flag in Model.AvailableDeviceFlags.OrderBy(jq => jq.Name))
{
#line default
#line hidden
WriteLiteral(" <div");
WriteLiteral(" class=\"flag\"");
WriteLiteral(" data-flagid=\"");
#line 765 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
Write(flag.Id);
#line default
#line hidden
WriteLiteral("\"");
WriteLiteral(">\r\n <i");
WriteAttribute("class", Tuple.Create(" class=\"", 48466), Tuple.Create("\"", 48525)
, Tuple.Create(Tuple.Create("", 48474), Tuple.Create("fa", 48474), true)
, Tuple.Create(Tuple.Create(" ", 48476), Tuple.Create("fa-", 48477), true)
#line 766 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
, Tuple.Create(Tuple.Create("", 48480), Tuple.Create<System.Object, System.Int32>(flag.Icon
#line default
#line hidden
, 48480), false)
, Tuple.Create(Tuple.Create(" ", 48492), Tuple.Create("fa-fw", 48493), true)
, Tuple.Create(Tuple.Create(" ", 48498), Tuple.Create("fa-lg", 48499), true)
, Tuple.Create(Tuple.Create(" ", 48504), Tuple.Create("d-", 48505), true)
#line 766 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
, Tuple.Create(Tuple.Create("", 48507), Tuple.Create<System.Object, System.Int32>(flag.IconColour
#line default
#line hidden
, 48507), false)
);
WriteLiteral("></i>");
#line 766 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
Write(flag.Name);
#line default
#line hidden
WriteLiteral("\r\n </div>\r\n");
#line 768 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
}
#line default
#line hidden
WriteLiteral(" </div>\r\n");
WriteLiteral(" <div");
WriteLiteral(" class=\"details\"");
WriteLiteral(">\r\n <div>\r\n <h4>Comment" +
"s</h4>\r\n <textarea");
WriteLiteral(" name=\"Comments\"");
WriteLiteral(" id=\"Device_Show_Details_Actions_AddFlag_Dialog_Comments\"");
WriteLiteral("></textarea>\r\n </div>\r\n </div>\r" +
"\n");
#line 776 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
}
#line default
#line hidden
WriteLiteral(" </div>\r\n");
WriteLiteral(" <script");
WriteLiteral(" type=\"text/javascript\"");
WriteLiteral(">\r\n $(function () {\r\n var button = $(\'#" +
"Device_Show_Details_Actions_AddFlag_Button\');\r\n var butto" +
"nDialog = null;\r\n var buttonLink = button.attr(\'href\');\r\n" +
"\r\n var flagPicker = null;\r\n var fl" +
"agAddId = null;\r\n var flagAddComments = null;\r\n " +
" var details = null;\r\n\r\n function flagSelect" +
"ed() {\r\n var flag = $(this);\r\n\r\n " +
" flagPicker.children().removeClass(\'selected\');\r\n " +
" flag.addClass(\'selected\');\r\n\r\n flagAddId.val(flag." +
"attr(\'data-flagid\'));\r\n\r\n details.show();\r\n\r\n " +
" flagAddComments.focus().select();\r\n }" +
"\r\n\r\n button.attr(\'href\', \'#\').click(function (e) {\r\n " +
" e.preventDefault();\r\n\r\n if (!b" +
"uttonDialog) {\r\n buttonDialog = $(\'#Device_Show_D" +
"etails_Actions_AddFlag_Dialog\');\r\n buttonDialog.d" +
"ialog({\r\n width: 600,\r\n " +
" height: 410,\r\n resizable: false" +
",\r\n modal: true,\r\n " +
" autoOpen: false,\r\n buttons: {\r\n " +
" Cancel: function () {\r\n " +
" $(this).dialog(\"close\");\r\n " +
" },\r\n \"Add Flag\": function () {\r\n " +
" if (!!flagAddId.val()) {\r\n " +
" var $this = $(this);\r\n " +
" $this.dialog(\"disable\");\r\n " +
" $this.dialog(\"option\", \"buttons\", null);\r\n " +
" buttonDialog.find(\'form\').submit();\r\n " +
" } else {\r\n " +
" alert(\'Select a Device Flag\');\r\n " +
" }\r\n }\r\n " +
" }\r\n });\r\n\r\n " +
" flagAddId = $(\'#Device_Show_Details_Actions_AddFlag_Dialog_Id\');\r\n " +
" flagAddComments = buttonDialog.find(\'#Device_Show_Details_Ac" +
"tions_AddFlag_Dialog_Comments\');\r\n flagPicker = b" +
"uttonDialog.find(\'.flagPicker\');\r\n details = butt" +
"onDialog.find(\'.details\');\r\n\r\n flagPicker.on(\'cli" +
"ck\', \'div.flag\', flagSelected);\r\n }\r\n\r\n " +
" buttonDialog.dialog(\'open\');\r\n return f" +
"alse;\r\n });\r\n });\r\n </s" +
"cript>\r\n");
#line 843 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
}
#line default
#line hidden
WriteLiteral(" ");
#line 844 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
if (Model.Device.CanUpdateTrustEnrol())
{
#line default
#line hidden
#line 846 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
Write(Html.ActionLinkSmallButton("Trust Enrol", MVC.API.Device.UpdateAllowUnauthenticatedEnrol(Model.Device.SerialNumber, true.ToString(), true), "Device_Show_Device_Actions_TrustEnrol_Button"));
#line default
#line hidden
#line 846 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
@@ -2749,7 +2981,7 @@ WriteLiteral("></i>This action will allow a device <em>claiming</em> to have the
"\'");
#line 766 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
#line 856 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
Write(Model.Device.SerialNumber);
@@ -2791,7 +3023,7 @@ WriteLiteral(">\r\n $(function () {\r\n
" });\r\n </script>\r\n");
#line 806 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
#line 896 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
}
@@ -2800,7 +3032,7 @@ WriteLiteral(">\r\n $(function () {\r\n
WriteLiteral(" ");
#line 807 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
#line 897 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
if (Model.Device.CanUpdateUntrustEnrol())
{
@@ -2808,14 +3040,14 @@ WriteLiteral(" ");
#line default
#line hidden
#line 809 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
#line 899 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
Write(Html.ActionLinkSmallButton("Untrust Enrol", MVC.API.Device.UpdateAllowUnauthenticatedEnrol(Model.Device.SerialNumber, false.ToString(), true), "Device_Show_Device_Actions_UntrustEnrol_Button"));
#line default
#line hidden
#line 809 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
#line 899 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
@@ -2886,7 +3118,7 @@ WriteLiteral(@">
");
#line 849 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
#line 939 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
}
@@ -2895,7 +3127,7 @@ WriteLiteral(@">
WriteLiteral(" ");
#line 850 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
#line 940 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
if (Model.Device.CanDecommission())
{
@@ -2903,14 +3135,14 @@ WriteLiteral(" ");
#line default
#line hidden
#line 852 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
#line 942 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
Write(Html.ActionLinkSmallButton("Decommission", MVC.API.Device.Decommission(), "Device_Show_Device_Actions_Decommission_Button"));
#line default
#line hidden
#line 852 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
#line 942 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
@@ -2942,13 +3174,13 @@ WriteLiteral(" class=\"none\"");
WriteLiteral(">\r\n");
#line 859 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
#line 949 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
#line default
#line hidden
#line 859 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
#line 949 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
foreach (DecommissionReasons decommissionReason in Enum.GetValues(typeof(DecommissionReasons)).Cast<DecommissionReasons>().OrderBy(r => r.ToString()))
{
@@ -2959,34 +3191,34 @@ WriteLiteral(" <li>\r\n
WriteLiteral(" type=\"radio\"");
WriteAttribute("id", Tuple.Create(" id=\"", 53845), Tuple.Create("\"", 53923)
, Tuple.Create(Tuple.Create("", 53850), Tuple.Create("Device_Show_Device_Actions_Decommission_Reason_", 53850), true)
WriteAttribute("id", Tuple.Create(" id=\"", 58686), Tuple.Create("\"", 58764)
, Tuple.Create(Tuple.Create("", 58691), Tuple.Create("Device_Show_Device_Actions_Decommission_Reason_", 58691), true)
#line 862 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
, Tuple.Create(Tuple.Create("", 53897), Tuple.Create<System.Object, System.Int32>((int)decommissionReason
#line 952 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
, Tuple.Create(Tuple.Create("", 58738), Tuple.Create<System.Object, System.Int32>((int)decommissionReason
#line default
#line hidden
, 53897), false)
, 58738), false)
);
WriteLiteral("\r\n name=\"Device_Show_Device_Actions_Dec" +
"ommission_Reason\"");
WriteAttribute("value", Tuple.Create(" value=\"", 54022), Tuple.Create("\"", 54056)
WriteAttribute("value", Tuple.Create(" value=\"", 58863), Tuple.Create("\"", 58897)
#line 863 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
, Tuple.Create(Tuple.Create("", 54030), Tuple.Create<System.Object, System.Int32>((int)decommissionReason
#line 953 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
, Tuple.Create(Tuple.Create("", 58871), Tuple.Create<System.Object, System.Int32>((int)decommissionReason
#line default
#line hidden
, 54030), false)
, 58871), false)
);
WriteLiteral(" ");
#line 863 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
#line 953 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
Write((decommissionReason == DecommissionReasons.EndOfLife) ? "checked=\"checked\"" : string.Empty);
@@ -2994,21 +3226,21 @@ WriteLiteral(" ");
#line hidden
WriteLiteral(" />\r\n <label");
WriteAttribute("for", Tuple.Create(" for=\"", 54200), Tuple.Create("\"", 54279)
, Tuple.Create(Tuple.Create("", 54206), Tuple.Create("Device_Show_Device_Actions_Decommission_Reason_", 54206), true)
WriteAttribute("for", Tuple.Create(" for=\"", 59041), Tuple.Create("\"", 59120)
, Tuple.Create(Tuple.Create("", 59047), Tuple.Create("Device_Show_Device_Actions_Decommission_Reason_", 59047), true)
#line 864 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
, Tuple.Create(Tuple.Create("", 54253), Tuple.Create<System.Object, System.Int32>((int)decommissionReason
#line 954 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
, Tuple.Create(Tuple.Create("", 59094), Tuple.Create<System.Object, System.Int32>((int)decommissionReason
#line default
#line hidden
, 54253), false)
, 59094), false)
);
WriteLiteral(">");
#line 864 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
#line 954 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
Write(decommissionReason.ReasonMessage());
@@ -3017,7 +3249,7 @@ WriteLiteral(">");
WriteLiteral("</label>\r\n </li>\r\n");
#line 866 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
#line 956 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
}
@@ -3035,7 +3267,7 @@ WriteLiteral(">\r\n $(function () {\r\n
"uttonDialog = null;\r\n var deviceSerialNumber = \'");
#line 874 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
#line 964 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
Write(Model.Device.SerialNumber);
@@ -3068,7 +3300,7 @@ WriteLiteral("\';\r\n\r\n button.click(function () {\r\n\
" });\r\n </script>\r\n");
#line 910 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
#line 1000 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
}
@@ -3077,7 +3309,7 @@ WriteLiteral("\';\r\n\r\n button.click(function () {\r\n\
WriteLiteral(" ");
#line 911 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
#line 1001 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
if (Model.Device.CanRecommission())
{
@@ -3085,14 +3317,14 @@ WriteLiteral(" ");
#line default
#line hidden
#line 913 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
#line 1003 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
Write(Html.ActionLinkSmallButton("Recommission", MVC.API.Device.Recommission(Model.Device.SerialNumber, true), "Device_Show_Device_Actions_Recommission_Button"));
#line default
#line hidden
#line 913 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
#line 1003 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
@@ -3146,7 +3378,7 @@ WriteLiteral(@">
");
#line 948 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
#line 1038 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
}
@@ -3155,7 +3387,7 @@ WriteLiteral(@">
WriteLiteral(" ");
#line 949 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
#line 1039 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
if (Model.Device.CanDelete())
{
@@ -3163,14 +3395,14 @@ WriteLiteral(" ");
#line default
#line hidden
#line 951 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
#line 1041 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
Write(Html.ActionLinkSmallButton("Delete Device", MVC.API.Device.Delete(Model.Device.SerialNumber, true), "Device_Show_Device_Actions_Delete_Button"));
#line default
#line hidden
#line 951 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
#line 1041 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
@@ -3230,7 +3462,7 @@ WriteLiteral(@">
");
#line 989 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
#line 1079 "..\..\Views\Device\DeviceParts\_Subject.cshtml"
}