Repository navigation
ezmultiupload 6.1.0: the new upload page
The upload page is new in admin4, admin4l and adminui; the classic design/admin keeps the 6.0 page, which works
with the same server. Guide: doc/upload-page.md.
- Added: The page in the frame of the content action pages (box header, box content, control bar with the main
action first) with the administration's shared controls; light and dark mode. - Added: The target location with its path; Change location... opens a location picker; a queue row can have a
location of its own; the last location is the eZPreferenceexp_multiupload_location. - Added: Files, folders, drag and drop and pasted images; per file a preview, the class it becomes, an editable
title, the alternative text of an image (required where the class asks), progress and status; cancel, retry and
remove per row and for all; three uploads at a time; a summary toast. - Added: Checks before anything is sent (
ezmultiupload/service, Action=check): the create permission for the class
in the location, the type list, the size limit (newMaxFileSize=64Mand PHP's limits), the alternative text, and
a file of the same name and size already there (skip, rename or upload anyway). - Added: Keep as drafts; after the upload view and edit links, and Move to..., Add location... and
Remove... (to the trash, confirmed) through the kernel's content operations and their permission checks. - Added: Import compressed zip file(s) contents (off by default, eZPreference
exp_multiupload_zip_import; off, a
ZIP file is one File item): the entries are listed, can be unticked, and are imported with the folders kept as
folder items or flattened (eZPreferenceexp_multiupload_zip_mode). - Added:
expMultiuploadZipImporter, a ZIP import backend withinspect(),extract()andcleanup(): entries by
content type and class, nested ZIP files toMaxDepth, unsafe paths, links, devices, encrypted entries, ZIP bombs
and disallowed types skipped with a reason, extraction with a byte budget into a private directory per call;
[ZipSettings]gainsMaxFileSize,AllowedMIMETypes[]andDeniedExtensions[](seedoc/upload-page.md,
"ZIP import"). - Added: SVG images in galleries (
*.svg,*.svgz), sanitized by the kernel, previewed from the stored file. - Added:
expMultiuploadService::canUploadAt(), one check whether the current user can upload at a node. - Updated: "Upload multiple files" in the content tree works on every container (new
AnyContainer=enabled); it used
to end in the kernel's "object is not available" error on any location that is not a folder or gallery. A location
that cannot take files shows the reason and offers the nearest one above.AnyContainer=disabledkeeps the 6.0 rule. - Updated: Every request that changes something is a POST with the session's form token (checked again in constant
time), never accepted from another site; node ids are positive integers only. - Updated: English and German texts for the new page.