statics can be promoted to front page (for app header menu)
This commit is contained in:
parent
f1ae451352
commit
1735f8f6ac
@ -6,8 +6,59 @@ dependencies:
|
|||||||
- field.field.node.static.body
|
- field.field.node.static.body
|
||||||
- node.type.static
|
- node.type.static
|
||||||
module:
|
module:
|
||||||
- path
|
- field_group
|
||||||
- text
|
- text
|
||||||
|
third_party_settings:
|
||||||
|
field_group:
|
||||||
|
group_tabs:
|
||||||
|
children:
|
||||||
|
- group_contenu
|
||||||
|
- group_deta
|
||||||
|
label: Tabs
|
||||||
|
region: content
|
||||||
|
parent_name: ''
|
||||||
|
weight: 0
|
||||||
|
format_type: tabs
|
||||||
|
format_settings:
|
||||||
|
classes: ''
|
||||||
|
show_empty_fields: false
|
||||||
|
id: ''
|
||||||
|
direction: vertical
|
||||||
|
width_breakpoint: 640
|
||||||
|
group_contenu:
|
||||||
|
children:
|
||||||
|
- title
|
||||||
|
- body
|
||||||
|
label: Contenu
|
||||||
|
region: content
|
||||||
|
parent_name: group_tabs
|
||||||
|
weight: 13
|
||||||
|
format_type: tab
|
||||||
|
format_settings:
|
||||||
|
classes: ''
|
||||||
|
show_empty_fields: false
|
||||||
|
id: ''
|
||||||
|
formatter: open
|
||||||
|
description: ''
|
||||||
|
required_fields: true
|
||||||
|
group_deta:
|
||||||
|
children:
|
||||||
|
- status
|
||||||
|
- promote
|
||||||
|
- uid
|
||||||
|
- created
|
||||||
|
label: Details
|
||||||
|
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
|
||||||
id: node.static.default
|
id: node.static.default
|
||||||
targetEntityType: node
|
targetEntityType: node
|
||||||
bundle: static
|
bundle: static
|
||||||
@ -25,40 +76,20 @@ content:
|
|||||||
third_party_settings: { }
|
third_party_settings: { }
|
||||||
created:
|
created:
|
||||||
type: datetime_timestamp
|
type: datetime_timestamp
|
||||||
weight: 4
|
weight: 5
|
||||||
region: content
|
|
||||||
settings: { }
|
|
||||||
third_party_settings: { }
|
|
||||||
langcode:
|
|
||||||
type: language_select
|
|
||||||
weight: 2
|
|
||||||
region: content
|
|
||||||
settings:
|
|
||||||
include_locked: true
|
|
||||||
third_party_settings: { }
|
|
||||||
path:
|
|
||||||
type: path
|
|
||||||
weight: 7
|
|
||||||
region: content
|
region: content
|
||||||
settings: { }
|
settings: { }
|
||||||
third_party_settings: { }
|
third_party_settings: { }
|
||||||
promote:
|
promote:
|
||||||
type: boolean_checkbox
|
type: boolean_checkbox
|
||||||
weight: 5
|
weight: 3
|
||||||
region: content
|
region: content
|
||||||
settings:
|
settings:
|
||||||
display_label: true
|
display_label: true
|
||||||
third_party_settings: { }
|
third_party_settings: { }
|
||||||
status:
|
status:
|
||||||
type: boolean_checkbox
|
type: boolean_checkbox
|
||||||
weight: 9
|
weight: 2
|
||||||
region: content
|
|
||||||
settings:
|
|
||||||
display_label: true
|
|
||||||
third_party_settings: { }
|
|
||||||
sticky:
|
|
||||||
type: boolean_checkbox
|
|
||||||
weight: 6
|
|
||||||
region: content
|
region: content
|
||||||
settings:
|
settings:
|
||||||
display_label: true
|
display_label: true
|
||||||
@ -73,7 +104,7 @@ content:
|
|||||||
third_party_settings: { }
|
third_party_settings: { }
|
||||||
uid:
|
uid:
|
||||||
type: entity_reference_autocomplete
|
type: entity_reference_autocomplete
|
||||||
weight: 3
|
weight: 4
|
||||||
region: content
|
region: content
|
||||||
settings:
|
settings:
|
||||||
match_operator: CONTAINS
|
match_operator: CONTAINS
|
||||||
@ -81,9 +112,9 @@ content:
|
|||||||
size: 60
|
size: 60
|
||||||
placeholder: ''
|
placeholder: ''
|
||||||
third_party_settings: { }
|
third_party_settings: { }
|
||||||
url_redirects:
|
hidden:
|
||||||
weight: 8
|
langcode: true
|
||||||
region: content
|
path: true
|
||||||
settings: { }
|
revision_log: true
|
||||||
third_party_settings: { }
|
sticky: true
|
||||||
hidden: { }
|
url_redirects: true
|
||||||
|
@ -6,8 +6,8 @@ dependencies:
|
|||||||
- field.field.node.static.body
|
- field.field.node.static.body
|
||||||
- node.type.static
|
- node.type.static
|
||||||
module:
|
module:
|
||||||
|
- manage_display
|
||||||
- text
|
- text
|
||||||
- user
|
|
||||||
_core:
|
_core:
|
||||||
default_config_hash: oGSMA6gtfWJ1AlOJQfaQ3Qpi7ZarWaHqInUX9DaJLzo
|
default_config_hash: oGSMA6gtfWJ1AlOJQfaQ3Qpi7ZarWaHqInUX9DaJLzo
|
||||||
id: node.static.default
|
id: node.static.default
|
||||||
@ -18,15 +18,22 @@ content:
|
|||||||
body:
|
body:
|
||||||
type: text_default
|
type: text_default
|
||||||
label: hidden
|
label: hidden
|
||||||
settings: { }
|
|
||||||
third_party_settings: { }
|
|
||||||
weight: 0
|
|
||||||
region: content
|
|
||||||
links:
|
|
||||||
settings: { }
|
settings: { }
|
||||||
third_party_settings: { }
|
third_party_settings: { }
|
||||||
weight: 1
|
weight: 1
|
||||||
region: content
|
region: content
|
||||||
|
title:
|
||||||
|
type: title
|
||||||
|
label: hidden
|
||||||
|
settings:
|
||||||
|
link_to_entity: true
|
||||||
|
tag: h2
|
||||||
|
third_party_settings: { }
|
||||||
|
weight: 0
|
||||||
|
region: content
|
||||||
hidden:
|
hidden:
|
||||||
|
created: true
|
||||||
langcode: true
|
langcode: true
|
||||||
|
links: true
|
||||||
search_api_excerpt: true
|
search_api_excerpt: true
|
||||||
|
uid: true
|
||||||
|
@ -15,6 +15,7 @@ dependencies:
|
|||||||
module:
|
module:
|
||||||
- actions_permissions
|
- actions_permissions
|
||||||
- administerusersbyrole
|
- administerusersbyrole
|
||||||
|
- content_lock
|
||||||
- content_translation
|
- content_translation
|
||||||
- file
|
- file
|
||||||
- filter
|
- filter
|
||||||
@ -42,10 +43,12 @@ permissions:
|
|||||||
- 'access toolbar'
|
- 'access toolbar'
|
||||||
- 'access user profiles'
|
- 'access user profiles'
|
||||||
- 'access users overview'
|
- 'access users overview'
|
||||||
|
- 'administer nodes'
|
||||||
- 'administer productions menu items'
|
- 'administer productions menu items'
|
||||||
- 'administer registration codes'
|
- 'administer registration codes'
|
||||||
- 'assign group_admin role'
|
- 'assign group_admin role'
|
||||||
- 'assign group_member role'
|
- 'assign group_member role'
|
||||||
|
- 'break content lock'
|
||||||
- 'bypass confidentialite workflow_transition access'
|
- 'bypass confidentialite workflow_transition access'
|
||||||
- 'cancel users with role group_admin'
|
- 'cancel users with role group_admin'
|
||||||
- 'cancel users with role group_member'
|
- 'cancel users with role group_member'
|
||||||
@ -108,6 +111,7 @@ permissions:
|
|||||||
- 'edit own concernement content'
|
- 'edit own concernement content'
|
||||||
- 'edit own enregistrement content'
|
- 'edit own enregistrement content'
|
||||||
- 'edit own reponse content'
|
- 'edit own reponse content'
|
||||||
|
- 'edit own static content'
|
||||||
- 'edit terms in collectionneurs'
|
- 'edit terms in collectionneurs'
|
||||||
- 'edit terms in entrees'
|
- 'edit terms in entrees'
|
||||||
- 'edit terms in genres'
|
- 'edit terms in genres'
|
||||||
@ -118,11 +122,14 @@ permissions:
|
|||||||
- 'edit users by role'
|
- 'edit users by role'
|
||||||
- 'edit users with role group_admin'
|
- 'edit users with role group_admin'
|
||||||
- 'edit users with role group_member'
|
- 'edit users with role group_member'
|
||||||
|
- 'execute entity:break_lock node'
|
||||||
- 'execute entity:save_action menu_link_content'
|
- 'execute entity:save_action menu_link_content'
|
||||||
- 'execute entity:save_action node'
|
- 'execute entity:save_action node'
|
||||||
- 'execute entity:save_action taxonomy_term'
|
- 'execute entity:save_action taxonomy_term'
|
||||||
- 'execute entity:save_action user'
|
- 'execute entity:save_action user'
|
||||||
|
- 'execute entity:unpublish_action node'
|
||||||
- 'execute node_assign_owner_action node'
|
- 'execute node_assign_owner_action node'
|
||||||
|
- 'execute node_make_sticky_action node'
|
||||||
- 'execute node_promote_action node'
|
- 'execute node_promote_action node'
|
||||||
- 'execute node_save_action node'
|
- 'execute node_save_action node'
|
||||||
- 'execute node_unpromote_action node'
|
- 'execute node_unpromote_action node'
|
||||||
|
@ -20,6 +20,7 @@ type Concernement implements NodeInterface {
|
|||||||
description: String
|
description: String
|
||||||
caillou: String
|
caillou: String
|
||||||
recit: Filefield
|
recit: Filefield
|
||||||
|
recit_colophon: String
|
||||||
entites: [Entiteintegre]
|
entites: [Entiteintegre]
|
||||||
besoins: [Besoin]
|
besoins: [Besoin]
|
||||||
doleances: [Doleance]
|
doleances: [Doleance]
|
||||||
@ -50,7 +51,7 @@ type Entite implements NodeInterface {
|
|||||||
}
|
}
|
||||||
|
|
||||||
type Source {
|
type Source {
|
||||||
audios: Filefield
|
audios: [Filefield]
|
||||||
date: Date
|
date: Date
|
||||||
documents: [Filefield]
|
documents: [Filefield]
|
||||||
description: String
|
description: String
|
||||||
@ -150,6 +151,7 @@ type Static implements NodeInterface {
|
|||||||
author: String
|
author: String
|
||||||
created: String
|
created: String
|
||||||
changed: String
|
changed: String
|
||||||
|
promoted: Boolean
|
||||||
texte: String
|
texte: String
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -31,6 +31,10 @@ extend type Query {
|
|||||||
allstatics: [Static]
|
allstatics: [Static]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
extend type Query {
|
||||||
|
promotedstatics: [Static]
|
||||||
|
}
|
||||||
|
|
||||||
extend type Query {
|
extend type Query {
|
||||||
statics(ids: [Int]): [Static]
|
statics(ids: [Int]): [Static]
|
||||||
}
|
}
|
||||||
|
@ -243,6 +243,13 @@ class OuattSchemaExtension extends SdlSchemaExtensionPluginBase {
|
|||||||
->map('position', $builder->fromValue(0))
|
->map('position', $builder->fromValue(0))
|
||||||
));
|
));
|
||||||
|
|
||||||
|
$registry->addFieldResolver('Concernement', 'recit_colophon',
|
||||||
|
$builder->produce('property_path')
|
||||||
|
->map('type', $builder->fromValue('entity:node'))
|
||||||
|
->map('value', $builder->fromParent())
|
||||||
|
->map('path', $builder->fromValue('field_recit_colophon.value'))
|
||||||
|
);
|
||||||
|
|
||||||
$registry->addFieldResolver('Concernement', 'entites',
|
$registry->addFieldResolver('Concernement', 'entites',
|
||||||
$builder->produce('entity_reference_revisions')
|
$builder->produce('entity_reference_revisions')
|
||||||
->map('entity', $builder->fromParent())
|
->map('entity', $builder->fromParent())
|
||||||
@ -1065,6 +1072,24 @@ class OuattSchemaExtension extends SdlSchemaExtensionPluginBase {
|
|||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
$registry->addFieldResolver('Query', 'promotedstatics',
|
||||||
|
$builder->compose(
|
||||||
|
$builder->callback(function($parent, $arg){
|
||||||
|
$entity_storage = \Drupal::entityTypeManager()->getStorage('node');
|
||||||
|
$query = $entity_storage->getQuery()
|
||||||
|
->condition('type', ['static'], 'IN')
|
||||||
|
->condition('promote', true)
|
||||||
|
->accessCheck(TRUE);
|
||||||
|
$results = $query->execute();
|
||||||
|
return $results;
|
||||||
|
}),
|
||||||
|
$builder->produce('entity_load_multiple')
|
||||||
|
->map('type', $builder->fromValue('node'))
|
||||||
|
->map('ids', $builder->fromParent())
|
||||||
|
)
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
$registry->addFieldResolver('Query', 'statics',
|
$registry->addFieldResolver('Query', 'statics',
|
||||||
$builder->produce('entity_load_multiple')
|
$builder->produce('entity_load_multiple')
|
||||||
->map('type', $builder->fromValue('node'))
|
->map('type', $builder->fromValue('node'))
|
||||||
@ -1109,6 +1134,13 @@ class OuattSchemaExtension extends SdlSchemaExtensionPluginBase {
|
|||||||
->map('entity', $builder->fromParent())
|
->map('entity', $builder->fromParent())
|
||||||
));
|
));
|
||||||
|
|
||||||
|
$registry->addFieldResolver('Static', 'promoted',
|
||||||
|
$builder->produce('property_path')
|
||||||
|
->map('type', $builder->fromValue('entity:node'))
|
||||||
|
->map('value', $builder->fromParent())
|
||||||
|
->map('path', $builder->fromValue('promote.value'))
|
||||||
|
);
|
||||||
|
|
||||||
$registry->addFieldResolver('Static', 'texte',
|
$registry->addFieldResolver('Static', 'texte',
|
||||||
$builder->produce('property_path')
|
$builder->produce('property_path')
|
||||||
->map('type', $builder->fromValue('entity:node'))
|
->map('type', $builder->fromValue('entity:node'))
|
||||||
|
@ -58,6 +58,7 @@ function ouatminimal_form_node_form_alter(&$form, FormStateInterface $form_state
|
|||||||
$form['#theme'] = ['node_edit_form'];
|
$form['#theme'] = ['node_edit_form'];
|
||||||
$form['#attached']['library'][] = 'seven/node-form';
|
$form['#attached']['library'][] = 'seven/node-form';
|
||||||
|
|
||||||
|
if ($form["#form_id"] != 'node_static_edit_form') {
|
||||||
// unset($form['advanced']);
|
// unset($form['advanced']);
|
||||||
$form['advanced']['#type'] = 'container';
|
$form['advanced']['#type'] = 'container';
|
||||||
$form['advanced']['#access'] = FALSE;
|
$form['advanced']['#access'] = FALSE;
|
||||||
@ -70,6 +71,7 @@ function ouatminimal_form_node_form_alter(&$form, FormStateInterface $form_state
|
|||||||
$form['revision_information']['#group'] = 'meta';
|
$form['revision_information']['#group'] = 'meta';
|
||||||
|
|
||||||
// $form['author']['#group']['group_admin'];
|
// $form['author']['#group']['group_admin'];
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -0,0 +1,31 @@
|
|||||||
|
{#
|
||||||
|
/**
|
||||||
|
* @file
|
||||||
|
* Theme override for a node edit form.
|
||||||
|
*
|
||||||
|
* Two column template for the node add/edit form.
|
||||||
|
*
|
||||||
|
* This template will be used when a node edit form specifies 'node_edit_form'
|
||||||
|
* as its #theme callback. Otherwise, by default, node add/edit forms will be
|
||||||
|
* themed by form.html.twig.
|
||||||
|
*
|
||||||
|
* Available variables:
|
||||||
|
* - form: The node add/edit form.
|
||||||
|
*
|
||||||
|
* @see seven_form_node_form_alter()
|
||||||
|
*/
|
||||||
|
#}
|
||||||
|
<div class="layout-node-form clearfix">
|
||||||
|
<div class="layout-region layout-region-node-main">
|
||||||
|
{{ form|without('advanced', 'footer', 'actions') }}
|
||||||
|
</div>
|
||||||
|
<div class="layout-region layout-region-node-secondary">
|
||||||
|
{{ form.advanced }}
|
||||||
|
</div>
|
||||||
|
<div class="layout-region layout-region-node-footer">
|
||||||
|
<div class="layout-region-node-footer__content">
|
||||||
|
{{ form.footer }}
|
||||||
|
{{ form.actions }}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
Loading…
x
Reference in New Issue
Block a user