-
Notifications
You must be signed in to change notification settings - Fork 161
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Les chapitres non validés apparaissent dans les exports des contenus #6265
Labels
S-BUG
Corrige un problème
Comments
J'ai trouvé le soucis pour l'export Markdown, c'était assez simple. Pour l'export PDF, j'ai l'impression qu'on envoie bien une étiquette
Si on part sur la deuxième option, je pense que ces quelques modifications devraient suffire : diff --git a/zds/tutorialv2/publication_utils.py b/zds/tutorialv2/publication_utils.py
index e3aa5e84b..485b2cf61 100644
--- a/zds/tutorialv2/publication_utils.py
+++ b/zds/tutorialv2/publication_utils.py
@@ -414,7 +414,7 @@ class ZMarkdownRebberLatexPublicator(Publicator):
replaced_media_url = settings.MEDIA_URL
if replaced_media_url.startswith("/"):
replaced_media_url = replaced_media_url[1:]
- exported = export_content(public_versionned_source, with_text=True)
+ exported = export_content(public_versionned_source, with_text=True, remove_not_ready_to_publish=True)
# no title to avoid zmd to put it on the final latex
del exported["title"]
content, metadata, messages = render_markdown(
diff --git a/zds/tutorialv2/utils.py b/zds/tutorialv2/utils.py
index 1f2b45cd2..2561b0fa9 100644
--- a/zds/tutorialv2/utils.py
+++ b/zds/tutorialv2/utils.py
@@ -696,7 +696,7 @@ def export_extract(extract, with_text):
return dct
-def export_container(container, with_text=False):
+def export_container(container, with_text=False, remove_not_ready_to_publish=False):
"""Export a container to a dictionary
:param container: the container
@@ -705,6 +705,10 @@ def export_container(container, with_text=False):
:rtype: dict
"""
dct = OrderedDict()
+
+ if remove_not_ready_to_publish and not container.ready_to_publish:
+ return dct
+
dct["object"] = "container"
dct["slug"] = container.slug
dct["title"] = container.title
@@ -735,14 +739,14 @@ def export_container(container, with_text=False):
return dct
-def export_content(content, with_text=False):
+def export_content(content, with_text=False, remove_not_ready_to_publish=False):
"""Export a content to dictionary in order to store them in a JSON file
:param content: content to be exported
:return: dictionary containing the information
:rtype: dict
"""
- dct = export_container(content, with_text)
+ dct = export_container(content, with_text, remove_not_ready_to_publish)
# append metadata :
dct["version"] = 2.1 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Description du bug
Je viens de constater que les exports de contenus (tous formats confondus a priori, je n'ai pas vérifié l'epub) contenaient les chapitres non validés (
ready_to_publish
àFalse
) du contenu.Le traitement semble différent suivant le format d'export, par exemple le markdown ne contient que la structure des chapitres en question (titres) tandis que le PDF contient aussi leurs contenus.
Comment reproduire ?
Simplement consulter l'export PDF ou Markdown du cours Un zeste de Python par exemple.
Comportement attendu
Les chapitres "Expressions rationnelles", "Un peu de réseau", "Plusieurs tâches en même temps", "Packaging", "Bases de données", "Les erreurs courantes en Python" et la partie "Exercices" ne devraient pas apparaître dans les exports.
Capture d'écran
The text was updated successfully, but these errors were encountered: