Commit 50692b41 authored by Jérémie Passerat's avatar Jérémie Passerat

Corrections bugs pour soutenance

parent f2a681bd
......@@ -698,6 +698,28 @@ class parser_contenu_xml(Resource):
return ContenuDao().previsualiser_xml_moodle(id_contenu["$oid"]), 200
@contenus.route("/parserContenuVersion/<id_contenu>")
@contenus.doc(params={'id_contenu': "L(id du contenu à parser"})
@contenus.doc(desciption="lire le xml du document pour en récupérer les données, version non courante")
class parser_contenu_xml_version(Resource):
@contenus.response(200, "contenu parsé")
@jwt_required()
def get(self, id_contenu):
id_contenu = json.loads(id_contenu)
version = request.args.get("version")
return ContenuDao().previsualiser_xml_moodle_version(id_contenu["$oid"], version), 200
@contenus.route("/recalibrerGit")
@contenus.doc(desciption="remettre un répertoire dans sa version courante")
class recalibrer_git(Resource):
@contenus.response(200, "répertoire recalibré")
@jwt_required()
def patch(self):
id_contenu = json.loads(request.json["id_contenu"])
return Utils().recalibrerGit(id_contenu["$oid"]), 200
@contenus.route("/modifierXML")
@contenus.doc(params={'id_contenu': "L'id du contenu à modifier"})
@contenus.doc(params={'elements_contenu': "Le détail du contenu"})
......@@ -793,6 +815,18 @@ class parser_contenu_xml(Resource):
return ContenuDao().previsualiser_xml_moodle(id_contenu_ec["$oid"], True), 200
@en_cours.route("/parserContenuEnCoursVersion/<id_contenu_ec>")
@en_cours.doc(params={'id_contenu_ec': "L(id du contenu en cours à parser"})
@en_cours.doc(desciption="lire le xml du document pour en récupérer les données")
class parser_contenu_xml(Resource):
@en_cours.response(200, "contenu parsé")
@jwt_required()
def get(self, id_contenu_ec):
id_contenu_ec = json.loads(id_contenu_ec)
version = request.args.get("version")
return ContenuDao().previsualiser_xml_moodle_version(id_contenu_ec["$oid"], version, True), 200
@en_cours.route("/getAuteurOrigineEnCours/<id_en_cours>")
@en_cours.doc(description="récupérer l'auteur d'origine d'un contenu en cours")
class GetAuteurOtigineContenuEnCours(Resource):
......
......@@ -81,3 +81,8 @@ class Utils:
# y ajouter le texte du contenu
myFile.write(nouveau_texte)
myFile.close()
def recalibrerGit(self, id_contenu):
from modele.contenu_dao import ContenuDao
version = ContenuDao().get_version_courante(id_contenu)
self.changer_version(id_contenu, version)
......@@ -167,10 +167,13 @@ class ContenuDao:
contenu_tiers["provenance"] = "tiers"
contenu_tiers["version"] = id_tiers[i][1]["version"]
note = self.recupererNoteContenu(id_tiers[i][0]["contenu"], id_tiers[i][1]["version"], auteur)
print("note : ", note)
if note == -1:
contenu_tiers["note_perso"] = "-"
print("ici")
# print("prout caca : " + contenu_tiers["note_perso"])
else:
print("là")
contenu_tiers["note_perso"] = note
contenus.append(contenu_tiers)
......@@ -251,6 +254,8 @@ class ContenuDao:
# @param la note associee au contenu
def supprimer_tiers(self, id_tiers, auteur, version, note):
note_contenu = self.recupererNoteContenu(id_tiers, auteur, version)
print("note : ", note_contenu)
# on distingue le cas ou une note a été donnée ou non
if note == "-":
self.base_donnees.utilisateur.update_one({"nom": auteur},
......@@ -730,6 +735,11 @@ class ContenuDao:
{"$set": {"historique": contenus}})
return json.dumps([cont['note'], cont['nbreNotes']])
# # Fonction qui permet de parser un contenu (de type XML - Moodle) pour une version donnée
def previsualiser_xml_moodle_version(self, id_contenu, version, en_cours=False):
Utils().changer_version(id_contenu, version)
return self.previsualiser_xml_moodle(id_contenu, en_cours)
# # Fonction qui permet de parser un contenu (de type XML - Moodle) -Fonction utile pour la prévisualisation &
# l'édition @param id_contenu l'id du contenu à parser @return un dictionnaire comprenant toutes les informations
# utiles
......@@ -1173,3 +1183,5 @@ class ContenuDao:
Utils().changer_texte_fichier(ObjectId(id_contenu), ET.tostring(root).decode("utf-8"),
elements_contenu["nom_question"])
return ET.tostring(root)
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment