class OgAdminRoutesController in Organic groups 8
The OG admin routes controller.
Hierarchy
- class \Drupal\Core\Controller\ControllerBase implements ContainerInjectionInterface uses LoggerChannelTrait, MessengerTrait, LinkGeneratorTrait, RedirectDestinationTrait, UrlGeneratorTrait, StringTranslationTrait
- class \Drupal\og\Controller\OgAdminRoutesController
Expanded class hierarchy of OgAdminRoutesController
1 file declares its use of OgAdminRoutesController
- OgAdminRoutesControllerTest.php in tests/
src/ Unit/ OgAdminRoutesControllerTest.php
File
- src/
Controller/ OgAdminRoutesController.php, line 19
Namespace
Drupal\og\ControllerView source
class OgAdminRoutesController extends ControllerBase {
/**
* The event dispatcher service.
*
* @var \Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher
*/
protected $eventDispatcher;
/**
* The access manager service.
*
* @var \Drupal\Core\Access\AccessManagerInterface
*/
protected $accessManager;
/**
* Constructs an OgAdminController object.
*
* @param \Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher $event_dispatcher
* The event dispatcher service.
* @param \Drupal\Core\Access\AccessManagerInterface $access_manager
* The access manager service.
*/
public function __construct(ContainerAwareEventDispatcher $event_dispatcher, AccessManagerInterface $access_manager) {
$this->eventDispatcher = $event_dispatcher;
$this->accessManager = $access_manager;
}
/**
* {@inheritdoc}
*/
public static function create(ContainerInterface $container) {
return new static($container
->get('event_dispatcher'), $container
->get('access_manager'));
}
/**
* Show all the available admin routes.
*
* @param \Drupal\Core\Routing\RouteMatchInterface $route_match
* The route match service.
*
* @return array
* List of available admin routes for the current group.
*/
public function overview(RouteMatchInterface $route_match) {
$parameter_name = $route_match
->getRouteObject()
->getOption('_og_entity_type_id');
/** @var \Drupal\Core\Entity\EntityInterface $group */
$group = $route_match
->getParameter($parameter_name);
$entity_type_id = $group
->getEntityTypeId();
// Get list from routes.
$content = [];
$event = new OgAdminRoutesEvent();
$event = $this->eventDispatcher
->dispatch(OgAdminRoutesEventInterface::EVENT_NAME, $event);
foreach ($event
->getRoutes($entity_type_id) as $name => $info) {
$route_name = "entity.{$entity_type_id}.og_admin_routes.{$name}";
$parameters = [
$entity_type_id => $group
->id(),
];
// We don't use Url::fromRoute() here for the access check, as it will
// prevent us from unit testing this method.
if (!$this->accessManager
->checkNamedRoute($route_name, $parameters)) {
// User doesn't have access to the route.
continue;
}
$content[$name]['title'] = $info['title'];
$content[$name]['description'] = $info['description'];
$content[$name]['url'] = Url::fromRoute($route_name, $parameters);
}
if (!$content) {
return [
'#markup' => $this
->t('You do not have any administrative items.'),
];
}
return [
'og_admin_routes' => [
'#theme' => 'admin_block_content',
'#content' => $content,
],
];
}
}
Members
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
ControllerBase:: |
protected | property | The configuration factory. | |
ControllerBase:: |
protected | property | The current user service. | 1 |
ControllerBase:: |
protected | property | The entity form builder. | |
ControllerBase:: |
protected | property | The entity manager. | |
ControllerBase:: |
protected | property | The entity type manager. | |
ControllerBase:: |
protected | property | The form builder. | 2 |
ControllerBase:: |
protected | property | The key-value storage. | 1 |
ControllerBase:: |
protected | property | The language manager. | 1 |
ControllerBase:: |
protected | property | The module handler. | 2 |
ControllerBase:: |
protected | property | The state service. | |
ControllerBase:: |
protected | function | Returns the requested cache bin. | |
ControllerBase:: |
protected | function | Retrieves a configuration object. | |
ControllerBase:: |
private | function | Returns the service container. | |
ControllerBase:: |
protected | function | Returns the current user. | 1 |
ControllerBase:: |
protected | function | Retrieves the entity form builder. | |
ControllerBase:: |
protected | function | Retrieves the entity manager service. | |
ControllerBase:: |
protected | function | Retrieves the entity type manager. | |
ControllerBase:: |
protected | function | Returns the form builder service. | 2 |
ControllerBase:: |
protected | function | Returns a key/value storage collection. | 1 |
ControllerBase:: |
protected | function | Returns the language manager service. | 1 |
ControllerBase:: |
protected | function | Returns the module handler. | 2 |
ControllerBase:: |
protected | function |
Returns a redirect response object for the specified route. Overrides UrlGeneratorTrait:: |
|
ControllerBase:: |
protected | function | Returns the state storage service. | |
LinkGeneratorTrait:: |
protected | property | The link generator. | 1 |
LinkGeneratorTrait:: |
protected | function | Returns the link generator. | |
LinkGeneratorTrait:: |
protected | function | Renders a link to a route given a route name and its parameters. | |
LinkGeneratorTrait:: |
public | function | Sets the link generator service. | |
LoggerChannelTrait:: |
protected | property | The logger channel factory service. | |
LoggerChannelTrait:: |
protected | function | Gets the logger for a specific channel. | |
LoggerChannelTrait:: |
public | function | Injects the logger channel factory. | |
MessengerTrait:: |
protected | property | The messenger. | 29 |
MessengerTrait:: |
public | function | Gets the messenger. | 29 |
MessengerTrait:: |
public | function | Sets the messenger. | |
OgAdminRoutesController:: |
protected | property | The access manager service. | |
OgAdminRoutesController:: |
protected | property | The event dispatcher service. | |
OgAdminRoutesController:: |
public static | function |
Instantiates a new instance of this class. Overrides ControllerBase:: |
|
OgAdminRoutesController:: |
public | function | Show all the available admin routes. | |
OgAdminRoutesController:: |
public | function | Constructs an OgAdminController object. | |
RedirectDestinationTrait:: |
protected | property | The redirect destination service. | 1 |
RedirectDestinationTrait:: |
protected | function | Prepares a 'destination' URL query parameter for use with \Drupal\Core\Url. | |
RedirectDestinationTrait:: |
protected | function | Returns the redirect destination service. | |
RedirectDestinationTrait:: |
public | function | Sets the redirect destination service. | |
StringTranslationTrait:: |
protected | property | The string translation service. | 1 |
StringTranslationTrait:: |
protected | function | Formats a string containing a count of items. | |
StringTranslationTrait:: |
protected | function | Returns the number of plurals supported by a given language. | |
StringTranslationTrait:: |
protected | function | Gets the string translation service. | |
StringTranslationTrait:: |
public | function | Sets the string translation service to use. | 2 |
StringTranslationTrait:: |
protected | function | Translates a string to the current language or to a given language. | |
UrlGeneratorTrait:: |
protected | property | The url generator. | |
UrlGeneratorTrait:: |
protected | function | Returns the URL generator service. | |
UrlGeneratorTrait:: |
public | function | Sets the URL generator service. | |
UrlGeneratorTrait:: |
protected | function | Generates a URL or path for a specific route based on the given parameters. |