Thumbnail ========= General ======= * Thumbnails are created by special column name '_thumbnail'. * The given parameter controls size and secure/public access mode. * The thumbnails are stored in a public available directory or in a access protected directory. Both directories are central configured in config.qfq.ini. * The column '_thumbnail' checks if the thumbnail already exist or if it has to be created first. * Cleaning the thumbnail directory is fine at any time. The next page reload will recreate any needed thumbs. * The thumbnail filename is a MD5 hash of the original pathFilename. To detect any modified source, the timestamp of source has to be older than of the thumbnail. * SVG files will be rendered by 'inkscape'. * All other file formats are rendered by GraphicsMagick 'convert'. * The rendering process starts the rendering in the background. Therefore QFQ returns quickly, even for several new thumbnails. * Secured thumbnails will detect if there is a rendering process pending: before the rendering starts, the thumbnail will be created as an empty file. Public thumbnails are not protected. The client has to reload the page. Secured by SIP -------------- Thumbnails might contain sensitive data and needs to be protected by SIP. QFQ / report generates a `<img src="api/download.php?s=...">` HTML tag. If a thumbnail file is empty, `api/download.php` will wait up to ten seconds and than returning a 404. Public ------ Saved in a public readable directory, referenced like `<img src="<public dir>/<hash>.png">` How to use thumbnails ===================== Report column '_thumbnail' -------------------------- Secure: `SELECT 'T:<pathFilename>|[W:[<width>][x<Height>]]' AS _thumbnail` >> <img src="api/thumbnail.php?s=badcaffee1234"> Public: `SELECT 's:0|T:<pathFilename>|[W:[<width>][x<Height>]]' AS _thumbnail` >> <img src="<public dir>/<hash>.png"> Report column '_link' --------------------- Part of a '_link' definition. Secure or Public access is equal to the link itself. Form ---- Inside of a form with the new feature #5422 {{COLUMN '...' AS _thumbnail}} Workflow -------- Report creates a SIP: