Example #1
0
 /**
  * @param int    $tagId
  * @param string $tagName
  *
  * @throws \Illuminate\Database\Eloquent\ModelNotFoundException
  *
  * @return \Illuminate\Contracts\View\View|\Illuminate\Http\RedirectResponse
  */
 public function viewAction(int $tagId, string $tagName)
 {
     $tag = $this->tagRepository->loadById($tagId);
     if ($tag->name !== $tagName) {
         return $this->responseFactory->redirectToRoute('tag.view', ['id' => $tag->id, $tag->name]);
     }
     return $this->viewFactory->make('customer.tag.view', compact('tag'));
 }
 /**
  * @param int    $productId
  * @param string $slug
  *
  * @throws \Symfony\Component\HttpKernel\Exception\NotFoundHttpException
  *
  * @return \Illuminate\Contracts\View\View|\Illuminate\Http\Response
  */
 public function viewAction(int $productId, string $slug)
 {
     $product = $this->productRepository->loadAlone($productId);
     if (!$product->id) {
         throw new NotFoundHttpException();
     }
     if ($product->slug !== $slug) {
         return $this->responseFactory->redirectToRoute('product::view', ['id' => $product->id, 'slug' => $product->slug], 301);
     }
     return $this->view->make('customer.product.view', ['product' => $this->view->getProduct($product), 'meta' => $this->view->productMeta($product), 'similar' => $this->view->similarProducts($product)]);
 }
Example #3
0
 /**
  * @param string $route
  * @param array  $parameters
  * @param int    $status
  * @param array  $headers
  *
  * @return \Illuminate\Http\RedirectResponse
  */
 public function redirect(string $route, array $parameters = [], int $status = 302, array $headers = [])
 {
     return $this->responseFactory->redirectToRoute($route, $parameters, $status, $headers);
 }