public static IAuditLogData Create(IAuditLogData entryData) { if (entryData is not UnbanAuditLogData data) { return(null); } return(new AuditUnban() { User = AuditUserInfo.Create(data.Target) }); }
private bool readEplexAuditFile() { /*********************************************************************************************************************** ** Read the audit file into a List of structure which has a list of the door events ***********************************************************************************************************************/ string auditFileName = "EPLEX5000_DOWNLOAD.txt"; string MUnitPath = ParentForm.MUnitFolder + auditFileName; ParentForm.AuditDoor.Clear(); bool StatusFlag = true; /*********************************************************************************************************************** ** If the file exists, read it, else popup a arror dialog and quit ***********************************************************************************************************************/ if (File.Exists(MUnitPath)) { try { StreamReader AuditFilePathAndFileName = new StreamReader(MUnitPath); int doorNum = -1; while (AuditFilePathAndFileName.Peek() > -1) { var AuditDataRecord = AuditFilePathAndFileName.ReadLine(); string[] DataIn = AuditDataRecord.Split("\t".ToCharArray()); if (DataIn.Length > 3) { /*********************************************************************************************************************** ** This is the door definition record ***********************************************************************************************************************/ var tmpAuditDoor = new AuditDoorInfo(); int i = 0; tmpAuditDoor.site = DataIn[i]; i++; tmpAuditDoor.DoorName = DataIn[i]; i++; tmpAuditDoor.DoorID = int.Parse(DataIn[i]); i++; tmpAuditDoor.AuditExtractTimestamp = DataIn[i]; i++; tmpAuditDoor.DateTime2 = DataIn[i]; i++; tmpAuditDoor.SomeDecimalNum1 = DataIn[i]; i++; tmpAuditDoor.SomeDecimalNum2 = DataIn[i]; i++; tmpAuditDoor.UserTxnCount = int.Parse(DataIn[i]); i++; tmpAuditDoor.SomeHexNumber1 = DataIn[i]; i++; tmpAuditDoor.DoorUserCountMaybe = DataIn[i]; i++; tmpAuditDoor.SomeNUmber2 = DataIn[i]; tmpAuditDoor.UserTxn = new List <AuditUserInfo>(); ParentForm.AuditDoor.Add(tmpAuditDoor); doorNum++; } else { /*********************************************************************************************************************** ** This is the user transaction record (Lock events) ***********************************************************************************************************************/ var tmpUserDoor = new AuditUserInfo(); int i = 0; tmpUserDoor.txnDateTime = ConvertStringToDateTime(DataIn[i]); i++; tmpUserDoor.Txn = DataIn[i]; i++; tmpUserDoor.userCode = Regex.Replace(DataIn[i], "[EF]", "0"); ParentForm.AuditDoor[doorNum].UserTxn.Add(tmpUserDoor); } } AuditFilePathAndFileName.Close(); } catch (Exception e1) { catchData = "PrintAudit.readEplexAuditFile Name: " + MUnitPath + e1.Message; DialogResult OKFlag = MessageBox.Show(catchData, "Unexpected Error", MessageBoxButtons.OK); } } else { StatusFlag = false; DialogResult OKFlag = MessageBox.Show("No audit file data was found. No files can be built. ", "Warning", MessageBoxButtons.OK); } return(StatusFlag); }