wbx / file-bundle
file upload
Installs: 1 934
Dependents: 0
Suggesters: 0
Security: 0
Stars: 10
Watchers: 2
Forks: 2
Open Issues: 0
Type:symfony-bundle
Requires
- php: >=5.3.2
- symfony/framework-bundle: >=3.4
Suggests
This package is auto-updated.
Last update: 2024-10-24 21:33:15 UTC
README
wbxFileBundle ============= a Symfony2 Bundle to handle file upload Installation ============ Bring in the vendor libraries ----------------------------- This can be done in two different ways: **Method #1**) Use composer "require": { "wbx/file-bundle": "*" } **Method #2**) Use deps file [wbxFileBundle] git=http://github.com/ma2thieu/wbxFileBundle.git target=bundles/wbx/FileBundle **Method #3**) Use git submodules git submodule add git://github.com/ma2thieu/wbxFileBundle.git vendor/bundles/wbx/FileBundle Register the wbxFileBundle namespaces (Not required for composer!) ------------------------------------------------------------------ // app/autoload.php $loader->registerNamespaces(array( 'wbx' => __DIR__.'/../vendor/bundles', // your other namespaces )); Add wbxFileBundle to your application kernel -------------------------------------------- // app/AppKernel.php public function registerBundles() { return array( // ... new wbx\FileBundle\wbxFileBundle(), // ... ); } Usage example ============= Entity ------ # /src/my/Bundle/Entity/File.php namespace my\Bundle\Entity; use wbx\FileBundle\Entity\File as wbxFile; /** * wbx\CoreBundle\Entity\File * * @Orm\Entity() * @ORM\Table() */ class File extends wbxFile { } # /src/my/Bundle/Entity/Object.php /** * @var \my\Bundle\Entity\File $file * * @ORM\ManyToOne(targetEntity="\my\Bundle\Entity\File", cascade={"all"}) * @ORM\JoinColumn(name="file_id", referencedColumnName="id") */ private $file; $mask_path can be used to point to a bitmap file that will be used as a mask. the image will be resized and cropped to the mask dimensions (only work with imagick extension) Form ---- $builder ->add('file', new \wbx\FileBundle\Form\FileType($with_empty, $with_name)) * $with_empty (true|false) : display or not the "empty" checkbox to remove the uploaded file * $with_name (true|false) : display or not the "name" field. Name default to the uploaded filename * If the php imagick extension is available it is used to create a png preview of uploaded pdf files. $file->getWebPath() will automatically return the preview file. View ---- {% include 'wbxFileBundle:File:embed.html.twig' with { 'form' : edit_form.image, 'class' : "myBundle:File", 'imagine_filter' : "my_thumb_filter" } %} * `form` is mandatory * `class` is mandatory (used for the download link) * `imagine_filter` is optional: if set the bundle [LiipImagineBundle](http://github.com/liip/LiipImagineBundle) is needed and the value of `imagine_filter` will be used as a the name of the Imagine filter to be called to create and display a thumbnail of the picture. If `imagine_filter` is not defined or == "" a link to the file will be displayed