Issue #2068063 by timmillwood, Berdir, tduong, Manuel Garcia, nlisgo, yongt9412, esod, lauriii, jonathan1055, vijaycs85, yoroy, amit.drupal, tkoleary, ifrik, Bojhan, xjm, tstoeckler, amateescu: Change "Save and keep un-/published" buttons to a "Published" checkbox and an included "Save" button
2017-06-15 12:02:05 +00:00
|
|
|
<?php
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @file
|
|
|
|
* Post update functions for Node.
|
|
|
|
*/
|
|
|
|
|
|
|
|
use Drupal\Core\Entity\Entity\EntityFormDisplay;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Load all form displays for nodes, add status with these settings, save.
|
|
|
|
*/
|
|
|
|
function node_post_update_configure_status_field_widget() {
|
|
|
|
$query = \Drupal::entityQuery('entity_form_display')->condition('targetEntityType', 'node');
|
|
|
|
$ids = $query->execute();
|
|
|
|
$form_displays = EntityFormDisplay::loadMultiple($ids);
|
|
|
|
|
|
|
|
// Assign status settings for each 'node' target entity types with 'default'
|
|
|
|
// form mode.
|
|
|
|
foreach ($form_displays as $id => $form_display) {
|
|
|
|
/** @var \Drupal\Core\Entity\Display\EntityDisplayInterface $form_display */
|
|
|
|
$form_display->setComponent('status', [
|
|
|
|
'type' => 'boolean_checkbox',
|
|
|
|
'settings' => [
|
|
|
|
'display_label' => TRUE,
|
|
|
|
],
|
|
|
|
])->save();
|
|
|
|
}
|
|
|
|
}
|
2018-11-30 10:23:57 +00:00
|
|
|
|
|
|
|
/**
|
|
|
|
* Clear caches due to updated views data.
|
|
|
|
*/
|
|
|
|
function node_post_update_node_revision_views_data() {
|
|
|
|
// Empty post-update hook.
|
|
|
|
}
|