diff --git a/main.cpp b/main.cpp index 4edbf27..c8f1a1a 100644 --- a/main.cpp +++ b/main.cpp @@ -1,169 +1,73 @@ #include -#include +#include #include "user.h" #include "auth.h" +#include "db.h" -// --- Tableau d'utilisateurs --- -User users[] = { - {"admin", "1234", ADMIN}, - {"prof1", "abcd", PROF}, - {"student1", "pass", STUDENT}, - {"student2", "123", STUDENT}, - {"student3", "abc", STUDENT} -}; -int nbUsers = 5; +int main() { + std::vector students = { + {"student1", {15,12,18}}, + {"student2", {14,10,16}}, + {"student3", {13,11,17}} + }; -// --- Tableau d'étudiants et notes --- -struct Student { - std::string nom; - int notes[3]; -}; + std::vector users = { + {"admin","1234",ADMIN}, + {"prof1","abcd",PROF}, + {"student1","pass",STUDENT}, + {"student2","123",STUDENT}, + {"student3","abc",STUDENT} + }; -Student etudiants[] = { - {"student1", {15, 12, 18}}, - {"student2", {14, 10, 16}}, - {"student3", {13, 11, 17}} -}; -int nbEtudiants = 3; + std::string login, password; + std::cout << "Login : "; std::cin >> login; + std::cout << "Mot de passe : "; std::cin >> password; -// --- Fonctions de vues selon rôle --- -void viewAdmin() { - std::cout << "\n--- VUE ADMIN ---\n"; - std::cout << "Liste des étudiants et notes :\n"; - for(int i=0; i> id; - if(id>=0 && id> noteIndex; - std::cout << "Nouvelle note : "; - std::cin >> newNote; - etudiants[id].notes[noteIndex] = newNote; - std::cout << "Note modifiée avec succès !\n"; - } -} + User currentUser = users[index]; -void viewStudent(const User& user) { - std::cout << "\n--- VUE STUDENT ---\n"; - for(int i=0; i> nom >> n1 >> n2 >> n3 && i> nom >> n1 >> n2 >> n3){ - for(int i=0;i> id; + if(id>=0){ + std::cout << "Note (0-2) : "; std::cin >> noteIndex; + std::cout << "Nouvelle note : "; std::cin >> newNote; + students[id].notes[noteIndex] = newNote; + } + } else { // STUDENT + std::cout << "--- STUDENT ---\n"; + for(auto& s : students){ + if(s.nom == currentUser.login){ + std::cout << s.nom << " : "; + for(int n : s.notes) std::cout << n << " "; + std::cout << "\n"; } } } - file.close(); - std::cout << "Import des notes réalisé (PROF).\n"; -} -// --- MAIN --- -int main() { - std::string login, password; - - std::cout << "Login : "; - std::cin >> login; - - std::cout << "Mot de passe : "; - std::cin >> password; - - int index = authentifier(login, password); - - if(index != -1) { - std::cout << "Connexion réussie !" << std::endl; - - switch(users[index].role) { - case ADMIN: - viewAdmin(); - exportAdmin(); - importAdmin(); - break; - case PROF: - viewProf(); - exportNotes(users[index]); - importProf(); - break; - case STUDENT: - viewStudent(users[index]); - exportNotes(users[index]); - break; - } - } else { - std::cout << "Identifiants incorrects." << std::endl; - } + // Export / Import + exportData("data.txt", students); + importData("data.txt", students); return 0; } \ No newline at end of file