Mercurial > hg > isophonics-drupal-site
annotate core/modules/system/tests/fixtures/update/drupal-8.actions-2815379.php @ 19:fa3358dc1485 tip
Add ndrum files
author | Chris Cannam |
---|---|
date | Wed, 28 Aug 2019 13:14:47 +0100 |
parents | af1871eacc83 |
children |
rev | line source |
---|---|
Chris@18 | 1 <?php |
Chris@18 | 2 |
Chris@18 | 3 /** |
Chris@18 | 4 * @file |
Chris@18 | 5 * Contains database additions to for testing upgrade path for action plugins. |
Chris@18 | 6 * |
Chris@18 | 7 * @see https://www.drupal.org/node/2815379 |
Chris@18 | 8 */ |
Chris@18 | 9 |
Chris@18 | 10 use Drupal\Core\Database\Database; |
Chris@18 | 11 use Drupal\Core\Serialization\Yaml; |
Chris@18 | 12 |
Chris@18 | 13 $connection = Database::getConnection(); |
Chris@18 | 14 |
Chris@18 | 15 // Structure of configured email, goto, and message actions. |
Chris@18 | 16 $actions[] = Yaml::decode(file_get_contents(__DIR__ . '/system.action.goto_2815379.yml')); |
Chris@18 | 17 $actions[] = Yaml::decode(file_get_contents(__DIR__ . '/system.action.message_2815379.yml')); |
Chris@18 | 18 $actions[] = Yaml::decode(file_get_contents(__DIR__ . '/system.action.send_email_2815379.yml')); |
Chris@18 | 19 |
Chris@18 | 20 foreach ($actions as $action) { |
Chris@18 | 21 $connection->insert('config') |
Chris@18 | 22 ->fields([ |
Chris@18 | 23 'collection', |
Chris@18 | 24 'name', |
Chris@18 | 25 'data', |
Chris@18 | 26 ]) |
Chris@18 | 27 ->values([ |
Chris@18 | 28 'collection' => '', |
Chris@18 | 29 'name' => 'system.action.' . $action['id'], |
Chris@18 | 30 'data' => serialize($action), |
Chris@18 | 31 ]) |
Chris@18 | 32 ->execute(); |
Chris@18 | 33 } |
Chris@18 | 34 |
Chris@18 | 35 // Enable action module. |
Chris@18 | 36 $extensions = $connection->select('config') |
Chris@18 | 37 ->fields('config', ['data']) |
Chris@18 | 38 ->condition('name', 'core.extension') |
Chris@18 | 39 ->execute() |
Chris@18 | 40 ->fetchField(); |
Chris@18 | 41 $extensions = unserialize($extensions); |
Chris@18 | 42 $connection->update('config') |
Chris@18 | 43 ->fields([ |
Chris@18 | 44 'data' => serialize(array_merge_recursive($extensions, ['module' => ['action' => 0]])), |
Chris@18 | 45 ]) |
Chris@18 | 46 ->condition('name', 'core.extension') |
Chris@18 | 47 ->execute(); |