You are here

function swagger_ui_formatter_help in Swagger UI Field Formatter 8.3

Same name and namespace in other branches
  1. 8.2 swagger_ui_formatter.module \swagger_ui_formatter_help()

Implements hook_help().

File

./swagger_ui_formatter.module, line 81

Code

function swagger_ui_formatter_help(string $route_name, RouteMatchInterface $route_match) : string {
  $output = '';
  switch ($route_name) {
    case 'help.page.swagger_ui_formatter':
      $readme = file_get_contents(__DIR__ . '/README.md');

      // If the Markdown module is installed, use it to render the README.
      if ($readme && \Drupal::moduleHandler()
        ->moduleExists('markdown') === TRUE) {
        $filter_manager = \Drupal::service('plugin.manager.filter');
        $settings = \Drupal::configFactory()
          ->get('markdown.settings')
          ->getRawData();
        $filter = $filter_manager
          ->createInstance('markdown', [
          'settings' => $settings,
        ]);
        $output = $filter
          ->process($readme, 'en');
      }
      elseif ($readme) {
        $output = '<pre>' . $readme . '</pre>';
      }

      // Add a link to the Drupal.org project.
      $output .= '<p>';
      $output .= t('Visit the <a href=":project_link">project page</a> on Drupal.org for more information.', [
        ':project_link' => 'https://www.drupal.org/project/swagger_ui_formatter',
      ]);
      $output .= '</p>';
  }
  return $output;
}