diff --git a/modules/metastore/metastore.deploy.php b/modules/metastore/metastore.deploy.php new file mode 100644 index 0000000000..1917851ae4 --- /dev/null +++ b/modules/metastore/metastore.deploy.php @@ -0,0 +1,26 @@ +getEditable('core.entity_form_display.node.data.default'); + // Update the 'dkan_json_form_widget' field widget settings. + $settings = $entity_form_display->get('content.field_json_metadata'); + if (empty($settings)) { + return "No settings found for 'field_json_metadata'."; + } + if ($settings['type'] == 'json_form_widget') { + $settings['type'] = 'dkan_json_form_widget'; + $entity_form_display->set('content.field_json_metadata', $settings)->save(TRUE); + return "Updated 'field_json_metadata' to use 'dkan_json_form_widget'."; + } + return "No changes were necessary. Nothing was updated."; +} diff --git a/modules/metastore/metastore.install b/modules/metastore/metastore.install index 38fc49f8cd..58f3fc89d4 100644 --- a/modules/metastore/metastore.install +++ b/modules/metastore/metastore.install @@ -168,16 +168,7 @@ function metastore_update_8010() { * Update the dkan_json_form_widget field widget settings. */ function metastore_update_8011() { - // Retrieve the entity form display settings for the 'data' content type. - $entity_form_display = \Drupal::service('config.factory') - ->getEditable('core.entity_form_display.node.data.default'); - // Update the 'dkan_json_form_widget' field widget settings. - $settings = $entity_form_display->get('content.field_json_metadata'); - if (empty($settings)) { - return "No settings found for 'field_json_metadata'."; - } - if ($settings['type'] == 'json_form_widget') { - $settings['type'] = 'dkan_json_form_widget'; - $entity_form_display->set('content.field_json_metadata', $settings)->save(TRUE); - } -} \ No newline at end of file + // All code moved to metastore_deploy_switch_to_dkan_json_form_widget + // This is only here to ensure the update number is preserved. + return 'Made no changes, they are deferred to happen in a deploy hook.'; +}