|
|
|
@ -9,11 +9,8 @@
|
|
|
|
|
* @param tlog: Taille logique de ces tableaux
|
|
|
|
|
* @return 0 > Tout s'est bien passé, -1 > L'utilisateur a quitté, -2 > La taille physique du tableau est dépassée
|
|
|
|
|
*/
|
|
|
|
|
int inputClient(int clientID[], float cagnotte[], int suspended[], int isAdmin[], int *tlog)
|
|
|
|
|
int inputClient(int id, int passwd, int index, int clientID[], int clientPassword[], float cagnotte[], int suspended[], int isAdmin[], int *tlog)
|
|
|
|
|
{
|
|
|
|
|
int index, found, id = -1;
|
|
|
|
|
float cagnotteClient;
|
|
|
|
|
|
|
|
|
|
// Vérification du dépassement de la taille physique du tableau
|
|
|
|
|
if (*tlog == tmaxClients)
|
|
|
|
|
{
|
|
|
|
@ -21,33 +18,20 @@ int inputClient(int clientID[], float cagnotte[], int suspended[], int isAdmin[]
|
|
|
|
|
return -2;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
while(id != 0)
|
|
|
|
|
{
|
|
|
|
|
printf("Entrez l'identifiant du client ou 0 si vous souhaitez arrêter la saisie: ");
|
|
|
|
|
scanf("%d%*c", &id);
|
|
|
|
|
while(id < 0)
|
|
|
|
|
{
|
|
|
|
|
printf("[ERREUR] - L'identifiant doit être positif, entrez l'identifiant du client ou 0 si vous souhaitez arrêter la saisie: ");
|
|
|
|
|
scanf("%d%*c", &id);
|
|
|
|
|
}
|
|
|
|
|
index = searchTab(clientID, id, *tlog, &found);
|
|
|
|
|
while(found == 1)
|
|
|
|
|
{
|
|
|
|
|
printf("Cet identifiant existe déjà, réessayer ou tapez 0 si vous souhaitez arrêter la saisie: ");
|
|
|
|
|
scanf("%d%*c", &id);
|
|
|
|
|
index = searchTab(clientID, id, *tlog, &found);
|
|
|
|
|
}
|
|
|
|
|
if(id != 0)
|
|
|
|
|
{
|
|
|
|
|
clientID[index] = id;
|
|
|
|
|
cagnotte[index] = 0;
|
|
|
|
|
suspended[index] = 0;
|
|
|
|
|
isAdmin[index] = 0;
|
|
|
|
|
*tlog++;
|
|
|
|
|
return 0; // Tout s'est bien passé
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
return -1; // L'utilisateur a quitté
|
|
|
|
|
// Décalage
|
|
|
|
|
decalageADroite(clientID, index, *tlog);
|
|
|
|
|
decalageADroite(cagnotte, index, *tlog);
|
|
|
|
|
decalageADroite(suspended, index, *tlog);
|
|
|
|
|
decalageADroite(isAdmin, index, *tlog);
|
|
|
|
|
|
|
|
|
|
clientID[index] = id;
|
|
|
|
|
clientPassword[index] = encrypt(passwd);
|
|
|
|
|
cagnotte[index] = 0;
|
|
|
|
|
suspended[index] = 0;
|
|
|
|
|
isAdmin[index] = 0;
|
|
|
|
|
|
|
|
|
|
*tlog++;
|
|
|
|
|
return 0; // Tout s'est bien passé
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void modifyClient(int clientID[], float cagnotte[], int suspended[], int isAdmin[], int tlog)
|
|
|
|
|