Class: Utilisateur
Overview
Classe d'administration des utilisateurs Modèle utilisateur
Instance Attribute Summary
Attributes inherited from Model
Instance Method Summary collapse
-
#creerUtilisateur(pseudo) ⇒ Object
Ajoute un utilisateur dans la base de données.
-
#initialize ⇒ Utilisateur
constructor
Initialisation.
-
#partieUtilisateur?(pseudo) ⇒ Boolean
Vérifie si un utilisateur a une partie en cours.
-
#rechercherUtilisateur(pseudo) ⇒ Object
Recherche un utilisateur dans la base de données.
-
#reinitialiserUtilisateur(pseudo) ⇒ Object
Supprime tout les scores de l'utilisateur.
-
#supprimerUtilisateur(pseudo) ⇒ Object
Supprime un utilisateur de la base de données.
Methods inherited from Model
#connection, inherited, #insert, #mkDatabaseDir, #to_h
Constructor Details
#initialize ⇒ Utilisateur
Initialisation
21 22 23 24 25 26 27 28 29 30 31 32 33 |
# File 'app/model/Utilisateur.rb', line 21 def initialize() ## Crée la table utilisateur @@db.execute "CREATE TABLE IF NOT EXISTS utilisateur ( utilisateur_id integer primary key autoincrement, pseudo varchar(30) NOT NULL );" ## Récupère les instances des tables configuration et score (Singleton pattern) @configuration = Configuration.instance() @score = Score.instance() @jeu = Jeu.instance() end |
Instance Method Details
#creerUtilisateur(pseudo) ⇒ Object
Ajoute un utilisateur dans la base de données
42 43 44 45 46 47 48 49 50 51 52 53 54 55 |
# File 'app/model/Utilisateur.rb', line 42 def creerUtilisateur(pseudo) insert(:pseudo => pseudo) @configuration.creerConfiguration(pseudo) ## Crée un score par défaut si mode débug ## Cela permet de pouvoir tester la création de score ## au chargement des utilisateurs. if Core::DEBUG @score.creer(pseudo, Jeu::FACILE, 600) end return self end |
#partieUtilisateur?(pseudo) ⇒ Boolean
Vérifie si un utilisateur a une partie en cours
110 111 112 |
# File 'app/model/Utilisateur.rb', line 110 def partieUtilisateur?(pseudo) return File.exist?(Core::ROOTPROJECT + "assets/save/" + pseudo + ".yml") end |
#rechercherUtilisateur(pseudo) ⇒ Object
Recherche un utilisateur dans la base de données
98 99 100 101 |
# File 'app/model/Utilisateur.rb', line 98 def rechercherUtilisateur(pseudo) resultat = @@db.execute "SELECT pseudo FROM utilisateur WHERE pseudo = ? LIMIT 1;", pseudo return resultat.length >= 1 ? true : false; end |
#reinitialiserUtilisateur(pseudo) ⇒ Object
Supprime tout les scores de l'utilisateur
74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 |
# File 'app/model/Utilisateur.rb', line 74 def reinitialiserUtilisateur(pseudo) ## Récupère id utilisateur req = @@db.execute "SELECT utilisateur_id FROM utilisateur WHERE pseudo= ?", pseudo utilisateur_id = req[0][0][0] if(req.length > 0) @@db.execute "DELETE FROM score WHERE utilisateur= ?", utilisateur_id @@db.execute "DELETE FROM configuration WHERE utilisateur = ?", utilisateur_id @configuration.creerConfiguration(pseudo) end if(self.partieUtilisateur?(pseudo)) @jeu.supprimerPartie(pseudo) end end |
#supprimerUtilisateur(pseudo) ⇒ Object
Supprime un utilisateur de la base de données
64 65 66 |
# File 'app/model/Utilisateur.rb', line 64 def supprimerUtilisateur(pseudo) @@db.execute "DELETE FROM utilisateur WHERE pseudo = ?;", pseudo end |