From ce300026cb6935b9bb7dfe5a8e47a1d75193047f Mon Sep 17 00:00:00 2001 From: Michael Date: Fri, 3 Feb 2017 21:13:51 -0500 Subject: Add prevention of duplicate legion entries. --- ShiftOS.Server/Program.cs | 26 ++++++++++++++++++++++++-- 1 file changed, 24 insertions(+), 2 deletions(-) (limited to 'ShiftOS.Server/Program.cs') diff --git a/ShiftOS.Server/Program.cs b/ShiftOS.Server/Program.cs index c0c27ed..3ad8035 100644 --- a/ShiftOS.Server/Program.cs +++ b/ShiftOS.Server/Program.cs @@ -420,14 +420,36 @@ Contents: })); } break; - case "legion_create": + case "legion_createnew": List legions = new List(); if (File.Exists("legions.json")) legions = JsonConvert.DeserializeObject>(File.ReadAllText("legions.json")); var l = JsonConvert.DeserializeObject(msg.Contents); + bool legionExists = false; - legions.Add(l); + foreach (var legion in legions) + if (legion.ShortName == l.ShortName) + legionExists = true; + + if (legionExists == false) + { + legions.Add(l); + server.DispatchTo(new Guid(msg.GUID), new NetObject("test", new ServerMessage + { + Name = "legion_create_ok", + GUID = "server" + })); + + } + else + { + server.DispatchTo(new Guid(msg.GUID), new NetObject("test", new ServerMessage + { + Name = "legion_alreadyexists", + GUID = "server" + })); + } File.WriteAllText("legions.json", JsonConvert.SerializeObject(legions, Formatting.Indented)); break; -- cgit v1.2.3