RedirectDestination::get

public RedirectDestination::get()

Gets the destination as a path.

To convert to a URL suitable for \Symfony\Component\HttpFoundation\RedirectResponse::__construct() use

\Drupal\Core\Url::fromUserInput(\Drupal::destination()->get())->setAbsolute()->toString()

Return value

string

Overrides RedirectDestinationInterface::get

File

core/lib/Drupal/Core/Routing/RedirectDestination.php, line 57

Class

RedirectDestination
Provides helpers for redirect destinations.

Namespace

Drupal\Core\Routing

Code

public function get() {
  if (!isset($this->destination)) {
    $query = $this->requestStack->getCurrentRequest()->query;
    if (UrlHelper::isExternal($query->get('destination'))) {
      $this->destination = '/';
    }
    elseif ($query->has('destination')) {
      $this->destination = $query->get('destination');
    }
    else {
      $this->destination = $this->urlGenerator->generateFromRoute('<current>', [], ['query' => UrlHelper::buildQuery(UrlHelper::filterQueryParameters($query->all()))]);
    }
  }

  return $this->destination;
}
doc_Drupal
2016-10-29 09:36:52
Comments
Leave a Comment

Please login to continue.