Version 1
[yaffs-website] / web / core / modules / system / src / Plugin / migrate / process / d6 / SystemUpdate7000.php
diff --git a/web/core/modules/system/src/Plugin/migrate/process/d6/SystemUpdate7000.php b/web/core/modules/system/src/Plugin/migrate/process/d6/SystemUpdate7000.php
new file mode 100644 (file)
index 0000000..7bb64c0
--- /dev/null
@@ -0,0 +1,38 @@
+<?php
+
+namespace Drupal\system\Plugin\migrate\process\d6;
+
+use Drupal\migrate\MigrateExecutableInterface;
+use Drupal\migrate\ProcessPluginBase;
+use Drupal\migrate\Row;
+
+/**
+ * Rename blog and forum permissions to be consistent with other content types.
+ *
+ * @MigrateProcessPlugin(
+ *   id = "system_update_7000"
+ * )
+ */
+class SystemUpdate7000 extends ProcessPluginBase {
+
+  /**
+   * {@inheritdoc}
+   *
+   * Rename blog and forum permissions to be consistent with other content types.
+   */
+  public function transform($value, MigrateExecutableInterface $migrate_executable, Row $row, $destination_property) {
+    $value = preg_replace('/(?<=^|,\ )create\ blog\ entries(?=,|$)/', 'create blog content', $value);
+    $value = preg_replace('/(?<=^|,\ )edit\ own\ blog\ entries(?=,|$)/', 'edit own blog content', $value);
+    $value = preg_replace('/(?<=^|,\ )edit\ any\ blog\ entry(?=,|$)/', 'edit any blog content', $value);
+    $value = preg_replace('/(?<=^|,\ )delete\ own\ blog\ entries(?=,|$)/', 'delete own blog content', $value);
+    $value = preg_replace('/(?<=^|,\ )delete\ any\ blog\ entry(?=,|$)/', 'delete any blog content', $value);
+
+    $value = preg_replace('/(?<=^|,\ )create\ forum\ topics(?=,|$)/', 'create forum content', $value);
+    $value = preg_replace('/(?<=^|,\ )delete\ any\ forum\ topic(?=,|$)/', 'delete any forum content', $value);
+    $value = preg_replace('/(?<=^|,\ )delete\ own\ forum\ topics(?=,|$)/', 'delete own forum content', $value);
+    $value = preg_replace('/(?<=^|,\ )edit\ any\ forum\ topic(?=,|$)/', 'edit any forum content', $value);
+    $value = preg_replace('/(?<=^|,\ )edit\ own\ forum\ topics(?=,|$)/', 'edit own forum content', $value);
+    return $value;
+  }
+
+}