Overview.

Each file upload form field is linked to an Upload Type - a set of file upload rules and restrictions.

You can manage the Upload Types under "Administrator - Settings - Upload Types".


File Types.

Each Upload Type must be linked to a File Type that restricts file uploads by MIME type and extension.


File Number and Size Limits.

It is possible to limit the number of files and maximum file size user can upload for one upload field of the type. The file size limit must be specified in Megabytes.


Image Resizing and Mixed Uploads.

If the uploaded file is of JPEG, PNG or GIF File Type the script treats it as an image and creates three resized copies of the file on the server - Small, Medium and Large.

There are three image resize types available for each size:

"Auto Crop" - performs automatic cropping based on the Upload Type aspect ratio.

"Manual Crop" - enables the JavaScript cropper to allow manual resize and cropping keeping the Upload Type aspect ratio.

"Fit Bounding Box" - resizes the image to fit the rectangle. The rectangle size is based on the width and height for each image size setting.

The Upload Type aspect ratio is determined by the cropbox's width and height settings and is used to calculate the size of the cropped image and may affect the height of the resulting image.

For example, if you have the cropbox size set to 800x600px (4:3) and the Large image size set to 1024x900px the script will recalculate the height of the Large Image and change it to 768px (1024 / 4 * 3) using the Large image width and the cropbox aspect ratio (4:3).

It is possible to set the quality of the generated image for each size. The default setting of 95% is a good compromise between image quality and file size.

If the uploaded file is not an image the script will generate a preview thumbnail using width and height of the Small size.


Watermarks.

It is possible to add a watermark to the images of the Large size generated by the Upload Type. You have to specify the watermark PNG image file name that must be manually uploaded to the /app/Storage/Watermark directory.