Same name and namespace in other branches
  1. 6.0.x src/EventSubscriber/ResponseSubscriber.php \Drupal\advagg\EventSubscriber\ResponseSubscriber::forceAbsolutePaths()
  2. 8.x-3.x src/EventSubscriber/ResponseSubscriber.php \Drupal\advagg\EventSubscriber\ResponseSubscriber::forceAbsolutePaths()
  3. 8.x-4.x src/EventSubscriber/ResponseSubscriber.php \Drupal\advagg\EventSubscriber\ResponseSubscriber::forceAbsolutePaths()

Force absolute paths.

Paramètres

\Symfony\Component\HttpKernel\Event\ResponseEvent $event: The response event object.

Fichier

src/EventSubscriber/ResponseSubscriber.php, line 80

Classe

ResponseSubscriber
Respond to event processes.

Namespace

Drupal\advagg\EventSubscriber

Code

public function forceAbsolutePaths(ResponseEvent $event) {
    // Skip if not enabled.
    if (!$this->config
        ->get('path.convert.absolute')) {
        return;
    }
    $response = $event->getResponse();
    // Only process Html Responses.
    if (!$response instanceof HtmlResponse) {
        return;
    }
    $content = $response->getContent();
    $pattern = '/(<script src="|url\\("|rel="stylesheet" href=")(\\/[a-zA-Z0-0].*")/';
    $response->setContent(preg_replace_callback($pattern, [
        $this,
        'forceAbsolutePathsCallback',
    ], $content));
}