Selaa lähdekoodia

Merge branch 'master' of https://figureslibres.io/gogs/bachir/drupal-reha

ouidade 4 kuukautta sitten
vanhempi
commit
6f4312eaea
29 muutettua tiedostoa jossa 1103 lisäystä ja 92 poistoa
  1. 4 0
      composer.json
  2. 269 1
      composer.lock
  3. 82 12
      config/sync/core.entity_form_display.node.site.default.yml
  4. 20 37
      config/sync/core.entity_view_display.node.actualite.home_block.yml
  5. 29 13
      config/sync/core.entity_view_display.node.site.default.yml
  6. 12 3
      config/sync/core.entity_view_display.node.site.home_block.yml
  7. 61 0
      config/sync/core.entity_view_display.node.site.site_partenaire.yml
  8. 11 3
      config/sync/core.entity_view_display.node.site.teaser.yml
  9. 10 0
      config/sync/core.entity_view_mode.node.site_partenaire.yml
  10. 4 0
      config/sync/core.extension.yml
  11. 3 0
      config/sync/editor.editor.wysiwyg.yml
  12. 21 0
      config/sync/field.field.node.site.field_date_de_construction.yml
  13. 3 0
      config/sync/field.field.node.site.field_image.yml
  14. 21 0
      config/sync/field.field.node.site.field_lettre_de_site.yml
  15. 29 0
      config/sync/field.field.node.site.field_type_de_site.yml
  16. 1 1
      config/sync/field.storage.node.field_architecte.yml
  17. 20 0
      config/sync/field.storage.node.field_date_de_construction.yml
  18. 99 0
      config/sync/field.storage.node.field_lettre_de_site.yml
  19. 20 0
      config/sync/field.storage.node.field_type_de_site.yml
  20. 1 1
      config/sync/filter.format.wysiwyg.yml
  21. 11 0
      config/sync/language.content_settings.taxonomy_term.type_de_site.yml
  22. 1 1
      config/sync/page_manager.page.node_view.yml
  23. 30 17
      config/sync/page_manager.page_variant.home-panels_variant-0.yml
  24. 8 0
      config/sync/quick_node_clone.settings.yml
  25. 8 0
      config/sync/taxonomy.vocabulary.type_de_site.yml
  26. 3 0
      config/sync/views.view.actus.yml
  27. 67 0
      config/sync/views.view.home.yml
  28. 255 3
      config/sync/views.view.sites.yml
  29. 0 0
      web/themes/custom/reha/templates/__node--site.html.twig

+ 4 - 0
composer.json

@@ -20,11 +20,14 @@
         "drupal/admin_theme": "^1.0",
         "drupal/advanced_email_validation": "^1.1",
         "drupal/amswap": "^3.2",
+        "drupal/conditional_fields": "^4.0@alpha",
         "drupal/config_pages": "^2.15",
         "drupal/content_as_config": "^1.0",
         "drupal/core-composer-scaffold": "^10.1",
         "drupal/core-project-message": "^10.1",
         "drupal/core-recommended": "^10.1",
+        "drupal/image_delta_formatter": "^1.2",
+        "drupal/image_field_caption": "^2.0",
         "drupal/linked_field": "^1.5",
         "drupal/login_destination": "^2.0@beta",
         "drupal/mailsystem": "^4.4",
@@ -35,6 +38,7 @@
         "drupal/panels": "^4.7",
         "drupal/paragraphs": "^1.16",
         "drupal/phone_number": "^2.0@alpha",
+        "drupal/quick_node_clone": "^1.18",
         "drupal/rules": "^3.0@alpha",
         "drupal/social_media_links": "^2.9",
         "drupal/typed_data": "^1.0@beta",

+ 269 - 1
composer.lock

@@ -4,7 +4,7 @@
         "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
         "This file is @generated automatically"
     ],
-    "content-hash": "6f22602308a4ff1247870c4dc23f07e1",
+    "content-hash": "70e879d1fd2c1004a55467d656238e50",
     "packages": [
         {
             "name": "asm89/stack-cors",
@@ -2487,6 +2487,101 @@
                 "source": "https://git.drupalcode.org/project/bulkdelete"
             }
         },
+        {
+            "name": "drupal/conditional_fields",
+            "version": "4.0.0-alpha5",
+            "source": {
+                "type": "git",
+                "url": "https://git.drupalcode.org/project/conditional_fields.git",
+                "reference": "4.0.0-alpha5"
+            },
+            "dist": {
+                "type": "zip",
+                "url": "https://ftp.drupal.org/files/projects/conditional_fields-4.0.0-alpha5.zip",
+                "reference": "4.0.0-alpha5",
+                "shasum": "f0788b3cc91b390c3ebbdf544ecb2e78c57eb183"
+            },
+            "require": {
+                "drupal/core": "^8 || ^9 || ^10"
+            },
+            "require-dev": {
+                "drupal/paragraphs": "*"
+            },
+            "type": "drupal-module",
+            "extra": {
+                "drupal": {
+                    "version": "4.0.0-alpha5",
+                    "datestamp": "1695850051",
+                    "security-coverage": {
+                        "status": "not-covered",
+                        "message": "Alpha releases are not covered by Drupal security advisories."
+                    }
+                }
+            },
+            "notification-url": "https://packages.drupal.org/8/downloads",
+            "license": [
+                "GPL-2.0-or-later"
+            ],
+            "authors": [
+                {
+                    "name": "benjifisher",
+                    "homepage": "https://www.drupal.org/user/683300"
+                },
+                {
+                    "name": "colan",
+                    "homepage": "https://www.drupal.org/user/58704"
+                },
+                {
+                    "name": "dqd",
+                    "homepage": "https://www.drupal.org/user/1001934"
+                },
+                {
+                    "name": "ergonlogic",
+                    "homepage": "https://www.drupal.org/user/368613"
+                },
+                {
+                    "name": "geek-merlin",
+                    "homepage": "https://www.drupal.org/user/229048"
+                },
+                {
+                    "name": "heddn",
+                    "homepage": "https://www.drupal.org/user/1463982"
+                },
+                {
+                    "name": "itsekhmistro",
+                    "homepage": "https://www.drupal.org/user/928152"
+                },
+                {
+                    "name": "mparker17",
+                    "homepage": "https://www.drupal.org/user/536298"
+                },
+                {
+                    "name": "OlgaRabodzei",
+                    "homepage": "https://www.drupal.org/user/3389198"
+                },
+                {
+                    "name": "peterpoe",
+                    "homepage": "https://www.drupal.org/user/55674"
+                },
+                {
+                    "name": "saurabh-2k17",
+                    "homepage": "https://www.drupal.org/user/3622252"
+                },
+                {
+                    "name": "szhu",
+                    "homepage": "https://www.drupal.org/user/3525295"
+                },
+                {
+                    "name": "thalles",
+                    "homepage": "https://www.drupal.org/user/3589086"
+                }
+            ],
+            "description": "Define dependencies between fields based on their states and values.",
+            "homepage": "https://www.drupal.org/project/conditional_fields",
+            "support": {
+                "source": "https://git.drupalcode.org/project/conditional_fields"
+            }
+        },
         {
             "name": "drupal/config_devel",
             "version": "dev-1.x",
@@ -4531,6 +4626,123 @@
                 "issues": "https://www.drupal.org/project/issues/honeypot"
             }
         },
+        {
+            "name": "drupal/image_delta_formatter",
+            "version": "1.2.0",
+            "source": {
+                "type": "git",
+                "url": "https://git.drupalcode.org/project/image_delta_formatter.git",
+                "reference": "8.x-1.2"
+            },
+            "dist": {
+                "type": "zip",
+                "url": "https://ftp.drupal.org/files/projects/image_delta_formatter-8.x-1.2.zip",
+                "reference": "8.x-1.2",
+                "shasum": "e236790ad92bdbc8a0ba0aa042a8580d8ce9f425"
+            },
+            "require": {
+                "drupal/core": "^8 || ^9 || ^10"
+            },
+            "type": "drupal-module",
+            "extra": {
+                "drupal": {
+                    "version": "8.x-1.2",
+                    "datestamp": "1685543777",
+                    "security-coverage": {
+                        "status": "covered",
+                        "message": "Covered by Drupal's security advisory policy"
+                    }
+                }
+            },
+            "notification-url": "https://packages.drupal.org/8/downloads",
+            "license": [
+                "GPL-2.0-or-later"
+            ],
+            "authors": [
+                {
+                    "name": "bojanz",
+                    "homepage": "https://www.drupal.org/user/86106"
+                },
+                {
+                    "name": "fgm",
+                    "homepage": "https://www.drupal.org/user/27985"
+                },
+                {
+                    "name": "jsacksick",
+                    "homepage": "https://www.drupal.org/user/972218"
+                }
+            ],
+            "description": "Provides a formatter that displays a specific delta of a multivalue imagefield.",
+            "homepage": "https://www.drupal.org/project/image_delta_formatter",
+            "support": {
+                "source": "https://git.drupalcode.org/project/image_delta_formatter"
+            }
+        },
+        {
+            "name": "drupal/image_field_caption",
+            "version": "2.0.1",
+            "source": {
+                "type": "git",
+                "url": "https://git.drupalcode.org/project/image_field_caption.git",
+                "reference": "2.0.1"
+            },
+            "dist": {
+                "type": "zip",
+                "url": "https://ftp.drupal.org/files/projects/image_field_caption-2.0.1.zip",
+                "reference": "2.0.1",
+                "shasum": "053e1ccfc638b3b2cd5c59c3c6a053e4e5041183"
+            },
+            "require": {
+                "drupal/core": "^9 || ^10"
+            },
+            "type": "drupal-module",
+            "extra": {
+                "drupal": {
+                    "version": "2.0.1",
+                    "datestamp": "1705443097",
+                    "security-coverage": {
+                        "status": "covered",
+                        "message": "Covered by Drupal's security advisory policy"
+                    }
+                }
+            },
+            "notification-url": "https://packages.drupal.org/8/downloads",
+            "license": [
+                "GPL-2.0+"
+            ],
+            "authors": [
+                {
+                    "name": "awm",
+                    "homepage": "https://www.drupal.org/user/1059398"
+                },
+                {
+                    "name": "hanoii",
+                    "homepage": "https://www.drupal.org/user/23157"
+                },
+                {
+                    "name": "ironsizide",
+                    "homepage": "https://www.drupal.org/user/787980"
+                },
+                {
+                    "name": "iStryker",
+                    "homepage": "https://www.drupal.org/user/303676"
+                },
+                {
+                    "name": "RobLoach",
+                    "homepage": "https://www.drupal.org/user/61114"
+                },
+                {
+                    "name": "tyler.frankenstein",
+                    "homepage": "https://www.drupal.org/user/150680"
+                }
+            ],
+            "description": "Add caption to image field.",
+            "homepage": "https://www.drupal.org/project/image_field_caption",
+            "support": {
+                "source": "https://git.drupalcode.org/project/image_field_caption",
+                "issues": "https://www.drupal.org/project/issues/image_field_caption"
+            }
+        },
         {
             "name": "drupal/imagemagick",
             "version": "3.4.0",
@@ -6495,6 +6707,61 @@
                 "source": "https://git.drupalcode.org/project/profile"
             }
         },
+        {
+            "name": "drupal/quick_node_clone",
+            "version": "1.18.0",
+            "source": {
+                "type": "git",
+                "url": "https://git.drupalcode.org/project/quick_node_clone.git",
+                "reference": "8.x-1.18"
+            },
+            "dist": {
+                "type": "zip",
+                "url": "https://ftp.drupal.org/files/projects/quick_node_clone-8.x-1.18.zip",
+                "reference": "8.x-1.18",
+                "shasum": "ab17077eccb24e5c651fedc5056a50051882a13d"
+            },
+            "require": {
+                "drupal/core": "^8.8 || ^9 || ^10"
+            },
+            "require-dev": {
+                "drupal/group": "^1 || ^2 || ^3",
+                "drupal/paragraphs": "1.x-dev"
+            },
+            "type": "drupal-module",
+            "extra": {
+                "drupal": {
+                    "version": "8.x-1.18",
+                    "datestamp": "1707833857",
+                    "security-coverage": {
+                        "status": "covered",
+                        "message": "Covered by Drupal's security advisory policy"
+                    }
+                }
+            },
+            "notification-url": "https://packages.drupal.org/8/downloads",
+            "license": [
+                "GPL-2.0-or-later"
+            ],
+            "authors": [
+                {
+                    "name": "vilepickle",
+                    "homepage": "https://www.drupal.org/u/vilepickle",
+                    "role": "Maintainer"
+                },
+                {
+                    "name": "Neslee Canil Pinto",
+                    "homepage": "https://www.drupal.org/u/neslee-canil-pinto",
+                    "role": "Maintainer"
+                }
+            ],
+            "description": "Quickly clone a node with regular fields.",
+            "homepage": "https://www.drupal.org/project/quick_node_clone",
+            "support": {
+                "source": "https://git.drupalcode.org/project/quick_node_clone",
+                "issues": "https://www.drupal.org/project/issues/quick_node_clone"
+            }
+        },
         {
             "name": "drupal/redirect",
             "version": "1.9.0",
@@ -12850,6 +13117,7 @@
     "aliases": [],
     "minimum-stability": "stable",
     "stability-flags": {
+        "drupal/conditional_fields": 15,
         "drupal/login_destination": 20,
         "drupal/mimemail": 15,
         "drupal/notify": 10,

+ 82 - 12
config/sync/core.entity_form_display.node.site.default.yml

@@ -6,14 +6,19 @@ dependencies:
     - field.field.node.site.body
     - field.field.node.site.field_adresse_site
     - field.field.node.site.field_architecte
+    - field.field.node.site.field_date_de_construction
     - field.field.node.site.field_fichiers
     - field.field.node.site.field_image
+    - field.field.node.site.field_lettre_de_site
     - field.field.node.site.field_numero_site
     - field.field.node.site.field_operation
+    - field.field.node.site.field_type_de_site
     - image.style.thumbnail
     - node.type.site
   module:
     - address
+    - conditional_fields
+    - datetime_range
     - field_group
     - file
     - image
@@ -24,8 +29,11 @@ third_party_settings:
     group_details:
       children:
         - field_operation
-        - field_architecte
+        - field_type_de_site
         - field_numero_site
+        - field_lettre_de_site
+        - field_architecte
+        - field_date_de_construction
         - field_adresse_site
         - status
         - promote
@@ -98,23 +106,35 @@ content:
     third_party_settings: {  }
   created:
     type: datetime_timestamp
-    weight: 9
+    weight: 12
     region: content
     settings: {  }
     third_party_settings: {  }
   field_adresse_site:
     type: address_default
-    weight: 4
+    weight: 7
     region: content
     settings: {  }
     third_party_settings: {  }
   field_architecte:
     type: string_textfield
-    weight: 2
+    weight: 5
     region: content
     settings:
-      size: 60
+      size: 30
       placeholder: ''
+    third_party_settings:
+      maxlength:
+        maxlength_js: null
+        maxlength_js_label: 'Contenu limité à @limit caractères, restant : <strong>@remaining</strong>'
+        maxlength_js_enforce: false
+      advanced_text_formatter:
+        show_token_tree: 0
+  field_date_de_construction:
+    type: daterange_default
+    weight: 6
+    region: content
+    settings: {  }
     third_party_settings: {  }
   field_fichiers:
     type: file_generic
@@ -131,13 +151,57 @@ content:
       progress_indicator: throbber
       preview_image_style: thumbnail
     third_party_settings: {  }
+  field_lettre_de_site:
+    type: options_select
+    weight: 4
+    region: content
+    settings: {  }
+    third_party_settings:
+      conditional_fields:
+        11a360a3-e83c-4ab4-9eee-ff184504c33b:
+          entity_type: node
+          bundle: site
+          dependee: field_type_de_site
+          settings:
+            state: visible
+            reset: false
+            condition: value
+            grouping: AND
+            values_set: 1
+            value: ''
+            values: {  }
+            value_form:
+              -
+                target_id: '2'
+            effect: show
+            effect_options: {  }
+            selector: ''
   field_numero_site:
     type: number
     weight: 3
     region: content
     settings:
       placeholder: ''
-    third_party_settings: {  }
+    third_party_settings:
+      conditional_fields:
+        d93a9eef-3e85-4592-9970-d6d8bf74c58b:
+          entity_type: node
+          bundle: site
+          dependee: field_type_de_site
+          settings:
+            state: visible
+            reset: false
+            condition: value
+            grouping: AND
+            values_set: 1
+            value: ''
+            values: {  }
+            value_form:
+              -
+                target_id: '1'
+            effect: show
+            effect_options: {  }
+            selector: ''
   field_operation:
     type: entity_reference_autocomplete
     weight: 1
@@ -148,36 +212,42 @@ content:
       size: 60
       placeholder: ''
     third_party_settings: {  }
+  field_type_de_site:
+    type: options_select
+    weight: 2
+    region: content
+    settings: {  }
+    third_party_settings: {  }
   langcode:
     type: language_select
-    weight: 7
+    weight: 10
     region: content
     settings:
       include_locked: true
     third_party_settings: {  }
   path:
     type: path
-    weight: 11
+    weight: 14
     region: content
     settings: {  }
     third_party_settings: {  }
   promote:
     type: boolean_checkbox
-    weight: 6
+    weight: 9
     region: content
     settings:
       display_label: true
     third_party_settings: {  }
   status:
     type: boolean_checkbox
-    weight: 5
+    weight: 8
     region: content
     settings:
       display_label: true
     third_party_settings: {  }
   sticky:
     type: boolean_checkbox
-    weight: 10
+    weight: 13
     region: content
     settings:
       display_label: true
@@ -192,7 +262,7 @@ content:
     third_party_settings: {  }
   uid:
     type: entity_reference_autocomplete
-    weight: 8
+    weight: 11
     region: content
     settings:
       match_operator: CONTAINS

+ 20 - 37
config/sync/core.entity_view_display.node.actualite.home_block.yml

@@ -15,80 +15,63 @@ dependencies:
     - node.type.actualite
   module:
     - datetime
-    - file
-    - image
-    - text
+    - image_delta_formatter
     - user
 id: node.actualite.home_block
 targetEntityType: node
 bundle: actualite
 mode: home_block
 content:
-  body:
-    type: text_default
-    label: hidden
-    settings: {  }
-    third_party_settings: {  }
-    weight: 2
-    region: content
   field_date:
     type: datetime_default
     label: visually_hidden
     settings:
       timezone_override: ''
-      format_type: medium
+      format_type: html_date
     third_party_settings: {  }
-    weight: 1
-    region: content
-  field_fichiers:
-    type: file_default
-    label: visually_hidden
-    settings:
-      use_description_as_link_text: true
-    third_party_settings: {  }
-    weight: 4
+    weight: 3
     region: content
   field_image:
-    type: image
+    type: image_delta_formatter
     label: visually_hidden
     settings:
-      image_link: ''
+      deltas: '0'
       image_style: ''
+      image_link: content
       image_loading:
         attribute: lazy
+      deltas_reversed: 0
     third_party_settings: {  }
-    weight: 3
+    weight: 0
     region: content
   field_site:
     type: entity_reference_label
-    label: above
+    label: visually_hidden
     settings:
-      link: true
+      link: false
     third_party_settings: {  }
-    weight: 5
+    weight: 4
     region: content
   field_sous_titre:
     type: string
-    label: above
+    label: visually_hidden
     settings:
-      link_to_entity: false
+      link_to_entity: true
     third_party_settings: {  }
-    weight: 7
+    weight: 2
     region: content
   field_type_d_actualite:
     type: entity_reference_label
-    label: above
+    label: visually_hidden
     settings:
-      link: true
-    third_party_settings: {  }
-    weight: 6
-    region: content
-  links:
-    settings: {  }
+      link: false
     third_party_settings: {  }
-    weight: 0
+    weight: 1
     region: content
 hidden:
+  body: true
+  field_fichiers: true
   field_liens: true
   langcode: true
+  links: true
   search_api_excerpt: true

+ 29 - 13
config/sync/core.entity_view_display.node.site.default.yml

@@ -6,15 +6,19 @@ dependencies:
     - field.field.node.site.body
     - field.field.node.site.field_adresse_site
     - field.field.node.site.field_architecte
+    - field.field.node.site.field_date_de_construction
     - field.field.node.site.field_fichiers
     - field.field.node.site.field_image
+    - field.field.node.site.field_lettre_de_site
     - field.field.node.site.field_numero_site
     - field.field.node.site.field_operation
+    - field.field.node.site.field_type_de_site
     - node.type.site
   module:
     - address
+    - datetime_range
     - file
-    - image
+    - image_field_caption
     - text
     - user
 id: node.site.default
@@ -24,25 +28,35 @@ mode: default
 content:
   body:
     type: text_default
-    label: hidden
+    label: visually_hidden
     settings: {  }
     third_party_settings: {  }
-    weight: 3
+    weight: 5
     region: content
   field_adresse_site:
-    type: address_default
-    label: above
+    type: address_plain
+    label: visually_hidden
     settings: {  }
     third_party_settings: {  }
-    weight: 2
+    weight: 1
     region: content
   field_architecte:
     type: string
-    label: above
+    label: visually_hidden
     settings:
       link_to_entity: false
     third_party_settings: {  }
-    weight: 5
+    weight: 2
+    region: content
+  field_date_de_construction:
+    type: daterange_default
+    label: visually_hidden
+    settings:
+      timezone_override: ''
+      format_type: html_year
+      separator: '-'
+    third_party_settings: {  }
+    weight: 3
     region: content
   field_fichiers:
     type: file_default
@@ -50,10 +64,10 @@ content:
     settings:
       use_description_as_link_text: true
     third_party_settings: {  }
-    weight: 4
+    weight: 6
     region: content
   field_image:
-    type: image
+    type: image_caption
     label: visually_hidden
     settings:
       image_link: ''
@@ -61,19 +75,21 @@ content:
       image_loading:
         attribute: lazy
     third_party_settings: {  }
-    weight: 0
+    weight: 4
     region: content
   field_numero_site:
     type: number_integer
-    label: above
+    label: visually_hidden
     settings:
       thousand_separator: ''
       prefix_suffix: true
     third_party_settings: {  }
-    weight: 1
+    weight: 0
     region: content
 hidden:
+  field_lettre_de_site: true
   field_operation: true
+  field_type_de_site: true
   langcode: true
   links: true
   prevnext_next: true

+ 12 - 3
config/sync/core.entity_view_display.node.site.home_block.yml

@@ -7,14 +7,18 @@ dependencies:
     - field.field.node.site.body
     - field.field.node.site.field_adresse_site
     - field.field.node.site.field_architecte
+    - field.field.node.site.field_date_de_construction
     - field.field.node.site.field_fichiers
     - field.field.node.site.field_image
+    - field.field.node.site.field_lettre_de_site
     - field.field.node.site.field_numero_site
     - field.field.node.site.field_operation
+    - field.field.node.site.field_type_de_site
+    - image.style.wide
     - node.type.site
   module:
     - address
-    - image
+    - image_delta_formatter
     - user
 id: node.site.home_block
 targetEntityType: node
@@ -37,13 +41,15 @@ content:
     weight: 3
     region: content
   field_image:
-    type: image
+    type: image_delta_formatter
     label: visually_hidden
     settings:
+      deltas: '0'
+      image_style: wide
       image_link: content
-      image_style: ''
       image_loading:
         attribute: lazy
+      deltas_reversed: 0
     third_party_settings: {  }
     weight: 0
     region: content
@@ -63,7 +69,10 @@ content:
     region: content
 hidden:
   body: true
+  field_date_de_construction: true
   field_fichiers: true
+  field_lettre_de_site: true
   field_operation: true
+  field_type_de_site: true
   langcode: true
   search_api_excerpt: true

+ 61 - 0
config/sync/core.entity_view_display.node.site.site_partenaire.yml

@@ -0,0 +1,61 @@
+uuid: bc2161ee-effd-42f7-9dba-ae8fe76be705
+langcode: fr
+status: true
+dependencies:
+  config:
+    - core.entity_view_mode.node.site_partenaire
+    - field.field.node.site.body
+    - field.field.node.site.field_adresse_site
+    - field.field.node.site.field_architecte
+    - field.field.node.site.field_date_de_construction
+    - field.field.node.site.field_fichiers
+    - field.field.node.site.field_image
+    - field.field.node.site.field_lettre_de_site
+    - field.field.node.site.field_numero_site
+    - field.field.node.site.field_operation
+    - field.field.node.site.field_type_de_site
+    - node.type.site
+  module:
+    - address
+    - options
+    - user
+id: node.site.site_partenaire
+targetEntityType: node
+bundle: site
+mode: site_partenaire
+content:
+  field_adresse_site:
+    type: address_plain
+    label: visually_hidden
+    settings: {  }
+    third_party_settings: {  }
+    weight: 1
+    region: content
+  field_architecte:
+    type: string
+    label: visually_hidden
+    settings:
+      link_to_entity: false
+    third_party_settings: {  }
+    weight: 2
+    region: content
+  field_lettre_de_site:
+    type: list_default
+    label: visually_hidden
+    settings: {  }
+    third_party_settings: {  }
+    weight: 0
+    region: content
+hidden:
+  body: true
+  field_date_de_construction: true
+  field_fichiers: true
+  field_image: true
+  field_numero_site: true
+  field_operation: true
+  field_type_de_site: true
+  langcode: true
+  links: true
+  prevnext_next: true
+  prevnext_previous: true
+  search_api_excerpt: true

+ 11 - 3
config/sync/core.entity_view_display.node.site.teaser.yml

@@ -7,15 +7,18 @@ dependencies:
     - field.field.node.site.body
     - field.field.node.site.field_adresse_site
     - field.field.node.site.field_architecte
+    - field.field.node.site.field_date_de_construction
     - field.field.node.site.field_fichiers
     - field.field.node.site.field_image
+    - field.field.node.site.field_lettre_de_site
     - field.field.node.site.field_numero_site
     - field.field.node.site.field_operation
+    - field.field.node.site.field_type_de_site
     - image.style.large
     - node.type.site
   module:
     - address
-    - image
+    - image_delta_formatter
     - user
 id: node.site.teaser
 targetEntityType: node
@@ -38,13 +41,15 @@ content:
     weight: 3
     region: content
   field_image:
-    type: image
+    type: image_delta_formatter
     label: visually_hidden
     settings:
-      image_link: ''
+      deltas: '0'
       image_style: large
+      image_link: content
       image_loading:
         attribute: lazy
+      deltas_reversed: 0
     third_party_settings: {  }
     weight: 0
     region: content
@@ -64,7 +69,10 @@ content:
     region: content
 hidden:
   body: true
+  field_date_de_construction: true
   field_fichiers: true
+  field_lettre_de_site: true
   field_operation: true
+  field_type_de_site: true
   langcode: true
   search_api_excerpt: true

+ 10 - 0
config/sync/core.entity_view_mode.node.site_partenaire.yml

@@ -0,0 +1,10 @@
+uuid: b989654f-8f6d-4895-8650-cecf60c90906
+langcode: fr
+status: true
+dependencies:
+  module:
+    - node
+id: node.site_partenaire
+label: 'Site partenaire'
+targetEntityType: node
+cache: true

+ 4 - 0
config/sync/core.extension.yml

@@ -21,6 +21,7 @@ module:
   breakpoint: 0
   bulkdelete: 0
   ckeditor5: 0
+  conditional_fields: 0
   config: 0
   config_devel: 0
   config_filter: 0
@@ -62,6 +63,8 @@ module:
   help: 0
   honeypot: 0
   image: 0
+  image_delta_formatter: 0
+  image_field_caption: 0
   inline_entity_form: 0
   jquery_ui: 0
   jquery_ui_datepicker: 0
@@ -97,6 +100,7 @@ module:
   pathologic: 0
   persistent_login: 0
   phone_number: 0
+  quick_node_clone: 0
   redis: 0
   reha_mod: 0
   responsive_image: 0

+ 3 - 0
config/sync/editor.editor.wysiwyg.yml

@@ -18,6 +18,7 @@ settings:
       - italic
       - drupalInsertImage
       - link
+      - sourceEditing
   plugins:
     ckeditor5_heading:
       enabled_headings:
@@ -28,6 +29,8 @@ settings:
         - heading6
     ckeditor5_imageResize:
       allow_resize: true
+    ckeditor5_sourceEditing:
+      allowed_tags: {  }
     linkit_extension:
       linkit_enabled: true
       linkit_profile: default

+ 21 - 0
config/sync/field.field.node.site.field_date_de_construction.yml

@@ -0,0 +1,21 @@
+uuid: ba5dcd09-6a2f-4e3a-8270-5dd22f2f339c
+langcode: fr
+status: true
+dependencies:
+  config:
+    - field.storage.node.field_date_de_construction
+    - node.type.site
+  module:
+    - datetime_range
+id: node.site.field_date_de_construction
+field_name: field_date_de_construction
+entity_type: node
+bundle: site
+label: 'Date de construction'
+description: ''
+required: false
+translatable: false
+default_value: {  }
+default_value_callback: ''
+settings: {  }
+field_type: daterange

+ 3 - 0
config/sync/field.field.node.site.field_image.yml

@@ -35,4 +35,7 @@ settings:
     title: ''
     width: null
     height: null
+    caption: ''
+  caption_field: 1
+  caption_field_required: 0
 field_type: image

+ 21 - 0
config/sync/field.field.node.site.field_lettre_de_site.yml

@@ -0,0 +1,21 @@
+uuid: 3d65fa48-3d02-46cb-8297-55c42f891db9
+langcode: fr
+status: true
+dependencies:
+  config:
+    - field.storage.node.field_lettre_de_site
+    - node.type.site
+  module:
+    - options
+id: node.site.field_lettre_de_site
+field_name: field_lettre_de_site
+entity_type: node
+bundle: site
+label: 'Lettre de site'
+description: ''
+required: false
+translatable: false
+default_value: {  }
+default_value_callback: ''
+settings: {  }
+field_type: list_string

+ 29 - 0
config/sync/field.field.node.site.field_type_de_site.yml

@@ -0,0 +1,29 @@
+uuid: 40ffc4ae-7d83-4d9a-912b-cbe4a3680f18
+langcode: fr
+status: true
+dependencies:
+  config:
+    - field.storage.node.field_type_de_site
+    - node.type.site
+    - taxonomy.vocabulary.type_de_site
+id: node.site.field_type_de_site
+field_name: field_type_de_site
+entity_type: node
+bundle: site
+label: 'Type de site'
+description: ''
+required: false
+translatable: false
+default_value: {  }
+default_value_callback: ''
+settings:
+  handler: 'default:taxonomy_term'
+  handler_settings:
+    target_bundles:
+      type_de_site: type_de_site
+    sort:
+      field: name
+      direction: asc
+    auto_create: false
+    auto_create_bundle: ''
+field_type: entity_reference

+ 1 - 1
config/sync/field.storage.node.field_architecte.yml

@@ -14,7 +14,7 @@ settings:
   is_ascii: false
 module: core
 locked: false
-cardinality: 1
+cardinality: -1
 translatable: true
 indexes: {  }
 persist_with_no_fields: false

+ 20 - 0
config/sync/field.storage.node.field_date_de_construction.yml

@@ -0,0 +1,20 @@
+uuid: 5f22692c-acb6-478f-9d75-9966a7a24556
+langcode: fr
+status: true
+dependencies:
+  module:
+    - datetime_range
+    - node
+id: node.field_date_de_construction
+field_name: field_date_de_construction
+entity_type: node
+type: daterange
+settings:
+  datetime_type: date
+module: datetime_range
+locked: false
+cardinality: 1
+translatable: true
+indexes: {  }
+persist_with_no_fields: false
+custom_storage: false

+ 99 - 0
config/sync/field.storage.node.field_lettre_de_site.yml

@@ -0,0 +1,99 @@
+uuid: 0eff65af-587b-4b5c-a083-e3eee262277e
+langcode: fr
+status: true
+dependencies:
+  module:
+    - node
+    - options
+id: node.field_lettre_de_site
+field_name: field_lettre_de_site
+entity_type: node
+type: list_string
+settings:
+  allowed_values:
+    -
+      value: A
+      label: A
+    -
+      value: B
+      label: B
+    -
+      value: C
+      label: C
+    -
+      value: D
+      label: D
+    -
+      value: E
+      label: E
+    -
+      value: F
+      label: F
+    -
+      value: G
+      label: G
+    -
+      value: H
+      label: H
+    -
+      value: I
+      label: I
+    -
+      value: J
+      label: J
+    -
+      value: K
+      label: K
+    -
+      value: L
+      label: L
+    -
+      value: M
+      label: M
+    -
+      value: 'N'
+      label: 'N'
+    -
+      value: O
+      label: O
+    -
+      value: P
+      label: P
+    -
+      value: Q
+      label: Q
+    -
+      value: R
+      label: R
+    -
+      value: S
+      label: S
+    -
+      value: T
+      label: T
+    -
+      value: U
+      label: U
+    -
+      value: V
+      label: V
+    -
+      value: W
+      label: W
+    -
+      value: X
+      label: X
+    -
+      value: 'Y'
+      label: 'Y'
+    -
+      value: Z
+      label: Z
+  allowed_values_function: ''
+module: options
+locked: false
+cardinality: 1
+translatable: true
+indexes: {  }
+persist_with_no_fields: false
+custom_storage: false

+ 20 - 0
config/sync/field.storage.node.field_type_de_site.yml

@@ -0,0 +1,20 @@
+uuid: 7615e22d-fb99-4bc8-a07a-b04174ab3219
+langcode: fr
+status: true
+dependencies:
+  module:
+    - node
+    - taxonomy
+id: node.field_type_de_site
+field_name: field_type_de_site
+entity_type: node
+type: entity_reference
+settings:
+  target_type: taxonomy_term
+module: core
+locked: false
+cardinality: 1
+translatable: true
+indexes: {  }
+persist_with_no_fields: false
+custom_storage: false

+ 1 - 1
config/sync/filter.format.wysiwyg.yml

@@ -49,7 +49,7 @@ filters:
     status: false
     weight: -43
     settings:
-      allowed_html: '<em> <strong> <cite> <blockquote cite> <code> <ul type> <ol start type> <li> <dl> <dt> <dd> <h2 id> <h3 id> <h5 id> <h6 id> <u> <a href hreflang !href accesskey id rel target title data-entity-type data-entity-uuid data-entity-substitution> <img src alt data-entity-type data-entity-uuid data-entity-substitution> <p> <h1> <pre> <h4 id class="inter-titre">'
+      allowed_html: ''
       filter_html_help: true
       filter_html_nofollow: false
   filter_align:

+ 11 - 0
config/sync/language.content_settings.taxonomy_term.type_de_site.yml

@@ -0,0 +1,11 @@
+uuid: 3941d8b0-7268-43da-be5c-18fc98401a8a
+langcode: fr
+status: true
+dependencies:
+  config:
+    - taxonomy.vocabulary.type_de_site
+id: taxonomy_term.type_de_site
+target_entity_type_id: taxonomy_term
+target_bundle: type_de_site
+default_langcode: site_default
+language_alterable: false

+ 1 - 1
config/sync/page_manager.page.node_view.yml

@@ -1,6 +1,6 @@
 uuid: e93d1bbb-5628-4a43-bfe2-6ba0a496e264
 langcode: fr
-status: true
+status: false
 dependencies: {  }
 _core:
   default_config_hash: RCVWP-yHwxSNiQORMIabDgHMEVqOMW58w80BQgRFJ4k

+ 30 - 17
config/sync/page_manager.page_variant.home-panels_variant-0.yml

@@ -8,8 +8,9 @@ dependencies:
     - views.view.home
     - views.view.sites
   content:
-    - 'block_content:node_link:bbaa5e2a-7f7c-498f-b08e-d1a3b36c03a8'
-    - 'block_content:text:3d4d153c-9da8-49e2-be7a-d2245f5716ee'
+    - 'block_content:node_link:793e5016-2b96-4802-9f38-1cd3768775b5'
+    - 'block_content:node_link:9e601647-144f-4e8e-b9e1-7d744f9141d7'
+    - 'block_content:text:3bb825b3-ab84-4861-a4f2-2a5e5eed74de'
   module:
     - block_content
     - panels
@@ -36,18 +37,6 @@ variant_settings:
       region: content
       weight: -1
       uuid: 764516bc-3020-4464-9393-b5de3e6d2068
-    fe778d6d-3624-42af-a045-81688a622c28:
-      id: 'block_content:bbaa5e2a-7f7c-498f-b08e-d1a3b36c03a8'
-      label: 'Sites link'
-      label_display: '0'
-      provider: block_content
-      status: true
-      info: ''
-      view_mode: full
-      context_mapping: {  }
-      region: content
-      weight: 0
-      uuid: fe778d6d-3624-42af-a045-81688a622c28
     4ce4e593-5d62-4d67-9e00-bb67675ea137:
       id: 'views_block:home-block_1'
       label: ''
@@ -72,8 +61,20 @@ variant_settings:
       region: content
       weight: 1
       uuid: 5430dc3a-3158-4f5d-a4f7-a2aa60bfeb64
-    13d5de06-2a1c-46ec-9580-faf458771943:
-      id: 'block_content:3d4d153c-9da8-49e2-be7a-d2245f5716ee'
+    74b753c5-aad5-434b-b667-2ca79e8490e8:
+      id: 'block_content:9e601647-144f-4e8e-b9e1-7d744f9141d7'
+      label: 'Voir tous les sites'
+      label_display: '0'
+      provider: block_content
+      status: true
+      info: ''
+      view_mode: full
+      context_mapping: {  }
+      region: content
+      weight: 0
+      uuid: 74b753c5-aad5-434b-b667-2ca79e8490e8
+    f7438dae-1a0b-491a-ab61-3938678d59cb:
+      id: 'block_content:3bb825b3-ab84-4861-a4f2-2a5e5eed74de'
       label: 'Phase 2.'
       label_display: '0'
       provider: block_content
@@ -83,7 +84,19 @@ variant_settings:
       context_mapping: {  }
       region: content
       weight: -2
-      uuid: 13d5de06-2a1c-46ec-9580-faf458771943
+      uuid: f7438dae-1a0b-491a-ab61-3938678d59cb
+    ea8e91b4-8e54-4526-82f9-6e3b226cf95b:
+      id: 'block_content:793e5016-2b96-4802-9f38-1cd3768775b5'
+      label: 'Le programme link'
+      label_display: '0'
+      provider: block_content
+      status: true
+      info: ''
+      view_mode: full
+      context_mapping: {  }
+      region: content
+      weight: 3
+      uuid: ea8e91b4-8e54-4526-82f9-6e3b226cf95b
   page_title: ''
   layout: layout_onecol
   layout_settings:

+ 8 - 0
config/sync/quick_node_clone.settings.yml

@@ -0,0 +1,8 @@
+_core:
+  default_config_hash: 6XRelHPjACQVOo9yRQMmbXt-ysCA2Pt6l762bxQQbdw
+langcode: fr
+exclude:
+  node: {  }
+  paragraph: {  }
+text_to_prepend_to_title: 'Clone of'
+clone_status: false

+ 8 - 0
config/sync/taxonomy.vocabulary.type_de_site.yml

@@ -0,0 +1,8 @@
+uuid: 307b3676-d619-49bd-920b-35db0534f252
+langcode: fr
+status: true
+dependencies: {  }
+name: 'Type de site'
+vid: type_de_site
+description: ''
+weight: 0

+ 3 - 0
config/sync/views.view.actus.yml

@@ -290,6 +290,9 @@ display:
     display_plugin: page
     position: 1
     display_options:
+      title: 'Actualités & événements'
+      defaults:
+        title: false
       display_extenders:
         matomo:
           enabled: false

+ 67 - 0
config/sync/views.view.home.yml

@@ -205,7 +205,74 @@ display:
     display_plugin: block
     position: 1
     display_options:
+      fields:
+        body:
+          id: body
+          table: node__body
+          field: body
+          relationship: none
+          group_type: group
+          admin_label: ''
+          plugin_id: field
+          label: ''
+          exclude: false
+          alter:
+            alter_text: false
+            text: ''
+            make_link: false
+            path: ''
+            absolute: false
+            external: false
+            replace_spaces: false
+            path_case: none
+            trim_whitespace: false
+            alt: ''
+            rel: ''
+            link_class: ''
+            prefix: ''
+            suffix: ''
+            target: ''
+            nl2br: false
+            max_length: 0
+            word_boundary: true
+            ellipsis: true
+            more_link: false
+            more_link_text: ''
+            more_link_path: ''
+            strip_tags: false
+            trim: false
+            preserve_tags: ''
+            html: false
+          element_type: ''
+          element_class: ''
+          element_label_type: ''
+          element_label_class: ''
+          element_label_colon: false
+          element_wrapper_type: ''
+          element_wrapper_class: ''
+          element_default_classes: true
+          empty: ''
+          hide_empty: false
+          empty_zero: false
+          hide_alter_empty: true
+          click_sort_column: value
+          type: text_default
+          settings: {  }
+          group_column: value
+          group_columns: {  }
+          group_rows: true
+          delta_limit: 0
+          delta_offset: 0
+          delta_reversed: false
+          delta_first_last: false
+          multi_type: separator
+          separator: ', '
+          field_api_classes: false
+      defaults:
+        fields: false
+        footer: false
       display_description: ''
+      footer: {  }
       display_extenders: {  }
       block_description: 'home node block présentation'
       block_category: 'Node (Views)'

+ 255 - 3
config/sync/views.view.sites.yml

@@ -4,13 +4,18 @@ status: true
 dependencies:
   config:
     - core.entity_view_mode.node.home_block
-    - core.entity_view_mode.node.teaser
+    - core.entity_view_mode.node.site_partenaire
     - node.type.site
     - system.menu.main
+    - taxonomy.vocabulary.type_de_site
     - user.role.anonymous
     - user.role.authenticated
+  content:
+    - 'taxonomy_term:type_de_site:b417fe19-3e39-4114-bd26-5be6869e2774'
+    - 'taxonomy_term:type_de_site:f387493c-5475-41ba-9e1a-b1489de63533'
   module:
     - node
+    - taxonomy
     - user
 id: sites
 label: Sites
@@ -26,7 +31,7 @@ display:
     display_plugin: default
     position: 0
     display_options:
-      title: Sites
+      title: 'Les sites pilotes'
       fields:
         title:
           id: title
@@ -141,7 +146,8 @@ display:
       row:
         type: 'entity:node'
         options:
-          view_mode: teaser
+          relationship: none
+          view_mode: home_block
       query:
         type: views_query
         options:
@@ -204,12 +210,257 @@ display:
         - 'user.node_grants:view'
         - user.roles
       tags: {  }
+  block_2:
+    id: block_2
+    display_title: 'Sites Partenaires (block)'
+    display_plugin: block
+    position: 4
+    display_options:
+      title: 'Les sites partenaire associés au programme'
+      sorts:
+        field_lettre_de_site_value:
+          id: field_lettre_de_site_value
+          table: node__field_lettre_de_site
+          field: field_lettre_de_site_value
+          relationship: none
+          group_type: group
+          admin_label: ''
+          plugin_id: standard
+          order: ASC
+          expose:
+            label: ''
+            field_identifier: ''
+          exposed: false
+      filters:
+        status:
+          id: status
+          table: node_field_data
+          field: status
+          entity_type: node
+          entity_field: status
+          plugin_id: boolean
+          value: '1'
+          group: 1
+          expose:
+            operator: ''
+        type:
+          id: type
+          table: node_field_data
+          field: type
+          entity_type: node
+          entity_field: type
+          plugin_id: bundle
+          value:
+            site: site
+        field_type_de_site_target_id:
+          id: field_type_de_site_target_id
+          table: node__field_type_de_site
+          field: field_type_de_site_target_id
+          relationship: none
+          group_type: group
+          admin_label: ''
+          plugin_id: taxonomy_index_tid
+          operator: or
+          value:
+            2: 2
+          group: 1
+          exposed: false
+          expose:
+            operator_id: ''
+            label: ''
+            description: ''
+            use_operator: false
+            operator: ''
+            operator_limit_selection: false
+            operator_list: {  }
+            identifier: ''
+            required: false
+            remember: false
+            multiple: false
+            remember_roles:
+              authenticated: authenticated
+            reduce: false
+          is_grouped: false
+          group_info:
+            label: ''
+            description: ''
+            identifier: ''
+            optional: true
+            widget: select
+            multiple: false
+            remember: false
+            default_group: All
+            default_group_multiple: {  }
+            group_items: {  }
+          reduce_duplicates: false
+          vid: type_de_site
+          type: select
+          hierarchy: false
+          limit: true
+          error_message: true
+          save_lineage: false
+          force_deepest: false
+          parent: null
+          level_labels: ''
+          hierarchy_depth: 0
+          required_depth: 0
+          none_label: '- Please select -'
+      filter_groups:
+        operator: AND
+        groups:
+          1: AND
+      style:
+        type: default
+        options: {  }
+      row:
+        type: 'entity:node'
+        options:
+          relationship: none
+          view_mode: site_partenaire
+      defaults:
+        title: false
+        style: false
+        row: false
+        sorts: false
+        filters: false
+        filter_groups: false
+        header: false
+      display_description: ''
+      header: {  }
+      display_extenders:
+        matomo:
+          enabled: false
+          keyword_gets: ''
+          keyword_behavior: first
+          keyword_concat_separator: ' '
+          category_behavior: none
+          category_gets: ''
+          category_concat_separator: ' '
+          category_fallback: ''
+          category_facets: {  }
+          category_facets_concat_separator: ', '
+    cache_metadata:
+      max-age: -1
+      contexts:
+        - 'languages:language_content'
+        - 'languages:language_interface'
+        - user
+        - 'user.node_grants:view'
+        - user.roles
+      tags: {  }
   page_1:
     id: page_1
     display_title: Page
     display_plugin: page
     position: 1
     display_options:
+      filters:
+        status:
+          id: status
+          table: node_field_data
+          field: status
+          entity_type: node
+          entity_field: status
+          plugin_id: boolean
+          value: '1'
+          group: 1
+          expose:
+            operator: ''
+        type:
+          id: type
+          table: node_field_data
+          field: type
+          entity_type: node
+          entity_field: type
+          plugin_id: bundle
+          value:
+            site: site
+        field_type_de_site_target_id:
+          id: field_type_de_site_target_id
+          table: node__field_type_de_site
+          field: field_type_de_site_target_id
+          relationship: none
+          group_type: group
+          admin_label: ''
+          plugin_id: taxonomy_index_tid
+          operator: or
+          value:
+            1: 1
+          group: 1
+          exposed: false
+          expose:
+            operator_id: ''
+            label: ''
+            description: ''
+            use_operator: false
+            operator: ''
+            operator_limit_selection: false
+            operator_list: {  }
+            identifier: ''
+            required: false
+            remember: false
+            multiple: false
+            remember_roles:
+              authenticated: authenticated
+            reduce: false
+          is_grouped: false
+          group_info:
+            label: ''
+            description: ''
+            identifier: ''
+            optional: true
+            widget: select
+            multiple: false
+            remember: false
+            default_group: All
+            default_group_multiple: {  }
+            group_items: {  }
+          reduce_duplicates: false
+          vid: type_de_site
+          type: select
+          hierarchy: false
+          limit: true
+          error_message: true
+          save_lineage: false
+          force_deepest: false
+          parent: null
+          level_labels: ''
+          hierarchy_depth: 0
+          required_depth: 0
+          none_label: '- Please select -'
+      filter_groups:
+        operator: AND
+        groups:
+          1: AND
+      defaults:
+        filters: false
+        filter_groups: false
+        footer: false
+      footer:
+        area:
+          id: area
+          table: views
+          field: area
+          relationship: none
+          group_type: group
+          admin_label: ''
+          plugin_id: text
+          empty: false
+          content:
+            value: 'Les sites partenaires associés au programme'
+            format: wysiwyg
+          tokenize: false
+        view:
+          id: view
+          table: views
+          field: view
+          relationship: none
+          group_type: group
+          admin_label: ''
+          plugin_id: view
+          empty: false
+          view_to_insert: 'sites:block_2'
+          inherit_arguments: false
       display_extenders:
         matomo:
           enabled: false
@@ -237,6 +488,7 @@ display:
       contexts:
         - 'languages:language_content'
         - 'languages:language_interface'
+        - user
         - 'user.node_grants:view'
         - user.roles
       tags: {  }

+ 0 - 0
web/themes/custom/reha/templates/node--site.html.twig → web/themes/custom/reha/templates/__node--site.html.twig