Code Coverage |
||||||||||
Classes and Traits |
Functions and Methods |
Lines |
||||||||
| Total | |
0.00% |
0 / 1 |
|
0.00% |
0 / 3 |
CRAP | |
0.00% |
0 / 14 |
| BatchNegotiator | |
0.00% |
0 / 1 |
|
0.00% |
0 / 3 |
42 | |
0.00% |
0 / 14 |
| __construct | |
0.00% |
0 / 1 |
2 | |
0.00% |
0 / 3 |
|||
| applies | |
0.00% |
0 / 1 |
2 | |
0.00% |
0 / 2 |
|||
| determineActiveTheme | |
0.00% |
0 / 1 |
20 | |
0.00% |
0 / 9 |
|||
| <?php | |
| /** | |
| * @file | |
| * Contains \Drupal\system\Theme\BatchNegotiator. | |
| */ | |
| namespace Drupal\system\Theme; | |
| use Drupal\Core\Batch\BatchStorageInterface; | |
| use Drupal\Core\Routing\RouteMatchInterface; | |
| use Drupal\Core\Theme\ThemeNegotiatorInterface; | |
| use Symfony\Component\HttpFoundation\RequestStack; | |
| /** | |
| * Sets the active theme for the batch page. | |
| */ | |
| class BatchNegotiator implements ThemeNegotiatorInterface { | |
| /** | |
| * The batch storage. | |
| * | |
| * @var \Drupal\Core\Batch\BatchStorageInterface | |
| */ | |
| protected $batchStorage; | |
| /** | |
| * The request stack. | |
| * | |
| * @var \Symfony\Component\HttpFoundation\RequestStack | |
| */ | |
| protected $requestStack; | |
| /** | |
| * Constructs a BatchNegotiator. | |
| * | |
| * @param \Drupal\Core\Batch\BatchStorageInterface $batch_storage | |
| * The batch storage. | |
| * @param \Symfony\Component\HttpFoundation\RequestStack $request_stack | |
| * The request stack used to retrieve the current request. | |
| */ | |
| public function __construct(BatchStorageInterface $batch_storage, RequestStack $request_stack) { | |
| $this->batchStorage = $batch_storage; | |
| $this->requestStack = $request_stack; | |
| } | |
| /** | |
| * {@inheritdoc} | |
| */ | |
| public function applies(RouteMatchInterface $route_match) { | |
| return $route_match->getRouteName() == 'system.batch_page'; | |
| } | |
| /** | |
| * {@inheritdoc} | |
| */ | |
| public function determineActiveTheme(RouteMatchInterface $route_match) { | |
| // Retrieve the current state of the batch. | |
| $request = $this->requestStack->getCurrentRequest(); | |
| $batch = &batch_get(); | |
| if (!$batch && $request->request->has('id')) { | |
| $batch = $this->batchStorage->load($request->request->get('id')); | |
| } | |
| // Use the same theme as the page that started the batch. | |
| if (!empty($batch['theme'])) { | |
| return $batch['theme']; | |
| } | |
| } | |
| } |