/** * Gets the browser path for the image and filter to apply. * * @return string The public path. */ public function asset($object, $field) { $params = func_get_args(); if ('vich_uploader' === $this->getUploadManager()) { // Note: requires v0.13.0 or higher $ext = new \Vich\UploaderBundle\Twig\Extension\UploaderExtension($this->container->get('vich_uploader.templating.helper.uploader_helper')); return call_user_func_array(array($ext, "asset"), $params); } // In case no upload manager is used we expect object to have // a special method returning file's path $getter = "get" . Container::Camelize($field) . "WebPath"; return $object->{$getter}(); }
/** * Gets the browser path for the image and filter to apply. * * @return string The public path. */ public function asset($object, $field) { $params = func_get_args(); if ('vich_uploader' === $this->getUploadManager()) { $ext = new \Vich\UploaderBundle\Twig\Extension\UploaderExtension($this->container->get('vich_uploader.templating.helper.uploader_helper')); // Overwrite the fieldname with the needed mappingname by Vich $params[1] = $this->container->get('vich_uploader.property_mapping_factory')->fromField($object, $field)->getMappingName(); return call_user_func_array(array($ext, "asset"), $params); } // In case no upload manager is used we expect object to have // a special method returning file's path $getter = "get" . Container::Camelize($field) . "WebPath"; return $object->{$getter}(); }