Download the PHP package ondrs/upload-manager without Composer
On this page you can find all versions of the php package ondrs/upload-manager. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download ondrs/upload-manager
More information about ondrs/upload-manager
Files in ondrs/upload-manager
Package upload-manager
Short Description Upload manager for Nette framework
License MIT
Homepage http://ondraplsek.cz
Informations about the package upload-manager
Upload Manager
Upload manager for Nette framework
Installation
composer.json
"ondrs/upload-manager": "v8.0.0"
Configuration
Register the extension:
Minimal configuration:
Full configuration:
In most cases you want to choose the wwwDir
as your basePath
(and it is chosen by default) to make your files publicly accessible.
relativePath
is relative to the basePath
, so complete path where your files will be uploaded looks like this
dir
is an optional parameter and you can set it during the runtime of your script in the listen()
or in the upload()
method.
fileManager:
- blacklist
- array of files extensions which are blacklisted, php is by default
imageManager
-
maxSize
- maximum size of an image, if its bigger, it will be automatically resized to this size
- can be number X coord of an imahe
- or array [X, Y]
-
dimensions
- array of dimensions to which an image will be resized
-
format is
PREFIX
can be whatever you want, it will be added to a resized file:PREFIX_file.jpg
Y_SIZE
is optional as well asRESIZE_OPTION
RESIZE_OPTION
is set toImage::SHRINK_ONLY
by default
For example we will set the UploadManager according to the full configuration which is written above.
$this->upload->filesToDir('dir/path')
Uploading an image file foo.jpg
with size (1680 x 1050) will result in creation of 5 files: foo.jpg, 800_foo.jpg, 500_.jpg, 250_foo.jpg, thumb_foo.jpg
which will be saved in the %wwwDir%/uploads/super/dir
All files are resized proportionally according to their X dimension and saved with a corresponding prefix.
File foo.jpg is considered to be an original but it's resized to 1280px.
Usage
Inject ondrs\UploadManager\Upload
into your presenter or wherever you want
And do an upload.
If you want to upload just a single file (for example with a form) call the singleFileToDir()
method
Events
The real fun comes up with an events. They are here to help you to control and monitor your upload process with an ease.
-
onQueueBegin
- called before the upload starts
- accept one argument
- array of Nette\Http\FileUpload objects which will be uploaded
-
onQueueComplete
- called when the upload finish
- accept two arguments
- array of Nette\Http\FileUpload
- array of \SplFileInfo objects which were uploaded
-
onFileBegin
- called before the upload of each file
- accept two arguments
- Nette\Http\FileUpload
- dir which is constructed as
{relativePath}[/{dir}]
- onFileComplete
- called after the upload complete of each file
- accept three arguments
- Nette\Http\FileUpload object of the original file
- \SplFileInfo object of the uploaded file
- dir which is constructed as
{relativePath}[/{dir}]
Real world example
All versions of upload-manager with dependencies
ext-gd Version *
ext-intl Version *
ext-exif Version *
nette/bootstrap Version ^3.0
nette/di Version ^3.0
nette/finder Version ^v2.5|^3.0
nette/http Version ^3.0
nette/utils Version ^3.0
guzzlehttp/guzzle Version ~6.5.5