/** * Process a single asset. * * @param FileAssetInterface $asset * @param Request $request * @param Response $response */ protected function processAsset(FileAssetInterface $asset, Request $request, Response $response) { if ($asset->getZone() !== Zone::get($request)) { return; } elseif ($asset->isLate()) { if ($asset->getLocation() === null) { $location = Target::END_OF_BODY; } else { $location = $asset->getLocation(); } } elseif ($asset->getLocation() !== null) { $location = $asset->getLocation(); } else { $location = Target::END_OF_HEAD; } $this->injector->inject($asset, $location, $response); }
/** * Process a single asset. * * @param FileAssetInterface $asset * @param Request $request * @param Response $response */ protected function processAsset(FileAssetInterface $asset, Request $request, Response $response) { if ($asset->getZone() !== Zone::get($request)) { return; } elseif ($asset->isLate()) { $this->injector->inject($asset, Target::END_OF_BODY, $response); } elseif ($asset->getType() === 'stylesheet') { $this->injector->inject($asset, Target::BEFORE_CSS, $response); } elseif ($asset->getType() === 'javascript') { $this->injector->inject($asset, Target::AFTER_JS, $response); } }
/** * Process the JavaScript asset queue. * * @param FileAssetInterface $asset * @param string $html * * @return string */ protected function processJsAssets(FileAssetInterface $asset, $html) { if ($asset->isLate()) { return $this->injector->inject($asset, Target::END_OF_BODY, $html); } else { return $this->injector->inject($asset, Target::AFTER_JS, $html); } }