Skip to content
Snippets Groups Projects

Issue #3500178 - Add new page

4 files
+ 56
2
Compare changes
  • Side-by-side
  • Inline
Files
4
@@ -4,6 +4,7 @@ namespace Drupal\fapi_validation\Controller;
use Drupal\Core\Controller\ControllerBase;
use Drupal\fapi_validation\FapiValidationValidatorsManager;
use Drupal\fapi_validation\FapiValidationFiltersManager;
use Symfony\Component\DependencyInjection\ContainerInterface;
/**
@@ -18,14 +19,24 @@ class FapiValidationController extends ControllerBase {
*/
protected $validationManager;
/**
* Returns the plugin.manager.fapi_validation_filters service.
*
* @var \Drupal\Core\Entity\EntityTypeManagerInterface
*/
protected $filterManager;
/**
* Constructs a FapiValidationController object.
*
* @param \Drupal\fapi_validation\FapiValidationValidatorsManager $validation_manager
* * A plugin manager for Fapi Validation Validators Plugin.
* @param \Drupal\fapi_validation\FapiValidationFiltersManager $filter_manager
* A plugin manager for Fapi Validation Filters Plugin.
*/
public function __construct(FapiValidationValidatorsManager $validation_manager) {
public function __construct(FapiValidationValidatorsManager $validation_manager, FapiValidationFiltersManager $filter_manager) {
$this->validationManager = $validation_manager;
$this->filterManager = $filter_manager;
}
/**
@@ -33,7 +44,8 @@ class FapiValidationController extends ControllerBase {
*/
public static function create(ContainerInterface $container) {
return new static(
$container->get('plugin.manager.fapi_validation_validators')
$container->get('plugin.manager.fapi_validation_validators'),
$container->get('plugin.manager.fapi_validation_filters')
);
}
@@ -65,4 +77,32 @@ class FapiValidationController extends ControllerBase {
];
}
/**
* Show all filter plugins.
*/
public function filters() {
$header = [
['data' => $this->t('ID')],
['data' => $this->t('Label')],
['data' => $this->t('Description')],
['data' => $this->t('Provider')],
];
$rows = [];
foreach ($this->filterManager->getDefinitions() as $validation) {
$rows[] = [
$validation['id'],
$validation['label'] ?? '',
$validation['description'] ?? '',
$validation['provider'],
];
}
return [
'#theme' => 'table',
'#header' => $header,
'#rows' => $rows,
];
}
}
Loading