From f3974566494993525ab6d5e1c7e846404079743d Mon Sep 17 00:00:00 2001 From: Tim Young Date: Fri, 16 Feb 2018 12:45:08 +0000 Subject: [PATCH] If needs ups, power starts off off. More Needs UPS stuff. --- EduNetworkBuilder/Network.cs | 16 ++++++++++++ EduNetworkBuilder/NetworkBuilder.cs | 25 +++++++++++++++++++ .../Resources/languages/edustrings.resx | 4 +++ 3 files changed, 45 insertions(+) diff --git a/EduNetworkBuilder/Network.cs b/EduNetworkBuilder/Network.cs index 3f3d32c..a5f3f5a 100644 --- a/EduNetworkBuilder/Network.cs +++ b/EduNetworkBuilder/Network.cs @@ -733,6 +733,11 @@ namespace EduNetworkBuilder NetworkDevice ND = DeviceFromName(nt.sHost); if (ND != null) ND.PowerOff = true; } + if (nt.TheTest == NetTestType.DeviceNeedsUPS && !nt.TaskWasDone) + { + NetworkDevice ND = DeviceFromName(nt.sHost); + if (ND != null) ND.PowerOff = true; + } } if (report_as_done && PuzzleCount == 0 && PreviouslyUnsolved) { @@ -1741,6 +1746,17 @@ namespace EduNetworkBuilder } } + public void RegisterUPSAdded(string source) + { + foreach (NetTest one in NetTests) + { + if (one.sHost == source && one.TheTest == NetTestType.DeviceNeedsUPS) + { + one.SetDone(); + } + } + } + /**************************************** * Do On All Devices * **************************************/ diff --git a/EduNetworkBuilder/NetworkBuilder.cs b/EduNetworkBuilder/NetworkBuilder.cs index e87f5ce..8ff6420 100644 --- a/EduNetworkBuilder/NetworkBuilder.cs +++ b/EduNetworkBuilder/NetworkBuilder.cs @@ -887,6 +887,16 @@ namespace EduNetworkBuilder pbNetworkView.ContextMenuStrip.Items[index++].Click += pbNetworkView_Replace_Click; } } + if (myNetwork.ItemHasTest(ReleasedOn.hostname, NetTestType.DeviceNeedsUPS)) + { + if (!myNetwork.ItemTestIsComplete(ReleasedOn.hostname, NetTestType.DeviceNeedsUPS)) + { + //If the item is bad and has not been replaced, then add a context menu to replace it + pbNetworkView.ContextMenuStrip.Items.Add(NB.Translate("NB_AddUPS")); + pbNetworkView.ContextMenuStrip.Items[index++].Click += pbNetworkView_AddUPS_Click; + } + } + } } else //we are locked out. @@ -989,6 +999,21 @@ namespace EduNetworkBuilder UpdateVisuals(); } } + //We will still do this for devices that are spraying the network + private void pbNetworkView_AddUPS_Click(object sender, EventArgs e) + { + if (ItemClickedOn != null) + { + if (ItemClickedOn == null) return; + //Changing a UPS makes sure the power is off when done. + ItemClickedOn.PowerOff = true; + //Mark the replace test as "done" + myNetwork.RegisterDeviceReset(ItemClickedOn.hostname); //replacing something powers it off + + myNetwork.RegisterUPSAdded(ItemClickedOn.hostname); //Add the UPS. + UpdateVisuals(); + } + } private void ColorizeDevice(NetworkDevice Item, string Text) { diff --git a/EduNetworkBuilder/Resources/languages/edustrings.resx b/EduNetworkBuilder/Resources/languages/edustrings.resx index b3c87b9..232a4a1 100644 --- a/EduNetworkBuilder/Resources/languages/edustrings.resx +++ b/EduNetworkBuilder/Resources/languages/edustrings.resx @@ -2001,6 +2001,10 @@ The device is not responding. NC_Burned = The device is not responding. + + Add UPS + NB_AddUPS = Add UPS + Device is Frozen NT_TstDescriptFrozenDevice