From 4a28fbbde79d73f577bbe73472c2a4a987727564 Mon Sep 17 00:00:00 2001 From: Sylvain Boissel Date: Thu, 3 Oct 2024 14:53:57 +0200 Subject: [PATCH] Update import scripts --- .../commands/export_page_templates.py | 4 +- .../commands/import_page_templates.py | 12 +- .../page_templates/image_data.json | 54 +++- .../page_templates/img/Design_sans_titre.png | Bin 0 -> 17560 bytes .../img/Design_sans_titre_1.svg | 1 + .../img/undraw_female_avatar_efig.svg | 1 + .../img/undraw_male_avatar_g98d.svg | 1 + .../page_templates/pages_data.json | 289 ++++++++++-------- content_manager/services/import_export.py | 49 ++- 9 files changed, 255 insertions(+), 156 deletions(-) create mode 100644 content_manager/page_templates/img/Design_sans_titre.png create mode 100644 content_manager/page_templates/img/Design_sans_titre_1.svg create mode 100644 content_manager/page_templates/img/undraw_female_avatar_efig.svg create mode 100644 content_manager/page_templates/img/undraw_male_avatar_g98d.svg diff --git a/content_manager/management/commands/export_page_templates.py b/content_manager/management/commands/export_page_templates.py index e1c08fab..4f40f7e7 100644 --- a/content_manager/management/commands/export_page_templates.py +++ b/content_manager/management/commands/export_page_templates.py @@ -2,7 +2,7 @@ from django.core.management.base import BaseCommand -from content_manager.services.import_export import TEMPLATES_DATA_FILE, ImportExportImages, ImportExportPage +from content_manager.services.import_export import TEMPLATES_DATA_FILE, ExportPage, ImportExportImages SOURCE_URL = "https://sites-faciles.beta.numerique.gouv.fr/" @@ -20,7 +20,7 @@ def handle(self, *args, **kwargs): pages = {} for page_id in page_ids: - page = ImportExportPage(SOURCE_URL, page_id) + page = ExportPage(page_id, SOURCE_URL) pages[page_id] = page.json_export image_ids += page.image_ids diff --git a/content_manager/management/commands/import_page_templates.py b/content_manager/management/commands/import_page_templates.py index 8a7a03e4..9f15230d 100644 --- a/content_manager/management/commands/import_page_templates.py +++ b/content_manager/management/commands/import_page_templates.py @@ -1,8 +1,6 @@ -import json - from django.core.management.base import BaseCommand -from content_manager.services.import_export import TEMPLATES_DATA_FILE, ImportExportImages +from content_manager.services.import_export import ImportPages class Command(BaseCommand): @@ -11,9 +9,5 @@ def handle(self, *args, **kwargs): Import template pages """ - with open(TEMPLATES_DATA_FILE, "r") as json_file: - page_templates_data = json.load(json_file) - - image_importer = ImportExportImages(page_templates_data["image_ids"]) - - image_importer.import_images() + page_importer = ImportPages() + page_importer.import_pages() diff --git a/content_manager/page_templates/image_data.json b/content_manager/page_templates/image_data.json index 950600d8..3029f288 100644 --- a/content_manager/page_templates/image_data.json +++ b/content_manager/page_templates/image_data.json @@ -4,7 +4,7 @@ "type": "wagtailimages.Image", "detail_url": "https://sites-faciles.beta.numerique.gouv.fr/api/v2/images/6/", "tags": [], - "download_url": "https://cellar-c2.services.clever-cloud.com/storage-demo/original_images/Home.original.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=ZWM9OJBMLHVWM86C0Y2S%2F20240930%2Feu-west-3%2Fs3%2Faws4_request&X-Amz-Date=20240930T161307Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host&X-Amz-Signature=a4c130cd6d0719dcdde1c4d660f41d1182e4e95159ac48060316e18bde0779b0" + "download_url": "https://cellar-c2.services.clever-cloud.com/storage-demo/original_images/Home.original.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=ZWM9OJBMLHVWM86C0Y2S%2F20241003%2Feu-west-3%2Fs3%2Faws4_request&X-Amz-Date=20241003T091837Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host&X-Amz-Signature=29a5dd3fed7c782f8aad4cf846f8beff370c3227519cc3069c617d0eb47c46ec" }, "filename": "Home.original.png", "is_pictogram": false, @@ -19,7 +19,7 @@ "Pictogrammes", "System" ], - "download_url": "https://cellar-c2.services.clever-cloud.com/storage-demo/original_images/Pictogrammes_DSFR__System__Information?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=ZWM9OJBMLHVWM86C0Y2S%2F20240930%2Feu-west-3%2Fs3%2Faws4_request&X-Amz-Date=20240930T161307Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host&X-Amz-Signature=a2ad715db962bef2b285df60e362f51925b29c9191089e0a91e30ccc22c97f45" + "download_url": "https://cellar-c2.services.clever-cloud.com/storage-demo/original_images/Pictogrammes_DSFR__System__Information?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=ZWM9OJBMLHVWM86C0Y2S%2F20241003%2Feu-west-3%2Fs3%2Faws4_request&X-Amz-Date=20241003T091840Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host&X-Amz-Signature=32b89c6ad720338caf5f438659fa0e9452d5180d0d539f94d5120a60b6bee938" }, "filename": "Pictogrammes DSFR \u2014 System \u2014 Information", "is_pictogram": true, @@ -34,7 +34,7 @@ "Pictogrammes", "System" ], - "download_url": "https://cellar-c2.services.clever-cloud.com/storage-demo/original_images/Pictogrammes_DSFR__System__Success?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=ZWM9OJBMLHVWM86C0Y2S%2F20240930%2Feu-west-3%2Fs3%2Faws4_request&X-Amz-Date=20240930T161307Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host&X-Amz-Signature=040557aa51b406fbcb811a42b4e373dbffc348f5655d6d4bd2e48dc56bd32b5f" + "download_url": "https://cellar-c2.services.clever-cloud.com/storage-demo/original_images/Pictogrammes_DSFR__System__Success?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=ZWM9OJBMLHVWM86C0Y2S%2F20241003%2Feu-west-3%2Fs3%2Faws4_request&X-Amz-Date=20241003T091841Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host&X-Amz-Signature=abf599a51e9d609d82a2d556110b6b9c32de9b34faee792334ce88a814a0b287" }, "filename": "Pictogrammes DSFR \u2014 System \u2014 Success", "is_pictogram": true, @@ -45,7 +45,7 @@ "type": "wagtailimages.Image", "detail_url": "https://sites-faciles.beta.numerique.gouv.fr/api/v2/images/81/", "tags": [], - "download_url": "https://cellar-c2.services.clever-cloud.com/storage-demo/original_images/undraw_Website_builder_re_ii6e.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=ZWM9OJBMLHVWM86C0Y2S%2F20240930%2Feu-west-3%2Fs3%2Faws4_request&X-Amz-Date=20240930T161307Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host&X-Amz-Signature=b179f4f6acb8e749142ec7252473ad559f5b00e863737cc8269d9e26e323b849" + "download_url": "https://cellar-c2.services.clever-cloud.com/storage-demo/original_images/undraw_Website_builder_re_ii6e.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=ZWM9OJBMLHVWM86C0Y2S%2F20241003%2Feu-west-3%2Fs3%2Faws4_request&X-Amz-Date=20241003T091844Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host&X-Amz-Signature=02b9dea4701aaafbfdfa44bc2a67c0a7d55ab591b7b8004847bec17c5ca58983" }, "filename": "undraw_Website_builder_re_ii6e.png", "is_pictogram": false, @@ -56,10 +56,54 @@ "type": "wagtailimages.Image", "detail_url": "https://sites-faciles.beta.numerique.gouv.fr/api/v2/images/84/", "tags": [], - "download_url": "https://cellar-c2.services.clever-cloud.com/storage-demo/original_images/undraw_building_websites_i78t_1.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=ZWM9OJBMLHVWM86C0Y2S%2F20240930%2Feu-west-3%2Fs3%2Faws4_request&X-Amz-Date=20240930T161307Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host&X-Amz-Signature=19bba3e8554a6010eafa5cc08762d234ff36e7faea4d6989ef87ce8ba6eac762" + "download_url": "https://cellar-c2.services.clever-cloud.com/storage-demo/original_images/undraw_building_websites_i78t_1.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=ZWM9OJBMLHVWM86C0Y2S%2F20241003%2Feu-west-3%2Fs3%2Faws4_request&X-Amz-Date=20241003T091846Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host&X-Amz-Signature=0aa28a6b26bed696bfb8f3e45fa16884bda76017669116626f7e74b31f47fcff" }, "filename": "undraw_building_websites_i78t_1.png", "is_pictogram": false, "title": "Illustration CMS 2" + }, + "96": { + "meta": { + "type": "wagtailimages.Image", + "detail_url": "https://sites-faciles.beta.numerique.gouv.fr/api/v2/images/96/", + "tags": [], + "download_url": "https://cellar-c2.services.clever-cloud.com/storage-demo/original_images/Design_sans_titre.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=ZWM9OJBMLHVWM86C0Y2S%2F20241003%2Feu-west-3%2Fs3%2Faws4_request&X-Amz-Date=20241003T091834Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host&X-Amz-Signature=c25b20702eb1b843dd012317dc34b7274df03db56f2933ccb478fef23b28d801" + }, + "title": "Header", + "filename": "Design_sans_titre.png", + "is_pictogram": false + }, + "112": { + "meta": { + "type": "wagtailimages.Image", + "detail_url": "https://sites-faciles.beta.numerique.gouv.fr/api/v2/images/112/", + "tags": [], + "download_url": "https://cellar-c2.services.clever-cloud.com/storage-demo/original_images/Design_sans_titre_1.svg?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=ZWM9OJBMLHVWM86C0Y2S%2F20241003%2Feu-west-3%2Fs3%2Faws4_request&X-Amz-Date=20241003T091842Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host&X-Amz-Signature=e9c5928ba2758c5e62bb56d13baede0427480a1d7f223dc9c7b05542b6df0aa6" + }, + "title": "Design sans titre (3)", + "filename": "Design_sans_titre_1.svg", + "is_pictogram": false + }, + "116": { + "meta": { + "type": "wagtailimages.Image", + "detail_url": "https://sites-faciles.beta.numerique.gouv.fr/api/v2/images/116/", + "tags": [], + "download_url": "https://cellar-c2.services.clever-cloud.com/storage-demo/original_images/undraw_female_avatar_efig.svg?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=ZWM9OJBMLHVWM86C0Y2S%2F20241003%2Feu-west-3%2Fs3%2Faws4_request&X-Amz-Date=20241003T091849Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host&X-Amz-Signature=9a1b5cb8171e790875d08322dfa07322cc9c98b8d8b5b274ba79c34c38e2d5b3" + }, + "title": "undraw_female_avatar_efig", + "filename": "undraw_female_avatar_efig.svg", + "is_pictogram": false + }, + "117": { + "meta": { + "type": "wagtailimages.Image", + "detail_url": "https://sites-faciles.beta.numerique.gouv.fr/api/v2/images/117/", + "tags": [], + "download_url": "https://cellar-c2.services.clever-cloud.com/storage-demo/original_images/undraw_male_avatar_g98d.svg?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=ZWM9OJBMLHVWM86C0Y2S%2F20241003%2Feu-west-3%2Fs3%2Faws4_request&X-Amz-Date=20241003T091851Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host&X-Amz-Signature=cf92f76d46edbcde80ef87fa21d0e23e55775ab1722f77ae055d1c298a52610c" + }, + "title": "undraw_male_avatar_g98d", + "filename": "undraw_male_avatar_g98d.svg", + "is_pictogram": false } } \ No newline at end of file diff --git a/content_manager/page_templates/img/Design_sans_titre.png b/content_manager/page_templates/img/Design_sans_titre.png new file mode 100644 index 0000000000000000000000000000000000000000..1f91e5909e858208831064430524376d4ffd0821 GIT binary patch literal 17560 zcmd73XIRrq_b7^@q5>*55Cq)xj&ulBMUajZkuD`bXrUzZrf#K!igZZmy-4q%(z|pB zB}nfbLgxg@k9Y6)f6n=E@BMIj9v;HXT5DFHnKdiE%8Js&*U7Kr;o%X>ypUAE!y|y; z;aw=cdIdY8o>GOu{<&uJLem}(??&C}?}bp-8x(kWmkuCmuVJqhca*Iayg++k>1$8UH|lu%AzdIT^*SKf?Wp*cqFER3xQvpxFOJ z8O>lY8xSX_qoX5-BM%4E&Xki&NJxnDF*heSH#-)B-QL+6X5hqbZBL7(^lws1#Az6+ZloX=>s@|&+Nbk zFtD*0_hW8e_Qyi(T-+j@|21`PMiJb^b0?ULv6#_gV=h5MBR+NkJ`(|UUO^!~b^|V6 zJ}ePlem*XKLjeP0gL7JEDF1_!lp&T7A2%O2Kc5g6FPDH2pWx$joIjKQ14RuAH!?dF zOYA?K{%7nz;Qt3R|65&vsQ*^$|3`+l`A1xxTKP}Fp4t~XfweEszwC=013iJm%%FB+ zvT#cX7zP7Bl7u)}LBMt*rwG90e+l^i-W{=N<6pjb&ZU!q&HwO1EHLPg$3X4WpioP( zX9m^|29KCjz}CiKJFp$I2U2YDQ6K*vIRdIq2u|727=FE)PJn`a;K z$nJc;fA;Ya?f;KHB?bc=dijrQV%YBMVlb=i?d=hY;{MCa%kMHv10=Q1_?F7F8a7+- zemT%yBgPYHSwH6Jnpc9cY5?n)XecV_*D#CX#I}=VuE!jdpdXlaMs=jvuCCnVid7IF z=WdWly8MUK8#NVKF663I$=vb5Z=Q?{zr;l8r|hglOrkht*_As__Pbt2`Se}ntemD} zKO0W$Dz<8?8Pweq4QYOLXtzO^k)c(~($F9SFqr7EcCs4h9$u~A@FTXisM3Gk_RE>l zy`H$B!~#9a0;*Rh)m`rS^B^CMmF+l7O17C443@j_r4&HiHr7)=t7r{>3<+UeNu3@6 z#J&=*4eR2)X_PmYU^Q%iQj?KUbOq((6B`>VxWCt>g>If^>^>9R#$fx1J1WID#X4a% zJbCso5q+}D&JdE_%|mtzXL2vX)YWiXCmS+&6++lpJZW*DCcssEj9v8o1ro@GKVp_X zR*|(mIaac@nfUlIcCs zr=jN`!l;xIbm_aM!15;VOO4U_|ge)(WG(mX*?_jpJV1jG#03 zi3lU0K72lM(leTFgs1#m&tvaHL`1}q_~DkLV|^1r;`&btXxQVvrK!yiW>&gkASunQ ztt`J)kJS}33kwCxWOJrJw)NsE-|T?a_jryXL09n9O`LW^$tc}V0+5TVD}IJKf4K|~ zC!|*Kfuh2tpa;?)ez#+e=@7?_;;oe10a{w9L}fEs%0x@MvX7-0Z*d=gjs+}f798mw zRMkQJVAbM}UM{?}r$f!_ulr(xf73Q5lvMHgmFY-IZWWeD+1hfr3~MK@AqNz}yG>oC zTf*pEwGrlNJGq2JBj*J&@IWt2QDlG7o7OR^=30+xIOva=AA80M+R}I&uW_n2;>F31 ziVEJ+fWbTV4}%&pUmv$G85a2krrC)OSB-OT1hNrkGh)?Gv{hB3d8O$^*X#6Eq|>fjpE;!} z`GW^Cloz~M;KTIp_8{cOeJlRqTkY+$(qj5A!u|>k*As~VJylo6LGQ2ChNRQtDSrS( z`*nFfImqe^4hUi>dmi1+FDWM{jpg(nS`=A{8FT&IIjh+xE`JxX@DiteW!+a8ETo}k`<6HRjJv0ANg<8Va1TGzBBXF5y(MYe8fZfZOc~Bz=2?@gDFgd&aq60hG$GsNe4vzJ|8r}-Evm;bvdYpaE&GQ648>@@!a}(IExt0H{G$ H?;q_9gkeTP5hcDtX`6W?ykR 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 \ No newline at end of file diff --git a/content_manager/page_templates/img/undraw_female_avatar_efig.svg b/content_manager/page_templates/img/undraw_female_avatar_efig.svg new file mode 100644 index 00000000..e28991b8 --- /dev/null +++ b/content_manager/page_templates/img/undraw_female_avatar_efig.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/content_manager/page_templates/img/undraw_male_avatar_g98d.svg b/content_manager/page_templates/img/undraw_male_avatar_g98d.svg new file mode 100644 index 00000000..c481f0b3 --- /dev/null +++ b/content_manager/page_templates/img/undraw_male_avatar_g98d.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/content_manager/page_templates/pages_data.json b/content_manager/page_templates/pages_data.json index 938f345c..c5153661 100644 --- a/content_manager/page_templates/pages_data.json +++ b/content_manager/page_templates/pages_data.json @@ -1,9 +1,13 @@ { "image_ids": [ - 81, 74, - 84, 77, + 112, + 81, + 84, + 116, + 117, + 96, 84, 6 ], @@ -22,62 +26,6 @@ }, "title": "Landing page d'un service num\u00e9rique", "body": [ - { - "type": "paragraph", - "value": "

Voici un exemple de page que vous pouvez utiliser pour promouvoir un service num\u00e9rique.

" - }, - { - "type": "multicolumns", - "value": { - "bg_image": null, - "bg_color_class": "", - "bg_color": "", - "title": "", - "heading_tag": "h2", - "columns": [ - { - "type": "text_cta", - "value": { - "text": "

Une phrase accrocheuse \u00e0 propos de votre service

Un texte explicatif pour que les visiteurs du site comprennent de quoi il s'agit et aient envie d'en savoir plus sur votre service.

", - "cta_buttons": [ - { - "type": "buttons", - "value": [ - { - "type": "button", - "value": { - "page": 29, - "document": null, - "external_url": "", - "text": "Appel \u00e0 action", - "button_type": "fr-btn", - "icon_class": "", - "icon_side": "" - } - } - ] - } - ], - "cta_label": "", - "cta_url": "" - } - }, - { - "type": "image", - "value": { - "title": "", - "heading_tag": "h3", - "image": 81, - "alt": "", - "width": "fr-content-media--sm", - "image_ratio": "fr-ratio-3x2", - "caption": "", - "url": "" - } - } - ] - } - }, { "type": "fullwidthbackground", "value": { @@ -94,87 +42,69 @@ "column_width": "4", "items": [ { - "type": "card", + "type": "tile", "value": { "title": "Argument #1", "heading_tag": "h3", - "description": "

D\u00e9veloppez une des raisons pour lesquelles votre service simplifie la vie de ses utilisateurs.

", + "description": "

D\u00e9veloppez une des raisons pour lesquelles votre service simplifie la vie de ses utilisateurs.

", "image": 77, - "image_ratio": "fr-ratio-1x1", - "image_badge": [], "link": { "page": null, "document": null, "external_url": "" }, - "url": "", - "document": null, - "top_detail_text": "", - "top_detail_icon": "", "top_detail_badges_tags": [], - "bottom_detail_text": "", - "bottom_detail_icon": "", - "call_to_action": [], + "detail_text": "", + "is_small": false, "grey_background": false, "no_background": false, "no_border": false, - "shadow": false + "shadow": false, + "is_horizontal": false } }, { - "type": "card", + "type": "tile", "value": { "title": "Argument #2", "heading_tag": "h3", - "description": "

D\u00e9veloppez une des raisons pour lesquelles votre service simplifie la vie de ses utilisateurs.

", + "description": "

D\u00e9veloppez une des raisons pour lesquelles votre service simplifie la vie de ses utilisateurs.

", "image": 77, - "image_ratio": "fr-ratio-1x1", - "image_badge": [], "link": { "page": null, "document": null, "external_url": "" }, - "url": "", - "document": null, - "top_detail_text": "", - "top_detail_icon": "", "top_detail_badges_tags": [], - "bottom_detail_text": "", - "bottom_detail_icon": "", - "call_to_action": [], + "detail_text": "", + "is_small": false, "grey_background": false, "no_background": false, "no_border": false, - "shadow": false + "shadow": false, + "is_horizontal": false } }, { - "type": "card", + "type": "tile", "value": { "title": "Argument #3", "heading_tag": "h3", - "description": "

D\u00e9veloppez une des raisons pour lesquelles votre service simplifie la vie de ses utilisateurs.

", + "description": "

D\u00e9veloppez une des raisons pour lesquelles votre service simplifie la vie de ses utilisateurs.

", "image": 77, - "image_ratio": "fr-ratio-1x1", - "image_badge": [], "link": { "page": null, "document": null, "external_url": "" }, - "url": "", - "document": null, - "top_detail_text": "", - "top_detail_icon": "", "top_detail_badges_tags": [], - "bottom_detail_text": "", - "bottom_detail_icon": "", - "call_to_action": [], + "detail_text": "", + "is_small": false, "grey_background": false, "no_background": false, "no_border": false, - "shadow": false + "shadow": false, + "is_horizontal": false } } ] @@ -419,7 +349,7 @@ "color": "green-bourgeon", "icon_class": "", "link": { - "page": 19, + "page": 29, "document": null, "external_url": "" } @@ -467,7 +397,7 @@ "color": "green-bourgeon", "icon_class": "", "link": { - "page": 19, + "page": 29, "document": null, "external_url": "" } @@ -553,6 +483,52 @@ ] } }, + { + "type": "fullwidthbackground", + "value": { + "bg_image": null, + "bg_color_class": "grey", + "content": [ + { + "type": "text_cta", + "value": { + "text": "

Ce qu'en pensent vos utilisateurs

", + "cta_buttons": [], + "cta_label": "", + "cta_url": "" + } + }, + { + "type": "item_grid", + "value": { + "column_width": "6", + "items": [ + { + "type": "quote", + "value": { + "image": 116, + "quote": "T\u00e9moignage d'une usag\u00e8re de votre service sous forme de citation.", + "author_name": "Nom de l'usag\u00e8re", + "author_title": "Titre de l'usag\u00e8re", + "color": "" + } + }, + { + "type": "quote", + "value": { + "image": 117, + "quote": "T\u00e9moignage d'un usager de votre service sous forme de citation.", + "author_name": "Nom de l'usager", + "author_title": "Titre de l'usager", + "color": "" + } + } + ] + } + } + ] + } + }, { "type": "accordions", "value": [ @@ -591,31 +567,40 @@ ] }, { - "type": "stepper", + "type": "fullwidthbackground", "value": { - "title": "Votre feuille de route", - "total": 3, - "current": 2, - "steps": [ - { - "type": "step", - "value": { - "title": "Date", - "detail": "Premi\u00e8re \u00e9tape \r\nCourte description des enjeux" - } - }, - { - "type": "step", - "value": { - "title": "Date", - "detail": "Etape actuelle\r\nCourte description des enjeux" - } - }, + "bg_image": null, + "bg_color_class": "grey", + "content": [ { - "type": "step", + "type": "stepper", "value": { - "title": "Date", - "detail": "Prochaine \u00e9tape\r\nCourte description des enjeux" + "title": "Votre feuille de route", + "total": 3, + "current": 2, + "steps": [ + { + "type": "step", + "value": { + "title": "Date", + "detail": "Premi\u00e8re \u00e9tape \r\nCourte description des enjeux" + } + }, + { + "type": "step", + "value": { + "title": "Date", + "detail": "Etape actuelle\r\nCourte description des enjeux" + } + }, + { + "type": "step", + "value": { + "title": "Date", + "detail": "Prochaine \u00e9tape\r\nCourte description des enjeux" + } + } + ] } } ] @@ -625,7 +610,7 @@ "type": "fullwidthbackground", "value": { "bg_image": null, - "bg_color_class": "blue-france", + "bg_color_class": "", "content": [ { "type": "text_cta", @@ -638,12 +623,12 @@ { "type": "button", "value": { - "page": 31, + "page": 29, "document": null, "external_url": "", "text": "Appel \u00e0 action", "button_type": "fr-btn fr-btn--secondary", - "icon_class": "fr-icon-mail-open-line", + "icon_class": "fr-icon-send-plane-fill", "icon_side": "fr-btn--icon-left" } } @@ -658,15 +643,55 @@ } } ], - "header_image": null, - "header_image_render": null, - "header_image_thumbnail": null, - "header_with_title": false, + "header_image": { + "id": 112, + "meta": { + "type": "wagtailimages.Image", + "detail_url": "https://sites-faciles.beta.numerique.gouv.fr/api/v2/images/112/", + "download_url": "https://cellar-c2.services.clever-cloud.com/storage-demo/original_images/Design_sans_titre_1.svg?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=ZWM9OJBMLHVWM86C0Y2S%2F20241003%2Feu-west-3%2Fs3%2Faws4_request&X-Amz-Date=20241003T091829Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host&X-Amz-Signature=7bb10d1af3a622d97bf1708dc06757e979fb55d830c71da5e3d692a62ab79a97" + }, + "title": "Design sans titre (3)" + }, + "header_image_render": { + "url": "https://cellar-c2.services.clever-cloud.com/storage-demo/images/Design_sans_titre_1.2e16d0ba.fill-1200x627.svg?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=ZWM9OJBMLHVWM86C0Y2S%2F20241003%2Feu-west-3%2Fs3%2Faws4_request&X-Amz-Date=20241003T091829Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host&X-Amz-Signature=6828841e027ced00ec658c395e9941d9b62f2ec3adbc68a82a7fb776e8ea1ba7", + "full_url": "https://cellar-c2.services.clever-cloud.com/storage-demo/images/Design_sans_titre_1.2e16d0ba.fill-1200x627.svg?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=ZWM9OJBMLHVWM86C0Y2S%2F20241003%2Feu-west-3%2Fs3%2Faws4_request&X-Amz-Date=20241003T091829Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host&X-Amz-Signature=6828841e027ced00ec658c395e9941d9b62f2ec3adbc68a82a7fb776e8ea1ba7", + "width": 518, + "height": 270, + "alt": "Design sans titre (3)" + }, + "header_image_thumbnail": { + "url": "https://cellar-c2.services.clever-cloud.com/storage-demo/images/Design_sans_titre_1.2e16d0ba.fill-376x211.svg?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=ZWM9OJBMLHVWM86C0Y2S%2F20241003%2Feu-west-3%2Fs3%2Faws4_request&X-Amz-Date=20241003T091832Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host&X-Amz-Signature=79d904e3a9cb1ac73e41be35eb8af8e37afd329aa5095fbd2ccf7ca79124455f", + "full_url": "https://cellar-c2.services.clever-cloud.com/storage-demo/images/Design_sans_titre_1.2e16d0ba.fill-376x211.svg?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=ZWM9OJBMLHVWM86C0Y2S%2F20241003%2Feu-west-3%2Fs3%2Faws4_request&X-Amz-Date=20241003T091832Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host&X-Amz-Signature=79d904e3a9cb1ac73e41be35eb8af8e37afd329aa5095fbd2ccf7ca79124455f", + "width": 376.0, + "height": 211.0, + "alt": "Design sans titre (3)" + }, + "header_with_title": true, "header_color_class": null, "header_large": false, "header_darken": false, - "header_cta_text": "", - "header_cta_buttons": [], + "header_cta_text": "

Voici un exemple de page que vous pouvez utiliser pour promouvoir un service num\u00e9rique.

Utilisez cette en-t\u00eate pour ins\u00e9rer une phrase d'accroche.
Vous pouvez \u00e9galement ajouter un court paragraphe d'explication, et un appel \u00e0 action.

", + "header_cta_buttons": [ + { + "type": "buttons", + "value": [ + { + "type": "button", + "value": { + "page": 34, + "document": null, + "external_url": "", + "text": "Appel \u00e0 action", + "button_type": "fr-btn", + "icon_class": "", + "icon_side": "" + }, + "id": "e3bb30c0-d0bb-433a-b688-2a2200978885" + } + ], + "id": "639058db-5850-43cc-a67a-c26818cd39d6" + } + ], "header_cta_label": null, "header_cta_link": null }, @@ -854,20 +879,20 @@ "meta": { "type": "wagtailimages.Image", "detail_url": "https://sites-faciles.beta.numerique.gouv.fr/api/v2/images/96/", - "download_url": "https://cellar-c2.services.clever-cloud.com/storage-demo/original_images/Design_sans_titre.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=ZWM9OJBMLHVWM86C0Y2S%2F20240930%2Feu-west-3%2Fs3%2Faws4_request&X-Amz-Date=20240930T161307Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host&X-Amz-Signature=ab3eb3fcf01e64cb0103a7e9bed52a309faed74f61dee554ec87f63ab9fef88c" + "download_url": "https://cellar-c2.services.clever-cloud.com/storage-demo/original_images/Design_sans_titre.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=ZWM9OJBMLHVWM86C0Y2S%2F20241003%2Feu-west-3%2Fs3%2Faws4_request&X-Amz-Date=20241003T091833Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host&X-Amz-Signature=201cd1c5a240d33620af2a0a6235ab58376d9ebdad65078d8bfd32b8aef26147" }, "title": "Header" }, "header_image_render": { - "url": "https://cellar-c2.services.clever-cloud.com/storage-demo/images/Design_sans_titre.319bb898.fill-1200x627.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=ZWM9OJBMLHVWM86C0Y2S%2F20240930%2Feu-west-3%2Fs3%2Faws4_request&X-Amz-Date=20240930T161307Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host&X-Amz-Signature=fef87600ad89bf1a87e4a1061ae82afbc1f836893d2d6e1324d355aabe3c1ff9", - "full_url": "https://cellar-c2.services.clever-cloud.com/storage-demo/images/Design_sans_titre.319bb898.fill-1200x627.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=ZWM9OJBMLHVWM86C0Y2S%2F20240930%2Feu-west-3%2Fs3%2Faws4_request&X-Amz-Date=20240930T161307Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host&X-Amz-Signature=fef87600ad89bf1a87e4a1061ae82afbc1f836893d2d6e1324d355aabe3c1ff9", + "url": "https://cellar-c2.services.clever-cloud.com/storage-demo/images/Design_sans_titre.319bb898.fill-1200x627.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=ZWM9OJBMLHVWM86C0Y2S%2F20241003%2Feu-west-3%2Fs3%2Faws4_request&X-Amz-Date=20241003T091833Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host&X-Amz-Signature=ca12b2d04b21c362d0ed32d39286dcf2d61271fe772001a060aa2b468991307f", + "full_url": "https://cellar-c2.services.clever-cloud.com/storage-demo/images/Design_sans_titre.319bb898.fill-1200x627.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=ZWM9OJBMLHVWM86C0Y2S%2F20241003%2Feu-west-3%2Fs3%2Faws4_request&X-Amz-Date=20241003T091833Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host&X-Amz-Signature=ca12b2d04b21c362d0ed32d39286dcf2d61271fe772001a060aa2b468991307f", "width": 839, "height": 438, "alt": "Header" }, "header_image_thumbnail": { - "url": "https://cellar-c2.services.clever-cloud.com/storage-demo/images/Design_sans_titre.319bb898.fill-376x211.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=ZWM9OJBMLHVWM86C0Y2S%2F20240930%2Feu-west-3%2Fs3%2Faws4_request&X-Amz-Date=20240930T161307Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host&X-Amz-Signature=9bfd82e786b7f78d58a4792a517689aa82c770b613f516603119c18e5a9b9ede", - "full_url": "https://cellar-c2.services.clever-cloud.com/storage-demo/images/Design_sans_titre.319bb898.fill-376x211.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=ZWM9OJBMLHVWM86C0Y2S%2F20240930%2Feu-west-3%2Fs3%2Faws4_request&X-Amz-Date=20240930T161307Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host&X-Amz-Signature=9bfd82e786b7f78d58a4792a517689aa82c770b613f516603119c18e5a9b9ede", + "url": "https://cellar-c2.services.clever-cloud.com/storage-demo/images/Design_sans_titre.319bb898.fill-376x211.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=ZWM9OJBMLHVWM86C0Y2S%2F20241003%2Feu-west-3%2Fs3%2Faws4_request&X-Amz-Date=20241003T091833Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host&X-Amz-Signature=3358baaa812873bb494b0646fa5696195d34b73004f5a7ee91c92cacfe3667bd", + "full_url": "https://cellar-c2.services.clever-cloud.com/storage-demo/images/Design_sans_titre.319bb898.fill-376x211.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=ZWM9OJBMLHVWM86C0Y2S%2F20241003%2Feu-west-3%2Fs3%2Faws4_request&X-Amz-Date=20241003T091833Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host&X-Amz-Signature=3358baaa812873bb494b0646fa5696195d34b73004f5a7ee91c92cacfe3667bd", "width": 376, "height": 211, "alt": "Header" diff --git a/content_manager/services/import_export.py b/content_manager/services/import_export.py index b24868b4..85c4fdca 100644 --- a/content_manager/services/import_export.py +++ b/content_manager/services/import_export.py @@ -22,12 +22,12 @@ User = get_user_model() -class ImportExportPage: +class ExportPage: """ - Generic class for import/export of a ContentPage from a wagtail instance + Generic class for export of a ContentPage from a wagtail instance """ - def __init__(self, source_site, source_page_id) -> None: + def __init__(self, source_page_id, source_site) -> None: self.source_site = source_site self.source_page_id = source_page_id self.source_content = self.get_content_from_source_page() @@ -64,8 +64,7 @@ def get_source_images(self) -> None: header_image = self.source_content.get("header_image", None) if header_image: header_image["local_image"] = None - img_id = header_image["id"] - self.images[img_id] = header_image + self.image_ids.append(header_image["id"]) # Images from the body self.locate_image_ids(self.source_body) @@ -89,12 +88,48 @@ def clear_meta_keys(self): self.content["meta"].pop(key, None) +class ImportPages: + """ + Generic class for import of a list of ContentPages from a previously made export + """ + + def __init__(self) -> None: + with open(TEMPLATES_DATA_FILE, "r") as json_file: + page_templates_data = json.load(json_file) + + self.pages = page_templates_data["pages"] + self.image_ids = page_templates_data["image_ids"] + + self.image_importer = ImportExportImages(self.image_ids) + + def import_pages(self): + self.image_importer.import_images() + + for page_id in self.pages.keys(): + self.update_image_ids(page_id) + self.import_page(page_id) + + def import_page(self, page_id: str): + pass + + def update_image_ids(self, page_id): + page = self.pages[page_id] + + if page["header_image"]: + source_image_id = str(page["header_image"]["id"]) + local_image_id = self.image_importer.image_data[source_image_id]["local_id"] + + page["header_image"]["id"] = local_image_id + + class ImportExportImages: """ - Generic class for import/export of an Image from a wagtail instance + Generic class for import/export of a list of Images from a wagtail instance """ def __init__(self, image_ids, source_site=None) -> None: + self.user = User.objects.filter(is_superuser=True).first() + self.image_ids = set(image_ids) self.source_site = source_site @@ -162,8 +197,6 @@ def import_images(self) -> None: image = self.get_or_create_image(image_data) image_data["local_id"] = image.id - print(self.image_data) - def get_or_create_image(self, image_data) -> Image: filename = image_data["filename"] imported_filename = f"template_image_{filename.lower()}"