CMSB v3.82 Beta (Improved UI, Menu Count Badges, & .env support)

16 posts by 4 authors in: Forums > CMS Builder
Last Post: Yesterday at 9:54pm   (RSS)

Hi All, 

We've just released beta 4 here: https://interactivetools.com/download/

It has the following updates since beta 2: 

Changes from v3.82 Beta 2 (build 3012) to Beta 4 (build 3016)

Bug Fixes

- Developer Console > Shell: Fixed directory browser popup not working on servers with open_basedir restrictions (added @ error suppression to is_dir() check)
- Viewer Functions: Fixed "Undefined array key" warnings for listPageOrder and _filenameFields when accessing schemas missing these keys
- Image Processing: Fixed Imagick error handling - now gracefully falls back to GD when Imagick can't open a file (wrapped in try/catch for ImagickException)
- Plugin Names: Fixed display of plugin names containing <br> tags (now properly rendered in plugin list instead of escaped)
- Database Restore: Changed elapsed time display from "X seconds" to "M:SS" format for better readability
- Backup/Restore: Added @ error suppression for temp file cleanup to prevent warnings
- ZenDB Assert: Relaxed table/column name validation - now allows names starting with numbers (changed regex from ^[a-zA-Z_] to ^[\w-]+)
- Settings: Changed missing settings file error from throwing Exception to die() for cleaner error display
- Schema Functions: Fixed schema saving to only include list-page fields for multi/category menu types (not single or link types)
- Database Editor: Cast _indent to integer when saving to prevent type issues

Improvements

- Example Cron Plugin: Complete rewrite with improved documentation, and clearer usage instructions
- Image Functions: Added detailed docblock explaining JPEG EXIF orientation fix (what it does and why)
- Schema Functions: Added comprehensive docblock for saveSchema() explaining all processing steps
- Schema Functions: Now auto-removes menuOrder once table exists in menu cache (cleanup of temp placement data)

Send over any other issues you find, and/or we'll likely release this version mid-late next week.

Thanks!

Dave Edis - Senior Developer
interactivetools.com

Hey, Dave.

Beta 4 looks great from here!

~ Deborah

Hi Deborah, 

Okay, fantastic.  Thanks for checking things over.  Appreciate it!

Dave Edis - Senior Developer
interactivetools.com

Thanks Kenny, 

I've attached an updated version for v3.82 that includes that fix and fixes some other deprecated SmartArray code.

Dave Edis - Senior Developer
interactivetools.com
Attachments:

ai-exporter.php 17K

By Dave - Yesterday at 9:54pm - edited: Yesterday at 9:56pm

Hi All, 

We've just released the official v3.82 here:https://interactivetools.com/download/

It has the following updates since beta 4: 

Changes from v3.82 Beta 4 (build 3016) to Release (build 3021)

New Features

Independent Preview Button Controls

  • Split Preview into List and Modify controls: Previously Preview was a single checkbox that controlled both List Page and Modify Page buttons together.
  • Automatic upgrade: Existing schemas automatically migrate from the old _disablePreview flag, preserving your current preview button behavior.

Improvements

Upload Error Messages

  • Better upload failure diagnostics: Previously, upload failures showed generic "unknown error" messages on HTTP errors. Now shows specific HTTP error codes (403, 503, etc.) with helpful context.
  • ModSecurity detection: When ModSecurity or resource limits block uploads, you'll now see "HTTP 503 (Service Unavailable) - Upload blocked by ModSecurity or resource limit" instead of a cryptic error.
  • All upload errors now log detailed information to browser console for debugging.

PHP Configuration Files & Detection

  • Clearer documentation: Rewrote headers in .htaccess, .user.ini, and php.ini to better explain what each file does and when it's used.
  • More accurate .htaccess detection: Added multiple detection markers (HTTP_X_CMSB_HTACCESS and others) because we discovered .htaccess could be parsed even when PHP settings were being ignored.
  • Now correctly reports whether .htaccess is actually being used under Admin > General > Server Info > Web Server, and PHP.

Server Info Page (Admin > General > Server Info)

  • Better application stack visualization: Added "Control Panel" as its own section to show the full hosting stack: OS → Control Panel (cPanel, Plesk, etc.) → Web Server → PHP. Makes it easier to diagnose hosting-related issues.
  • Friendlier PHP Handler names: Now shows descriptive names from phpinfo() like "Apache 2.0 Handler" or "FPM/FastCGI" instead of technical abbreviations.
  • Recent Changes: Shows relative .env file path when setting changed to using those
  • Cleaned up display: removed "CMS Directory" line (not useful), fixed 4 unclosed <ul> tags.

Error Logging

  • Reduced noise: Filtered out CMSB_* diagnostic markers from error logs (these are only used for server detection, not needed in logs).
  • Fixed some false positives causing redaction patterns in logs when it wasn't needed

Developer Experience

  • Better missing vendor/ error messages: When vendor directory is missing (e.g., fresh git clone), now shows clear message: "vendor/ directory not found. Run: composer update"
  • Improved directory scanning error handling with clearer messages when directories are missing.

Code Quality

  • Reorganized and added comprehensive PHPDocs for upload functions (1,200+ lines of improved documentation).
  • Enhanced getRecords() PHPDoc: reorganized options into logical groups, clarified leftJoin syntax, improved examples.
  • Added type hints throughout.
  • Updated Composer dependencies to latest versions.

Thanks to everyone for your help testing!  Feel free to post a new thread or email if you find any other issues.

Dave Edis - Senior Developer
interactivetools.com