OpenQuizz
Une application de gestion des contenus pédagogiques
contenu_dao.ContenuDao Class Reference
Collaboration diagram for contenu_dao.ContenuDao:

Public Member Functions

def ajouter_contenu (self, auteur, contenu_a_ecrire, titre, tags)
 Fonction permettant d'ajouter un contenu dans le panier de l'auteur. More...
 
def importer_contenu (self, auteur, file)
 Fonction qui permet d'importer un nouveau contenu.
 
def get_popularite (self, id_contenu)
 récupérer la popularité d'une version More...
 
def incrementer_popularite (self, id_contenu)
 incrémenter la popularité d'un contenu ou d'une de ses versions More...
 
def get_contenu_par_id (self, id_contenu)
 recherche d'un contenu par id (pour affichage de son contenu. More...
 
def id_dernier_contenu_ajoute (self)
 Récupérer l'id du dernier contenu ajouté More...
 
def get_contenus (self, auteur, perso, tiers, en_cours)
 recherche des contenus pour un auteur donné (son 'panier') More...
 
def get_contenus_tiers (self, auteur)
 FOnction permettant de récupérer les contenus tiers d'un auteur. More...
 
def get_contenus_non_auteur (self, auteur)
 Fonction permettant de charger tous les contenus 'publiés' n'appartenant pas à auteur (pour afficher sa banque) More...
 
def creer_tiers (self, auteur, id_contenu, version)
 FOnction de création d'un tiers. More...
 
def get_contenus_persos (self, auteur)
 FOnction permettant de récupérer les contenus persos d'un auteur. More...
 
def dissocier_contenu (self, id_contenu)
 l'auteur 'renie' son contenu, qui reste disponible dans le panier de ceux qui le possédent More...
 
def supprimer_contenu (self, id_contenu)
 permet de, soit renier, soit supprimer définitivement un auteur (et le fichier de contenu associé) More...
 
def supprimer_tiers (self, id_tiers, auteur, version, note)
 suppression défintive d'un tiers (de la référence) More...
 
def existe_en_tiers (self, id_contenu)
 fonction qui permet de savoir le nombre de fois qu'un contenu est présent en 'contenu tiers' chez d'autres auteurs More...
 
def creer_nouveau_contenu (self, id_demande_publication, auteur_en_cours)
 fonction qui permet de créer un contenu à partir d'une contenu en cours More...
 
def get_chemin_du_contenu (self, id_contenu)
 récupère le chemin d'un contenu More...
 
def get_version_courante (self, id_contenu)
 récupère la version en cours du contenu More...
 
def get_version_tiers_avec_id (self, id_contenu, auteur)
 récupère la version d'un contenu mis en tiers (ou 0 si ce contenu n'est pas sossédé en tiers) More...
 
def maj_contenu (self, id_contenu_en_cours, auteur=None, enCours=True)
 mise à jour d'un contenu More...
 
def consulter_un_contenu (self, id, auteur)
 lecture d'un contenu (version basique pour les tests) More...
 
def detruire_fichier_tmp (self, id, auteur)
 après fin de consultation, destruction du fichier temporaire généré More...
 
def is_anonyme (self, idContenu)
 Fonction permettant de déterminer si un contenu est "anonyme". More...
 
def get_tous_les_contenus (self)
 Récupérer tous les contenus. More...
 
def is_tiers_auteur (self, auteur, idContenu)
 
def maj_tiers (self, id_tiers, nouvelle_version, auteur, refuse=False)
 mettre à jour un contenu 'tiers' More...
 
def is_tiers_maj (self, auteur)
 Permet de savoir si au moins un tiers est mettable à jour pour un auteur. More...
 
def liste_tiers_maj (self, auteur)
 Permet de savoir si au moins un tiers est mettable à jour pour un auteur. More...
 
def get_commit_pour_une_version (self, id_contenu, version)
 Fonction permettant de récupérer le 'hash' d'un commit. More...
 
def get_tags_contenu (self, id_contenu)
 Fonction permettant de récupérer les tags associés à un contenu. More...
 
def changer_tags_contenus (self, id_contenu, tags)
 Mise à jour des tags associés au contenu. More...
 
def changer_titre (self, id_en_cours, nouveau_titre)
 Modification d'un titre d'un contenu personnel. More...
 
def creer_tag_libre (self, auteur, tag, id_contenu)
 Fonction permettant de créer un tag libre et de l'associer ou non à un contenu. More...
 
def supprimer_tag_libre (self, auteur, mon_tag)
 Fonction permettant de supprimer un tag libre. More...
 
def dissocier_tag_libre (self, auteur, mon_tag, id_contenu)
 Fonction permettant de dissocier un contenu d'un tag libre. More...
 
def associer_tag_libre (self, auteur, tag, id_contenu)
 Fonction permettant d'associer un contenu à un tag libre. More...
 
def recuperer_all_tags_libres (self, auteur)
 Fonction permettant de récupérer tous les tags libres d'un auteur. More...
 
def recuperer_tags_libres_contenu (self, id_contenu, auteur)
 Fonction permettant de récupérer les tags libres d'un auteur associés à un contenu en particulier. More...
 
def noterContenuTiers (self, id_contenu, version, auteur, note)
 Fonction permettant de noter un contenu (pour une version donnée) More...
 
def recupererNoteContenu (self, id_contenu, version, auteur)
 Fonction permettant de récupérer une note donnée. More...
 
def modifierMoyenneContenu (self, id_contenu, version, note)
 Fonction permettant de changer la moyenne d'une version d'un contenu à l'insertion d'une nouvelle note. More...
 

Static Public Attributes

 client = MongoClient('localhost', 27017)
 
string chemin = "/home/OpenQuizz/contenus/"
 
 gitUtils = GitUtils()
 
 base_donnees = client.squelette
 extraction d'une base de données. More...
 

Member Function Documentation

◆ ajouter_contenu()

def contenu_dao.ContenuDao.ajouter_contenu (   self,
  auteur,
  contenu_a_ecrire,
  titre,
  tags 
)

Fonction permettant d'ajouter un contenu dans le panier de l'auteur.

Parameters
l'auteuren cours
nom_fichierle nom du fichier associé au contenu
commitle 'hash' du commit associé (récupéré via git)

◆ associer_tag_libre()

def contenu_dao.ContenuDao.associer_tag_libre (   self,
  auteur,
  tag,
  id_contenu 
)

Fonction permettant d'associer un contenu à un tag libre.

Parameters
auteurl'auteur du nouveau tag
tagle tag concerné
id_contenul'id du contenu à associer au tag

◆ changer_tags_contenus()

def contenu_dao.ContenuDao.changer_tags_contenus (   self,
  id_contenu,
  tags 
)

Mise à jour des tags associés au contenu.

Parameters
id_contenul'id du contenu concerné
tagsles nouveaux tags

◆ changer_titre()

def contenu_dao.ContenuDao.changer_titre (   self,
  id_en_cours,
  nouveau_titre 
)

Modification d'un titre d'un contenu personnel.

Parameters
id_en_coursl'id du contenu
nouveau_titrele titre à changer

◆ consulter_un_contenu()

def contenu_dao.ContenuDao.consulter_un_contenu (   self,
  id,
  auteur 
)

lecture d'un contenu (version basique pour les tests)

Parameters
idl'id du contenu à consulter
auteurl'auteur souhaitant consulter le contenu

◆ creer_nouveau_contenu()

def contenu_dao.ContenuDao.creer_nouveau_contenu (   self,
  id_demande_publication,
  auteur_en_cours 
)

fonction qui permet de créer un contenu à partir d'une contenu en cours

Parameters
cheminle chemin du contenu
auteur_en_coursl'auteur du contenu en cours
id_contenu_en_coursl'id du contenu en cours

◆ creer_tag_libre()

def contenu_dao.ContenuDao.creer_tag_libre (   self,
  auteur,
  tag,
  id_contenu 
)

Fonction permettant de créer un tag libre et de l'associer ou non à un contenu.

Parameters
auteurl'auteur du nouveau tag
tagle tag créé
id_contenul'id du contenu associé (potentiellement vide)

◆ creer_tiers()

def contenu_dao.ContenuDao.creer_tiers (   self,
  auteur,
  id_contenu,
  version 
)

FOnction de création d'un tiers.

Parameters
auteurl'auteur en cours
id_contenule contenu à ajouter en tiers
versionla version dans laquelle le contenu a été pris

◆ detruire_fichier_tmp()

def contenu_dao.ContenuDao.detruire_fichier_tmp (   self,
  id,
  auteur 
)

après fin de consultation, destruction du fichier temporaire généré

Parameters
idl'id du contenu consulté
auteurl'auteur auant effectué la consultation

◆ dissocier_contenu()

def contenu_dao.ContenuDao.dissocier_contenu (   self,
  id_contenu 
)

l'auteur 'renie' son contenu, qui reste disponible dans le panier de ceux qui le possédent

Parameters
auteurl'id du contenu à renier

◆ dissocier_tag_libre()

def contenu_dao.ContenuDao.dissocier_tag_libre (   self,
  auteur,
  mon_tag,
  id_contenu 
)

Fonction permettant de dissocier un contenu d'un tag libre.

Parameters
auteurl'auteur du nouveau tag
tagle tag concerné
id_contenul'id du contenu à dissocier

◆ existe_en_tiers()

def contenu_dao.ContenuDao.existe_en_tiers (   self,
  id_contenu 
)

fonction qui permet de savoir le nombre de fois qu'un contenu est présent en 'contenu tiers' chez d'autres auteurs

Parameters
auteurl'id du contenu à 'tester'
Returns
le nombre de contenus tiers associés

◆ get_chemin_du_contenu()

def contenu_dao.ContenuDao.get_chemin_du_contenu (   self,
  id_contenu 
)

récupère le chemin d'un contenu

Parameters
id_contenul'id du contenu recherché
Returns
le chemin désiré

◆ get_commit_pour_une_version()

def contenu_dao.ContenuDao.get_commit_pour_une_version (   self,
  id_contenu,
  version 
)

Fonction permettant de récupérer le 'hash' d'un commit.

Parameters
id_contenul'id du contenu concerné
versionla version pour laquelle on veux récupérer le commit
Returns
le commit associé à la version

◆ get_contenu_par_id()

def contenu_dao.ContenuDao.get_contenu_par_id (   self,
  id_contenu 
)

recherche d'un contenu par id (pour affichage de son contenu.

charge la version courante

Parameters
id_contenul'id du contenu recherché

◆ get_contenus()

def contenu_dao.ContenuDao.get_contenus (   self,
  auteur,
  perso,
  tiers,
  en_cours 
)

recherche des contenus pour un auteur donné (son 'panier')

Parameters
auteurl'auteur des contenus
persotrue si contenus persos a charger, false sinon
tierstrue si contenus tiers a charger, false sinon
en_vourstrue si contenus en cours a charger, false sinon
Returns
tous les contenus présents dans le panier de l'auteur

◆ get_contenus_non_auteur()

def contenu_dao.ContenuDao.get_contenus_non_auteur (   self,
  auteur 
)

Fonction permettant de charger tous les contenus 'publiés' n'appartenant pas à auteur (pour afficher sa banque)

Parameters
auteurl'auteur en cours
Returns
tous les contenus non présents dans le panier de l'auteur

◆ get_contenus_persos()

def contenu_dao.ContenuDao.get_contenus_persos (   self,
  auteur 
)

FOnction permettant de récupérer les contenus persos d'un auteur.

Parameters
auteurl'auteur en question return tous les contenus personnels de l'auteur

◆ get_contenus_tiers()

def contenu_dao.ContenuDao.get_contenus_tiers (   self,
  auteur 
)

FOnction permettant de récupérer les contenus tiers d'un auteur.

Parameters
auteurl'auteur en question return les contenus tiers de l'auteur (_id et version)

◆ get_popularite()

def contenu_dao.ContenuDao.get_popularite (   self,
  id_contenu 
)

récupérer la popularité d'une version

Parameters
id_contenul'id du contenu
versionle numéro de version

◆ get_tags_contenu()

def contenu_dao.ContenuDao.get_tags_contenu (   self,
  id_contenu 
)

Fonction permettant de récupérer les tags associés à un contenu.

Parameters
id_contenul'id du contenu concerné
Returns
les tags associés au contenu

◆ get_tous_les_contenus()

def contenu_dao.ContenuDao.get_tous_les_contenus (   self)

Récupérer tous les contenus.

Returns
tous les contenus

◆ get_version_courante()

def contenu_dao.ContenuDao.get_version_courante (   self,
  id_contenu 
)

récupère la version en cours du contenu

Parameters
id_contenul'id du contenu
Returns
la version courante du contenu

◆ get_version_tiers_avec_id()

def contenu_dao.ContenuDao.get_version_tiers_avec_id (   self,
  id_contenu,
  auteur 
)

récupère la version d'un contenu mis en tiers (ou 0 si ce contenu n'est pas sossédé en tiers)

Parameters
auteurl'auteur concerné
id_contenule contenu recherché
Returns
la version du tiers id_contenu (ou 0)

◆ id_dernier_contenu_ajoute()

def contenu_dao.ContenuDao.id_dernier_contenu_ajoute (   self)

Récupérer l'id du dernier contenu ajouté

Returns
l'id du dernier contenu (sous la forme d'une chaine de caracteres)

◆ incrementer_popularite()

def contenu_dao.ContenuDao.incrementer_popularite (   self,
  id_contenu 
)

incrémenter la popularité d'un contenu ou d'une de ses versions

Parameters
id_contenul'id du contenu
versionle numéro de version incrémenté

◆ is_anonyme()

def contenu_dao.ContenuDao.is_anonyme (   self,
  idContenu 
)

Fonction permettant de déterminer si un contenu est "anonyme".

Parameters
idCOntenule contenu à tester
Returns
booléen true.false si le contenu est anonyme ou pas

◆ is_tiers_maj()

def contenu_dao.ContenuDao.is_tiers_maj (   self,
  auteur 
)

Permet de savoir si au moins un tiers est mettable à jour pour un auteur.

Parameters
auteurl'auteur concerné
Returns
un booléen indiquant si on a des mises à jour faisables

◆ liste_tiers_maj()

def contenu_dao.ContenuDao.liste_tiers_maj (   self,
  auteur 
)

Permet de savoir si au moins un tiers est mettable à jour pour un auteur.

Parameters
auteurl'auteur concerné
Returns
la liste des tiers mettables à jour

◆ maj_contenu()

def contenu_dao.ContenuDao.maj_contenu (   self,
  id_contenu_en_cours,
  auteur = None,
  enCours = True 
)

mise à jour d'un contenu

Parameters
idContenul'id du contenu à mettre à jour
nomBranchele nom de la branche
auteurl'auteur du contenu à mettre à jour
enCourspermet de déterminer si l'origine de la maj est un contenu en cours ou une demande de publication

◆ maj_tiers()

def contenu_dao.ContenuDao.maj_tiers (   self,
  id_tiers,
  nouvelle_version,
  auteur,
  refuse = False 
)

mettre à jour un contenu 'tiers'

Parameters
auteurl'auteur concerné
id_favorile favori à maj
nouvelle_versionle numero de la nouvelle version
refuseindique si la mise a jour est acceptee ou refusee

◆ modifierMoyenneContenu()

def contenu_dao.ContenuDao.modifierMoyenneContenu (   self,
  id_contenu,
  version,
  note 
)

Fonction permettant de changer la moyenne d'une version d'un contenu à l'insertion d'une nouvelle note.

Parameters
id_contenul'id du contenu concerné
versionla version du contenu notée
notela note affectée au contenu

◆ noterContenuTiers()

def contenu_dao.ContenuDao.noterContenuTiers (   self,
  id_contenu,
  version,
  auteur,
  note 
)

Fonction permettant de noter un contenu (pour une version donnée)

Parameters
id_contenul'id du contenu concerné
versionla version du contenu notée
auteurl'auteur qui met la note
notela note affectée au contenu

◆ recuperer_all_tags_libres()

def contenu_dao.ContenuDao.recuperer_all_tags_libres (   self,
  auteur 
)

Fonction permettant de récupérer tous les tags libres d'un auteur.

Parameters
auteurl'auteur du nouveau tag
Returns
les tags libres de l'auteur

◆ recuperer_tags_libres_contenu()

def contenu_dao.ContenuDao.recuperer_tags_libres_contenu (   self,
  id_contenu,
  auteur 
)

Fonction permettant de récupérer les tags libres d'un auteur associés à un contenu en particulier.

Parameters
auteurl'auteur du nouveau tag
id_contenule contenu associé
Returns
les tags libres de l'auteur

◆ recupererNoteContenu()

def contenu_dao.ContenuDao.recupererNoteContenu (   self,
  id_contenu,
  version,
  auteur 
)

Fonction permettant de récupérer une note donnée.

Parameters
id_contenul'id du contenu concerné
versionla version du contenu notée
auteurl'auteur qui met la note

◆ supprimer_contenu()

def contenu_dao.ContenuDao.supprimer_contenu (   self,
  id_contenu 
)

permet de, soit renier, soit supprimer définitivement un auteur (et le fichier de contenu associé)

Parameters
id_contenul'id du contenu à supprimer

◆ supprimer_tag_libre()

def contenu_dao.ContenuDao.supprimer_tag_libre (   self,
  auteur,
  mon_tag 
)

Fonction permettant de supprimer un tag libre.

Parameters
auteurl'auteur du nouveau tag
tagle tag a supprimer
id_contenul'id du contenu associé (potentiellement vide)

◆ supprimer_tiers()

def contenu_dao.ContenuDao.supprimer_tiers (   self,
  id_tiers,
  auteur,
  version,
  note 
)

suppression défintive d'un tiers (de la référence)

Parameters
id_tiersl'id du tiers à supprimer
auteurl'auteur concerné
versionla version du tiers à supprimer
lanote associee au contenu

Member Data Documentation

◆ base_donnees

contenu_dao.ContenuDao.base_donnees = client.squelette
static

extraction d'une base de données.

Si elle n'existe pas, elle esst créée


The documentation for this class was generated from the following file: