Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
O
OpenQuizz
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
10
Issues
10
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Weber Rodolphe
OpenQuizz
Commits
37c8db99
Commit
37c8db99
authored
May 07, 2021
by
Jérémie Passerat
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Fonctions de maj finalisées
parent
658047ac
Changes
8
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
86 additions
and
54 deletions
+86
-54
.~lock.Scenarios.odt#
.~lock.Scenarios.odt#
+1
-0
.~lock.Scénarios.odt#
.~lock.Scénarios.odt#
+0
-2
Menu.py
Menu.py
+43
-27
Scenarios.odt
Scenarios.odt
+0
-0
Scénarios.odt
Scénarios.odt
+0
-0
Utils.py
Utils.py
+41
-23
UtilsGit.py
UtilsGit.py
+1
-2
Contenu1
auteur_2/Contenu1
+0
-0
No files found.
.~lock.Scenarios.odt#
0 → 100644
View file @
37c8db99
,passerat,weber-Latitude-5520,07.05.2021 08:50,file:///home/passerat/.config/libreoffice/4;
\ No newline at end of file
.~lock.Scénarios.odt#
deleted
100644 → 0
View file @
658047ac
,passerat,weber-Latitude-5520,06.05.2021 15:12,file:///home/passerat/.config/libreoffice/4;
\ No newline at end of file
Menu.py
View file @
37c8db99
...
@@ -99,7 +99,7 @@ class Menu:
...
@@ -99,7 +99,7 @@ class Menu:
print
(
"Bonjour "
,
self
.
auteur_en_cours
)
print
(
"Bonjour "
,
self
.
auteur_en_cours
)
print
(
"Menu des contenus personnels :"
)
print
(
"Menu des contenus personnels :"
)
questions
=
Utils
.
get_contenus
(
self
.
auteur_en_cours
,
True
)
questions
=
Utils
.
get_contenus
(
self
.
auteur_en_cours
,
True
)
print
(
f
"Voici les contenus que vous avez
{str(questions.count())}
: "
)
print
(
f
"Voici les contenus que vous avez
({str(questions.count())})
: "
)
if
questions
.
count
()
>
0
:
if
questions
.
count
()
>
0
:
self
.
afficher_contenus
(
questions
)
self
.
afficher_contenus
(
questions
)
...
@@ -109,7 +109,7 @@ class Menu:
...
@@ -109,7 +109,7 @@ class Menu:
if
questions
.
count
()
>
0
:
if
questions
.
count
()
>
0
:
self
.
afficher_contenus
(
questions
)
self
.
afficher_contenus
(
questions
)
print
(
"c : consulter le détail d'un contenu"
)
print
(
"c : consulter le détail d'un contenu"
)
#print("m : modifier un contenu")
#
print("m : modifier un contenu")
print
(
"s : supprimer un contenu"
)
print
(
"s : supprimer un contenu"
)
print
(
"Pour manipuler un contenu, Saisir le numero du contenu puis l'action désirée (par ex : 1c)"
)
print
(
"Pour manipuler un contenu, Saisir le numero du contenu puis l'action désirée (par ex : 1c)"
)
...
@@ -141,15 +141,19 @@ class Menu:
...
@@ -141,15 +141,19 @@ class Menu:
if
action
==
'c'
:
if
action
==
'c'
:
os
.
system
(
'clear'
)
os
.
system
(
'clear'
)
print
(
"Bonjour "
,
self
.
auteur_en_cours
)
print
(
"Bonjour "
,
self
.
auteur_en_cours
)
Utils
.
changer_version
(
id
,
0
,
"master"
)
if
Utils
.
get_version_courante
(
id
)
!=
1
:
if
Utils
.
get_version_courante
(
id
)
!=
1
:
print
(
"Je choisis la version que je veux : (entre 1 et"
,
Utils
.
get_version_courante
(
id
),
")"
)
print
(
"Je choisis la version que je veux : (entre 1 et"
,
Utils
.
get_version_courante
(
id
),
")"
)
choix
=
int
(
input
())
choix
=
int
(
input
())
print
(
"Je veux charger la version "
,
choix
)
print
(
"Je veux charger la version "
,
choix
)
# commitVersion = Utils.getCommitPourUneVersion(choix, contenu)
# commitVersion = Utils.getCommitPourUneVersion(choix, contenu)
Utils
.
changer_version
(
id
,
choix
)
Utils
.
changer_version
(
id
,
choix
)
else
:
version_courante
=
int
(
Utils
.
get_version_courante
(
id
))
Utils
.
changer_version
(
version_courante
,
id
)
print
(
"Voici le détail de votre contenu n°"
,
id
)
print
(
"Voici le détail de votre contenu n°"
,
id
)
Utils
.
consulter_un_contenu
(
id
,
self
.
auteur_en_cours
)
Utils
.
consulter_un_contenu
(
id
,
self
.
auteur_en_cours
)
#Utils.affichage(Utils.get_chemin_du_contenu(id))
#
Utils.affichage(Utils.get_chemin_du_contenu(id))
print
(
"Appuyez sur m pour modifier le fichier ou sur q pour quitter"
)
print
(
"Appuyez sur m pour modifier le fichier ou sur q pour quitter"
)
choix
=
input
()
choix
=
input
()
...
@@ -216,11 +220,9 @@ class Menu:
...
@@ -216,11 +220,9 @@ class Menu:
def
menu_contenus_tiers
(
self
):
def
menu_contenus_tiers
(
self
):
os
.
system
(
'clear'
)
os
.
system
(
'clear'
)
print
(
"Bonjour "
,
self
.
auteur_en_cours
)
print
(
"Bonjour "
,
self
.
auteur_en_cours
)
print
(
"Menu des contenus
personnel
s :"
)
print
(
"Menu des contenus
tier
s :"
)
print
(
f
"Voici les contenus tiers que vous avez {len(Utils.get_contenus_tiers(self.auteur_en_cours))}: "
)
print
(
f
"Voici les contenus tiers que vous avez {len(Utils.get_contenus_tiers(self.auteur_en_cours))}: "
)
if
len
(
Utils
.
get_contenus_tiers
(
self
.
auteur_en_cours
)):
if
len
(
Utils
.
get_contenus_tiers
(
self
.
auteur_en_cours
)):
for
(
id
,
version
)
in
Utils
.
get_contenus_tiers
(
self
.
auteur_en_cours
):
for
(
id
,
version
)
in
Utils
.
get_contenus_tiers
(
self
.
auteur_en_cours
):
self
.
afficher_contenus_tiers
(
self
.
afficher_contenus_tiers
(
...
@@ -244,6 +246,7 @@ class Menu:
...
@@ -244,6 +246,7 @@ class Menu:
if
action
==
'c'
:
if
action
==
'c'
:
os
.
system
(
'clear'
)
os
.
system
(
'clear'
)
print
(
"Bonjour "
,
self
.
auteur_en_cours
)
print
(
"Bonjour "
,
self
.
auteur_en_cours
)
Utils
.
changer_version
(
id
,
0
,
"master"
)
version_tiers
=
Utils
.
get_version_tiers_avec_id
(
id
,
self
.
auteur_en_cours
)
version_tiers
=
Utils
.
get_version_tiers_avec_id
(
id
,
self
.
auteur_en_cours
)
print
(
"Voici le détail de votre tiers n°"
,
id
,
"dans sa version "
,
version_tiers
)
print
(
"Voici le détail de votre tiers n°"
,
id
,
"dans sa version "
,
version_tiers
)
Utils
.
changer_version
(
id
,
version_tiers
)
Utils
.
changer_version
(
id
,
version_tiers
)
...
@@ -290,6 +293,7 @@ class Menu:
...
@@ -290,6 +293,7 @@ class Menu:
def
menu_contenus_en_cours
(
self
):
def
menu_contenus_en_cours
(
self
):
os
.
system
(
'clear'
)
os
.
system
(
'clear'
)
print
(
"Bonjour "
,
self
.
auteur_en_cours
)
print
(
"Bonjour "
,
self
.
auteur_en_cours
)
print
(
"Menu des contenus en cours :"
)
contenus
=
Utils
.
get_contenus_en_cours
(
self
.
auteur_en_cours
)
contenus
=
Utils
.
get_contenus_en_cours
(
self
.
auteur_en_cours
)
print
(
f
"Voici les contenus en cours que vous avez ({contenus.count()}): "
)
print
(
f
"Voici les contenus en cours que vous avez ({contenus.count()}): "
)
...
@@ -332,19 +336,23 @@ class Menu:
...
@@ -332,19 +336,23 @@ class Menu:
input
()
input
()
self
.
menu_contenus_en_cours
()
self
.
menu_contenus_en_cours
()
elif
action
==
's'
:
elif
action
==
's'
:
Utils
.
supprimer_contenu_en_cours
(
int
(
id
))
Utils
.
supprimer_contenu_en_cours
(
id
)
print
(
"Contenu en cours "
,
id
,
" supprimé"
)
print
(
"Appuyer sur q pour revenir en arrière : "
)
print
(
"Appuyer sur q pour revenir en arrière : "
)
input
()
input
()
self
.
menu_contenus_en_cours
()
self
.
menu_contenus_en_cours
()
elif
action
==
'v'
:
elif
action
==
'v'
:
self
.
valider_modification
(
int
(
id
))
self
.
valider_modification
(
id
)
Utils
.
supprimer_contenu_en_cours
(
int
(
id
))
print
(
"La demande de validation du contenu a été effectuée"
)
print
(
"La demande de validation du contenu a été effectuée"
)
# Si le contenu validé est d'origine personnelle on peut supprimer le en cours (sinon on le conserve)
print
(
"Appuyer sur q pour revenir en arrière : "
)
if
not
Utils
.
is_tiers_auteur
(
self
.
auteur_en_cours
,
id
):
Utils
.
supprimer_contenu_en_cours
(
int
(
id
))
print
(
"Appuyer sur q pour revenir en arriere : "
)
input
()
input
()
self
.
menu_contenus_en_cours
()
self
.
menu_contenus_en_cours
()
elif
action
==
'n'
:
elif
action
==
'n'
:
print
(
"Is favori :"
,
Utils
.
is_tiers_auteur
(
self
.
auteur_en_cours
,
id
))
print
(
"Is favori :"
,
Utils
.
is_tiers_auteur
(
self
.
auteur_en_cours
,
id
))
if
not
Utils
.
is_tiers_auteur
(
self
.
auteur_en_cours
,
id
):
if
not
Utils
.
is_tiers_auteur
(
self
.
auteur_en_cours
,
id
):
contenu_associe
=
Utils
.
get_id_contenu_associe_a_un_en_cours
(
int
(
id
))
contenu_associe
=
Utils
.
get_id_contenu_associe_a_un_en_cours
(
int
(
id
))
chemin
=
Utils
.
get_chemin_du_contenu
(
contenu_associe
)
chemin
=
Utils
.
get_chemin_du_contenu
(
contenu_associe
)
...
@@ -373,8 +381,9 @@ class Menu:
...
@@ -373,8 +381,9 @@ class Menu:
def
menu_contenus_banque
(
self
):
def
menu_contenus_banque
(
self
):
os
.
system
(
'clear'
)
os
.
system
(
'clear'
)
print
(
"Bonjour "
,
self
.
auteur_en_cours
)
print
(
"Bonjour "
,
self
.
auteur_en_cours
)
print
(
"Menu des contenus en banque :"
)
print
(
print
(
f
"Il y a {len(Utils.get_contenus_tiers(self.auteur_en_cours))} contenus présents
en banque
(excepteption des votres): "
)
f
"Il y a {len(Utils.get_contenus_tiers(self.auteur_en_cours))} contenus présents (excepteption des votres): "
)
questions
=
Utils
.
get_contenus
(
self
.
auteur_en_cours
,
False
)
questions
=
Utils
.
get_contenus
(
self
.
auteur_en_cours
,
False
)
print
(
"La banque possède actuellement"
,
questions
.
count
(),
" contenu(s)"
)
print
(
"La banque possède actuellement"
,
questions
.
count
(),
" contenu(s)"
)
...
@@ -384,7 +393,6 @@ class Menu:
...
@@ -384,7 +393,6 @@ class Menu:
print
(
"Actions disponibles : "
)
print
(
"Actions disponibles : "
)
print
(
"q : revenir au menu des actions"
)
print
(
"q : revenir au menu des actions"
)
if
questions
.
count
()
>
0
:
if
questions
.
count
()
>
0
:
print
(
"c pour consulter le contenu"
)
print
(
"c pour consulter le contenu"
)
print
(
"t pour mettre un contenu dans ses contenu tiers"
)
print
(
"t pour mettre un contenu dans ses contenu tiers"
)
...
@@ -398,7 +406,7 @@ class Menu:
...
@@ -398,7 +406,7 @@ class Menu:
id
=
int
(
choix
[:
len
(
choix
)
-
1
])
id
=
int
(
choix
[:
len
(
choix
)
-
1
])
action
=
choix
[
len
(
choix
)
-
1
:]
action
=
choix
[
len
(
choix
)
-
1
:]
if
action
==
'c'
:
if
action
==
'c'
:
Utils
.
changer_version
(
id
,
0
,
Utils
.
get_branche_contenu_en_cours
(
id
)
)
Utils
.
changer_version
(
id
,
0
,
"master"
)
if
Utils
.
get_version_courante
(
id
)
!=
1
:
if
Utils
.
get_version_courante
(
id
)
!=
1
:
print
(
"Je choisis la version que je veux : (entre 1 et"
,
Utils
.
get_version_courante
(
id
),
")"
)
print
(
"Je choisis la version que je veux : (entre 1 et"
,
Utils
.
get_version_courante
(
id
),
")"
)
choix
=
int
(
input
())
choix
=
int
(
input
())
...
@@ -415,7 +423,7 @@ class Menu:
...
@@ -415,7 +423,7 @@ class Menu:
print
(
"Appuyer sur q pour aller aux contenus tiers : "
)
print
(
"Appuyer sur q pour aller aux contenus tiers : "
)
input
()
input
()
self
.
menu_contenus_tiers
()
self
.
menu_contenus_tiers
()
else
:
else
:
self
.
menu_contenus_banque
()
self
.
menu_contenus_banque
()
elif
action
==
't'
:
elif
action
==
't'
:
Utils
.
mettre_contenu_en_tiers
(
id
,
self
.
auteur_en_cours
)
Utils
.
mettre_contenu_en_tiers
(
id
,
self
.
auteur_en_cours
)
...
@@ -464,7 +472,6 @@ class Menu:
...
@@ -464,7 +472,6 @@ class Menu:
print
(
"n : créer une évaluation"
)
print
(
"n : créer une évaluation"
)
if
evaluations
.
count
()
>
0
:
if
evaluations
.
count
()
>
0
:
print
(
"c pour consulter l'évaluation"
)
print
(
"c pour consulter l'évaluation"
)
print
(
"s pour supprimer l'évaluation"
)
print
(
"s pour supprimer l'évaluation"
)
print
(
"Entrer l'id de l'évaluation, puis une lettre d'action (ou directement q pour quitter)"
)
print
(
"Entrer l'id de l'évaluation, puis une lettre d'action (ou directement q pour quitter)"
)
...
@@ -552,7 +559,7 @@ class Menu:
...
@@ -552,7 +559,7 @@ class Menu:
# mise à jour de contenus personnels
# mise à jour de contenus personnels
os
.
system
(
'clear'
)
os
.
system
(
'clear'
)
publications
=
Utils
.
get_demandes_pub
(
self
.
auteur_en_cours
,
False
)
publications
=
Utils
.
get_demandes_pub
(
self
.
auteur_en_cours
,
False
)
print
(
"Vous avez "
,
publications
.
count
(),
"mises à jour disponibles"
)
print
(
"Vous avez "
,
publications
.
count
(),
"mises à jour disponibles"
)
if
publications
.
count
()
>
0
:
if
publications
.
count
()
>
0
:
for
pub
in
publications
:
for
pub
in
publications
:
etat
=
pub
[
"etat"
]
etat
=
pub
[
"etat"
]
...
@@ -574,10 +581,8 @@ class Menu:
...
@@ -574,10 +581,8 @@ class Menu:
id
=
int
(
choix
[:
len
(
choix
)
-
1
])
id
=
int
(
choix
[:
len
(
choix
)
-
1
])
action
=
choix
[
len
(
choix
)
-
1
:]
action
=
choix
[
len
(
choix
)
-
1
:]
if
action
==
'o'
or
action
==
'n'
:
if
action
==
'o'
or
action
==
'n'
:
id
=
choix
[
0
:
len
(
choix
)
-
1
]
Utils
.
gerer_demande_pub
(
id
,
action
,
Utils
.
get_auteur_demande_publication
(
id
))
choix
=
choix
[
len
(
choix
)
-
1
:]
if
action
==
'o'
:
Utils
.
gerer_demande_pub
(
id
,
action
)
if
choix
==
'o'
:
decision
=
"acceptée"
decision
=
"acceptée"
else
:
else
:
decision
=
"refusée"
decision
=
"refusée"
...
@@ -590,7 +595,8 @@ class Menu:
...
@@ -590,7 +595,8 @@ class Menu:
Utils
.
changer_version
(
id
,
0
,
Utils
.
get_branche_contenu_en_cours
(
id
))
Utils
.
changer_version
(
id
,
0
,
Utils
.
get_branche_contenu_en_cours
(
id
))
print
(
"Voici le contenu associé à la demande de publication : "
)
print
(
"Voici le contenu associé à la demande de publication : "
)
branche_contenu_en_cours
=
Utils
.
get_branche_contenu_en_cours
(
id
)
branche_contenu_en_cours
=
Utils
.
get_branche_contenu_en_cours
(
id
)
Utils
.
changer_version
(
Utils
.
get_id_contenu_associe_a_un_en_cours
(
id
),
0
,
branche_contenu_en_cours
)
Utils
.
changer_version
(
Utils
.
get_id_contenu_associe_a_un_en_cours
(
id
),
0
,
branche_contenu_en_cours
)
Utils
.
consulter_un_contenu
(
id
,
self
.
auteur_en_cours
)
Utils
.
consulter_un_contenu
(
id
,
self
.
auteur_en_cours
)
print
(
"Appuyer sur q pour revenir en arrière : "
)
print
(
"Appuyer sur q pour revenir en arrière : "
)
input
()
input
()
...
@@ -616,7 +622,7 @@ class Menu:
...
@@ -616,7 +622,7 @@ class Menu:
if
nbre_favoris
>
0
:
if
nbre_favoris
>
0
:
Utils
.
liste_maj_tiers
(
self
.
auteur_en_cours
)
Utils
.
liste_maj_tiers
(
self
.
auteur_en_cours
)
print
(
"Appuyez sur q pour revenir en arriere"
)
print
(
"Appuyez sur q pour revenir en arriere"
)
else
:
else
:
print
(
"Vous n'avez aucun favori possédant une mise à jour, appuyez sur q pour revenir en arriere"
)
print
(
"Vous n'avez aucun favori possédant une mise à jour, appuyez sur q pour revenir en arriere"
)
input
()
input
()
self
.
menu_de_maj
()
self
.
menu_de_maj
()
...
@@ -629,20 +635,27 @@ class Menu:
...
@@ -629,20 +635,27 @@ class Menu:
if
choix
==
'p'
:
if
choix
==
'p'
:
os
.
system
(
'clear'
)
os
.
system
(
'clear'
)
publications
=
Utils
.
get_demandes_pub
(
self
.
auteur_en_cours
,
True
)
publications
=
Utils
.
get_demandes_pub
(
self
.
auteur_en_cours
,
True
)
print
(
"Vous avez"
,
publications
.
count
(),
" demandes de publication en cours"
)
print
(
"Vous avez"
,
publications
.
count
(),
" demandes de publication en cours"
)
for
pub
in
publications
:
for
pub
in
publications
:
id_pub
=
pub
[
"id"
]
id_pub
=
pub
[
"id"
]
print
(
"
auteur d'origine :"
,
pub
[
"auteurContenu"
],
"idDemandePublication : "
,
pub
[
"id
"
],
"date : "
,
print
(
"
idDemandePublication : "
,
pub
[
"id"
],
"auteur d'origine :"
,
pub
[
"auteurContenu
"
],
"date : "
,
pub
[
"date"
],
pub
[
"date"
],
"etat : "
,
pub
[
"etat"
])
"etat : "
,
pub
[
"etat"
])
if
pub
[
"etat"
]
==
"accepté"
:
print
(
"Votre publication a été acceptée. Le contenu tiers correspondant a été mis à jours"
)
Utils
.
supprimer_publication
(
pub
[
"id"
])
#Utils.supprimer_contenu_en_cours(Utils.get_id_contenu_en_cours_associe_a_une_publication(pub['id']))
if
pub
[
"etat"
]
==
"refus"
:
if
pub
[
"etat"
]
==
"refus"
:
print
(
"Actions possibles : "
)
print
(
"Actions possibles : "
)
print
(
"n : creer un nouveau contenu a partir de celui ci"
)
print
(
"n : creer un nouveau contenu a partir de celui ci"
)
print
(
"s : supprimer le contenu"
)
print
(
"s : supprimer le contenu"
)
print
(
"c : (non disponible) conserver le contenu en l'état"
)
print
(
"q : remettre ce choix à plus tard"
)
print
(
"q : remettre ce choix à plus tard"
)
choix
=
input
()
choix
=
input
()
print
(
"Le choix que je fais : "
,
choix
)
if
choix
==
'n'
:
if
choix
==
'n'
:
id_en_cours
=
Utils
.
get_id_contenu_en_cours_associe_a_une_publication
(
id_pub
)
id_en_cours
=
Utils
.
get_id_contenu_en_cours_associe_a_une_publication
(
id_pub
)
print
(
"L'id du contenu en cours est : "
,
id_en_cours
)
contenu_associe
=
Utils
.
get_id_contenu_associe_a_un_en_cours
(
id_en_cours
)
contenu_associe
=
Utils
.
get_id_contenu_associe_a_un_en_cours
(
id_en_cours
)
chemin
=
Utils
.
get_chemin_du_contenu
(
contenu_associe
)
chemin
=
Utils
.
get_chemin_du_contenu
(
contenu_associe
)
...
@@ -652,10 +665,13 @@ class Menu:
...
@@ -652,10 +665,13 @@ class Menu:
versionFavori
=
Utils
.
get_version_tiers_avec_id
(
contenu_associe
,
self
.
auteur_en_cours
)
versionFavori
=
Utils
.
get_version_tiers_avec_id
(
contenu_associe
,
self
.
auteur_en_cours
)
Utils
.
supprimer_tiers
(
contenu_associe
,
self
.
auteur_en_cours
,
versionFavori
)
Utils
.
supprimer_tiers
(
contenu_associe
,
self
.
auteur_en_cours
,
versionFavori
)
print
(
"Vous venez de créer un nouveau contenu"
)
print
(
"Vous venez de créer un nouveau contenu"
)
Utils
.
supprimer_publication
(
pub
[
"id"
])
sleep
(
2
)
sleep
(
2
)
self
.
menu_contenus_personnels
()
self
.
menu_contenus_personnels
()
elif
choix
==
's'
:
elif
choix
==
's'
:
Utils
.
supprimer_contenu_en_cours
(
Utils
.
get_id_contenu_en_cours_associe_a_une_publication
(
pub
[
"id"
]))
Utils
.
supprimer_contenu_en_cours
(
Utils
.
get_id_contenu_en_cours_associe_a_une_publication
(
pub
[
"id"
]))
Utils
.
supprimer_publication
(
pub
[
"id"
])
elif
choix
==
'q'
:
elif
choix
==
'q'
:
self
.
menu_de_maj
()
self
.
menu_de_maj
()
print
(
"Appuyer sur q pour revenir en arrière : "
)
print
(
"Appuyer sur q pour revenir en arrière : "
)
...
...
Scenarios.odt
0 → 100644
View file @
37c8db99
File added
Scénarios.odt
deleted
100644 → 0
View file @
658047ac
File deleted
Utils.py
View file @
37c8db99
...
@@ -471,18 +471,16 @@ class Utils:
...
@@ -471,18 +471,16 @@ class Utils:
@
staticmethod
@
staticmethod
def
changer_version
(
idContenu
,
version
,
nomBranche
=
""
):
def
changer_version
(
idContenu
,
version
,
nomBranche
=
""
):
# si la version courante est la 1 on a pas besoin de faire la suite
# on recupere le chemin du fichier associé au contenu (dans les 2 cas)
if
Utils
.
get_version_courante
(
idContenu
)
!=
1
:
chemin
=
Utils
.
get_chemin_du_contenu
(
idContenu
)
# on recupere le chemin du fichier associé au contenu (dans les 2 cas)
repertoire
=
chemin
[:
chemin
.
rfind
(
"/"
)
+
1
]
chemin
=
Utils
.
get_chemin_du_contenu
(
idContenu
)
repertoire
=
chemin
[:
chemin
.
rfind
(
"/"
)
+
1
]
if
version
!=
0
:
if
version
!=
0
:
# on change le repertoire récupéré ci dessus dans la bonne version (si on travaille avec une version)
# on change le repertoire récupéré ci dessus dans la bonne version (si on travaille avec une version)
idCommit
=
Utils
.
get_commit_pour_une_version
(
idContenu
,
version
)
idCommit
=
Utils
.
get_commit_pour_une_version
(
idContenu
,
version
)
UtilsGit
.
changerVersionCommit
(
repertoire
,
idCommit
)
UtilsGit
.
changerVersionCommit
(
repertoire
,
idCommit
)
else
:
else
:
UtilsGit
.
changerVersionBranche
(
repertoire
,
nomBranche
)
UtilsGit
.
changerVersionBranche
(
repertoire
,
nomBranche
)
## supprimer un contenu en cours
## supprimer un contenu en cours
# @param idContenuEnCours id du contenu a supprimer
# @param idContenuEnCours id du contenu a supprimer
...
@@ -586,31 +584,37 @@ class Utils:
...
@@ -586,31 +584,37 @@ class Utils:
return
Utils
.
statdb
.
demandesPub
.
find
({
"auteurContenu"
:
auteur
})
return
Utils
.
statdb
.
demandesPub
.
find
({
"auteurContenu"
:
auteur
})
## permet de recuperer un commit particulier lié avec une version donnee
## permet de recuperer un commit particulier lié avec une version donnee
# On doit pouvoir récupérer également le commit de la version de base
# @param idContenu l'id du contenu manipulé
# @param idContenu l'id du contenu manipulé
# @param version le numéro de version désiré
# @param version le numéro de version désiré
@
staticmethod
@
staticmethod
def
get_commit_pour_une_version
(
idContenu
,
version
):
def
get_commit_pour_une_version
(
idContenu
,
version
):
print
(
"Je veux récupérer le commit associé à la version "
,
version
,
"pour le contenu "
,
idContenu
)
print
(
"Je veux récupérer le commit associé à la version "
,
version
,
"pour le contenu "
,
idContenu
)
historique
=
Utils
.
statdb
.
contenu
.
find_one
({
"id"
:
idContenu
})[
"historique"
]
for
elt
in
historique
:
if
version
==
Utils
.
get_version_courante
(
idContenu
):
if
elt
[
"numero"
]
==
version
:
courante
=
Utils
.
statdb
.
contenu
.
find_one
({
"id"
:
idContenu
})[
"versionEnCours"
]
return
elt
[
"commit"
]
return
courante
[
"commit"
]
# return 42
else
:
historique
=
Utils
.
statdb
.
contenu
.
find_one
({
"id"
:
idContenu
})[
"historique"
]
for
elt
in
historique
:
if
elt
[
"numero"
]
==
version
:
return
elt
[
"commit"
]
## permet de gerer la reponse à la publication
## permet de gerer la reponse à la publication
# @param idPublication la publication concernée
# @param idPublication la publication concernée
# @param reponse la reponse donnée (
0 / N
)
# @param reponse la reponse donnée (
o / n
)
@
staticmethod
@
staticmethod
def
gerer_demande_pub
(
idPublication
,
reponse
):
def
gerer_demande_pub
(
idPublication
,
reponse
,
auteur
):
if
reponse
==
'
O
'
:
if
reponse
==
'
o
'
:
print
(
"Publication acceptée"
)
print
(
"Publication acceptée"
)
id_en_cours
=
Utils
.
get_id_contenu_en_cours_associe_a_une_publication
(
idPublication
)
id_en_cours
=
Utils
.
get_id_contenu_en_cours_associe_a_une_publication
(
idPublication
)
branche
=
Utils
.
get_branche_contenu_en_cours
(
id_en_cours
)
branche
=
Utils
.
get_branche_contenu_en_cours
(
id_en_cours
)
idContenu
=
Utils
.
get_id_contenu_associe_a_une_publication
(
idPublication
)
idContenu
=
Utils
.
get_id_contenu_associe_a_une_publication
(
idPublication
)
chemin
=
Utils
.
get_chemin_du_contenu
(
idContenu
)
chemin
=
Utils
.
get_chemin_du_contenu
(
idContenu
)
Utils
.
maj_contenu
(
chemin
,
idContenu
,
branche
)
Utils
.
maj_contenu
(
chemin
,
idContenu
,
branche
)
Utils
.
statdb
.
demandesPub
.
update_one
({
"id"
:
int
(
idPublication
)},
{
"$set"
:
{
"etat"
:
"accepté"
}})
Utils
.
maj_tiers
(
idContenu
,
Utils
.
get_version_courante
(
idContenu
),
auteur
)
Utils
.
supprimer_contenu_en_cours
(
id_en_cours
)
Utils
.
supprimer_contenu_en_cours
(
id_en_cours
)
Utils
.
statdb
.
demandesPub
.
delete_one
({
"id"
:
int
(
idPublication
)})
else
:
else
:
print
(
"Publication refusée "
,
idPublication
)
print
(
"Publication refusée "
,
idPublication
)
...
@@ -628,17 +632,18 @@ class Utils:
...
@@ -628,17 +632,18 @@ class Utils:
for
(
id
,
version
)
in
tiers
:
for
(
id
,
version
)
in
tiers
:
versionCourante
=
Utils
.
get_version_courante
(
id
[
"contenu"
])
versionCourante
=
Utils
.
get_version_courante
(
id
[
"contenu"
])
if
version
[
"version"
]
<
versionCourante
:
if
version
[
"version"
]
<
versionCourante
:
# Utils.isMajRefusee(auteur, id["contenu"], versionCourante)
if
not
Utils
.
is_maj_refusee
(
auteur
,
id
[
"contenu"
],
versionCourante
):
if
not
Utils
.
is_maj_refusee
(
auteur
,
id
[
"contenu"
],
versionCourante
):
print
(
"Contenu : "
,
id
[
"contenu"
],
" version actuelle : "
,
version
[
"version"
],
"version maj : "
,
versionCourante
)
print
(
"Mise à jour possible"
)
print
(
"Mise à jour possible"
)
print
(
"Voulez vous la faire (O / N)"
)
print
(
"Voulez vous la faire (O / N)"
)
choix
=
input
()
choix
=
input
()
if
choix
==
'O'
:
if
choix
==
'O'
:
Utils
.
maj_tiers
(
id
[
"contenu"
],
versionCourante
,
auteur
)
Utils
.
maj_tiers
(
id
[
"contenu"
],
versionCourante
,
auteur
)
print
(
"Mise à jour effectuée"
)
else
:
else
:
Utils
.
maj_tiers
(
id
[
"contenu"
],
versionCourante
,
auteur
,
True
)
Utils
.
maj_tiers
(
id
[
"contenu"
],
versionCourante
,
auteur
,
True
)
else
:
print
(
"Mise à jour refusée"
)
pass
## mettre à jour un favori
## mettre à jour un favori
# @param idContenu l'id du favori
# @param idContenu l'id du favori
...
@@ -647,6 +652,7 @@ class Utils:
...
@@ -647,6 +652,7 @@ class Utils:
# @param refuse True = maj acceptée, False = maj refusée
# @param refuse True = maj acceptée, False = maj refusée
def
maj_tiers
(
idFavori
,
idNouvelleVersion
,
auteur
,
refuse
=
False
):
def
maj_tiers
(
idFavori
,
idNouvelleVersion
,
auteur
,
refuse
=
False
):
if
not
refuse
:
if
not
refuse
:
# on vire le précédent
# on vire le précédent
Utils
.
statdb
.
utilisateur
.
update
({
"nom"
:
auteur
},
Utils
.
statdb
.
utilisateur
.
update
({
"nom"
:
auteur
},
{
"$pull"
:
{
{
"$pull"
:
{
...
@@ -753,3 +759,15 @@ class Utils:
...
@@ -753,3 +759,15 @@ class Utils:
Utils
.
ajouter_utilisateur
(
"Auteur 1"
)
Utils
.
ajouter_utilisateur
(
"Auteur 1"
)
Utils
.
ajouter_utilisateur
(
"Auteur 2"
)
Utils
.
ajouter_utilisateur
(
"Auteur 2"
)
Utils
.
ajouter_utilisateur
(
"Auteur 3"
)
Utils
.
ajouter_utilisateur
(
"Auteur 3"
)
## Supprimer une demande de publication
# @param idPub l'id de la demande de publication
@
staticmethod
def
supprimer_publication
(
idPub
):
Utils
.
statdb
.
demandesPub
.
delete_one
({
"id"
:
idPub
})
## Récupérer l'auteur d'une demande de publication
# @param idPub l'id de la demande de publication
@
staticmethod
def
get_auteur_demande_publication
(
idPub
):
return
Utils
.
statdb
.
demandesPub
.
find_one
({
"id"
:
idPub
})[
"auteurDemande"
]
UtilsGit.py
View file @
37c8db99
...
@@ -53,10 +53,9 @@ class UtilsGit:
...
@@ -53,10 +53,9 @@ class UtilsGit:
# @param nombranche branche contenant la branche avec le contenu désiré
# @param nombranche branche contenant la branche avec le contenu désiré
@
staticmethod
@
staticmethod
def
changerVersionBranche
(
chemin
,
branche
):
def
changerVersionBranche
(
chemin
,
branche
):
# print("On a parcouru le chemin : ", chemin, " sur la branche :", branche)
repo
=
Repo
.
init
(
chemin
)
repo
=
Repo
.
init
(
chemin
)
repo
.
git
.
checkout
(
branche
)
repo
.
git
.
checkout
(
branche
)
#
repo.head.reset(index=True, working_tree=True)
repo
.
head
.
reset
(
index
=
True
,
working_tree
=
True
)
## valider une nouvelle version courante d'un contenu - Un peu plus compliqué à faire.
## valider une nouvelle version courante d'un contenu - Un peu plus compliqué à faire.
# @param chemin chemin du repertoire git
# @param chemin chemin du repertoire git
...
...
auteur_
1
/Contenu1
→
auteur_
2
/Contenu1
View file @
37c8db99
File moved
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment