started puissance d'agir

This commit is contained in:
Bachir Soussi Chiadmi 2023-05-09 17:17:05 +02:00
parent c818cb92c2
commit e622f56356
34 changed files with 811 additions and 2 deletions

View File

@ -21,6 +21,7 @@
"drupal/administerusersbyrole": "^3.3",
"drupal/amswap": "^3",
"drupal/audiofield": "1.x-dev@dev",
"drupal/auto_entitylabel": "^3.0",
"drupal/base_field_override_ui": "^1.1",
"drupal/config_pages": "^2.14",
"drupal/core-composer-scaffold": "^9",

78
src/composer.lock generated
View File

@ -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": "017c14c4d3314080d32106bcdc238fd2",
"content-hash": "d34a483af063733e7e63ed66c1314ff5",
"packages": [
{
"name": "alchemy/zippy",
@ -2688,6 +2688,82 @@
"issues": "https://www.drupal.org/project/issues/audiofield"
}
},
{
"name": "drupal/auto_entitylabel",
"version": "3.0.0",
"source": {
"type": "git",
"url": "https://git.drupalcode.org/project/auto_entitylabel.git",
"reference": "8.x-3.0"
},
"dist": {
"type": "zip",
"url": "https://ftp.drupal.org/files/projects/auto_entitylabel-8.x-3.0.zip",
"reference": "8.x-3.0",
"shasum": "8dd54d4b677f2c7259a15afd7b71d0d1b6f6b4a6"
},
"require": {
"drupal/core": "^9.3 || ^10"
},
"require-dev": {
"drupal/token": "^1.0"
},
"type": "drupal-module",
"extra": {
"drupal": {
"version": "8.x-3.0",
"datestamp": "1671545557",
"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": "bforchhammer",
"homepage": "https://www.drupal.org/user/216396"
},
{
"name": "colan",
"homepage": "https://www.drupal.org/user/58704"
},
{
"name": "diqidoq",
"homepage": "https://www.drupal.org/user/1001934"
},
{
"name": "japerry",
"homepage": "https://www.drupal.org/user/45640"
},
{
"name": "Pravin Ajaaz",
"homepage": "https://www.drupal.org/user/2910049"
},
{
"name": "purushotam.rai",
"homepage": "https://www.drupal.org/user/3193859"
},
{
"name": "RenatoG",
"homepage": "https://www.drupal.org/user/3326031"
},
{
"name": "VladimirAus",
"homepage": "https://www.drupal.org/user/673120"
}
],
"description": "Allows hiding of entity label fields and automatic label creation.",
"homepage": "https://www.drupal.org/project/auto_entitylabel",
"support": {
"source": "https://git.drupalcode.org/project/auto_entitylabel",
"issues": "https://www.drupal.org/project/issues/auto_entitylabel"
}
},
{
"name": "drupal/autocomplete_deluxe",
"version": "2.0.3",

View File

@ -0,0 +1,9 @@
status: 1
pattern: 'besoin-[node:field_concernement:entity:title]-[random:hash:sha1]'
escape: false
preserve_titles: false
save: false
chunk: 50
dependencies:
config:
- node.type.besoin

View File

@ -0,0 +1,22 @@
uuid: 89b2c5f1-53b1-4027-968f-556f9033352a
langcode: fr
status: true
dependencies:
config:
- node.type.besoin
id: node.besoin.promote
field_name: promote
entity_type: node
bundle: besoin
label: 'Promu en page d''accueil'
description: ''
required: false
translatable: true
default_value:
-
value: 0
default_value_callback: ''
settings:
on_label: Activé
off_label: Désactivé
field_type: boolean

View File

@ -0,0 +1,22 @@
uuid: 4a5d1349-b8bd-4c27-81f7-84c144fea797
langcode: fr
status: true
dependencies:
config:
- node.type.reponse
id: node.reponse.promote
field_name: promote
entity_type: node
bundle: reponse
label: 'Promu en page d''accueil'
description: ''
required: false
translatable: true
default_value:
-
value: 0
default_value_callback: ''
settings:
on_label: Activé
off_label: Désactivé
field_type: boolean

View File

@ -0,0 +1,112 @@
uuid: 23105019-b114-4453-8fb5-4080318ebf6d
langcode: fr
status: true
dependencies:
config:
- field.field.node.besoin.body
- field.field.node.besoin.field_concernement
- field.field.node.besoin.field_reponse
- node.type.besoin
module:
- field_group
- text
third_party_settings:
field_group:
group_tabs:
children:
- group_besoin
- group_reponse
label: Tabs
region: content
parent_name: ''
weight: 1
format_type: tabs
format_settings:
classes: ''
show_empty_fields: false
id: ''
direction: horizontal
width_breakpoint: 640
group_besoin:
children:
- body
label: Besoin
region: content
parent_name: group_tabs
weight: 14
format_type: tab
format_settings:
classes: ''
show_empty_fields: false
id: ''
formatter: closed
description: ''
required_fields: true
group_reponse:
children:
- field_reponse
label: Réponses
region: content
parent_name: group_tabs
weight: 15
format_type: tab
format_settings:
classes: ''
show_empty_fields: false
id: ''
formatter: closed
description: ''
required_fields: true
id: node.besoin.default
targetEntityType: node
bundle: besoin
mode: default
content:
body:
type: text_textarea_with_summary
weight: 1
region: content
settings:
rows: 9
summary_rows: 3
placeholder: ''
show_summary: false
third_party_settings: { }
field_concernement:
type: entity_reference_autocomplete
weight: 2
region: content
settings:
match_operator: CONTAINS
match_limit: 10
size: 60
placeholder: ''
third_party_settings: { }
field_reponse:
type: entity_reference_autocomplete
weight: 3
region: content
settings:
match_operator: CONTAINS
match_limit: 10
size: 60
placeholder: ''
third_party_settings: { }
title:
type: string_textfield
weight: 0
region: content
settings:
size: 60
placeholder: ''
third_party_settings: { }
hidden:
created: true
langcode: true
path: true
promote: true
revision_log: true
status: true
sticky: true
uid: true
url_redirects: true

View File

@ -3,6 +3,7 @@ langcode: fr
status: true
dependencies:
config:
- field.field.node.concernement.field_besoin
- field.field.node.concernement.field_caillou
- field.field.node.concernement.field_confidentialite
- field.field.node.concernement.field_description
@ -15,6 +16,7 @@ dependencies:
- advanced_text_formatter
- field_group
- file
- inline_entity_form
- maxlength
- paragraphs
- workflow
@ -26,6 +28,7 @@ third_party_settings:
- group_entites
- group_recit
- group_ateliers
- group_puissance_d_agir
- group_doleancer
- group_confidentialite
label: Tabs
@ -107,7 +110,7 @@ third_party_settings:
label: Confidentialité
region: content
parent_name: group_tabs
weight: 17
weight: 18
format_type: tab
format_settings:
classes: ''
@ -122,6 +125,21 @@ third_party_settings:
label: Doleancer
region: content
parent_name: group_tabs
weight: 17
format_type: tab
format_settings:
classes: ''
show_empty_fields: false
id: ''
formatter: closed
description: ''
required_fields: true
group_puissance_d_agir:
children:
- field_besoin
label: 'Puissance d''agir'
region: content
parent_name: group_tabs
weight: 16
format_type: tab
format_settings:
@ -136,6 +154,24 @@ targetEntityType: node
bundle: concernement
mode: default
content:
field_besoin:
type: inline_entity_form_complex
weight: 27
region: content
settings:
form_mode: default
override_labels: false
label_singular: ''
label_plural: ''
allow_new: true
allow_existing: false
match_operator: CONTAINS
allow_duplicate: false
collapsible: false
collapsed: false
revision: false
removed_reference: delete
third_party_settings: { }
field_caillou:
type: string_textarea
weight: 2
@ -231,6 +267,7 @@ hidden:
langcode: true
path: true
promote: true
revision_log: true
status: true
sticky: true
uid: true

View File

@ -0,0 +1,42 @@
uuid: 6999ab7f-3000-4226-9f6d-efe8a6df4743
langcode: fr
status: true
dependencies:
config:
- field.field.node.reponse.body
- node.type.reponse
module:
- text
id: node.reponse.default
targetEntityType: node
bundle: reponse
mode: default
content:
body:
type: text_textarea_with_summary
weight: 1
region: content
settings:
rows: 9
summary_rows: 3
placeholder: ''
show_summary: false
third_party_settings: { }
title:
type: string_textfield
weight: 0
region: content
settings:
size: 60
placeholder: ''
third_party_settings: { }
hidden:
created: true
langcode: true
path: true
promote: true
revision_log: true
status: true
sticky: true
uid: true
url_redirects: true

View File

@ -0,0 +1,48 @@
uuid: c39a7087-ddbf-4ce4-a833-58c4bfec76b4
langcode: fr
status: true
dependencies:
config:
- field.field.node.besoin.body
- field.field.node.besoin.field_concernement
- field.field.node.besoin.field_reponse
- node.type.besoin
module:
- text
- user
id: node.besoin.default
targetEntityType: node
bundle: besoin
mode: default
content:
body:
type: text_default
label: hidden
settings: { }
third_party_settings: { }
weight: 101
region: content
field_concernement:
type: entity_reference_label
label: above
settings:
link: true
third_party_settings: { }
weight: 102
region: content
field_reponse:
type: entity_reference_label
label: above
settings:
link: true
third_party_settings: { }
weight: 103
region: content
links:
settings: { }
third_party_settings: { }
weight: 100
region: content
hidden:
langcode: true
search_api_excerpt: true

View File

@ -0,0 +1,36 @@
uuid: aadf4085-0455-4228-9aa7-57030c673b1b
langcode: fr
status: true
dependencies:
config:
- core.entity_view_mode.node.teaser
- field.field.node.besoin.body
- field.field.node.besoin.field_concernement
- field.field.node.besoin.field_reponse
- node.type.besoin
module:
- text
- user
id: node.besoin.teaser
targetEntityType: node
bundle: besoin
mode: teaser
content:
body:
type: text_summary_or_trimmed
label: hidden
settings:
trim_length: 600
third_party_settings: { }
weight: 101
region: content
links:
settings: { }
third_party_settings: { }
weight: 100
region: content
hidden:
field_concernement: true
field_reponse: true
langcode: true
search_api_excerpt: true

View File

@ -3,6 +3,7 @@ langcode: fr
status: true
dependencies:
config:
- field.field.node.concernement.field_besoin
- field.field.node.concernement.field_caillou
- field.field.node.concernement.field_confidentialite
- field.field.node.concernement.field_description
@ -21,6 +22,14 @@ targetEntityType: node
bundle: concernement
mode: default
content:
field_besoin:
type: entity_reference_label
label: above
settings:
link: true
third_party_settings: { }
weight: 110
region: content
field_caillou:
type: basic_string
label: above

View File

@ -4,6 +4,7 @@ status: true
dependencies:
config:
- core.entity_view_mode.node.teaser
- field.field.node.concernement.field_besoin
- field.field.node.concernement.field_caillou
- field.field.node.concernement.field_confidentialite
- field.field.node.concernement.field_description
@ -25,6 +26,7 @@ content:
weight: 100
region: content
hidden:
field_besoin: true
field_caillou: true
field_confidentialite: true
field_description: true

View File

@ -0,0 +1,30 @@
uuid: fb5fe2a6-0858-4bd2-a140-cb454eeec0e5
langcode: fr
status: true
dependencies:
config:
- field.field.node.reponse.body
- node.type.reponse
module:
- text
- user
id: node.reponse.default
targetEntityType: node
bundle: reponse
mode: default
content:
body:
type: text_default
label: hidden
settings: { }
third_party_settings: { }
weight: 101
region: content
links:
settings: { }
third_party_settings: { }
weight: 100
region: content
hidden:
langcode: true
search_api_excerpt: true

View File

@ -0,0 +1,32 @@
uuid: 3ed80da4-645b-48b3-aa49-de6ec623c7df
langcode: fr
status: true
dependencies:
config:
- core.entity_view_mode.node.teaser
- field.field.node.reponse.body
- node.type.reponse
module:
- text
- user
id: node.reponse.teaser
targetEntityType: node
bundle: reponse
mode: teaser
content:
body:
type: text_summary_or_trimmed
label: hidden
settings:
trim_length: 600
third_party_settings: { }
weight: 101
region: content
links:
settings: { }
third_party_settings: { }
weight: 100
region: content
hidden:
langcode: true
search_api_excerpt: true

View File

@ -13,6 +13,7 @@ module:
advanced_text_formatter: 0
amswap: 0
audiofield: 0
auto_entitylabel: 0
autocomplete_deluxe: 0
ban: 0
base_field_override_ui: 0
@ -93,6 +94,7 @@ module:
options: 0
ouatt_admin: 0
ouatt_graphql: 0
ouatt_puissanceagir: 0
ouatt_users: 0
page_cache: 0
pagerer: 0
@ -137,6 +139,7 @@ module:
workflow_ui: 0
extlink: 1
filefield_sources: 1
hide_revision_field: 1
menu_admin_per_menu: 1
pathauto: 1
content_translation: 10

View File

@ -0,0 +1,23 @@
uuid: ed448c87-5ca9-4a68-ab07-a2b2ff4ebd23
langcode: fr
status: true
dependencies:
config:
- field.storage.node.body
- node.type.besoin
module:
- text
id: node.besoin.body
field_name: body
entity_type: node
bundle: besoin
label: 'Description du besoin'
description: ''
required: false
translatable: true
default_value: { }
default_value_callback: ''
settings:
display_summary: true
required_summary: false
field_type: text_with_summary

View File

@ -0,0 +1,29 @@
uuid: 5d497aca-e589-4f4f-9e49-a2cd5ffe030e
langcode: fr
status: true
dependencies:
config:
- field.storage.node.field_concernement
- node.type.besoin
- node.type.concernement
id: node.besoin.field_concernement
field_name: field_concernement
entity_type: node
bundle: besoin
label: concernement
description: ''
required: false
translatable: false
default_value: { }
default_value_callback: ''
settings:
handler: 'default:node'
handler_settings:
target_bundles:
concernement: concernement
sort:
field: _none
direction: ASC
auto_create: false
auto_create_bundle: ''
field_type: entity_reference

View File

@ -0,0 +1,29 @@
uuid: c8eaeec5-3f0d-461b-b50c-a9d4e976034e
langcode: fr
status: true
dependencies:
config:
- field.storage.node.field_reponse
- node.type.besoin
- node.type.reponse
id: node.besoin.field_reponse
field_name: field_reponse
entity_type: node
bundle: besoin
label: Réponse
description: ''
required: false
translatable: false
default_value: { }
default_value_callback: ''
settings:
handler: 'default:node'
handler_settings:
target_bundles:
reponse: reponse
sort:
field: _none
direction: ASC
auto_create: false
auto_create_bundle: ''
field_type: entity_reference

View File

@ -0,0 +1,29 @@
uuid: 19dab27f-d0a2-445f-9d0a-fadb6bd89087
langcode: fr
status: true
dependencies:
config:
- field.storage.node.field_besoin
- node.type.besoin
- node.type.concernement
id: node.concernement.field_besoin
field_name: field_besoin
entity_type: node
bundle: concernement
label: Besoin
description: ''
required: false
translatable: false
default_value: { }
default_value_callback: ''
settings:
handler: 'default:node'
handler_settings:
target_bundles:
besoin: besoin
sort:
field: _none
direction: ASC
auto_create: true
auto_create_bundle: ''
field_type: entity_reference

View File

@ -0,0 +1,23 @@
uuid: 3fb92c3b-505d-4991-abde-b44e3f7a8ae0
langcode: fr
status: true
dependencies:
config:
- field.storage.node.body
- node.type.reponse
module:
- text
id: node.reponse.body
field_name: body
entity_type: node
bundle: reponse
label: Body
description: ''
required: false
translatable: true
default_value: { }
default_value_callback: ''
settings:
display_summary: true
required_summary: false
field_type: text_with_summary

View File

@ -0,0 +1,19 @@
uuid: 0ea0c827-31b3-4883-a442-a6c1d15d3732
langcode: fr
status: true
dependencies:
module:
- node
id: node.field_besoin
field_name: field_besoin
entity_type: node
type: entity_reference
settings:
target_type: node
module: core
locked: false
cardinality: -1
translatable: true
indexes: { }
persist_with_no_fields: false
custom_storage: false

View File

@ -0,0 +1,19 @@
uuid: b6de5a82-c854-4a6e-bc03-aa59dee09164
langcode: fr
status: true
dependencies:
module:
- node
id: node.field_concernement
field_name: field_concernement
entity_type: node
type: entity_reference
settings:
target_type: node
module: core
locked: false
cardinality: 1
translatable: true
indexes: { }
persist_with_no_fields: false
custom_storage: false

View File

@ -0,0 +1,19 @@
uuid: ec622ec5-6166-4320-83bb-d8474ed042f5
langcode: fr
status: true
dependencies:
module:
- node
id: node.field_reponse
field_name: field_reponse
entity_type: node
type: entity_reference
settings:
target_type: node
module: core
locked: false
cardinality: -1
translatable: true
indexes: { }
persist_with_no_fields: false
custom_storage: false

View File

@ -0,0 +1,11 @@
uuid: 84d221ce-f269-441b-9604-c9e354d50961
langcode: fr
status: true
dependencies:
config:
- node.type.besoin
id: node.besoin
target_entity_type_id: node
target_bundle: besoin
default_langcode: site_default
language_alterable: false

View File

@ -0,0 +1,11 @@
uuid: 0d707bb1-ad6b-47d4-bc62-937ce38300b6
langcode: fr
status: true
dependencies:
config:
- node.type.reponse
id: node.reponse
target_entity_type_id: node
target_bundle: reponse
default_langcode: site_default
language_alterable: false

View File

@ -0,0 +1,17 @@
uuid: 04dbc27a-fcec-4dde-bb09-602e64b49204
langcode: fr
status: true
dependencies:
module:
- menu_ui
third_party_settings:
menu_ui:
available_menus: { }
parent: ''
name: Besoin
type: besoin
description: ''
help: ''
new_revision: true
preview_mode: 0
display_submitted: false

View File

@ -0,0 +1,17 @@
uuid: 6180ac27-a21a-4f00-9304-9c8b97661f4c
langcode: fr
status: true
dependencies:
module:
- menu_ui
third_party_settings:
menu_ui:
available_menus: { }
parent: ''
name: Reponse
type: reponse
description: ''
help: ''
new_revision: true
preview_mode: 0
display_submitted: false

View File

@ -4,6 +4,7 @@ status: true
dependencies:
config:
- filter.format.wysiwyg
- node.type.besoin
- node.type.concernement
- node.type.entite
- node.type.static
@ -46,6 +47,7 @@ permissions:
- 'cancel users with role group_admin'
- 'cancel users with role group_member'
- 'change own username'
- 'create besoin content'
- 'create bourgeon group'
- 'create concernement content'
- 'create confidentialite workflow_transition'
@ -72,8 +74,10 @@ permissions:
- 'delete any evenement content'
- 'delete any fil content'
- 'delete any page content'
- 'delete besoin revisions'
- 'delete concernement revisions'
- 'delete entite revisions'
- 'delete own besoin content'
- 'delete own concernement content'
- 'delete own entite content'
- 'delete own static content'
@ -86,6 +90,7 @@ permissions:
- 'delete terms in locuteurs'
- 'delete terms in structure'
- 'edit any autre_son content'
- 'edit any besoin content'
- 'edit any enregistrement content'
- 'edit any entite content'
- 'edit any evenement content'

View File

@ -5,11 +5,13 @@ dependencies:
config:
- filter.format.linkonly
- filter.format.wysiwyg
- node.type.besoin
module:
- devel
- filter
- graphql
- group
- node
- system
- workflow
_core:
@ -34,6 +36,7 @@ permissions:
- 'create generique workflow_transition'
- 'delete own composition entities'
- 'delete own fil entities'
- 'edit own besoin content'
- 'edit own chutier entities'
- 'edit own composition entities'
- 'edit own fil entities'

View File

@ -3,6 +3,7 @@ langcode: fr
status: true
dependencies:
config:
- node.type.besoin
- node.type.concernement
- node.type.entite
- taxonomy.vocabulary.lieu
@ -25,6 +26,7 @@ permissions:
- 'access toolbar'
- 'assign group_member role'
- 'cancel users with role group_member'
- 'create besoin content'
- 'create concernement content'
- 'create confidentialite workflow_transition'
- 'create entite content'

View File

@ -3,6 +3,7 @@ langcode: fr
status: true
dependencies:
config:
- node.type.besoin
- node.type.concernement
- node.type.entite
module:
@ -17,6 +18,7 @@ is_admin: null
permissions:
- 'access administration pages'
- 'access toolbar'
- 'create besoin content'
- 'create concernement content'
- 'create confidentialite workflow_transition'
- 'create entite content'

View File

@ -2,7 +2,10 @@ uuid: fd49076e-124c-4973-9a8e-efbd35cd1fbe
langcode: fr
status: true
dependencies:
config:
- node.type.besoin
module:
- node
- workflow
_core:
default_config_hash: i1HX2g6ycNxMoSaVKRrMZtmApin-bVKG1d0FG04peQw
@ -11,6 +14,7 @@ label: User
weight: -4
is_admin: null
permissions:
- 'create besoin content'
- 'create confidentialite workflow_transition'
- 'create defalut workflow_transition'
- 'create default workflow_transition'

View File

@ -0,0 +1,8 @@
name: Où Atterrir Puissance d'agir
type: module
description: "Où Atterrir puissance d'agire."
package: Ouatterrir
core: 8.x
# dependencies:
# - user
core_version_requirement: ^8 || ^9

View File

@ -0,0 +1,58 @@
<?php
/**
* @file
* Contains admin_menus.module.
*/
use Drupal\Core\Routing\RouteMatchInterface;
/**
* Implements hook_help().
*/
function ouatt_puissanceagir_help($route_name, RouteMatchInterface $route_match) {
switch ($route_name) {
// Main module help for the editors_menus module.
case 'help.page.ouatt_puissanceagir':
$output = '';
$output .= '<h3>' . t('About') . '</h3>';
$output .= '<p>' . t("Où Atterrir puissance d'agir custom module") . '</p>';
return $output;
default:
}
}
/**
* Implements hook_form_FORM_ID_alter().
*/
// function ouatt_puissanceagir_form_user_register_form_alter(&$form, $form_state, $form_id) {
// function ouatt_puissanceagir_form_node_edit_form__node_besoin_form_alter(&$form, $form_state, $form_id) {
// function ouatt_puissanceagir_form_node_edit_form__node_besoin_alter(&$form, $form_state, $form_id) {
// function ouatt_puissanceagir_form_alter(&$form, $form_state, $form_id) {
// $t="t";
// }
// function ouatt_puissanceagir_field_widget_form_alter(&$element, &$form_state, $context) {
// // Add a css class to widget form elements for all fields of type mytype.
// if ($context['field']['type'] == 'mytype') {
// // Be sure not to overwrite existing attributes.
// $element['#attributes']['class'][] = 'myclass';
// }
// }
function ouatt_puissanceagir_inline_entity_form_entity_form_alter(&$entity_form, &$form_state) {
if ($entity_form['#entity_type'] === 'node' && $entity_form['#bundle'] === 'besoin') {
// prefile concernement entity reference field on besoin
// usefull for automatic entity label and for reciproque references
if (!$entity_form['field_concernement']['widget'][0]['target_id']['#default_value']) {
$parent_node = \Drupal::routeMatch()->getParameter('node');
$entity_form['field_concernement']['widget'][0]['target_id']['#default_value'] = $parent_node;
}
$entity_form['field_concernement']['#attributes']['style'] = ['display:none;'];
}
}