📋 StageIt - Changelog
All notable changes to StageIt will be documented in this file.
v5.4.0 2026-01-01
Log Viewer & Large Table Support Release
Log Viewer
- Dedicated Log View: New admin view at
View Logmenu item to view, download, and clear the StageIt log file - Dark-Themed Display: Log content displayed in a styled monospace code block with dark background
- Log Management: Clear log and download log buttons for easy log file management
- Log File Info: Shows log file path, size, and last modified date
- Centralized Log Location: Moved log file to
/administrator/logs/stageit-log.txtfor better organization
Detailed Operation Logging
- Sync Operations: Full logging of sync process including folder mapping, file backups, and database syncing
- File-Level Visibility: Each file backup and sync operation is now logged individually
- Table Sync Logging: Database table sync operations logged with row counts and progress
- Skipped Items: Logs when tables are skipped (unchanged) or when structure-only sync is performed
Large Table Chunked Cloning
- Chunked Database Operations: Large tables (10,000+ rows) are now cloned in configurable chunks to prevent timeouts
- Configurable Thresholds:
CHUNK_THRESHOLD(default 10,000 rows) andCHUNK_SIZE(default 5,000 rows) constants - Progress Tracking: Chunked operations report progress percentage during sync
- Table Info Methods: New
_getTableRowCount()and_getTableInfo()methods for table size detection
Checkpoint System for Resume Capability
- Operation Checkpoints: Long-running operations save checkpoints to allow resume after timeout or crash
- Automatic Resume: If a sync operation was interrupted, it automatically resumes from the last checkpoint
- 1-Hour Expiry: Checkpoints expire after 1 hour to prevent stale resume attempts
- Checkpoint Logging: All checkpoint save/load operations are logged for transparency
Technical Improvements
- Controller Actions: New
clearLog()anddownloadLog()controller methods - View Registration: Log view properly registered in controller display switch
- Menu Integration: "VIEW LOG" added to admin submenu
v5.3.3 2025-11-19
Frontend Banner & Visibility Controls Release
New Features
- Frontend Banner Support: Added option to display the StageIt banner on the frontend site
- User Group Visibility Controls: Select specific user groups that can see the banner (backend and frontend separately)
- Joomla 5 User Group Selection: Uses native
usergrouplistfield type for multi-select user group checkboxes
Component Integration
- Environment Tab Updates: Added frontend banner toggle and user group visibility settings to component configuration
- Unified Settings: Plugin settings now fully manageable from StageIt component's Environment tab
- Immediate Effect: Settings saved from component now take effect immediately without requiring plugin page visit
Build System Fixes
- Package Structure Fix: Fixed build script to create proper
admin/folder structure in component ZIP - Build Script Modernization: Batch file now calls PowerShell script for reliable package creation
- XML Encoding Fix: Resolved character encoding issues in plugin manifest
Bug Fixes
- Fresh Parameter Loading: Plugin now reads parameters directly from database to ensure latest settings are used
- Form Compatibility: Fixed parameter loading to preserve Joomla's form system compatibility
- Dark Mode Styling: User group checkboxes now properly styled for dark mode using CSS variables
v5.3.2 2025-11-18
Banner Scroll Behavior Enhancement Release
Banner UX Improvements
- Non-Sticky Top Banner: Banner now scrolls naturally with page content instead of staying fixed at top
- Dual Banner System: Top banner scrolls away, bottom banner appears when top is out of view
- IntersectionObserver: Uses modern browser API for efficient scroll detection
- Smooth Transitions: Clean appearance/disappearance of bottom banner
- Respects Settings: "Banner Reappears at Bottom" setting now properly controls whether bottom banner appears
Technical Changes
- CSS Restructure: Changed from single fixed banner to dual banner approach (top relative, bottom fixed)
- Inline JavaScript: Banner scroll behavior now embedded in plugin for frontend compatibility
- Body Padding: Removed top padding, added bottom padding only when bottom banner visible
- Updated Selectors: All CSS selectors updated for new dual banner IDs
v5.3.1 2025-11-17
Enhanced Error Handling & Logging Release
Error Display Improvements
- Full Stack Traces: Errors now display complete stack traces in Joomla's message container at the top of the page instead of truncated popups
- Formatted Error Display: Monospace font with preserved line breaks for better error readability
- Comprehensive Error Information: Shows full error context with file paths and line numbers in the message area
- Better HTML Error Parsing: Improved extraction of meaningful errors from Joomla's HTML error pages
- No More Popups: Replaced JavaScript alert() popups with Bootstrap alert messages in the system message container
Logging System Enhancements
- Multi-Location Logging: Errors now written to multiple fallback locations for reliability
- Persistent Error Logs: All errors logged to
administrator/logs/com_stageit.log.php - Fallback Logging: Additional fallback to root directory if admin logs folder unavailable
- Stack Trace Logging: Complete stack traces saved to log files for debugging
- Timestamped Entries: Each log entry includes precise timestamp for issue tracking
Exception Handling
- Try-Catch Wrappers: All AJAX controller methods now wrapped in exception handlers
- Graceful Error Recovery: Errors caught and displayed cleanly instead of generic 500 pages
- Debug Information: Console logging for detailed debugging when errors occur
- Network Error Detection: Distinguishes between network errors, 404s, and server errors
Critical Bug Fixes
- Fixed Typo in Stack Trace Generation: Corrected
$function['function']to$frame['function']on line 99 that was preventing error logging - Removed Invalid JSON Checks: Eliminated problematic
json.length < 1check that was causing unnecessary alert() popups - Error Callback Improvements: Enhanced AJAX error handler to extract meaningful messages from HTML responses
- Replaced alert() with Joomla Messages: All error notifications now use Joomla's standard Bootstrap alert system in the #system-message-container
v5.3.0 2025-11-11
Package Integrity & Build Process Enhancement Release
Plugin UI Enhancements
- Button Icon Improvements: Replaced Font Awesome dependency with Unicode emoji icons (🔄, 🏠)
- Self-Contained Design: Plugin now completely independent with no external dependencies
- Consistent Appearance: Buttons display identically across all browsers and platforms
- CSS Cleanup: Removed all Font Awesome CSS and font file references
Build Process Improvements
- Automated Package Builder: New
build-package.batscript with intelligent MSBUILD detection - Binary Corruption Prevention: Ensures proper binary file handling during ZIP creation
- Timestamped Packages: Automatic package naming with version and timestamp
- Build Verification: Post-build validation to confirm package integrity
Package Structure Cleanup
- Removed Development Files: Excluded .git, .claude, and other non-essential development files
- Optimized Package Size: Removed unnecessary fonts and external dependencies
- Clean Distribution: Only production files included in release packages
v5.2.0 2025-10-25
Ultra-Simple Plugin Architecture & Complete Installation Fixes Release
Major Plugin Redesign
- Ultra-Simple Architecture: Completely rewrote plugin from 245 lines to 139 lines with modular structure
- Smart Staging Detection: Intelligent detection with conditional switch button only when staging directory exists
- Clean Fallback Display: Shows simple "LIVE SITE" text when no staging available (no unnecessary buttons)
- Enhanced Button Logic: "Switch to Live" always available on staging, "Switch to Staging" only when staging exists
Full Style Settings Integration
- Complete Color Support: All plugin style settings now functional (gradient/solid, text colors, button colors)
- Animated Gradients: Restored gradient animations with customizable duration from plugin settings
- Visibility Controls: Proper permission checking (All users/Managers/Super Users) working correctly
- Forced Mode Support: Manual staging/live override option fully integrated
Button Styling Enhancements
- StageIt Button Targeting: Fixed button readability with proper #0b5ed7 color for StageIt-specific buttons only
- Hover States: Added consistent #59a645 hover color for both light and dark modes on StageIt buttons
- Sync Button Fix: Ensured "Sync with Live" button is fully visible and readable in all themes
- Scoped CSS: Applied styling only to StageIt component buttons, preserving Joomla core UI elements
Complete Installation Error Resolution
- "File does not exist com_stageit": Added missing entry point file to site files section
- "Source folder not found": Removed obsolete media folder references from component manifest
- Entry Point Declaration: Properly declared
com_stageitfile in manifest<files>section - Clean Package Structure: Eliminated all manifest inconsistencies and validation warnings
- Zero Installation Errors: Achieved completely clean installation process for professional deployment
CSS Architecture Modernization
- Proper Joomla 5 Structure: Moved CSS from deprecated
media/folder to componentresources/css/ - Legacy File Cleanup: Removed duplicate and obsolete CSS files from old media structure
- Build Script Enhancement: Updated package builder to handle proper file structure and cleanup
- Installation Script: Enhanced with
cleanupOldFiles()method for seamless upgrades from older versions
Package Quality Improvements
- XML Validation: Added automatic XML validation to build process to prevent installation errors
- Clean Plugin Packaging: Fixed plugin ZIP creation to include only essential files (no backup/dev files)
- Standalone Testing: Created standalone plugin packages for independent testing before full integration
- Professional Structure: Maintained all existing functionality while dramatically simplifying codebase
Development Tools Enhanced
- Build Script Validation: Enhanced build process with XML syntax checking and file filtering
- Testing Workflow: Improved development workflow with standalone plugin testing capability
- Error Prevention: Proactive validation prevents "Can't find Joomla XML setup file" errors
- Comprehensive Documentation: Updated JOOMLA5-CHECKLIST.md with all lessons learned from real-world deployment
v5.1.4 2025-10-25
Joomla 5 Modernization & Installation Fixes Release
Installation & Packaging Fixes
- Package Structure: Fixed component manifest naming (
stageit.xml→com_stageit.xml) and proper folder hierarchy - ZIP Compatibility: Implemented forward slash paths in ZIP files to prevent installation errors
- Schema Updates: Updated manifests from version 3.0 to 5.0 for full Joomla 5 compatibility
- Media Path Fix: Corrected media folder references in component manifest (
media→admin/media) - Component Entry Point: Added required
com_stageit.phpsite file for proper component structure - jQuery UI Repair: Replaced corrupted jQuery UI library with clean version from CDN
- Warning-Free Installation: Eliminated all installation warnings for professional client deployment
System Dashboard Compatibility
- Smart Page Filtering: Plugin now uses whitelist approach to prevent interference with system pages
- Dashboard Protection: Completely excludes system dashboard, check-in, and configuration pages from banner injection
- AJAX Safety: Blocks all AJAX/API requests to prevent system check interference
- Global Check-in Fix: Resolved issues with Joomla's global check-in functionality
Modern System Requirements
- PHP 8.1+ Support: Updated minimum PHP requirement from 5.3.10 to 8.1.0 (Joomla 5 standard)
- Memory Optimization: Increased memory requirement from 128MB to 256MB for modern operations
- Timeout Updates: Extended execution timeout from 30s to 60s for reliable deployments
- Extension Validation: Replaced obsolete safe_mode checks with essential PHP extension validation
- Memory Detection: Improved memory limit detection including unlimited memory support
Development Tools
- Pre-build Validation: Added comprehensive package validation script (
validate-package.ps1) - Component Templates: Created Joomla 5 component template generator (
create-template.ps1) - Best Practices Guide: Added comprehensive development checklist (
JOOMLA5-CHECKLIST.md) - Build Integration: Enhanced build script with automatic validation and forward-slash ZIP creation
Joomla 5 Compatibility Enhancements
- Database Layer: Fixed deprecated
Quote()→quote()andquery()→execute()methods for full J5 compatibility - View Classes: Removed legacy
jimportstatements andJViewLegacycompatibility layers - Class Naming: Updated to PSR standards (
StageItViewdefault→StageItViewDefault) - Asset Management: Implemented modern Web Asset Manager for improved performance
- Error Handling: Added structured exception handling and modern Joomla logging system
- Log Path Fix: Corrected staging log path to use
stageit/administrator/logsinstead ofadministrator/stageit/logs
Code Quality Improvements
- Modern PHP: Updated error handling with proper Exception classes
- Logging System: Replaced custom vbLog with native
Joomla\CMS\Log\Log - Input Handling: Modernized using
Factory::getApplication()->input - Copyright: Updated copyright notices to 2025
CSS Optimization
- File Size Reduction: Removed ~293 lines of unused CSS (20% reduction)
- Legacy Cleanup: Removed obsolete Joomla 2.5/3 styles and unused components
- Performance: Eliminated unused search, pagination, gallery, and Sales Pro CSS
- Maintainability: Cleaner stylesheet with only essential styles retained
Developer Experience
- Future-Ready: Fully compatible with Joomla 5.x architecture
- Standards Compliant: Follows modern Joomla coding standards
- Error Recovery: Enhanced debugging and error reporting capabilities
v5.1.3 2025-10-24
Bug Fixes
- Admin URL Correction: STAGING at /stageit/administrator, LIVE at /administrator.
- System Dashboard Fix: Fixed red-X issue by guarding for HTML-only responses in onBeforeCompileHead/onAfterRender.
- Safe Injection: Removed unsafe injection fallback for non-HTML (no-<body>) responses.
- Switch Button Targets: Updated staging → /administrator/, live → /stageit/administrator/.
Improvements
- XML Standardization: Unified all XML manifests with consistent version numbering, creation dates, and copyright notices
- Initial Git Repository: Established version control with GitHub integration for professional development workflow
v5.1.2 2025-10-23
Improvements
- Update Sites hardening: Only the package declares the update server (URL unchanged: https://www.php-web-design.com/updates/check.php?ext=stageit5). Component/plugin manifests no longer register update sites.
- Self-healing installer: Package
postflightcollapses duplicate update-site rows, removes legacystageitpro, and ensures only the package is mapped to the update site. - Cosmetic: Update server named "StageIt Update Server", enabled by default.
v5.1.1 2025-10-22
Improvements
- Update Sites cleanup: Package now installs with a single update server (package-level) and removes
stageitprolegacy endpoint. Component/plugin manifests no longer register update sites. Postflight script de-duplicates mappings so only the package is linked toext=stageit5.
v5.1.0 2025-10-22
Consolidated release since 5.0.2. Highlights:
System Plugin
- Joomla 5 / PHP 8-safe rewrite using a proper
CMSPluginclass andSubscriberInterface. - Safe string concatenation; removed typed property conflicts.
- Strict
/stageitdetection by root name or URL path; logs detection reason to/administrator/logs/stageit.log.php(root-name-stageit,url-path-stageit,default-live). - Automatic Live ↔ Staging switch buttons with safety checks.
Style & Theming
- New Style tab with:
- Style Mode (default gradient).
- Gradient Cycle default 5s (min 5, max 120).
- Live (solid)
#59a645; Live gradient#59a645 → #356732; Live text#ffffff. - Staging (solid)
#f79034; Staging gradient#f79034 → #c05627; Staging text#ffffff. - Button Link Color (default
#ffffff) applied to "Go to Live / Staging" links.
- Dark-mode hardened for Atum/Bootstrap tokens, with fallbacks to handle caching/overrides.
Admin UI
- Converted legacy
.buttonmarkup to Bootstrap.btnvariants; tables use.table.table-striped.align-middle. - Removed prior admin helpers (seconds suffix, input-width caps, preview swatch).
Packaging & Installer
- Installer uses inner plugin package and now reflects the correct defaults and runtime logic on fresh installs.
- Unified manifests (schema 4.0) and metadata; consolidated changelog.
Reliability
- Fixes for parse errors (method placement,
$autoloadLanguage), CSS cache-busting (?v=on stylesheet), and consistent asset loading.
v5.0.12 2025-10-19
UI Improvements
- Bootstrap Markup: Replaced custom classes with Bootstrap counterparts in admin templates.
.button→btnvariants (remove →btn-outline-danger; login/rebuild →btn-primary; otherwise →btn-secondary).- Tables with
.stg_table/.grouptablenow includetable table-striped align-middle. - Inputs/Textareas now use
form-control;selectusesform-select.
- Theme: Continues to use token-based CSS so Atum Dark/Light toggles automatically.
v5.0.11 2025-10-19
Theme & Styling
- Bootstrap 5 Tokens: Switched to Joomla 5 / Bootstrap 5 tokens in
media/com_stageit/css/admin.css(variables-only, theme-aware). - Scoped Styles: Removed body-class injection; StageIt styles are scoped to
#stageitand derive from Atum tokens, so Dark/Light toggles automatically. - Dark Mode: Preserved requested dark background
#171c24for#stageitin dark mode only. - WebAsset Loading: Loaded CSS via WebAsset on admin
option=com_stageit; manifests bumped to 5.0.11.
v5.0.10 2025-10-19
Bug Fixes
- PHP Parse Error Fix: Rewrote the system plugin with a safe NOWDOC-based inline JS for adding the
com_stageitbody class (eliminates the PHP parse error aroundcatch). - Theme Loading: Continues loading
media/com_stageit/css/admin.cssvia WebAsset (onBeforeCompileHead).
v5.0.9 2025-10-19
Theme & Styling
- Static CSS Asset: Move Dark/Light CSS to a static asset
media/com_stageit/css/admin.cssand load via WebAsset on admin StageIt pages. - Body Class Fix: Ensure
<body>has thecom_stageitclass so selectorsbody.admin.com_stageitalways match. - Manifest Update: Manifest now installs the
media/com_stageit/css/admin.cssfile.
v5.0.8 2025-10-19
Dark Mode
- Dark Background: Set
#stageitbackground to#171c24in dark mode (per request). Implemented as an inline CSS override so it takes precedence over earlier rules.
v5.0.7 2025-10-19
Bug Fixes
- Fatal Error Fix: Removed the
booltype from$autoloadLanguagein the system plugin to avoid inheritance conflict withCMSPlugin(which declares it untyped). This resolves the install-time fatal error.
v5.0.6 2025-10-19
Theme & Styling
- Dark/Light Mode: Adopted the proven selectors & values; CSS is injected inline at
onBeforeCompileHeadso nomedia/file is required. - Body Class: Ensures
<body>has thecom_stageitclass on admin StageIt pages sobody.admin.com_stageitselectors always match. - Schema Update: All manifests set to schema
4.0; version bumped to5.0.6.
v5.0.1 (historic)
Bug Fixes
- Parse Error Fix: Resolved parse error by converting the system plugin to a proper Joomla 5 class and defining
getSubscribedEvents()inside the class.
Improvements
- Language Autoload: Enabled
$autoloadLanguage = trueand moved manifests to schema4.0.
v5.0.0
Initial Joomla 5 Release
New Features
- Joomla 5 Native: Joomla 5 native baseline (no legacy plugin required).
- Dark/Light Mode: Full Dark/Light mode compatibility in the admin (scoped to
body.admin.com_stageit). - Backups View: Implemented dark-mode "odd row" styling while preserving header look.
Packaging
- Initial Structure: Initial J5 manifests and structure; media assets under
media/com_stageitwith correct references.

Add comment