private void AddBadge()
        {
            Dictionary <int, List <string> > dictOfBadges = _badgeRepo.GetBadge();
            List <string> listOfDoors = _badgeRepo.GetDoorList();

            Console.Clear();
            Console.WriteLine("Enter your badge ID number: (ex. 1, 9, 13, 256)");
            int badgeID = int.Parse(Console.ReadLine());

            Console.WriteLine();
            Console.WriteLine("Do you want to add a door to this badge? (y/n)");
            var  input      = Console.ReadLine().ToLower();
            bool addingDoor = _badgeRepo.CheckAnswer(input);

            while (addingDoor)
            {
                Console.WriteLine();
                Console.WriteLine("Enter the letter(s) and number(s) for a single door: (ex. a1, bg15, zd192)");
                var doorName = Console.ReadLine();
                _badgeRepo.AddBadgeDoor(doorName);
                Console.WriteLine();
                Console.WriteLine("Do you want to add another door? (y/n)");
                var newinput = Console.ReadLine().ToLower();
                addingDoor = _badgeRepo.CheckAnswer(newinput);
            }
            Badge newBadge = new Badge(badgeID, listOfDoors);

            _badgeRepo.AddBadge(newBadge);
            Console.WriteLine();
        }
Exemple #2
0
        private void UpdateDoor()
        {
            Dictionary <int, List <string> > badgeID = _iDRepo.GetBadge();
            List <string> listOfDoors = _iDRepo.GetList();

            Console.Clear();
            Console.Write("Current badges: ");
            foreach (KeyValuePair <int, List <string> > IdNumber in _iDRepo.GetBadge())
            {
                Console.Write($" {IdNumber.Key}\n");
            }
            //Console.WriteLine();
            Console.Write("\nBe aware that all doors Assigned to this Badge # will be delete.\n" +
                          "Do you want to continue? (y/n):");
            var input = Console.ReadLine().ToLower();

            if (input != "y")
            {
                return;
            }
            Console.WriteLine();
            {
                Console.Write("\nEnter Badge #: ");
                int badgeid = int.Parse(Console.ReadLine());
                foreach (KeyValuePair <int, List <string> > IdNumber in _iDRepo.GetBadge())
                {
                    if (badgeid == IdNumber.Key)
                    {
                        //Console.WriteLine();
                        Console.Write("\nThis Badge currently has no doors assigned. Do you want to add a door to this badge? (y/n): ");
                        var  dooranswer  = Console.ReadLine().ToLower();
                        bool addingdoors = _iDRepo.CheckAnswer(dooranswer);
                        while (addingdoors)
                        {
                            //Console.WriteLine();
                            Console.WriteLine("\nEnter door name(s) ex:(A2,A3 or A1,golden,blue:");
                            var doorname = Console.ReadLine();
                            _iDRepo.AddDoorToList(doorname);
                            //Console.WriteLine();
                            Console.Write("Do you want to add another door? (y/n): ");
                            var answer = Console.ReadLine().ToLower();
                            addingdoors = _iDRepo.CheckAnswer(answer);
                        }
                    }
                    else
                    {
                        return;
                    }
                }
                badgeID[badgeid] = listOfDoors;
                Console.WriteLine();
            }
        }
Exemple #3
0
        public override bool OnKeyPress(ConsoleKeyInfo keyInfo)
        {
            if (base.OnKeyPress(keyInfo))
            {
                return(true);
            }

            ConsoleKey key = keyInfo.Key;

            switch (key)
            {
            case ConsoleKey.UpArrow:
                index--;
                if (index < 0)
                {
                    index = MaxIndex - 1;
                }
                return(true);

            case ConsoleKey.DownArrow:
                index++;
                if (index >= MaxIndex)
                {
                    index = 0;
                }
                return(true);

            case ConsoleKey.N:
                Console.Clear();
                Console.WriteLine("What doors should this new badge open (separate with commas):");
                string[] doors = Console.ReadLine().Split(',');
                badges.AddBadge(new Badge(doors));
                return(true);

            case ConsoleKey.C:
                badges.GetBadge(index).ClearAccess();
                return(true);

            case ConsoleKey.E:
                new BadgeEditScreen(badges.GetBadge(index)).Run();
                return(true);
            }

            return(false);
        }
        public void UpdateExistingBadge()
        {
            ViewBadgeAccessList();
            Console.WriteLine("Which BadgeID would you like to update?");
            int badgeID = badgeRepo.ParseResponseToInt();
            Dictionary <int, List <string> > badges = badgeRepo.GetBadge();
            List <string> doors     = badges[badgeID];
            bool          isRunning = true;

            while (isRunning)
            {
                Console.WriteLine("What changes would you like to make to this badge?\n\t" +
                                  "1. Add a door\n\t" +
                                  "2. Delete a door\n\t" +
                                  "3. Exit");

                int input = badgeRepo.ParseResponseToInt();
                switch (input)
                {
                case 1:
                    Console.WriteLine("Enter the door to add");
                    string addDoor = Console.ReadLine();
                    doors.Add(addDoor);
                    break;

                case 2:
                    Console.WriteLine("Enter the door to delete:");
                    string deleteDoor = Console.ReadLine();
                    doors.Remove(deleteDoor);
                    break;

                case 3:
                    isRunning = false;
                    break;

                default:
                    Console.WriteLine("Improper response");
                    break;
                }
                Badge newBadge = new Badge(badgeID, doors);
                badgeRepo.UpdateExistingBadge(newBadge);
            }
        }