summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2026-05-25Add generic xref record templates and sub-template rendering to libertyLester Caine10-24/+251
list_xref.tpl now uses 7-column layout (Type/Link/Key/Value/Date/Updated/ Edit) and delegates row rendering to view_xref_{template}_record.tpl, matching the template name stored in liberty_xref_source. Eight generic record templates added (text, contact, phone, address, date, bank, sig, locate) using hasUpdatePermission()/hasExpungePermission() throughout. edit_xref.php gains expunge/stepXref handling for Delete and Restore actions, with permission checks scoped per action branch. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-25list_xref: fix icon, add allow_add guard, remove debug commentLester Caine1-2/+2
Use icon-note-add to match contact package. Add button now requires allow_add=true (passed by edit templates only), isValid(), and hasUpdatePermission() — so it never appears on view pages or new content. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-25Add generic xref controllers and templates to libertyLester Caine5-0/+239
Moves add/edit xref pages out of stock into liberty so any content type can use them. list_xref.tpl uses hasUpdatePermission() instead of a stock-specific permission check. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-25mime.video: fix update returning false when no new uploadlive-2026-05-25Lester Caine1-1/+1
mime_video_update defaulted $ret=false and only set it true when a new file was uploaded or aspect meta was present. Saving an image edit page with an existing video attachment and no new upload always triggered "There was a problem updating the file settings". Changed default to true to match mime_image_update which does the same. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-25mime.video: drop hardcoded 60s offset, use default throughoutLester Caine1-2/+2
Store and update paths were explicitly passing 60s offset to mime_video_create_thumbnail — clips shorter than that would cause the ffmpeg fallback to seek past end-of-file and produce nothing. Now all call sites use the 5s default set in the previous commit. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-25mime.video: add timeout guards and fix short-video offsetLester Caine1-6/+5
- Wrap ffmpegthumbnailer and ffmpeg shell_exec calls with timeout 60 so a hung process doesn't stall gallery-level thumbnail regeneration - Drop $pOffset default from 60s to 5s so the ffmpeg fallback works for clips shorter than one minute Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-22Add generic xref group/source admin pages to libertyLester Caine6-0/+397
LibertyXrefType: add getContentTypeGuids() and getGroupList() static methods. New admin pages with package filter (session-persisted content_type_guid dropdown): admin_xref_groups.php manages liberty_xref_type rows; admin_xref_sources.php manages liberty_xref_source rows. Both support add and delete (delete guarded by entry/source count). Wired into menu_liberty_admin.tpl as Xref Groups / Xref Sources links. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-22Add generic xref methods to LibertyContentLester Caine1-0/+217
Moves xref handling up from Contact so any LibertyContent subclass can use liberty_xref_type/source/xref tables scoped to its own content_type_guid. Added: getXrefGroupList, getXrefSourceList, getXrefTypeList, getXrefFormatList, loadXrefTypeList (uses protected $mXrefTypeKey, default 'xref_types'), loadXrefList, loadXref, storeXref, stepXref. loadXref/storeXref/stepXref use LibertyXref directly with mContentTypeGuid set before load. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-22Add mContentTypeGuid scoping to LibertyXref for multi-package isolationLester Caine2-7/+12
LibertyXref gains a $mContentTypeGuid property (default empty) used to filter the liberty_xref_source JOIN in load() and the multi-check in verify(). Subclasses set it to scope queries to their content type without duplicating any logic. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-22Add liberty_xref package-agnostic cross-reference mechanismLester Caine4-0/+333
New tables: liberty_xref_type (text PK, package, sort_order), liberty_xref_source (package column for direct equality filtering), liberty_xref (data rows keyed by content_id, works for any package). Sequence liberty_xref_seq and indices on content_id and package columns. LibertyXref and LibertyXrefType classes provide the full store/load/step mechanism. Contact and stock register their own source types against the shared tables. Upgrade script 5.0.1.php creates the tables on existing installs. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-21Replace broken video.js player with native HTML5 video elementLester Caine1-9/+3
video.js was loading from the unbuilt source directory and required Flash-era IE workarounds no longer needed. Native <video> with controls handles playback in all modern browsers. MIME type now taken from attachment data rather than hardcoded as video/mp4. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-21Clean up temp pdftotext .txt file after text extractionLester Caine1-0/+1
The extracted .txt file was left in the upload directory after file_get_contents(). Added unlink() to remove it immediately. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-21Replace dead magick CLI call in mime_pdf_thumbnail with PHP imagickLester Caine1-34/+35
shell_exec('which magick') was dead since magick CLI was removed in favour of the PHP imagick extension. Rewritten to use \Imagick directly to rasterise the first page of a PDF to JPEG before passing to liberty_generate_thumbnails. Thumbnail sizes now inherited from global $gThumbSizes via liberty_generate_thumbnails rather than hardcoded. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-21Fix addHit() race condition and stuck Firebird transactionLester Caine1-10/+8
Replaced SELECT-then-INSERT/UPDATE with UPDATE-first pattern: attempt UPDATE and only INSERT if zero rows were affected. Eliminates the race window where two concurrent requests both see no row and both try to INSERT, which left an uncommitted Firebird transaction blocking reads. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-18getLibertySql was never completed so roll back to the working getServicesSql ↵Lester Caine1-2/+1
functionality Used by blogs to pass extra info to search package
2026-05-18Tidy install process handling following other changesLester Caine1-4/+14
Missed from BIT_INSTALL fixes
2026-05-18Tidy ckeditor to allow browser based spellcheck and retire other optionsLester Caine1-1/+1
2026-05-18Rework javascript to remove MochiKit and simplify to jqueryLester Caine2-181/+140
2026-05-18Remove swf based fallbacks since they no longer existLester Caine4-83/+15
2026-05-16Phantom ; removedLester Caine1-4/+3
2026-05-16Remove echo from (()) title change when more than one linkLester Caine1-27/+10
2026-05-16Fix bug in replacing (()) entires after page title changeLester Caine1-4/+4
2026-05-16Fix parseData corruption of raw 'data' elementLester Caine1-2/+3
2026-05-16Move plugins to correct namespaceLester Caine5-6/+18
2026-05-15Remove unused group model codeLester Caine6-215/+8
2026-05-15Further trimming of role_model selectionLester Caine2-23/+10
2026-05-15Namespace fixesLester Caine8-18/+24
2026-05-15To simplyfy maintenence BitUser classes have been retired and active code ↵Lester Caine2-70/+16
base defaulted to ROLE_MODEL reducing complexity in LibertyContent
2026-05-15Drop obsolite swf usage, is the preload function actually needed nowLester Caine2-2/+0
2026-05-15Move template javascript to themes ? as to if it should be in libertyLester Caine2-3/+2
2026-05-15Move acisortable to package used in structure_editLester Caine4-2/+960
2026-05-14Move getid3 to external labraries managementLester Caine1-4/+4
2026-05-14Magickwand has been retired as it;s functions are now part of imagickLester Caine2-226/+0
2026-05-14Move htmlpurifier to external labraries managementLester Caine1-1/+1
2026-05-14Move markdown library into the relevant package for easier maintenanceLester Caine2-1/+1692
2026-05-14php-cs-fixer tidies to php8.5 standardsLester Caine284-461/+424
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-10Use BIT_INSTALL to block database access until database has been populatedLester Caine1-1/+1
2026-05-09Display in view rather than download, allows fancyzoom on imagesV5-php84Lester Caine1-1/+1
2026-05-08pearwiki is currently untested and relies on pre php8 code so diable for nowlsces1-0/+0
2026-05-08Add default when no user active (PHP8)lsces1-1/+1
2026-04-19Short array style tweak and missing use elementlsces2-4/+5
2026-04-16Style tidies for PHP8.4lsces6-32/+35
2026-04-16auto_activate needs to refelect the selected memory model and the extended ↵lsces1-12/+19
protection to private content has been cloned from protector package
2026-04-16Default to bithtml on new installlsces2-2/+2
2026-04-16Default to html on new installlsces2-13/+6
2026-04-06Tidying links to bitweaver.org to avoid redirect from httplsces7-7/+7
2026-04-06Tidy a default setting holelsces1-0/+3
2026-04-05extra default removedlsces1-1/+1
2026-04-05Revert disable on services template and fix a rogue $smart which was missing ↵lsces2-2/+2
the final y
2026-04-05Flash has been removed and videos are handled via video.js librarylsces1-1/+1