Updated all the contrib modules to their latest versions.
[yaffs-website] / web / modules / contrib / php / src / PhpUninstallValidator.php
diff --git a/web/modules/contrib/php/src/PhpUninstallValidator.php b/web/modules/contrib/php/src/PhpUninstallValidator.php
new file mode 100644 (file)
index 0000000..87bbf3f
--- /dev/null
@@ -0,0 +1,34 @@
+<?php
+
+namespace Drupal\php;
+
+use Drupal\filter\FilterUninstallValidator;
+
+/**
+ * Remove filter preventing Php uninstall.
+ */
+class PhpUninstallValidator extends FilterUninstallValidator {
+
+  /**
+   * {@inheritdoc}
+   */
+  public function validate($module) {
+    $reasons = [];
+    if ($module == 'php') {
+      $this->removeFilterConfig();
+    }
+    return $reasons;
+  }
+
+  /**
+   * Deletes configuration.
+   */
+  protected function removeFilterConfig() {
+    $php_filter = \Drupal::configFactory()->getEditable('filter.format.php_code');
+    $php_filter->delete();
+
+    // Clear cache.
+    drupal_flush_all_caches();
+  }
+
+}