home page
This commit is contained in:
@@ -20,6 +20,8 @@
|
||||
"drupal/core-composer-scaffold": "^10.4",
|
||||
"drupal/core-project-message": "^10.4",
|
||||
"drupal/core-recommended": "^10.4",
|
||||
"drupal/entity_block": "^2.0",
|
||||
"drupal/page_manager": "^4.0@RC",
|
||||
"drupal/upgrade_status": "^4.3",
|
||||
"wikimedia/composer-merge-plugin": "^2.1"
|
||||
},
|
||||
@@ -104,6 +106,17 @@
|
||||
"recurse": true,
|
||||
"replace": false,
|
||||
"merge-extra": true
|
||||
},
|
||||
"patches": {
|
||||
"drupal/paragraphs": {
|
||||
"Skip saving empty paragraphs for certain types https://www.drupal.org/project/paragraphs/issues/2877695" : "https://www.drupal.org/files/issues/2021-03-31/2877695-35.patch"
|
||||
},
|
||||
"drupal/page_manager": {
|
||||
"https://www.drupal.org/project/page_manager/issues/3438993": "https://www.drupal.org/files/issues/2024-08-14/page-manager-3438993-MR34-24.patch"
|
||||
},
|
||||
"drupal/core": {
|
||||
"CKEDITOR for summary https://www.drupal.org/project/drupal/issues/2671162":"https://www.drupal.org/files/issues/2025-08-23/2671162-158.patch"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
138
composer.lock
generated
138
composer.lock
generated
@@ -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": "066db43487766081dd580faa75f8ccd7",
|
||||
"content-hash": "cc3d29c7253fdc07cd13d6d07968ca95",
|
||||
"packages": [
|
||||
{
|
||||
"name": "asm89/stack-cors",
|
||||
@@ -3735,6 +3735,70 @@
|
||||
"issues": "https://www.drupal.org/project/issues/entity"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "drupal/entity_block",
|
||||
"version": "2.0.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://git.drupalcode.org/project/entity_block.git",
|
||||
"reference": "2.0.0"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://ftp.drupal.org/files/projects/entity_block-2.0.0.zip",
|
||||
"reference": "2.0.0",
|
||||
"shasum": "06b2cdbd4bbdd503c87185ee01ad6f2bc1e298e0"
|
||||
},
|
||||
"require": {
|
||||
"drupal/core": "^10.3 || ^11"
|
||||
},
|
||||
"type": "drupal-module",
|
||||
"extra": {
|
||||
"drupal": {
|
||||
"version": "2.0.0",
|
||||
"datestamp": "1736279748",
|
||||
"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": "floretan",
|
||||
"homepage": "https://www.drupal.org/user/66163"
|
||||
},
|
||||
{
|
||||
"name": "Jaesin",
|
||||
"homepage": "https://www.drupal.org/user/841054"
|
||||
},
|
||||
{
|
||||
"name": "mglaman",
|
||||
"homepage": "https://www.drupal.org/user/2416470"
|
||||
},
|
||||
{
|
||||
"name": "rrrob",
|
||||
"homepage": "https://www.drupal.org/user/273533"
|
||||
},
|
||||
{
|
||||
"name": "shadcn",
|
||||
"homepage": "https://www.drupal.org/user/571032"
|
||||
},
|
||||
{
|
||||
"name": "smustgrave",
|
||||
"homepage": "https://www.drupal.org/user/3252890"
|
||||
}
|
||||
],
|
||||
"description": "Let site administrators place content entities as blocks.",
|
||||
"homepage": "https://www.drupal.org/project/entity_block",
|
||||
"support": {
|
||||
"source": "https://git.drupalcode.org/project/entity_block"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "drupal/entity_browser",
|
||||
"version": "2.15.0",
|
||||
@@ -5412,6 +5476,77 @@
|
||||
"issues": "https://www.drupal.org/project/issues/menu_position"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "drupal/page_manager",
|
||||
"version": "4.0.0-rc3",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://git.drupalcode.org/project/page_manager.git",
|
||||
"reference": "8.x-4.0-rc3"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://ftp.drupal.org/files/projects/page_manager-8.x-4.0-rc3.zip",
|
||||
"reference": "8.x-4.0-rc3",
|
||||
"shasum": "9c68ed3e87196e42ceeb80d53064494d7a104abc"
|
||||
},
|
||||
"require": {
|
||||
"drupal/core": "^9.5 || ^10 || ^11",
|
||||
"drupal/ctools": "^3.15 || ^4.1"
|
||||
},
|
||||
"type": "drupal-module",
|
||||
"extra": {
|
||||
"drupal": {
|
||||
"version": "8.x-4.0-rc3",
|
||||
"datestamp": "1721976404",
|
||||
"security-coverage": {
|
||||
"status": "not-covered",
|
||||
"message": "RC releases are not covered by Drupal security advisories."
|
||||
}
|
||||
},
|
||||
"branch-alias": {
|
||||
"dev-8.x-4.x": "4.x-dev"
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packages.drupal.org/8/downloads",
|
||||
"license": [
|
||||
"GPL-2.0-or-later"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Tim Plunkett",
|
||||
"homepage": "https://www.drupal.org/u/tim.plunkett",
|
||||
"role": "Maintainer"
|
||||
},
|
||||
{
|
||||
"name": "EclipseGc",
|
||||
"homepage": "https://www.drupal.org/user/61203"
|
||||
},
|
||||
{
|
||||
"name": "japerry",
|
||||
"homepage": "https://www.drupal.org/user/45640"
|
||||
},
|
||||
{
|
||||
"name": "joelpittet",
|
||||
"homepage": "https://www.drupal.org/user/160302"
|
||||
},
|
||||
{
|
||||
"name": "manuel.adan",
|
||||
"homepage": "https://www.drupal.org/user/516420"
|
||||
},
|
||||
{
|
||||
"name": "phenaproxima",
|
||||
"homepage": "https://www.drupal.org/user/205645"
|
||||
}
|
||||
],
|
||||
"description": "Provides a way to place blocks on a custom page.",
|
||||
"homepage": "https://www.drupal.org/project/page_manager",
|
||||
"support": {
|
||||
"source": "https://git.drupal.org/project/page_manager.git",
|
||||
"issues": "https://www.drupal.org/project/issues/page_manager",
|
||||
"irc": "irc://irc.freenode.org/drupal-contribute"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "drupal/pagerer",
|
||||
"version": "3.1.1",
|
||||
@@ -11985,6 +12120,7 @@
|
||||
"drupal/maxlength": 10,
|
||||
"drupal/menu_block": 20,
|
||||
"drupal/menu_position": 20,
|
||||
"drupal/page_manager": 5,
|
||||
"drupal/path_alias_xt": 20,
|
||||
"drupal/pathologic": 15,
|
||||
"drupal/profile": 5,
|
||||
|
||||
@@ -6,7 +6,9 @@ dependencies:
|
||||
- field.field.node.static.body
|
||||
- node.type.static
|
||||
module:
|
||||
- advanced_text_formatter
|
||||
- field_group
|
||||
- maxlength
|
||||
- path
|
||||
- text
|
||||
third_party_settings:
|
||||
@@ -14,7 +16,6 @@ third_party_settings:
|
||||
group_details:
|
||||
children:
|
||||
- langcode
|
||||
- translation
|
||||
label: Details
|
||||
region: content
|
||||
parent_name: ''
|
||||
@@ -42,10 +43,18 @@ content:
|
||||
region: content
|
||||
settings:
|
||||
rows: 9
|
||||
summary_rows: 3
|
||||
summary_rows: 10
|
||||
placeholder: ''
|
||||
show_summary: false
|
||||
third_party_settings: { }
|
||||
third_party_settings:
|
||||
maxlength:
|
||||
maxlength_js: null
|
||||
maxlength_js_label: 'Contenu limité à @limit caractères, restant : <strong>@remaining</strong>'
|
||||
maxlength_js_summary: null
|
||||
maxlength_js_label_summary: 'Contenu limité à @limit caractères, restant : <strong>@remaining</strong>'
|
||||
maxlength_js_enforce: false
|
||||
advanced_text_formatter:
|
||||
show_token_tree: 0
|
||||
created:
|
||||
type: datetime_timestamp
|
||||
weight: 4
|
||||
|
||||
49
config/sync/core.entity_view_display.node.chapitre.home.yml
Normal file
49
config/sync/core.entity_view_display.node.chapitre.home.yml
Normal file
@@ -0,0 +1,49 @@
|
||||
uuid: 522686f4-4476-44da-90b7-01c41efdb51a
|
||||
langcode: fr
|
||||
status: true
|
||||
dependencies:
|
||||
config:
|
||||
- core.entity_view_mode.node.home
|
||||
- field.field.node.chapitre.body
|
||||
- field.field.node.chapitre.field_chapitre_num
|
||||
- field.field.node.chapitre.field_parties
|
||||
- node.type.chapitre
|
||||
module:
|
||||
- layout_builder
|
||||
- text
|
||||
- user
|
||||
third_party_settings:
|
||||
layout_builder:
|
||||
enabled: false
|
||||
allow_custom: false
|
||||
id: node.chapitre.home
|
||||
targetEntityType: node
|
||||
bundle: chapitre
|
||||
mode: home
|
||||
content:
|
||||
body:
|
||||
type: text_summary_or_trimmed
|
||||
label: hidden
|
||||
settings:
|
||||
trim_length: 600
|
||||
third_party_settings: { }
|
||||
weight: 1
|
||||
region: content
|
||||
field_chapitre_num:
|
||||
type: number_integer
|
||||
label: inline
|
||||
settings:
|
||||
thousand_separator: ''
|
||||
prefix_suffix: true
|
||||
third_party_settings: { }
|
||||
weight: 0
|
||||
region: content
|
||||
links:
|
||||
settings: { }
|
||||
third_party_settings: { }
|
||||
weight: 2
|
||||
region: content
|
||||
hidden:
|
||||
field_parties: true
|
||||
langcode: true
|
||||
search_api_excerpt: true
|
||||
39
config/sync/core.entity_view_display.node.static.home.yml
Normal file
39
config/sync/core.entity_view_display.node.static.home.yml
Normal file
@@ -0,0 +1,39 @@
|
||||
uuid: c87053aa-10df-4e5b-98f8-0b0a76f06a16
|
||||
langcode: fr
|
||||
status: true
|
||||
dependencies:
|
||||
config:
|
||||
- core.entity_view_mode.node.home
|
||||
- field.field.node.static.body
|
||||
- node.type.static
|
||||
module:
|
||||
- layout_builder
|
||||
- text
|
||||
- user
|
||||
third_party_settings:
|
||||
layout_builder:
|
||||
enabled: false
|
||||
allow_custom: false
|
||||
_core:
|
||||
default_config_hash: 9mgezio6-8HiMYhQHSfouZjKyY4BFKR71Yh4kbSmAYU
|
||||
id: node.static.home
|
||||
targetEntityType: node
|
||||
bundle: static
|
||||
mode: home
|
||||
content:
|
||||
body:
|
||||
type: text_summary_or_trimmed
|
||||
label: hidden
|
||||
settings:
|
||||
trim_length: 600
|
||||
third_party_settings: { }
|
||||
weight: 0
|
||||
region: content
|
||||
links:
|
||||
settings: { }
|
||||
third_party_settings: { }
|
||||
weight: 1
|
||||
region: content
|
||||
hidden:
|
||||
langcode: true
|
||||
search_api_excerpt: true
|
||||
39
config/sync/core.entity_view_display.node.static.teaser.yml
Normal file
39
config/sync/core.entity_view_display.node.static.teaser.yml
Normal file
@@ -0,0 +1,39 @@
|
||||
uuid: dc86777a-d572-4e87-b4f1-0413cccb1a02
|
||||
langcode: fr
|
||||
status: true
|
||||
dependencies:
|
||||
config:
|
||||
- core.entity_view_mode.node.teaser
|
||||
- field.field.node.static.body
|
||||
- node.type.static
|
||||
module:
|
||||
- layout_builder
|
||||
- text
|
||||
- user
|
||||
third_party_settings:
|
||||
layout_builder:
|
||||
enabled: false
|
||||
allow_custom: false
|
||||
_core:
|
||||
default_config_hash: 9mgezio6-8HiMYhQHSfouZjKyY4BFKR71Yh4kbSmAYU
|
||||
id: node.static.teaser
|
||||
targetEntityType: node
|
||||
bundle: static
|
||||
mode: teaser
|
||||
content:
|
||||
body:
|
||||
type: text_summary_or_trimmed
|
||||
label: hidden
|
||||
settings:
|
||||
trim_length: 100
|
||||
third_party_settings: { }
|
||||
weight: 0
|
||||
region: content
|
||||
links:
|
||||
settings: { }
|
||||
third_party_settings: { }
|
||||
weight: 1
|
||||
region: content
|
||||
hidden:
|
||||
langcode: true
|
||||
search_api_excerpt: true
|
||||
13
config/sync/core.entity_view_mode.block_content.full.yml
Normal file
13
config/sync/core.entity_view_mode.block_content.full.yml
Normal file
@@ -0,0 +1,13 @@
|
||||
uuid: a7558c64-a75d-42d5-a75e-68c909b019fd
|
||||
langcode: fr
|
||||
status: false
|
||||
dependencies:
|
||||
module:
|
||||
- block_content
|
||||
_core:
|
||||
default_config_hash: Q7yUUYeRLByl-MCGveKKF_KhAtNICLCMJuKWfugCvso
|
||||
id: block_content.full
|
||||
label: Complet
|
||||
description: ''
|
||||
targetEntityType: block_content
|
||||
cache: true
|
||||
11
config/sync/core.entity_view_mode.node.home.yml
Normal file
11
config/sync/core.entity_view_mode.node.home.yml
Normal file
@@ -0,0 +1,11 @@
|
||||
uuid: 5c23d4c6-8032-4d42-a111-6e2d1a31fc37
|
||||
langcode: fr
|
||||
status: true
|
||||
dependencies:
|
||||
module:
|
||||
- node
|
||||
id: node.home
|
||||
label: home
|
||||
description: ''
|
||||
targetEntityType: node
|
||||
cache: true
|
||||
@@ -11,6 +11,7 @@ module:
|
||||
better_exposed_filters: 0
|
||||
block: 0
|
||||
block_class: 0
|
||||
block_content: 0
|
||||
breakpoint: 0
|
||||
bulkdelete: 0
|
||||
cer: 0
|
||||
@@ -40,6 +41,7 @@ module:
|
||||
editor: 0
|
||||
email_registration: 0
|
||||
embed: 0
|
||||
entity_block: 0
|
||||
entity_browser: 0
|
||||
entity_browser_enhanced: 0
|
||||
field: 0
|
||||
@@ -54,6 +56,8 @@ module:
|
||||
image: 0
|
||||
inline_entity_form: 0
|
||||
language: 0
|
||||
layout_builder: 0
|
||||
layout_discovery: 0
|
||||
link: 0
|
||||
link_attributes: 0
|
||||
linkit: 0
|
||||
@@ -68,6 +72,8 @@ module:
|
||||
node: 0
|
||||
options: 0
|
||||
page_cache: 0
|
||||
page_manager: 0
|
||||
page_manager_ui: 0
|
||||
pagerer: 0
|
||||
path: 0
|
||||
path_alias: 0
|
||||
|
||||
@@ -4,6 +4,7 @@ status: true
|
||||
dependencies:
|
||||
config:
|
||||
- field.storage.node.body
|
||||
- filter.format.wysiwyg
|
||||
- node.type.static
|
||||
module:
|
||||
- text
|
||||
@@ -22,5 +23,6 @@ default_value_callback: ''
|
||||
settings:
|
||||
display_summary: true
|
||||
required_summary: false
|
||||
allowed_formats: { }
|
||||
allowed_formats:
|
||||
- wysiwyg
|
||||
field_type: text_with_summary
|
||||
|
||||
21
config/sync/field.storage.block_content.body.yml
Normal file
21
config/sync/field.storage.block_content.body.yml
Normal file
@@ -0,0 +1,21 @@
|
||||
uuid: a17026db-c6b5-4a6d-9eb2-dc648d8faaba
|
||||
langcode: en
|
||||
status: true
|
||||
dependencies:
|
||||
module:
|
||||
- block_content
|
||||
- text
|
||||
_core:
|
||||
default_config_hash: eS0snV_L3dx9shtWRTzm5eblwOJ7qKWC9IE-4GMTDFc
|
||||
id: block_content.body
|
||||
field_name: body
|
||||
entity_type: block_content
|
||||
type: text_with_summary
|
||||
settings: { }
|
||||
module: text
|
||||
locked: false
|
||||
cardinality: 1
|
||||
translatable: true
|
||||
indexes: { }
|
||||
persist_with_no_fields: true
|
||||
custom_storage: false
|
||||
12
config/sync/page_manager.page.home.yml
Normal file
12
config/sync/page_manager.page.home.yml
Normal file
@@ -0,0 +1,12 @@
|
||||
uuid: fb91329a-cf33-4771-8563-a03002a85f56
|
||||
langcode: fr
|
||||
status: true
|
||||
dependencies: { }
|
||||
id: home
|
||||
label: home
|
||||
description: ''
|
||||
use_admin_theme: false
|
||||
path: /home
|
||||
access_logic: and
|
||||
access_conditions: { }
|
||||
parameters: { }
|
||||
18
config/sync/page_manager.page.node_view.yml
Normal file
18
config/sync/page_manager.page.node_view.yml
Normal file
@@ -0,0 +1,18 @@
|
||||
uuid: f03ff0d8-0f57-4d38-a451-4a98af9a8ff9
|
||||
langcode: fr
|
||||
status: true
|
||||
dependencies: { }
|
||||
_core:
|
||||
default_config_hash: RCVWP-yHwxSNiQORMIabDgHMEVqOMW58w80BQgRFJ4k
|
||||
id: node_view
|
||||
label: 'Node view'
|
||||
description: 'When enabled, this overrides the default Drupal behavior for displaying nodes at <em>/node/{node}</em>. If you add variants, you may use selection criteria such as node type or language or user access to provide different views of nodes. If no variant is selected, the default Drupal node view will be used. This page only affects nodes viewed as pages, it will not affect nodes viewed in lists or at other locations.'
|
||||
use_admin_theme: false
|
||||
path: '/node/{node}'
|
||||
access_logic: and
|
||||
access_conditions: { }
|
||||
parameters:
|
||||
node:
|
||||
machine_name: node
|
||||
label: Nœud
|
||||
type: 'entity:node'
|
||||
@@ -0,0 +1,59 @@
|
||||
uuid: 963f9420-969f-470d-9456-3fc481f7661f
|
||||
langcode: fr
|
||||
status: true
|
||||
dependencies:
|
||||
config:
|
||||
- page_manager.page.home
|
||||
- views.view.chapitres
|
||||
module:
|
||||
- entity_block
|
||||
- layout_discovery
|
||||
- views
|
||||
id: home-layout_builder-0
|
||||
label: 'Layout Builder'
|
||||
weight: 0
|
||||
variant: layout_builder
|
||||
variant_settings:
|
||||
id: layout_builder
|
||||
label: null
|
||||
weight: 0
|
||||
uuid: 3a14630d-426d-4294-bdca-f76a37ffced7
|
||||
sections:
|
||||
-
|
||||
layout_id: layout_onecol
|
||||
layout_settings:
|
||||
label: main
|
||||
context_mapping: { }
|
||||
components:
|
||||
e318efd7-86c6-4a38-a53e-825027ccd254:
|
||||
uuid: e318efd7-86c6-4a38-a53e-825027ccd254
|
||||
region: content
|
||||
configuration:
|
||||
id: 'entity_block:node'
|
||||
label: 'Présentation (Contenu)'
|
||||
label_display: '0'
|
||||
provider: entity_block
|
||||
view_mode: home
|
||||
context_mapping: { }
|
||||
entity: '1'
|
||||
weight: 0
|
||||
additional: { }
|
||||
3f8348bb-e1d8-485a-9914-dcdf777d9b73:
|
||||
uuid: 3f8348bb-e1d8-485a-9914-dcdf777d9b73
|
||||
region: content
|
||||
configuration:
|
||||
id: 'views_block:chapitres-block_1'
|
||||
label: ''
|
||||
label_display: '0'
|
||||
provider: views
|
||||
context_mapping: { }
|
||||
views_label: ''
|
||||
items_per_page: none
|
||||
exposed: { }
|
||||
weight: 1
|
||||
additional: { }
|
||||
third_party_settings: { }
|
||||
page: home
|
||||
selection_criteria: { }
|
||||
selection_logic: and
|
||||
static_context: { }
|
||||
@@ -8,7 +8,7 @@ slogan: ''
|
||||
page:
|
||||
403: ''
|
||||
404: ''
|
||||
front: /node/1
|
||||
front: /home
|
||||
admin_compact_mode: false
|
||||
weight_select_max: 100
|
||||
default_langcode: fr
|
||||
|
||||
553
config/sync/views.view.block_content.yml
Normal file
553
config/sync/views.view.block_content.yml
Normal file
@@ -0,0 +1,553 @@
|
||||
uuid: b28999fa-6d0e-47b7-9646-9a4fe6965d95
|
||||
langcode: fr
|
||||
status: true
|
||||
dependencies:
|
||||
module:
|
||||
- block_content
|
||||
- user
|
||||
_core:
|
||||
default_config_hash: HfvTcWhiVuvxchoh4DjIkXhKkj9ow2TGgHkLHSvRLq8
|
||||
id: block_content
|
||||
label: 'Blocs de contenu'
|
||||
module: views
|
||||
description: 'Trouver et gérer les blocs de contenu.'
|
||||
tag: default
|
||||
base_table: block_content_field_data
|
||||
base_field: id
|
||||
display:
|
||||
default:
|
||||
id: default
|
||||
display_title: 'Par défaut'
|
||||
display_plugin: default
|
||||
position: 0
|
||||
display_options:
|
||||
title: 'Blocs de contenu'
|
||||
fields:
|
||||
info:
|
||||
id: info
|
||||
table: block_content_field_data
|
||||
field: info
|
||||
relationship: none
|
||||
group_type: group
|
||||
admin_label: ''
|
||||
entity_type: null
|
||||
entity_field: info
|
||||
plugin_id: field
|
||||
label: 'Description du bloc'
|
||||
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: true
|
||||
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: string
|
||||
settings:
|
||||
link_to_entity: true
|
||||
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
|
||||
type:
|
||||
id: type
|
||||
table: block_content_field_data
|
||||
field: type
|
||||
relationship: none
|
||||
group_type: group
|
||||
admin_label: ''
|
||||
entity_type: block_content
|
||||
entity_field: type
|
||||
plugin_id: field
|
||||
label: 'Type de bloc'
|
||||
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: true
|
||||
element_wrapper_type: ''
|
||||
element_wrapper_class: ''
|
||||
element_default_classes: true
|
||||
empty: ''
|
||||
hide_empty: false
|
||||
empty_zero: false
|
||||
hide_alter_empty: true
|
||||
click_sort_column: target_id
|
||||
type: entity_reference_label
|
||||
settings:
|
||||
link: false
|
||||
group_column: target_id
|
||||
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
|
||||
changed:
|
||||
id: changed
|
||||
table: block_content_field_data
|
||||
field: changed
|
||||
relationship: none
|
||||
group_type: group
|
||||
admin_label: ''
|
||||
entity_type: block_content
|
||||
entity_field: changed
|
||||
plugin_id: field
|
||||
label: 'Mis à jour'
|
||||
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: true
|
||||
element_wrapper_type: ''
|
||||
element_wrapper_class: ''
|
||||
element_default_classes: true
|
||||
empty: ''
|
||||
hide_empty: false
|
||||
empty_zero: false
|
||||
hide_alter_empty: true
|
||||
type: timestamp
|
||||
settings:
|
||||
date_format: short
|
||||
custom_date_format: ''
|
||||
timezone: ''
|
||||
tooltip:
|
||||
date_format: long
|
||||
custom_date_format: ''
|
||||
time_diff:
|
||||
enabled: false
|
||||
future_format: '@interval hence'
|
||||
past_format: '@interval ago'
|
||||
granularity: 2
|
||||
refresh: 60
|
||||
operations:
|
||||
id: operations
|
||||
table: block_content
|
||||
field: operations
|
||||
relationship: none
|
||||
group_type: group
|
||||
admin_label: ''
|
||||
entity_type: block_content
|
||||
plugin_id: entity_operations
|
||||
label: Actions
|
||||
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: true
|
||||
element_wrapper_type: ''
|
||||
element_wrapper_class: ''
|
||||
element_default_classes: true
|
||||
empty: ''
|
||||
hide_empty: false
|
||||
empty_zero: false
|
||||
hide_alter_empty: true
|
||||
destination: true
|
||||
pager:
|
||||
type: mini
|
||||
options:
|
||||
offset: 0
|
||||
pagination_heading_level: h4
|
||||
items_per_page: 50
|
||||
total_pages: null
|
||||
id: 0
|
||||
tags:
|
||||
next: 'Suivant ›'
|
||||
previous: '‹ Précédent'
|
||||
expose:
|
||||
items_per_page: false
|
||||
items_per_page_label: 'Éléments par page'
|
||||
items_per_page_options: '5, 10, 25, 50'
|
||||
items_per_page_options_all: false
|
||||
items_per_page_options_all_label: '- Tout -'
|
||||
offset: false
|
||||
offset_label: Décalage
|
||||
exposed_form:
|
||||
type: basic
|
||||
options:
|
||||
submit_button: Appliquer
|
||||
reset_button: true
|
||||
reset_button_label: Réinitialiser
|
||||
exposed_sorts_label: 'Trier par'
|
||||
expose_sort_order: true
|
||||
sort_asc_label: Asc
|
||||
sort_desc_label: Desc
|
||||
access:
|
||||
type: perm
|
||||
options:
|
||||
perm: 'access block library'
|
||||
cache:
|
||||
type: tag
|
||||
options: { }
|
||||
empty:
|
||||
area_text_custom:
|
||||
id: area_text_custom
|
||||
table: views
|
||||
field: area_text_custom
|
||||
relationship: none
|
||||
group_type: group
|
||||
admin_label: ''
|
||||
plugin_id: text_custom
|
||||
empty: true
|
||||
content: "Il n'y a pas de bloc de contenu disponible."
|
||||
tokenize: false
|
||||
block_content_listing_empty:
|
||||
id: block_content_listing_empty
|
||||
table: block_content
|
||||
field: block_content_listing_empty
|
||||
relationship: none
|
||||
group_type: group
|
||||
admin_label: ''
|
||||
entity_type: block_content
|
||||
plugin_id: block_content_listing_empty
|
||||
label: ''
|
||||
empty: true
|
||||
sorts: { }
|
||||
arguments: { }
|
||||
filters:
|
||||
info:
|
||||
id: info
|
||||
table: block_content_field_data
|
||||
field: info
|
||||
relationship: none
|
||||
group_type: group
|
||||
admin_label: ''
|
||||
entity_type: block_content
|
||||
entity_field: info
|
||||
plugin_id: string
|
||||
operator: contains
|
||||
value: ''
|
||||
group: 1
|
||||
exposed: true
|
||||
expose:
|
||||
operator_id: info_op
|
||||
label: 'Description du bloc'
|
||||
description: ''
|
||||
use_operator: false
|
||||
operator: info_op
|
||||
operator_limit_selection: false
|
||||
operator_list: { }
|
||||
identifier: info
|
||||
required: false
|
||||
remember: false
|
||||
multiple: false
|
||||
remember_roles:
|
||||
authenticated: authenticated
|
||||
anonymous: '0'
|
||||
administrator: '0'
|
||||
is_grouped: false
|
||||
group_info:
|
||||
label: ''
|
||||
description: ''
|
||||
identifier: ''
|
||||
optional: true
|
||||
widget: select
|
||||
multiple: false
|
||||
remember: false
|
||||
default_group: All
|
||||
default_group_multiple: { }
|
||||
group_items: { }
|
||||
type:
|
||||
id: type
|
||||
table: block_content_field_data
|
||||
field: type
|
||||
relationship: none
|
||||
group_type: group
|
||||
admin_label: ''
|
||||
entity_type: block_content
|
||||
entity_field: type
|
||||
plugin_id: bundle
|
||||
operator: in
|
||||
value: { }
|
||||
group: 1
|
||||
exposed: true
|
||||
expose:
|
||||
operator_id: type_op
|
||||
label: 'Type de bloc'
|
||||
description: ''
|
||||
use_operator: false
|
||||
operator: type_op
|
||||
operator_limit_selection: false
|
||||
operator_list: { }
|
||||
identifier: type
|
||||
required: false
|
||||
remember: false
|
||||
multiple: false
|
||||
remember_roles:
|
||||
authenticated: authenticated
|
||||
anonymous: '0'
|
||||
administrator: '0'
|
||||
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: { }
|
||||
reusable:
|
||||
id: reusable
|
||||
table: block_content_field_data
|
||||
field: reusable
|
||||
relationship: none
|
||||
group_type: group
|
||||
admin_label: ''
|
||||
entity_type: block_content
|
||||
entity_field: reusable
|
||||
plugin_id: boolean
|
||||
operator: '='
|
||||
value: '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
|
||||
is_grouped: false
|
||||
group_info:
|
||||
label: ''
|
||||
description: ''
|
||||
identifier: ''
|
||||
optional: true
|
||||
widget: select
|
||||
multiple: false
|
||||
remember: false
|
||||
default_group: All
|
||||
default_group_multiple: { }
|
||||
group_items: { }
|
||||
style:
|
||||
type: table
|
||||
options:
|
||||
grouping: { }
|
||||
row_class: ''
|
||||
default_row_class: true
|
||||
columns:
|
||||
info: info
|
||||
type: type
|
||||
changed: changed
|
||||
operations: operations
|
||||
default: changed
|
||||
info:
|
||||
info:
|
||||
sortable: true
|
||||
default_sort_order: asc
|
||||
align: ''
|
||||
separator: ''
|
||||
empty_column: false
|
||||
responsive: ''
|
||||
type:
|
||||
sortable: true
|
||||
default_sort_order: asc
|
||||
align: ''
|
||||
separator: ''
|
||||
empty_column: false
|
||||
responsive: ''
|
||||
changed:
|
||||
sortable: true
|
||||
default_sort_order: desc
|
||||
align: ''
|
||||
separator: ''
|
||||
empty_column: false
|
||||
responsive: ''
|
||||
operations:
|
||||
sortable: false
|
||||
default_sort_order: asc
|
||||
align: ''
|
||||
separator: ''
|
||||
empty_column: false
|
||||
responsive: ''
|
||||
override: true
|
||||
sticky: false
|
||||
summary: ''
|
||||
empty_table: true
|
||||
caption: ''
|
||||
description: ''
|
||||
row:
|
||||
type: fields
|
||||
query:
|
||||
type: views_query
|
||||
options:
|
||||
query_comment: ''
|
||||
disable_sql_rewrite: false
|
||||
distinct: false
|
||||
replica: false
|
||||
query_tags: { }
|
||||
relationships: { }
|
||||
header: { }
|
||||
footer: { }
|
||||
display_extenders: { }
|
||||
cache_metadata:
|
||||
max-age: -1
|
||||
contexts:
|
||||
- 'languages:language_content'
|
||||
- 'languages:language_interface'
|
||||
- url
|
||||
- url.query_args
|
||||
- user.permissions
|
||||
tags: { }
|
||||
page_1:
|
||||
id: page_1
|
||||
display_title: Page
|
||||
display_plugin: page
|
||||
position: 1
|
||||
display_options:
|
||||
display_extenders: { }
|
||||
path: admin/content/block
|
||||
menu:
|
||||
type: tab
|
||||
title: Blocs
|
||||
description: 'Créer et modifier les blocs de contenu.'
|
||||
weight: 0
|
||||
menu_name: admin
|
||||
parent: system.admin_content
|
||||
context: '0'
|
||||
cache_metadata:
|
||||
max-age: -1
|
||||
contexts:
|
||||
- 'languages:language_content'
|
||||
- 'languages:language_interface'
|
||||
- url
|
||||
- url.query_args
|
||||
- user.permissions
|
||||
tags: { }
|
||||
175
config/sync/views.view.chapitres.yml
Normal file
175
config/sync/views.view.chapitres.yml
Normal file
@@ -0,0 +1,175 @@
|
||||
uuid: 9eece6d3-6ae6-4b98-863a-489d8d76499d
|
||||
langcode: fr
|
||||
status: true
|
||||
dependencies:
|
||||
config:
|
||||
- core.entity_view_mode.node.home
|
||||
- node.type.chapitre
|
||||
module:
|
||||
- node
|
||||
- user
|
||||
id: chapitres
|
||||
label: Chapitres
|
||||
module: views
|
||||
description: ''
|
||||
tag: ''
|
||||
base_table: node_field_data
|
||||
base_field: nid
|
||||
display:
|
||||
default:
|
||||
id: default
|
||||
display_title: Default
|
||||
display_plugin: default
|
||||
position: 0
|
||||
display_options:
|
||||
title: Chapitres
|
||||
fields:
|
||||
title:
|
||||
id: title
|
||||
table: node_field_data
|
||||
field: title
|
||||
relationship: none
|
||||
group_type: group
|
||||
admin_label: ''
|
||||
entity_type: node
|
||||
entity_field: title
|
||||
plugin_id: field
|
||||
label: ''
|
||||
exclude: false
|
||||
alter:
|
||||
alter_text: false
|
||||
make_link: false
|
||||
absolute: false
|
||||
word_boundary: false
|
||||
ellipsis: false
|
||||
strip_tags: false
|
||||
trim: false
|
||||
html: false
|
||||
element_type: ''
|
||||
element_class: ''
|
||||
element_label_type: ''
|
||||
element_label_class: ''
|
||||
element_label_colon: true
|
||||
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: string
|
||||
settings:
|
||||
link_to_entity: true
|
||||
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
|
||||
pager:
|
||||
type: none
|
||||
options:
|
||||
offset: 0
|
||||
items_per_page: null
|
||||
exposed_form:
|
||||
type: basic
|
||||
options:
|
||||
submit_button: Appliquer
|
||||
reset_button: false
|
||||
reset_button_label: Réinitialiser
|
||||
exposed_sorts_label: 'Trier par'
|
||||
expose_sort_order: true
|
||||
sort_asc_label: Asc
|
||||
sort_desc_label: Desc
|
||||
access:
|
||||
type: perm
|
||||
options:
|
||||
perm: 'access content'
|
||||
cache:
|
||||
type: tag
|
||||
options: { }
|
||||
empty: { }
|
||||
sorts:
|
||||
field_chapitre_num_value:
|
||||
id: field_chapitre_num_value
|
||||
table: node__field_chapitre_num
|
||||
field: field_chapitre_num_value
|
||||
relationship: none
|
||||
group_type: group
|
||||
admin_label: ''
|
||||
plugin_id: standard
|
||||
order: ASC
|
||||
expose:
|
||||
label: ''
|
||||
field_identifier: ''
|
||||
exposed: false
|
||||
arguments: { }
|
||||
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:
|
||||
chapitre: chapitre
|
||||
style:
|
||||
type: default
|
||||
row:
|
||||
type: 'entity:node'
|
||||
options:
|
||||
relationship: none
|
||||
view_mode: home
|
||||
query:
|
||||
type: views_query
|
||||
options:
|
||||
query_comment: ''
|
||||
disable_sql_rewrite: false
|
||||
distinct: false
|
||||
replica: false
|
||||
query_tags: { }
|
||||
relationships: { }
|
||||
css_class: views-home-chapitres
|
||||
header: { }
|
||||
footer: { }
|
||||
display_extenders: { }
|
||||
cache_metadata:
|
||||
max-age: -1
|
||||
contexts:
|
||||
- 'languages:language_content'
|
||||
- 'languages:language_interface'
|
||||
- 'user.node_grants:view'
|
||||
- user.permissions
|
||||
tags: { }
|
||||
block_1:
|
||||
id: block_1
|
||||
display_title: Block
|
||||
display_plugin: block
|
||||
position: 1
|
||||
display_options:
|
||||
display_extenders: { }
|
||||
cache_metadata:
|
||||
max-age: -1
|
||||
contexts:
|
||||
- 'languages:language_content'
|
||||
- 'languages:language_interface'
|
||||
- 'user.node_grants:view'
|
||||
- user.permissions
|
||||
tags: { }
|
||||
26
layout--onecol.html.twig
Normal file
26
layout--onecol.html.twig
Normal file
@@ -0,0 +1,26 @@
|
||||
{#
|
||||
/**
|
||||
* @file
|
||||
* Default theme implementation to display a one-column layout.
|
||||
*
|
||||
* Available variables:
|
||||
* - in_preview: Whether the plugin is being rendered in preview mode.
|
||||
* - content: The content for this layout.
|
||||
* - attributes: HTML attributes for the layout <div>.
|
||||
*
|
||||
* @ingroup themeable
|
||||
*/
|
||||
#}
|
||||
{%
|
||||
set classes = [
|
||||
'layout',
|
||||
'layout--onecol',
|
||||
]
|
||||
%}
|
||||
{% if content %}
|
||||
<div{{ attributes.addClass(classes) }}>
|
||||
<div {{ region_attributes.content.addClass('layout__region', 'layout__region--content') }}>
|
||||
{{ content.content }}
|
||||
</div>
|
||||
</div>
|
||||
{% endif %}
|
||||
@@ -82,12 +82,13 @@ header[role="banner"]{
|
||||
|
||||
>div#burger-btn{
|
||||
position:relative;
|
||||
transition-duration: 0.5s;
|
||||
top: 8.5px;
|
||||
&, &::before, &::after{
|
||||
// position: absolute;
|
||||
width:20px; height:3px;
|
||||
background-color: $bleu_site;
|
||||
}
|
||||
top: 8.5px;
|
||||
&::before, &::after{
|
||||
content: "";
|
||||
position: absolute;
|
||||
@@ -101,7 +102,6 @@ header[role="banner"]{
|
||||
bottom: 6px;
|
||||
}
|
||||
|
||||
transition-duration: 0.5s;
|
||||
&[opened]{
|
||||
transform: rotate(90deg);
|
||||
}
|
||||
@@ -117,10 +117,10 @@ header[role="banner"]{
|
||||
width:100vw;
|
||||
height: 0;
|
||||
overflow: hidden;
|
||||
transition-duration: 0.5s;
|
||||
&[opened]{
|
||||
height: calc(100vh - $header_height);
|
||||
}
|
||||
transition-duration: 0.5s;
|
||||
&>nav{
|
||||
padding-top: 10px;
|
||||
background-color: #fff;
|
||||
@@ -148,6 +148,9 @@ header[role="banner"]{
|
||||
display: block;
|
||||
font-size: 0.756em;
|
||||
padding:0 0 0.25em 0;
|
||||
&:has(+ a:hover){
|
||||
color: $rose;
|
||||
}
|
||||
}
|
||||
a{
|
||||
font-size: 1.13em;
|
||||
@@ -175,12 +178,12 @@ header[role="banner"]{
|
||||
justify-content: flex-end;
|
||||
list-style: none;
|
||||
li{
|
||||
&:not(:last-child){
|
||||
}
|
||||
margin-right: 1em;
|
||||
background-color: $bleu_site;
|
||||
color: #fff;
|
||||
padding:0.5em 1em;
|
||||
&:not(:last-child){
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -193,6 +196,7 @@ main[role="main"]{
|
||||
div.layout-content{
|
||||
padding:5em 0;
|
||||
article{
|
||||
position: relative;
|
||||
background-color: #fff;
|
||||
padding:2em;
|
||||
box-shadow: 0 0 10px rgba(0,0,0,0.25);
|
||||
@@ -203,6 +207,36 @@ main[role="main"]{
|
||||
@include titre_h2;
|
||||
margin:0;
|
||||
}
|
||||
div.field-chapitre-num{
|
||||
background-color: $bleu_site;
|
||||
color: #fff;
|
||||
display: inline-flex;
|
||||
gap: 0.5em;
|
||||
padding: 0.5em 1em;
|
||||
// transform: translateY(-3em);
|
||||
position: absolute;
|
||||
top:-1em;
|
||||
&>*{
|
||||
font-weight: 600;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
// HOME
|
||||
div.views-home-chapitres{
|
||||
display: flex;
|
||||
gap: 2em;
|
||||
padding:1em;
|
||||
>.views-row{
|
||||
max-width: 700px;
|
||||
|
||||
article.node-type-chapitre{
|
||||
h2{
|
||||
@include titre_h3;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,2 +1,3 @@
|
||||
$bleu_site: #1642bc;
|
||||
$bleu_typo: #0b1e52;
|
||||
$rose: #f661e2
|
||||
@@ -16,4 +16,8 @@ body{
|
||||
color: $bleu_typo;
|
||||
}
|
||||
|
||||
@mixin titre_h3{
|
||||
@include titre_h2();
|
||||
font-size: 2em;
|
||||
}
|
||||
|
||||
|
||||
@@ -30,7 +30,7 @@ function mathallo_preprocess_page(&$variables) {
|
||||
}
|
||||
|
||||
function mathallo_preprocess_region(&$variables) {
|
||||
if (isset($variables["attributes"]['class'])) {
|
||||
if (!isset($variables["attributes"]['class'])) {
|
||||
$variables["attributes"]['class'] = [];
|
||||
}
|
||||
$variables["attributes"]['class'][] = "wrapper";
|
||||
@@ -67,7 +67,11 @@ function parse_menu_item(&$items, $key){
|
||||
* Implements hook_preprocess_HOOK() for node.html.twig.
|
||||
*/
|
||||
function mathallo_preprocess_node(&$variables) {
|
||||
|
||||
$node_type = $variables['node']->getType();
|
||||
if (!isset($variables["attributes"]['class'])) {
|
||||
$variables["attributes"]['class'] = [];
|
||||
}
|
||||
$variables["attributes"]['class'][] = "node-type-{$node_type}";
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,32 @@
|
||||
{#
|
||||
/**
|
||||
* @file
|
||||
* Default theme implementation to display a block.
|
||||
*
|
||||
* Available variables:
|
||||
* - plugin_id: The ID of the block implementation.
|
||||
* - label: The configured label of the block if visible.
|
||||
* - configuration: A list of the block's configuration values.
|
||||
* - label: The configured label for the block.
|
||||
* - label_display: The display settings for the label.
|
||||
* - provider: The module or other provider that provided this block plugin.
|
||||
* - Block plugin specific settings will also be stored here.
|
||||
* - in_preview: Whether the plugin is being rendered in preview mode.
|
||||
* - content: The content of this block.
|
||||
* - attributes: array of HTML attributes populated by modules, intended to
|
||||
* be added to the main container tag of this template.
|
||||
* - id: A valid HTML ID and guaranteed unique.
|
||||
* - title_attributes: Same as attributes, except applied to the main title
|
||||
* tag that appears in the template.
|
||||
* - title_prefix: Additional output populated by modules, intended to be
|
||||
* displayed in front of the main title tag that appears in the template.
|
||||
* - title_suffix: Additional output populated by modules, intended to be
|
||||
* displayed after the main title tag that appears in the template.
|
||||
*
|
||||
* @see template_preprocess_block()
|
||||
*
|
||||
* @ingroup themeable
|
||||
*/
|
||||
#}
|
||||
{{ content }}
|
||||
|
||||
40
web_main/themes/custom/mathallo/templates/block.html.twig
Normal file
40
web_main/themes/custom/mathallo/templates/block.html.twig
Normal file
@@ -0,0 +1,40 @@
|
||||
{#
|
||||
/**
|
||||
* @file
|
||||
* Default theme implementation to display a block.
|
||||
*
|
||||
* Available variables:
|
||||
* - plugin_id: The ID of the block implementation.
|
||||
* - label: The configured label of the block if visible.
|
||||
* - configuration: A list of the block's configuration values.
|
||||
* - label: The configured label for the block.
|
||||
* - label_display: The display settings for the label.
|
||||
* - provider: The module or other provider that provided this block plugin.
|
||||
* - Block plugin specific settings will also be stored here.
|
||||
* - in_preview: Whether the plugin is being rendered in preview mode.
|
||||
* - content: The content of this block.
|
||||
* - attributes: array of HTML attributes populated by modules, intended to
|
||||
* be added to the main container tag of this template.
|
||||
* - id: A valid HTML ID and guaranteed unique.
|
||||
* - title_attributes: Same as attributes, except applied to the main title
|
||||
* tag that appears in the template.
|
||||
* - title_prefix: Additional output populated by modules, intended to be
|
||||
* displayed in front of the main title tag that appears in the template.
|
||||
* - title_suffix: Additional output populated by modules, intended to be
|
||||
* displayed after the main title tag that appears in the template.
|
||||
*
|
||||
* @see template_preprocess_block()
|
||||
*
|
||||
* @ingroup themeable
|
||||
*/
|
||||
#}
|
||||
<div{{ attributes }}>
|
||||
{{ title_prefix }}
|
||||
{% if label %}
|
||||
<h2{{ title_attributes }}>{{ label }}</h2>
|
||||
{% endif %}
|
||||
{{ title_suffix }}
|
||||
{% block content %}
|
||||
{{ content }}
|
||||
{% endblock %}
|
||||
</div>
|
||||
@@ -0,0 +1,64 @@
|
||||
{#
|
||||
/**
|
||||
* @file
|
||||
* Default theme implementation for a field.
|
||||
*
|
||||
* To override output, copy the "field.html.twig" from the templates directory
|
||||
* to your theme's directory and customize it, just like customizing other
|
||||
* Drupal templates such as page.html.twig or node.html.twig.
|
||||
*
|
||||
* Instead of overriding the theming for all fields, you can also just override
|
||||
* theming for a subset of fields using
|
||||
* @link themeable Theme hook suggestions. @endlink For example,
|
||||
* here are some theme hook suggestions that can be used for a field_foo field
|
||||
* on an article node type:
|
||||
* - field--node--field-foo--article.html.twig
|
||||
* - field--node--field-foo.html.twig
|
||||
* - field--node--article.html.twig
|
||||
* - field--field-foo.html.twig
|
||||
* - field--text-with-summary.html.twig
|
||||
* - field.html.twig
|
||||
*
|
||||
* Available variables:
|
||||
* - attributes: HTML attributes for the containing element.
|
||||
* - label_hidden: Whether to show the field label or not.
|
||||
* - title_attributes: HTML attributes for the title.
|
||||
* - label: The label for the field.
|
||||
* - multiple: TRUE if a field can contain multiple items.
|
||||
* - items: List of all the field items. Each item contains:
|
||||
* - attributes: List of HTML attributes for each item.
|
||||
* - content: The field item's content.
|
||||
* - entity_type: The entity type to which the field belongs.
|
||||
* - field_name: The name of the field.
|
||||
* - field_type: The type of the field.
|
||||
* - label_display: The display settings for the label.
|
||||
*
|
||||
* @see template_preprocess_field()
|
||||
*
|
||||
* @ingroup themeable
|
||||
*/
|
||||
#}
|
||||
{%
|
||||
set title_classes = [
|
||||
label_display == 'visually_hidden' ? 'visually-hidden',
|
||||
]
|
||||
%}
|
||||
|
||||
{% if label_hidden %}
|
||||
{% if multiple %}
|
||||
<div{{ attributes }}>
|
||||
{% for item in items %}
|
||||
<div{{ item.attributes }}>{{ item.content }}</div>
|
||||
{% endfor %}
|
||||
</div>
|
||||
{% else %}
|
||||
{% for item in items %}
|
||||
<div{{ attributes }}>{{ item.content }}</div>
|
||||
{% endfor %}
|
||||
{% endif %}
|
||||
{% else %}
|
||||
<label>{{ label }}</label>
|
||||
{% for item in items %}
|
||||
<div{{ item.attributes }}>{{ item.content }}</div>
|
||||
{% endfor %}
|
||||
{% endif %}
|
||||
72
web_main/themes/custom/mathallo/templates/field.html.twig
Normal file
72
web_main/themes/custom/mathallo/templates/field.html.twig
Normal file
@@ -0,0 +1,72 @@
|
||||
{#
|
||||
/**
|
||||
* @file
|
||||
* Default theme implementation for a field.
|
||||
*
|
||||
* To override output, copy the "field.html.twig" from the templates directory
|
||||
* to your theme's directory and customize it, just like customizing other
|
||||
* Drupal templates such as page.html.twig or node.html.twig.
|
||||
*
|
||||
* Instead of overriding the theming for all fields, you can also just override
|
||||
* theming for a subset of fields using
|
||||
* @link themeable Theme hook suggestions. @endlink For example,
|
||||
* here are some theme hook suggestions that can be used for a field_foo field
|
||||
* on an article node type:
|
||||
* - field--node--field-foo--article.html.twig
|
||||
* - field--node--field-foo.html.twig
|
||||
* - field--node--article.html.twig
|
||||
* - field--field-foo.html.twig
|
||||
* - field--text-with-summary.html.twig
|
||||
* - field.html.twig
|
||||
*
|
||||
* Available variables:
|
||||
* - attributes: HTML attributes for the containing element.
|
||||
* - label_hidden: Whether to show the field label or not.
|
||||
* - title_attributes: HTML attributes for the title.
|
||||
* - label: The label for the field.
|
||||
* - multiple: TRUE if a field can contain multiple items.
|
||||
* - items: List of all the field items. Each item contains:
|
||||
* - attributes: List of HTML attributes for each item.
|
||||
* - content: The field item's content.
|
||||
* - entity_type: The entity type to which the field belongs.
|
||||
* - field_name: The name of the field.
|
||||
* - field_type: The type of the field.
|
||||
* - label_display: The display settings for the label.
|
||||
*
|
||||
* @see template_preprocess_field()
|
||||
*
|
||||
* @ingroup themeable
|
||||
*/
|
||||
#}
|
||||
{%
|
||||
set title_classes = [
|
||||
label_display == 'visually_hidden' ? 'visually-hidden',
|
||||
]
|
||||
%}
|
||||
|
||||
{% if label_hidden %}
|
||||
{% if multiple %}
|
||||
<div{{ attributes }}>
|
||||
{% for item in items %}
|
||||
<div{{ item.attributes }}>{{ item.content }}</div>
|
||||
{% endfor %}
|
||||
</div>
|
||||
{% else %}
|
||||
{% for item in items %}
|
||||
<div{{ attributes }}>{{ item.content }}</div>
|
||||
{% endfor %}
|
||||
{% endif %}
|
||||
{% else %}
|
||||
<div{{ attributes }}>
|
||||
<div{{ title_attributes.addClass(title_classes) }}>{{ label }}</div>
|
||||
{% if multiple %}
|
||||
<div>
|
||||
{% endif %}
|
||||
{% for item in items %}
|
||||
<div{{ item.attributes }}>{{ item.content }}</div>
|
||||
{% endfor %}
|
||||
{% if multiple %}
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
{% endif %}
|
||||
@@ -0,0 +1,14 @@
|
||||
{#
|
||||
/**
|
||||
* @file
|
||||
* Default theme implementation to display a one-column layout.
|
||||
*
|
||||
* Available variables:
|
||||
* - in_preview: Whether the plugin is being rendered in preview mode.
|
||||
* - content: The content for this layout.
|
||||
* - attributes: HTML attributes for the layout <div>.
|
||||
*
|
||||
* @ingroup themeable
|
||||
*/
|
||||
#}
|
||||
{{ content.content }}
|
||||
@@ -0,0 +1,81 @@
|
||||
{#
|
||||
/**
|
||||
* @file
|
||||
* Default theme implementation to display a node.
|
||||
*
|
||||
* Available variables:
|
||||
* - node: The node entity with limited access to object properties and methods.
|
||||
* Only method names starting with "get", "has", or "is" and a few common
|
||||
* methods such as "id", "label", and "bundle" are available. For example:
|
||||
* - node.getCreatedTime() will return the node creation timestamp.
|
||||
* - node.hasField('field_example') returns TRUE if the node bundle includes
|
||||
* field_example. (This does not indicate the presence of a value in this
|
||||
* field.)
|
||||
* - node.isPublished() will return whether the node is published or not.
|
||||
* Calling other methods, such as node.delete(), will result in an exception.
|
||||
* See \Drupal\node\Entity\Node for a full list of public properties and
|
||||
* methods for the node object.
|
||||
* - label: (optional) The title of the node.
|
||||
* - content: All node items. Use {{ content }} to print them all,
|
||||
* or print a subset such as {{ content.field_example }}. Use
|
||||
* {{ content|without('field_example') }} to temporarily suppress the printing
|
||||
* of a given child element.
|
||||
* - author_picture: The node author user entity, rendered using the "compact"
|
||||
* view mode.
|
||||
* - metadata: Metadata for this node.
|
||||
* - date: (optional) Themed creation date field.
|
||||
* - author_name: (optional) Themed author name field.
|
||||
* - url: Direct URL of the current node.
|
||||
* - display_submitted: Whether submission information should be displayed.
|
||||
* - attributes: HTML attributes for the containing element.
|
||||
* The attributes.class element may contain one or more of the following
|
||||
* classes:
|
||||
* - node: The current template type (also known as a "theming hook").
|
||||
* - node--type-[type]: The current node type. For example, if the node is an
|
||||
* "Article" it would result in "node--type-article". Note that the machine
|
||||
* name will often be in a short form of the human readable label.
|
||||
* - node--view-mode-[view_mode]: The View Mode of the node; for example, a
|
||||
* teaser would result in: "node--view-mode-teaser", and
|
||||
* full: "node--view-mode-full".
|
||||
* The following are controlled through the node publishing options.
|
||||
* - node--promoted: Appears on nodes promoted to the front page.
|
||||
* - node--sticky: Appears on nodes ordered above other non-sticky nodes in
|
||||
* teaser listings.
|
||||
* - node--unpublished: Appears on unpublished nodes visible only to site
|
||||
* admins.
|
||||
* - title_attributes: Same as attributes, except applied to the main title
|
||||
* tag that appears in the template.
|
||||
* - content_attributes: Same as attributes, except applied to the main
|
||||
* content tag that appears in the template.
|
||||
* - author_attributes: Same as attributes, except applied to the author of
|
||||
* the node tag that appears in the template.
|
||||
* - title_prefix: Additional output populated by modules, intended to be
|
||||
* displayed in front of the main title tag that appears in the template.
|
||||
* - title_suffix: Additional output populated by modules, intended to be
|
||||
* displayed after the main title tag that appears in the template.
|
||||
* - view_mode: View mode; for example, "teaser" or "full".
|
||||
* - teaser: Flag for the teaser state. Will be true if view_mode is 'teaser'.
|
||||
* - page: Flag for the full page state. Will be true if view_mode is 'full'.
|
||||
*
|
||||
* @see template_preprocess_node()
|
||||
*
|
||||
* @ingroup themeable
|
||||
*/
|
||||
#}
|
||||
<article{{ attributes }}>
|
||||
<div class="field-chapitre-num">
|
||||
{{ content.field_chapitre_num }}
|
||||
</div>
|
||||
{{ title_prefix }}
|
||||
{% if label and not page %}
|
||||
<h2{{ title_attributes }}>
|
||||
<a href="{{ url }}" rel="bookmark">{{ label }}</a>
|
||||
</h2>
|
||||
{% endif %}
|
||||
{{ title_suffix }}
|
||||
|
||||
<div{{ content_attributes }}>
|
||||
{{ content|without('field_chapitre_num') }}
|
||||
</div>
|
||||
|
||||
</article>
|
||||
@@ -0,0 +1,71 @@
|
||||
{#
|
||||
/**
|
||||
* @file
|
||||
* Default theme implementation for main view template.
|
||||
*
|
||||
* Available variables:
|
||||
* - attributes: Remaining HTML attributes for the element.
|
||||
* - css_name: A CSS-safe version of the view name.
|
||||
* - css_class: The user-specified classes names, if any.
|
||||
* - header: The optional header.
|
||||
* - footer: The optional footer.
|
||||
* - rows: The results of the view query, if any.
|
||||
* - empty: The content to display if there are no rows.
|
||||
* - pager: The optional pager next/prev links to display.
|
||||
* - exposed: Exposed widget form/info to display.
|
||||
* - feed_icons: Optional feed icons to display.
|
||||
* - more: An optional link to the next page of results.
|
||||
* - title: Title of the view, only used when displaying in the admin preview.
|
||||
* - title_prefix: Additional output populated by modules, intended to be
|
||||
* displayed in front of the view title.
|
||||
* - title_suffix: Additional output populated by modules, intended to be
|
||||
* displayed after the view title.
|
||||
* - attachment_before: An optional attachment view to be displayed before the
|
||||
* view content.
|
||||
* - attachment_after: An optional attachment view to be displayed after the
|
||||
* view content.
|
||||
* - dom_id: Unique id for every view being printed to give unique class for
|
||||
* JavaScript.
|
||||
*
|
||||
* @see template_preprocess_views_view()
|
||||
*
|
||||
* @ingroup themeable
|
||||
*/
|
||||
#}
|
||||
{%
|
||||
set classes = [
|
||||
dom_id ? 'js-view-dom-id-' ~ dom_id,
|
||||
]
|
||||
%}
|
||||
<div{{ attributes.addClass(classes) }}>
|
||||
{{ title_prefix }}
|
||||
{{ title }}
|
||||
{{ title_suffix }}
|
||||
|
||||
{% if header %}
|
||||
<header>
|
||||
{{ header }}
|
||||
</header>
|
||||
{% endif %}
|
||||
|
||||
{{ exposed }}
|
||||
{{ attachment_before }}
|
||||
|
||||
{% if rows -%}
|
||||
{{ rows }}
|
||||
{% elseif empty -%}
|
||||
{{ empty }}
|
||||
{% endif %}
|
||||
{{ pager }}
|
||||
|
||||
{{ attachment_after }}
|
||||
{{ more }}
|
||||
|
||||
{% if footer %}
|
||||
<footer>
|
||||
{{ footer }}
|
||||
</footer>
|
||||
{% endif %}
|
||||
|
||||
{{ feed_icons }}
|
||||
</div>
|
||||
Reference in New Issue
Block a user