Browse Source

refactoring: made code more readable and enhanced the menuInput() and chooseOption() functions.

remotes/origin/beta
fdai7207 2 years ago
parent
commit
4d0091a099
  1. 2
      src/CustomerData.txt
  2. 109
      src/mainMenu.c

2
src/CustomerData.txt

@ -4,5 +4,3 @@ forename=Max
Surname=Mustermann
password=example
balance=0

109
src/mainMenu.c

@ -25,16 +25,7 @@ bool checkIfInteger(char* userInput)
bool chooseOption(int choiceInput)
{
if(choiceInput<1 || choiceInput>4)
{
return false;
}
else
{
return true;
}
return !(choiceInput < 1 || choiceInput > 4);
}
@ -55,21 +46,17 @@ void ageInput()
while (true)
{
/*the userInput string is changed to a number with the strtol function*/
age = strtol(userInput,&userInputPointer,10);
if((checkIfInteger(userInput))&& (agePermission(age)))
{
printf("Access granted!\n\n\n\n");
showMenu();
menuInput();
menuInput();
break;
}
else if((checkIfInteger(userInput)) && !(agePermission(age)))
@ -85,118 +72,56 @@ void ageInput()
{
printf("input invalid! try again!\n");
scanf("%s",userInput);
int c;
/*this loop flushes the input buffer for the upcoming getchar*/
while ((c = getchar()) != '\n' && c != EOF) {};
}
}
}
void menuInput()
{
char choiceInput[20];
char* choiceInputPointer;
int selection;
scanf("%s",choiceInput);
while(true)
{
selection = strtol(choiceInput,&choiceInputPointer,10);
if(chooseOption(selection) == true && checkIfInteger(choiceInput) == true)
{
switch(selection)
{
case 1 : printf("\nLoginAsCostumer() function will be implemented here soon\n\n");
break;
case 2 : printf("\ncreateCostumerAccount() function will be implemented here soon\n\n");
break;
case 3 : printf("\nLoginAsEmployee() function will be implemented here soon\n\n");
break;
case 4 : printf("\e[1;1H\e[2J");
printf("\nsee you next time !\n\n");
break;
}
break;
}
else
{
printf("Input invalid! try again!\n");
scanf("%s",choiceInput);
}
}
}
void menuInput()
{
char choiceInput[20];
char* choiceInputPointer;
int selection;
scanf("%s", choiceInput);
int c;
scanf("%s",choiceInput);
/*this loop flushes the input buffer for the upcoming getchar*/
while ((c = getchar()) != '\n' && c != EOF) {};
selection = strtol(choiceInput, &choiceInputPointer, 10);
while(true)
while (!checkIfInteger(choiceInput) || !chooseOption(selection))
{
selection = strtol(choiceInput,&choiceInputPointer,10);
printf("Input invalid! try again!\n");
scanf("%s", choiceInput);
while ((c = getchar()) != '\n' && c != EOF) {};
selection = strtol(choiceInput, &choiceInputPointer, 10);
}
if(chooseOption(selection) == true && checkIfInteger(choiceInput) == true)
{
switch(selection)
{
case 1 : printf("\nLoginAsCostumer() function will be implemented here soon\n\n");
break;
case 2 : collectCustomerProperties();
break;
case 3 : printf("\nLoginAsEmployee() function will be implemented here soon\n\n");
break;
case 4 : printf("\e[1;1H\e[2J");
printf("\nsee you next time !\n\n");
break;
}
break;
}
else
{
printf("Input invalid! try again!\n");
scanf("%s",choiceInput);
}
}
}
void showMenu()
{

Loading…
Cancel
Save