import cs1.Keyboard;

public class Menu_example
{
	public static void main(String[]args)
	{
		mainMenu();
	}


	public static void mainMenu()				//@@@@@@@@@@@@@@@@@@@@@@@@@@
	{
		int choice;

		System.out.println("\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n");
		System.out.println("SMALL COMMUNITY COLLEGE");
		System.out.println("Course Registration System");
		System.out.println("Main Menu");
		System.out.println("---------------------------");

		System.out.println("1 -- Administrator");
		System.out.println("2 -- Instructor");
		System.out.println("3 -- Student");
		System.out.println("4 -- Exit\n");


		System.out.print("Enter your selection: ");
		choice = Keyboard.readInt();

		while (choice < 0 || choice > 4)
		{
			System.out.print("\n\nError: Selection could be only 1-4: ");
			choice = Keyboard.readInt();
		}

		switch(choice)
		{
			case 1: Administrator();break;
			case 2: Instructor();break;
			case 3: Student();break;
			case 4: System.exit(0);break;
		}
	}

	private static void Administrator()			//@@@@@@@@@@@@@@@@@@@@@@@@@@
	{
		int choice;
		do
		{
			System.out.println("\n\nAdministrators\n");
			System.out.println("1 -- Create Course");
			System.out.println("2 -- Remove Course");
			System.out.println("3 -- View Course");
			System.out.println("4 -- View Instructors");
			System.out.println("5 -- View Students");
			System.out.println("6 -- Back to Main Menu\n\n");


			System.out.print("Enter your selection: ");
			choice = Keyboard.readInt();

			while (choice < 1 || choice > 6)
			{
				System.out.print("\n\nError: Selection could be only 1-6: ");
				choice = Keyboard.readInt();
			}


			switch(choice)
			{
				case 1:	System.out.println("\n\nCOURSE CREATED\n\n");break;
				case 2: System.out.println("\n\nCOURSE REMOVED\n\n");break;
				case 3: System.out.println("\n\nCOURSE VIEWED\n\n");break;
				case 4: System.out.println("\n\nVIEWED INSTRUCTORS\n\n");break;
				case 5: System.out.println("\n\nVIEWED STUDENTS\n\n");break;
			}
		} while(choice > 0 && choice < 6);

		System.out.println("\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n");
		mainMenu();
	}

	private static void Instructor()			//@@@@@@@@@@@@@@@@@@@@@@@@@@
	{
		int choice;
		do
		{
			System.out.println("\n\nInstructors\n");
			System.out.println("1 -- Enter Grade");
			System.out.println("2 -- View Course Roster");
			System.out.println("3 -- Back to Main Menu\n\n");

			System.out.print("Enter your selection: ");
			choice = Keyboard.readInt();
			switch(choice)
			{
				case 1: System.out.println("\n\nGRADE ENTERED\n\n");break;
				case 2:	System.out.println("\n\nROSTER VIEWED\n\n");break;
			}
		}while(choice > 0 && choice < 3);

		System.out.println("\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n");
		mainMenu();
	}


	private static void Student()				//@@@@@@@@@@@@@@@@@@@@@@@@@@
	{
		int choice;
		do
		{

			System.out.println("\n\nStudents\n");
			System.out.println("1 -- Register for Class");
			System.out.println("2 -- Drop Class");
			System.out.println("3 -- View Transcript");
			System.out.println("4 -- Back to Main Menu\n\n");

			System.out.print("Enter your selection: ");
			choice = Keyboard.readInt();
			switch(choice)
			{
				case 1: System.out.println("\n\nREGISTERED CLASS\n\n");break;
				case 2:	System.out.println("\n\nDROPPED CLASS\n\n");break;
				case 3:	System.out.println("\n\nVIEWED TRANSCRIPT\n\n");break;
				case 4:	System.out.println("\n\nDROPPED CLASS\n\n");break;

			}
		}while(choice > 0 && choice < 4);

		System.out.println("\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n");
		mainMenu();
	}
}