Skip to content

Commit

Permalink
Added hook update
Browse files Browse the repository at this point in the history
  • Loading branch information
yeniatencio committed Sep 22, 2024
1 parent f5ddb07 commit 166314b
Showing 1 changed file with 40 additions and 0 deletions.
40 changes: 40 additions & 0 deletions tide_landing_page.install
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
* Tide Landing Page install.
*/

use Drupal\Component\Utility\NestedArray;
use Drupal\field\Entity\FieldConfig;
use Drupal\field\Entity\FieldStorageConfig;
use Drupal\paragraphs\Entity\Paragraph;
Expand Down Expand Up @@ -175,3 +176,42 @@ function tide_landing_page_update_10105() {
]);
$field_storage->save();
}

/**
* Added ability to use reusable paragraphs.
*/
function tide_landing_page_update_10106() {
// Enabled paragraphs_library module.
if (!\Drupal::moduleHandler()->moduleExists('paragraphs_library')) {
/** @var \Drupal\Core\Extension\ModuleInstallerInterface $module_installer */
$module_installer = \Drupal::service('module_installer');
$module_installer->install(['paragraphs_library']);
}

\Drupal::moduleHandler()->loadInclude('tide_core', 'inc', 'includes/helpers');
$config_location = [\Drupal::service('extension.list.module')->getPath('tide_landing_page') . '/config/install'];

$form_configs = [
'core.base_field_override.paragraphs_library_item.paragraphs_library_item.paragraphs',
'field.field.node.landing_page.field_landing_page_component',
];

foreach ($form_configs as $form_config) {
$rewrite = _tide_read_config($form_config, $config_location, FALSE);
$display_config_entity = \Drupal::configFactory()->getEditable($form_config);
$original_config = $display_config_entity->getRawData();
$rewritten_config = NestedArray::mergeDeep($original_config, $rewrite);
if ($rewritten_config['dependencies']) {
$dependencies = $rewritten_config['dependencies'];
foreach ($dependencies as $type => $items) {
$uniqueItems = array_unique($items);
sort($uniqueItems);
$dependencies[$type] = $uniqueItems;
}
$rewritten_config['dependencies'] = $dependencies;
}
$display_config_entity->setData($rewritten_config);
$display_config_entity->save();
}
}

0 comments on commit 166314b

Please sign in to comment.