private void DoActionForFlexibleModeUsingDialog(string monthName, string previousMonthName, string message) { if (!_TransactionRepo.HasMonthBeenClosed(DateTime.Now.Month - 1)) { switch (MessageBox.Show($"Hello {USERNAME}. {message}. \n\nWould you like me to close the previous month of {previousMonthName} now?", "Superior Investment", MessageBoxButtons.YesNo, MessageBoxIcon.Information)) { case DialogResult.Yes: MessageBox.Show($"Alright {USERNAME}. I am about to close the previous month of {previousMonthName}. \n\nThis might take some time.", "Superior Investment", MessageBoxButtons.OK, MessageBoxIcon.Warning); UseWaitCursor = true; if (_TransactionRepo.ClosePreviousMonthOperation()) { MessageBox.Show($"Previous month of {previousMonthName} has been closed. \n\nGood bye.", "Superior Investment", MessageBoxButtons.OK, MessageBoxIcon.Information); } UseWaitCursor = false; break; case DialogResult.No: MessageBox.Show($"Alright {USERNAME}. But Please endeavour to close the previous month of {previousMonthName} soon. \n\nGood bye.", "Superior Investment", MessageBoxButtons.OK, MessageBoxIcon.Information); break; } } }