public function viewAction($reference)
{
/** @var OrderInterface $order */
$order = $this->getOrderManager()->findOneBy(array('reference' => $reference));
if (null === $order) {
throw new AccessDeniedException();
}
$this->checkAccess($order->getCustomer());
$this->get('sonata.seo.page')->setTitle($this->get('translator')->trans('order_view_title', array(), 'SonataOrderBundle'));
/** @var OrderElementInterface $element */
foreach ($order->getOrderElements() as $element) {
$provider = $this->get('sonata.product.pool')->getProvider($element->getProductType());
$element->setProduct($provider->getProductFromRaw($element, $this->get('sonata.product.pool')->getManager($element->getProductType())->getClass()));
}
return $this->render('SonataOrderBundle:Order:view.html.twig', array('order' => $order, 'breadcrumb_context' => 'user_order'));
}