private void GoToAdminMode()
        {
            string input = Console.ReadLine();
            Dictionary <string, int> listOfUsers = _userData.ListAllUsers();

            if (listOfUsers == null)
            {
                _currentView.PrintMessage("No user data found!\n");
                return;
            }


            if (int.TryParse(input.ToString(), out int userInput))
            {
                switch (userInput)
                {
                case 0:
                {
                    Environment.Exit(0);
                    break;
                }

                case 1:
                {
                    _currentView.PrintMessage("Enter username of the user you want to edit: ");
                    string userToEdit = Console.ReadLine();

                    if (!listOfUsers.ContainsKey(userToEdit))
                    {
                        _currentView.PrintMessage($"User not found: {userToEdit}!");
                        break;
                    }

                    _currentView.PrintMessage("Enter new role: ");
                    string newRoleInput = Console.ReadLine();
                    if (!Enum.TryParse(newRoleInput, true, out UserRoles newUserRole))
                    {
                        _currentView.PrintError($"Invalid role: {newRoleInput}!\n");
                        break;
                    }
                    else
                    {
                        _currentView.PrintMessage("Role was succesfully updated.");
                    }
                    _userData.AssignUserRole(listOfUsers[userToEdit], newUserRole);
                }
                break;

                case 2:
                {
                    _currentView.PrintMessage("Enter the username you want to edit: ");
                    string userToEdit = Console.ReadLine();
                    if (!listOfUsers.ContainsKey(userToEdit))
                    {
                        _currentView.PrintMessage($"There is no such user!\n");
                        break;
                    }

                    _currentView.PrintMessage("Enter new date: ");
                    string newDate = Console.ReadLine();
                    if (!DateTime.TryParse(newDate, out DateTime newUserDate) || newUserDate < DateTime.Now)
                    {
                        _currentView.PrintError($"Invalid date!\n");
                        break;
                    }

                    _userData.SetUserActiveTo(listOfUsers[userToEdit], newUserDate);
                }
                break;

                case 3:
                {
                    foreach (IUser u in _userData.GetUsersData())
                    {
                        _currentView.PrintMessage(u.ToString());
                    }
                }
                break;

                case 4:
                {
                    _currentView.PrintMessage("Enter a key word to search for: ");
                    string keyWord = Console.ReadLine();

                    foreach (string logEntry in Logger.GetCurrentSessionActivities(keyWord))
                    {
                        _currentView.PrintMessage(logEntry);
                    }
                }
                break;

                case 5:
                {
                    _currentView.PrintMessage(Logger.GetAllUserActivities());
                }
                break;

                default:
                {
                    _currentView.PrintError("Invalid input: " + input + "!\n");
                }
                break;
                }
            }

            _currentView.PrintMessage("\nPress any key to continue...");

            Console.ReadKey();
            Console.Clear();
        }