Version 1
[yaffs-website] / web / core / modules / system / tests / modules / update_script_test / src / Controller / UpdateScriptTestController.php
diff --git a/web/core/modules/system/tests/modules/update_script_test/src/Controller/UpdateScriptTestController.php b/web/core/modules/system/tests/modules/update_script_test/src/Controller/UpdateScriptTestController.php
new file mode 100644 (file)
index 0000000..e1c21c2
--- /dev/null
@@ -0,0 +1,31 @@
+<?php
+
+namespace Drupal\update_script_test\Controller;
+
+use Drupal\Core\Controller\ControllerBase;
+use Drupal\Core\Url;
+use Symfony\Component\HttpFoundation\Request;
+
+/**
+ * Controller routines for update_script_test routes.
+ */
+class UpdateScriptTestController extends ControllerBase {
+
+  /**
+   * Outputs a link to the database updates URL.
+   */
+  public function databaseUpdatesMenuItem(Request $request) {
+    // @todo Simplify with https://www.drupal.org/node/2548095
+    $base_url = str_replace('/update.php', '', $request->getBaseUrl());
+    $url = (new Url('system.db_update'))->setOption('base_url', $base_url);
+    $build['main'] = [
+      '#type' => 'link',
+      '#title' => $this->t('Run database updates'),
+      '#url' => $url,
+      '#access' => $url->access($this->currentUser()),
+    ];
+
+    return $build;
+  }
+
+}