def _decider_correction(self, contenu, prop_cor): """Cette méthode permet au géographe de choisir entre valider ou refuser une proposition de correction.""" donnees = Data_Base().donnees gestionnaire = Gestionnaire() try : section_du_texte = Section(prop_cor.num_pays, donnees, prop_cor.chemin_prop) except : input('\nIl semble que la donnée initiale a été supprimée. Cette proposition va alors être supprimée.\nAppuyez sur entrer pour continuer') gestionnaire.suppr_elm(prop_cor) return self.gestion_corrections(contenu) print("\nTexte actuel :\n") print(section_du_texte.contenu["text"] + "\n") print("Proposition de correction :\n") print(prop_cor.txt_prop + "\n") while True: validation = input("Voulez-vous valider cette proposition de correction (V : valider / R : refuser / P : aucune action) ?\n> ") if validation in ["v","V","r","R","p","P"]: break else : input("\nVotre réponse doit être V, R ou P.\nAppyez sur entrer pour continuer.\n") if validation in ['v', 'V']: self._valider_prop(prop_cor, section_du_texte) if validation in ['r', 'R']: self._refuser_prop(prop_cor) return self.gestion_corrections(contenu)
def _supprimer_compte(self, contenu): gestionnaire = Gestionnaire() liste_des_comptes = gestionnaire.read(Compte().get_chemin_fichier()) liste_des_pseudos = [ compte.get_pseudo() for compte in liste_des_comptes ] pseudo_compte_a_supprimer = input( '\nEntrez le pseudo du compte à supprimer\n> ') if pseudo_compte_a_supprimer not in liste_des_pseudos: input( "\nCe compte n'existe pas.\nAppuyez sur entrer pour continuer.\n" ) return Menu_Ouvert(contenu) if pseudo_compte_a_supprimer != contenu['pseudo']: confirmation = input( '\nConfirmation de la suppression du compte (O/N) ?\n> ') if confirmation in ['o', 'O']: gestionnaire.suppr_elm(Compte(pseudo_compte_a_supprimer)) input( "\nLe compte de {} a bien été supprimé.\nAppuyez sur entrer pour continuer." .format(pseudo_compte_a_supprimer)) else: input( "\nLa tentative de suppression de compte n'a pas abouti\nAppuyez sur entrer pour continuer.\n" ) else: input( '\nVous ne pouvez pas supprimer votre propre compte.\nAppuyez sur entrer pour continuer.' ) return Menu_Ouvert(contenu)
def _refuser_prop(self, prop_cor): """Méthode qui effectue la suppression de la proposition de correction avec une double confirmation""" gestionnaire = Gestionnaire() confirmation = input("\nConfirmation du refus de la proposition (O/N) ? #Cela supprimera la proposition#\n> ") if confirmation in ['o', 'O']: gestionnaire.suppr_elm(prop_cor) input("\nLa proposition a été supprimée !\nAppuyez sur entrer pour continuer.") else : input("\nVotre tentative de refus n'a pas abouti.\nAppuyez sur entrer pour continuer.")
def _valider_prop(self, prop_cor, section_du_texte): """Méthode qui valide la proposition de correction. Elle va remplacer le texte par la proposition. Puis, elle va supprimer la proposition.""" gestionnaire = Gestionnaire() confirmation = input("\nConfirmation de la validation du nouveau texte (O/N) ? #Cela supprimera l'ancien texte#\n> ") if confirmation in ['o', 'O']: section_du_texte.contenu['text'] = prop_cor.txt_prop gestionnaire.update(section_du_texte.donnees) gestionnaire.suppr_elm(prop_cor) input("\nLe texte a bien été modifié !\nAppuyez sur entrer pour continuer.") else : input("\nVotre tentative de validation n'a pas abouti.\nAppuyez sur entrer pour continuer.")
def _supprimer_compte(self, contenu): """A l'inverse de la création d'un compte, cette méthode permet de supprimer un compte. L'administrateur n'a besoin que de choisir dans une liste des pseudos des comptes. Cela ne requiert pas le mot de passe de l'acteur en question. Une fois effectué, le compte sera supprimé du gestionnaire.""" gestionnaire = Gestionnaire() liste_des_comptes = gestionnaire.read(Compte().get_chemin_fichier()) liste_des_pseudos = [ compte.get_pseudo() for compte in liste_des_comptes ] pseudo_compte_a_supprimer = input( '\nEntrez le pseudo du compte à supprimer\n> ') if pseudo_compte_a_supprimer not in liste_des_pseudos: input( "\nCe compte n'existe pas.\nAppuyez sur entrer pour continuer.\n" ) return Menu_Ouvert(contenu) if pseudo_compte_a_supprimer != contenu['pseudo']: confirmation = input( '\nConfirmation de la suppression du compte (O/N) ?\n> ') if confirmation in ['o', 'O']: gestionnaire.suppr_elm(Compte(pseudo_compte_a_supprimer)) input( "\nLe compte de {} a bien été supprimé.\nAppuyez sur entrer pour continuer." .format(pseudo_compte_a_supprimer)) else: input( "\nLa tentative de suppression de compte n'a pas abouti\nAppuyez sur entrer pour continuer.\n" ) else: input( '\nVous ne pouvez pas supprimer votre propre compte.\nAppuyez sur entrer pour continuer.' ) return Menu_Ouvert(contenu)