summaryrefslogtreecommitdiff
path: root/includes
AgeCommit message (Collapse)AuthorFilesLines
2026-06-01Route PDF thumbnail regeneration through mime_pdf_thumbnail() via ImagickLester Caine1-0/+3
liberty_generate_thumbnails() has no PDF path without liberty_rasterize_pdf; mime_pdf_thumbnail() handles PDFs correctly via Imagick. Also pass attachment_id into fileHash so the sub-call to liberty_generate_thumbnails has context. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-01Guard null type in substr() call — PHP 8.x deprecationLester Caine1-1/+1
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-25Fisheye: fix video thumbnail regeneration and gateway timeoutLester Caine1-4/+7
- FisheyeImage::renderThumbnails: route video/* mime types through mime_video_create_thumbnail() instead of liberty_generate_thumbnails() which only handles images — fixes regeneration of existing stored videos - edit.php: send redirect before generateGalleryThumbnails() using fastcgi_finish_request() so the browser is released immediately and bulk thumbnail generation runs in background without nginx timeout Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-25Galleriffic: fix fancyzoom interference, add regenerate-thumbnails UILester Caine1-0/+1
- Add rel="nozoom" to all galleriffic thumb <a> links so FancyZoom's loading animation doesn't fire when selecting images in galleriffic - Add "Regenerate All Thumbnails" checkbox to edit_gallery.tpl (only shown for existing galleries) - Fix edit.php calling non-existent generateThumbnails() on a gallery object — corrected to generateGalleryThumbnails() - Add set_time_limit(0) inside generateGalleryThumbnails() so large galleries don't time out during thumbnail regeneration Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-24Ignore Sony DSC placeholder in EXIF ImageDescriptionLester Caine1-6/+9
Sony cameras write 'SONY DSC' (padded with spaces) into ImageDescription, which was being copied as the image title. Trim and skip this value so filename-derived titles are used instead. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-21Inherit parent gallery protector role when creating sub-galleries and ↵Lester Caine1-0/+9
uploading images New sub-galleries and uploaded images now inherit the protector role_id from their first parent gallery, matching the behaviour of comment inheritance in protector_comment_store(). Only applies when no explicit role is chosen (-1). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-21Fix prev/next image navigation: call loadCurrentImage and use getAll not ↵Lester Caine2-1/+4
getAssoc image_lookup_inc.php was never calling loadCurrentImage() so previous/next image IDs were never populated. Also fixed loadCurrentImage to use getAll() instead of getAssoc() — getAssoc keys by first column so numeric $rows[$i] indexing always failed to find the current image. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-21Fix breadcrumb depth: remove premature gallery_path assignment that bypassed ↵Lester Caine1-3/+0
ancestor walk gallery_lookup_inc.php was setting gallery_path to just the immediate parent via getParentGalleries() before getBreadcrumbLinks() ran, causing it to skip the full iterative ancestor loop and only ever show one level. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-21Replace getParentGalleries loop with direct getRow ancestor walkLester Caine1-25/+15
Drop all dependency on getParentGalleries result parsing (fg.* column casing, associative key detection). Use a single simple getRow per level with explicit lowercase aliases (gid, cid, gtitle) so Firebird column name casing can't interfere. Walks up to 10 levels and builds $ret directly. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-21Fix ancestor walk: use is_numeric key check and direct content_id lookupLester Caine1-2/+5
Replaced isset($galleryData['content_id']) with is_numeric($galleryId) to identify parent gallery entries regardless of column name casing in the getAssoc result. content_id is now fetched via a direct query so the loop reliably advances up the hierarchy to the root. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-21Fix breadcrumb hierarchy walk: populate ret directly, skip cross-join verifyLester Caine1-1/+11
When gallery_path is not in the URL (pretty_urls), the fallback now builds $ret directly from per-gallery title lookups instead of relying on the complex multi-table cross-join verify query, which fails silently for paths longer than one level. The complex query is still used when gallery_path arrives via URL. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-21Fix breadcrumb depth and dedup nav across gallery viewsLester Caine1-3/+20
getBreadcrumbLinks now walks the full gallery hierarchy recursively instead of only one level up, so deep paths like Projects > Cadogan Gardens > Source Material appear in full. Inline nav blocks in galleriffic, simple_list and auto_flow replaced with gallery_nav.tpl include (matching fixed_grid). User/Galleries editor link in gallery_nav.tpl now guarded by hasUpdatePermission. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-21Separate pagination counts per gallery style; make galleriffic numThumbs ↵Lester Caine1-4/+8
configurable - rows_per_page/cols_per_page (DB) used only by fixed_grid - total_per_page preference used by auto_flow, simple_list, matteo — shown as one shared field with the style-appropriate label; falls back to old rows_per_page for migration - galleriffic_num_thumbs preference replaces hardcoded numThumbs:30 in JS templates - JS disables hidden style-div inputs on load and switch so only the active style submits Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-21Fix images_per_page for galleriffic pagination to match JS numThumbs:30Lester Caine1-1/+4
Galleriffic JS hardcodes numThumbs:30 in both gallery templates, so the images_per_page used for image_order.tpl page-break dividers must also be 30 rather than cols_per_page * rows_per_page. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-14php-cs-fixer tidies to php8.5 standardsLester Caine7-143/+121
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-08isLocked should not apply to fisheye objects but liberty generic handling ↵lsces1-0/+11
hits it so we need to handle it
2026-04-16Still need some work on the different gallery styles, but this sorts the ↵lsces1-2/+2
right number of images per page calculation
2026-04-16Get the right number of images per pagelsces1-1/+1
2026-04-06Tidying links to bitweaver.org to avoid redirect from httplsces2-2/+2
2026-03-27This has obviously been a problem for some time, query respects the number ↵lsces1-1/+1
of records filtering, getAssoc does not
2026-03-26Tidy confusion between empty string and null defaultslsces1-13/+16
2026-03-26Ensure temporary file is readablelsces1-4/+6
2026-03-26Namespace correctionslsces2-6/+6
2025-08-28Extra code updated to PHP8.4 and namespace ... work in progress on updating ↵lsces6-135/+122
some third party code
2025-08-28Classes code updated to PHP8.4 and namespace ... work in progress on ↵lsces4-483/+526
updating some third party code
2025-05-18is_a LibertyContent on fisheye_handle_uploadspiderr1-1/+3
2024-03-18add pRequest to fisheye_handle_upload; cleanup some upload ↵spiderr2-11/+16
gallery_additions; tidy GetRow to avoid null results processing FisheyeGallery
2022-07-30migrate from font-awesome 3.2.1 icon- to 6.1.2 fa-spiderr1-1/+1
2021-02-26fix return value on FisheyeGallery::load as !empty( mInfo )spiderr1-1/+1
2021-02-18empty preview_content checkspiderr1-1/+1
2021-02-13update package_path in bit_setup_incspiderr1-1/+1
2021-02-13move bit_setup_inc.php to includes/modela bitweaver1-0/+48
2021-02-08is_array check on pGalleryIdspiderr1-1/+1
2021-02-06fix default gallery additionsspiderr1-12/+15
2021-02-03clean up static LibertyMime::getStorage* calls with liberty_mime_get_storage_*spiderr1-1/+1
2021-02-02move _inc and classes to includes/classes and use PKG_CLASS/INCLUDE_PATH ↵modela bitweaver9-0/+3154
constants