champ=eval(input("""Voulez-vous \n 1: consulter la liste des films de la base de données \n 2: ajouter un film à la base de données \n 3: afficher une communication\n 4: modifier une séance\n"""))
print("Vous n'avez aucun film chargé pour le moment.\n")
rep=eval(input("Tapez \n 1: Charger un film à partir de la base de données \n 2: ajouter un nouveau film à la base de données \n 0: revenir au menu principal \n"))
ifrep==1:
self.selectFilm()
elifrep==2:
self.newFilm()
elifrep==0:
self.menu()
else:
print("Votre entrée n'est pas valide. Merci d'entrer quelque chose de possible.\n")
self.afficherFilm()
defcorrigerFilm(self):
ifself.filmCharge:
#recuperer les cles possibles
conn=sqlite3.connect("baseFilms.db")
conn.row_factory=sqlite3.Row
c=conn.cursor()
try:
c.execute("SELECT * FROM films")
keys=[a[0]forainc.description]
exceptExceptionase:
conn.rollback()
ifDEBUG:
raise(e)
finally:
conn.close()
#faire la modification
ifkeys:
print("Les champs possibles sont : ")
forkinkeys:
print(k)
nomAttr=input("Choisissez l'attribut que vous souhaitez modifier chez %s\n"%self.filmCharge.nom)
newValue=input("La valeur actuelle du champ %s est %s.\nVeuillez entrer la nouvelle valeur pour ce champ (et -1 si vous ne souhaitez finalement pas modifier le champ)\n"%(nomAttr,self.filmCharge.__getattr__(nomAttr)))
ifnewValue!="-1":
self.filmCharge.__setattr__(nomAttr,newValue)
else:
print("\nVous n'avez finalement pas modifié cet attribut.")
else:
print("\nLa connexion avec la base de données a planté, la modification n'a pas été effectuée")
#on retourne au reste de la navigation
rep=input("\nVoulez-vous\n 1: modifier une nouvelle fois le film %s\n 0: retourner au menu principal\n"%self.filmCharge.nom)
ifrep=="1":
self.corrigerFilm()
elifrep=="0":
self.menu()
else:
print("\nVous n'avez pas de film chargé à corriger. Veuillez en sélectionner un")
self.menu()
defcommunication(self):
self.filmEnCours()
rep=input("Voulez-vous afficher \n 1: l'article du bocal du film courant \n 2: l'article de blog du film courant \n 3: le calendrier du film courant \n 4: la communication Facebook du film courant \n 5: l'email du film courant \n 6: le calendrier des films à partir du film courant \n 7: changer le film sélectionné \n 0: revenir au menu principal \n")