StageIt — Changelog


Version 5.2.0 (2025-10-25)

Ultra-Simple Plugin Architecture & Button Styling Enhancement 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

📦 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

Version 5.1.4 (2025-10-25)

Joomla 5 Modernization & Installation Fixes Release

🔧 Installation & Packaging Fixes

  • Package Structure: Fixed component manifest naming (stageit.xmlcom_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 (mediaadmin/media)
  • Component Entry Point: Added required com_stageit.php site 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() and query()execute() methods for full J5 compatibility
  • View Classes: Removed legacy jimport statements and JViewLegacy compatibility layers
  • Class Naming: Updated to PSR standards (StageItViewdefaultStageItViewDefault)
  • 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/logs instead of administrator/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

Version 5.1.3 (2025-10-24)

  • Admin URL rule corrected: STAGING at /stageit/administrator, LIVE at /administrator.
  • Fixed System Dashboard red-X issue by guarding for HTML-only responses in onBeforeCompileHead/onAfterRender.
  • Removed unsafe injection fallback for non-HTML (no-<body>) responses.
  • Switch button targets updated: staging → /administrator/, live → /stageit/administrator/.
  • 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
  • No changes to styles/colors/labels; behavior preserved otherwise.

Version 5.1.2 (2025-10-23)

  • 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 postflight collapses duplicate update-site rows, removes legacy stageitpro, and ensures only the package is mapped to the update site.
  • Cosmetic: Update server named "StageIt Update Server", enabled by default.

Version 5.1.1 (2025-10-22)

  • Update Sites cleanup: Package now installs with a single update server (package-level) and removes stageitpro legacy endpoint. Component/plugin manifests no longer register update sites. Postflight script de-duplicates mappings so only the package is linked to ext=stageit5.

Version 5.1.0 (2025-10-22)

Consolidated release since 5.0.2. Highlights:

System Plugin

  • Joomla 5 / PHP 8–safe rewrite using a proper CMSPlugin class and SubscriberInterface.
  • Safe string concatenation; removed typed property conflicts.
  • Strict /stageit detection 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 .button markup to Bootstrap .btn variants; 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.

Version 5.0.12 (2025-10-19)

  • Phase B (markup): Replaced custom classes with Bootstrap counterparts in admin templates.   - .buttonbtn variants (remove → btn-outline-danger; login/rebuild → btn-primary; otherwise → btn-secondary).   - Tables with .stg_table/.grouptable now include table table-striped align-middle.   - Inputs/Textareas now use form-control; select uses form-select.
  • Theme: Continues to use token-based CSS so Atum Dark/Light toggles automatically.

Version 5.0.11 (2025-10-19)

  • Theme: Switched to Joomla 5 / Bootstrap 5 tokens in media/com_stageit/css/admin.css (variables-only, theme-aware).
  • Behavior: Removed body-class injection; StageIt styles are scoped to #stageit and derive from Atum tokens, so Dark/Light toggles automatically.
  • Customization: Preserved requested dark background #171c24 for #stageit in dark mode only.
  • Packaging: Loaded CSS via WebAsset on admin option=com_stageit; manifests bumped to 5.0.11.

Version 5.0.10 (2025-10-19)

  • Fix: Rewrote the system plugin with a safe NOWDOC-based inline JS for adding the com_stageit body class (eliminates the PHP parse error around catch).
  • Theme: Continues loading media/com_stageit/css/admin.css via WebAsset (onBeforeCompileHead).

Version 5.0.9 (2025-10-19)

  • Theme: Move Dark/Light CSS to a static asset media/com_stageit/css/admin.css and load via WebAsset on admin StageIt pages.
  • Reliability: Ensure <body> has the com_stageit class so selectors body.admin.com_stageit always match.
  • Packaging: Manifest now installs the media/com_stageit/css/admin.css file.

Version 5.0.8 (2Z025-10-19)

  • Dark Mode: Set #stageit background to #171c24 in dark mode (per request). Implemented as an inline CSS override so it takes precedence over earlier rules.

Version 5.0.7 (2025-10-19)

  • Fix: Removed the bool type from $autoloadLanguage in the system plugin to avoid inheritance conflict with CMSPlugin (which declares it untyped). This resolves the install-time fatal error.

Version 5.0.6 (2025-10-19)

  • Dark/Light Mode: Adopted the proven selectors & values; CSS is injected inline at onBeforeCompileHead so no media/ file is required.
  • Reliability: Ensures <body> has the com_stageit class on admin StageIt pages so body.admin.com_stageit selectors always match.
  • Packaging: All manifests set to schema 4.0; version bumped to 5.0.6.

Version 5.0.1 (historic)

  • Fix: Resolved parse error by converting the system plugin to a proper Joomla 5 class and defining getSubscribedEvents() inside the class.
  • Improve: Enabled $autoloadLanguage = true and moved manifests to schema 4.0.

Version 5.0.0

  • Joomla 5 native baseline (no legacy plugin required).
  • Theme: 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 J5 manifests and structure; media assets under media/com_stageit with correct references.

Add comment

Submit