From 487f928933faac63a31cf4e2186f620280ecb2ab Mon Sep 17 00:00:00 2001 From: angeousta Date: Thu, 6 Jul 2023 20:26:28 +0200 Subject: [PATCH] Update Parser.cs --- .../Utils/Transformer/ParserNS/Parser.cs | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/GraduatorieScript/Utils/Transformer/ParserNS/Parser.cs b/GraduatorieScript/Utils/Transformer/ParserNS/Parser.cs index 8aa686567..8968accbc 100644 --- a/GraduatorieScript/Utils/Transformer/ParserNS/Parser.cs +++ b/GraduatorieScript/Utils/Transformer/ParserNS/Parser.cs @@ -505,11 +505,16 @@ private static Table> JoinTables(IEnumerable pages) return Table.Create(headers, sections, data, null, null); } - private static bool enrollCourseToAllowed(string enrollCourse) { - var lower = enrollCourse.ToLower(); - string[] tester = { "immatricolazione non consentita", "non ammesso", "non idoneo"}; - var notAllowed = tester.Any(test => lower.Contains(test)); - return !notAllowed; + private static bool EnrollCourseToAllowed(string? enrollCourse) + { + var lower = enrollCourse?.ToLower().Trim(); + + if (string.IsNullOrEmpty(lower)) + return false; + if (lower == "-") + return false; + string[] tester = { "immatricolazione non consentita", "non ammesso", "non idoneo" }; + return !tester.Any(test => lower.Contains(test)); } private static List ParseMeritTable(Table> table) @@ -530,7 +535,7 @@ private static List ParseMeritTable(Table> table) var votoTest = Table.GetFieldByIndex(row, votoTestIndex) ?? "0"; var enrollCourse = Table.GetFieldByIndex(row, corsoIndex) ?? ""; var position = Table.GetFieldByIndex(row, posIndex) ?? "-1"; - var enrollAllowed = enrollCourseToAllowed(enrollCourse); + var enrollAllowed = EnrollCourseToAllowed(enrollCourse); var ofa = new Dictionary(); var ofaEng = Table.GetFieldByIndex(row, ofaEngIndex); @@ -683,4 +688,4 @@ private static IEnumerable ParseLocalHtmlFiles(string htmlFolder) var obj = JsonConvert.DeserializeObject(fileContent, Culture.JsonSerializerSettings); return obj; } -} +} \ No newline at end of file