using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace MTP_UManager { static class DataManipulator { // Initializating. public static Person user; public static void Login() { string username = "", password = ""; Console.Write("Пользователь: "); username = Console.ReadLine(); Console.WriteLine(); Console.Write("Пароль: "); password = Console.ReadLine(); DataGetter.GetLoginedUserFromDatabase(username, password); } public static void SetUpCurrentUser(string username) /**/ { string[] userData = Database.GetTheUserFromDatabase(username, out List coursesUserTook, out List coursesUserSee, out List coursesUserEnded); string status = userData[1]; if (status == "student") { user = new Student(username, "студент") { AvailableCoursesID = coursesUserSee, TakenCoursesID = coursesUserTook, FinishedCoursesID = coursesUserEnded }; } else if (/*Status is teacher*/ false) { //TODO } else if (/*Status is rector*/false) { //TODO } Renderer.RenderMainPage(user); } // Main Page Menu. public static void CheckUserChoiceInMainPageMenu(Student user, string userChoice) { switch (userChoice) { case "1": Renderer.RenderCoursesListPage(user); break; case "2": Renderer.RenderStudentStatsPage(user); break; case "3": Quit(); break; default: Renderer.RenderMainPageMessage(user); CheckUserChoiceInMainPageMenu(user, Renderer.RenderMenu(DataGetter.GetMainPageMenuItems()));// break; } } // Course List Page. public static void CheckUserChoiceInCoursesListPageMenu(Student user, string userChoice) { switch (userChoice) { case "1": Renderer.RenderSignUpForCoursePageMessage(user); CheckUserChoiceInMainPageMenu(user, Renderer.RenderMenu(DataGetter.GetMainPageMenuItems())); break; case "2": Renderer.RenderLeaveCoursePageMessage(user); CheckUserChoiceInMainPageMenu(user, Renderer.RenderMenu(DataGetter.GetMainPageMenuItems())); break; case "3": Renderer.RenderMainPageMessage(user); CheckUserChoiceInMainPageMenu(user, Renderer.RenderMenu(DataGetter.GetMainPageMenuItems())); break; default: Renderer.RenderCoursesListPage(user); break; } } public static void SignUpForCourse(Student user, string courseID) { if ((!user.FinishedCoursesID.Contains(courseID)) && (!user.TakenCoursesID.Contains(courseID))) user.TakenCoursesID.Add(courseID); } public static void LeaveCourse(Student user, string courseID) { user.TakenCoursesID.Remove(courseID); } public static void Quit() { Renderer.RenderLoginPageMessage(); } // Course Student Stats. public static void CheckUserChoiceInStudentStatsPageMenu(Student user, string userChoice) { switch (userChoice) { case "1": Renderer.RenderStudentStatsPageMessage(user); CheckUserChoiceInMainPageMenu(user, Renderer.RenderMenu(DataGetter.GetMainPageMenuItems())); break; default: Renderer.RenderStudentStatsPage(user); break; } } } }