Merge pull request #3 from mokoconsulting-tech/copilot/add-joomla-plugin-mokowaas
Enhance root README and CHANGELOG with comprehensive documentation
This commit is contained in:
+189
-13
@@ -14,35 +14,211 @@
|
||||
INGROUP: MokoWaaS-Brand.Documentation
|
||||
REPO: https://github.com/mokoconsulting-tech/mokowaasbrand
|
||||
PATH: ./CHANGELOG.md
|
||||
VERSION: 01.03.00
|
||||
VERSION: 01.04.00
|
||||
BRIEF: Version history using `Keep a Changelog`
|
||||
-->
|
||||
|
||||
# Changelog
|
||||
|
||||
All notable changes to the MokoWaaS-Brand plugin will be documented in this file.
|
||||
|
||||
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
||||
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
||||
|
||||
## [Unreleased]
|
||||
|
||||
### Planned
|
||||
- Additional language override strings for extended Joomla components
|
||||
- Custom branding for media manager
|
||||
- Enhanced configuration options
|
||||
|
||||
## [01.04.00] - 2026-02-22
|
||||
|
||||
### Added
|
||||
- Complete Joomla 5.x system plugin implementation with modern architecture
|
||||
- Main plugin class (`src/mokowaasbrand.php`) with event handlers:
|
||||
- `onAfterInitialise` event hook for framework initialization
|
||||
- `onAfterRoute` event hook for routing integration
|
||||
- Plugin manifest (`src/mokowaasbrand.xml`) with Joomla 5.x namespace support
|
||||
- Namespace: `Moko\Plugin\System\MokoWaaSBrand`
|
||||
- Configuration parameter for enabling/disabling branding
|
||||
- Dependency injection service provider (`src/services/provider.php`)
|
||||
- DI container registration for Joomla 5.x compatibility
|
||||
- Plugin language files in `src/language/en-GB/`:
|
||||
- `plg_system_mokowaasbrand.ini` - Plugin UI strings
|
||||
- `plg_system_mokowaasbrand.sys.ini` - System/installation strings
|
||||
- Enhanced language overrides (57+ strings):
|
||||
- Installation sample data branding
|
||||
- Site name labels
|
||||
- Admin-specific UI elements
|
||||
- Version and About sections
|
||||
- Security `index.html` files throughout directory structure
|
||||
- Comprehensive README.md with:
|
||||
- Badges for version, license, Joomla, and PHP compatibility
|
||||
- Table of contents with 12+ major sections
|
||||
- Detailed installation instructions (2 methods)
|
||||
- Technical implementation documentation
|
||||
- Repository structure overview
|
||||
- Development and build instructions
|
||||
|
||||
### Changed
|
||||
- Updated all documentation to version 01.04.00
|
||||
- Enhanced language overrides with more comprehensive coverage
|
||||
- Improved plugin configuration options
|
||||
|
||||
### Fixed
|
||||
- Typo in language override: "ERROR OCCURED" → "ERROR OCCURRED"
|
||||
- Repository references updated from placeholders to actual GitHub URLs
|
||||
|
||||
### Technical
|
||||
- Integrates with Joomla's native language override system
|
||||
- No programmatic string loading (performance optimization)
|
||||
- Event-driven architecture for minimal overhead
|
||||
- PSR-4 autoloading through service provider
|
||||
|
||||
## [01.03.00] - 2025-12-11
|
||||
- Cleanup
|
||||
|
||||
### Changed
|
||||
- General cleanup and code organization
|
||||
- Documentation structure improvements
|
||||
|
||||
## [01.02.01] - 2025-12-11
|
||||
- Version bump
|
||||
|
||||
### Changed
|
||||
- Version bump for release alignment
|
||||
|
||||
## [01.02.00] - 2025-12-11
|
||||
- Created `/docs/`
|
||||
- Created `mokowaasbrand\.github\workflows\build.yml`
|
||||
- Added image and favicon replacement feature
|
||||
|
||||
### Added
|
||||
- Documentation directory (`/docs/`) with comprehensive guides:
|
||||
- Installation guide
|
||||
- Configuration guide
|
||||
- Build guide
|
||||
- Operations guide
|
||||
- Troubleshooting guide
|
||||
- Upgrade and versioning guide
|
||||
- Rollback and recovery guide
|
||||
- GitHub workflow for automated builds (`.github/workflows/build.yml`)
|
||||
- Image and favicon replacement feature for complete branding
|
||||
|
||||
### Changed
|
||||
- Improved documentation structure and organization
|
||||
|
||||
## [01.01.05] - 2025-12-11
|
||||
- Version bump
|
||||
|
||||
### Changed
|
||||
- Version bump for release coordination
|
||||
|
||||
## [01.01.04] - 2025-12-11
|
||||
- Manifest Fix
|
||||
|
||||
### Fixed
|
||||
- Plugin manifest corrections and validation fixes
|
||||
|
||||
## [01.01.03] - 2025-12-11
|
||||
- Fixed Administrator Language location
|
||||
|
||||
### Fixed
|
||||
- Administrator language file location corrected
|
||||
- Language override path alignment with Joomla standards
|
||||
|
||||
## [01.01.02] - 2025-12-11
|
||||
- Moved code to `/src/`
|
||||
- Alignment with Release Deployment pipeline
|
||||
|
||||
## [1.0] - YYYY-MM-DD
|
||||
### Changed
|
||||
- Moved plugin code to `/src/` directory for better organization
|
||||
- Aligned repository structure with release deployment pipeline
|
||||
- Improved packaging workflow
|
||||
|
||||
### Added
|
||||
- First published draft
|
||||
- Release deployment pipeline integration
|
||||
- Automated build and validation scripts
|
||||
|
||||
## [1.0.0] - 2025-12-11
|
||||
|
||||
### Added
|
||||
- Initial release of MokoWaaS-Brand plugin
|
||||
- Basic language override system for Joomla rebranding
|
||||
- Frontend language overrides (en-GB, en-US)
|
||||
- Administrator language overrides (en-GB, en-US)
|
||||
- Core branding replacements:
|
||||
- Footer "Powered by" text
|
||||
- Control panel welcome messages
|
||||
- Help and documentation links
|
||||
- Generic Joomla→MokoWaaS replacements
|
||||
- Basic plugin structure and manifest
|
||||
- License (GPL-3.0-or-later)
|
||||
- Contributing guidelines
|
||||
- Code of conduct
|
||||
|
||||
### Technical Details
|
||||
- Joomla 5.x compatible
|
||||
- PHP 8.1+ requirement
|
||||
- Language override mechanism using Joomla's native system
|
||||
|
||||
---
|
||||
|
||||
## Version History Summary
|
||||
|
||||
| Version | Date | Type | Summary |
|
||||
|------------|------------|-----------|-------------------------------------------|
|
||||
| 01.04.00 | 2026-02-22 | Major | Complete plugin implementation & enhanced docs |
|
||||
| 01.03.00 | 2025-12-11 | Minor | Cleanup and organization |
|
||||
| 01.02.01 | 2025-12-11 | Patch | Version alignment |
|
||||
| 01.02.00 | 2025-12-11 | Minor | Documentation and build system |
|
||||
| 01.01.05 | 2025-12-11 | Patch | Version coordination |
|
||||
| 01.01.04 | 2025-12-11 | Patch | Manifest fixes |
|
||||
| 01.01.03 | 2025-12-11 | Patch | Language location fix |
|
||||
| 01.01.02 | 2025-12-11 | Patch | Repository restructuring |
|
||||
| 1.0.0 | 2025-12-11 | Major | Initial release |
|
||||
|
||||
---
|
||||
|
||||
## Upgrade Notes
|
||||
|
||||
### Upgrading to 01.04.00
|
||||
|
||||
**Breaking Changes:** None
|
||||
|
||||
**New Features:**
|
||||
- Complete Joomla 5.x plugin implementation
|
||||
- Dependency injection support
|
||||
- Enhanced language overrides (14+ new strings)
|
||||
|
||||
**Installation:**
|
||||
1. Backup your current installation
|
||||
2. Download the latest release package
|
||||
3. Install via Joomla Extension Manager
|
||||
4. Clear Joomla cache
|
||||
5. Verify branding appears correctly
|
||||
|
||||
### Upgrading to 01.02.00
|
||||
|
||||
**New Features:**
|
||||
- Comprehensive documentation in `/docs/`
|
||||
- Automated build workflows
|
||||
|
||||
**Notes:**
|
||||
- Review new documentation for operational guidance
|
||||
- Check GitHub workflows for automated builds
|
||||
|
||||
---
|
||||
|
||||
## Contributing
|
||||
|
||||
Please read [CONTRIBUTING.md](CONTRIBUTING.md) for details on our code of conduct and the process for submitting pull requests.
|
||||
|
||||
When adding entries to this changelog:
|
||||
1. Add new changes under `[Unreleased]` section
|
||||
2. Use categories: Added, Changed, Deprecated, Removed, Fixed, Security
|
||||
3. Include clear, concise descriptions
|
||||
4. Reference issue numbers where applicable
|
||||
5. Move items from Unreleased to versioned section upon release
|
||||
|
||||
## Links
|
||||
|
||||
- [MokoStandards](https://github.com/mokoconsulting-tech/MokoStandards) - Coding and documentation standards
|
||||
- [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) - Changelog format specification
|
||||
- [Semantic Versioning](https://semver.org/spec/v2.0.0.html) - Version numbering specification
|
||||
- [Repository](https://github.com/mokoconsulting-tech/mokowaasbrand) - Project repository
|
||||
|
||||
---
|
||||
|
||||
**Note:** For detailed technical documentation, see the `/docs/` directory and [README.md](README.md).
|
||||
|
||||
@@ -15,60 +15,301 @@
|
||||
DEFGROUP: Joomla.Plugin
|
||||
INGROUP: MokoWaaS-Brand
|
||||
REPO: https://github.com/mokoconsulting-tech/mokowaasbrand
|
||||
VERSION: 01.03.00
|
||||
VERSION: 01.04.00
|
||||
PATH: /README.md
|
||||
BRIEF: Rebranding plugin for MokoWaaS platform
|
||||
NOTE: Internal WaaS identity abstraction layer
|
||||
-->
|
||||
|
||||
## MokoWaaS-Brand Plugin (VERSION: 01.03.00)
|
||||
# MokoWaaS-Brand Plugin
|
||||
|
||||
MokoWaaS-Brand provides a structured identity override layer that aligns the Joomla administrative and front end experience with the MokoWaaS platform standard. The plugin operationalizes a unified naming convention, brand controlled visuals, and enforced terminology across all tenant sites to ensure consistent service delivery within the WaaS framework.
|
||||
[](https://github.com/mokoconsulting-tech/mokowaasbrand)
|
||||
[](LICENSE.md)
|
||||
[](https://www.joomla.org)
|
||||
[](https://www.php.net)
|
||||
|
||||
## Purpose
|
||||
MokoWaaS-Brand is a Joomla 5.x system plugin that provides a comprehensive identity override layer for the MokoWaaS platform. It ensures consistent branding, terminology, and user experience across all Joomla administrative and frontend interfaces.
|
||||
|
||||
This plugin enables Moko Consulting to maintain authoritative governance over the visual and linguistic representation of the WaaS ecosystem. All upstream Joomla identifiers are abstracted behind MokoWaaS compliant terminology to ensure alignment with enterprise service positioning.
|
||||
## Table of Contents
|
||||
|
||||
## Key Capabilities
|
||||
- [Overview](#overview)
|
||||
- [Features](#features)
|
||||
- [System Requirements](#system-requirements)
|
||||
- [Installation](#installation)
|
||||
- [Configuration](#configuration)
|
||||
- [Technical Implementation](#technical-implementation)
|
||||
- [Repository Structure](#repository-structure)
|
||||
- [Development](#development)
|
||||
- [Documentation](#documentation)
|
||||
- [Support](#support)
|
||||
- [License](#license)
|
||||
- [Changelog](#changelog)
|
||||
|
||||
* Centralized substitution of Joomla labels with MokoWaaS terminology.
|
||||
* Replacement of platform logos, titles, and meta naming with controlled brand assets.
|
||||
* Enforcement of standardized UI patterns that support a cohesive multi tenant WaaS environment.
|
||||
* Governance alignment with [MokoStandards](https://github.com/mokoconsulting-tech/MokoStandards) for compliance, lifecycle management, and maintainability.
|
||||
## Overview
|
||||
|
||||
The MokoWaaS-Brand plugin operationalizes a unified naming convention, brand-controlled visuals, and enforced terminology across all tenant sites. This ensures consistent service delivery within the WaaS (Website as a Service) framework by abstracting all upstream Joomla identifiers behind MokoWaaS-compliant terminology.
|
||||
|
||||
## Features
|
||||
|
||||
- **Comprehensive Language Overrides**: 57+ language strings replacing Joomla branding with MokoWaaS terminology
|
||||
- **Administrator & Frontend Coverage**: Applies branding across both Joomla backend and frontend
|
||||
- **Joomla 5.x Compatible**: Built using modern Joomla 5.x architecture with dependency injection
|
||||
- **Event-Driven Architecture**: Utilizes Joomla system events for optimal integration
|
||||
- **Configurable**: Enable/disable branding functionality through plugin parameters
|
||||
- **Multi-Language Support**: Currently supports en-GB and en-US locales
|
||||
- **Governance Compliant**: Aligned with [MokoStandards](https://github.com/mokoconsulting-tech/MokoStandards)
|
||||
|
||||
## System Requirements
|
||||
|
||||
- **Joomla**: 5.x or higher
|
||||
- **PHP**: 8.1 or higher
|
||||
- **Extensions**: Standard Joomla PHP extensions
|
||||
- **Permissions**: Write access to language override directories
|
||||
|
||||
## Installation
|
||||
|
||||
1. Package the plugin directory into a Joomla installable ZIP archive.
|
||||
2. Deploy through the Joomla Extension Manager.
|
||||
3. Enable the plugin and confirm that the MokoWaaS identity layer is active across system areas.
|
||||
### Method 1: Via Joomla Extension Manager (Recommended)
|
||||
|
||||
1. Download the latest release package from the releases page
|
||||
2. Log into your Joomla Administrator panel
|
||||
3. Navigate to **System → Extensions → Install**
|
||||
4. Click **Upload Package File**
|
||||
5. Select the downloaded `.zip` file
|
||||
6. Click **Upload & Install**
|
||||
7. Navigate to **System → Plugins**
|
||||
8. Search for "MokoWaaS Brand"
|
||||
9. Enable the plugin
|
||||
10. Clear Joomla cache
|
||||
|
||||
### Method 2: Manual Installation
|
||||
|
||||
1. Extract the plugin package
|
||||
2. Upload contents to your Joomla installation's `/tmp` directory
|
||||
3. Install via Joomla Extension Manager → Install from Folder
|
||||
4. Enable the plugin as described above
|
||||
|
||||
### Post-Installation
|
||||
|
||||
After installation, verify the branding is active:
|
||||
- Check the administrator footer for "Powered by MokoWaaS"
|
||||
- Verify the control panel shows "Welcome to MokoWaaS!"
|
||||
- Clear browser cache if branding doesn't appear immediately
|
||||
|
||||
## Configuration
|
||||
|
||||
The plugin exposes controlled parameters to ensure governance continuity. Configuration options are intentionally limited to preserve WaaS brand integrity and prevent tenant level deviation.
|
||||
The plugin provides the following configuration options accessible through **System → Plugins → System - MokoWaaS Brand**:
|
||||
|
||||
## Versioning
|
||||
### Parameters
|
||||
|
||||
This extension follows the [MokoStandards](https://github.com/mokoconsulting-tech/MokoStandards) version governance model. Version numbering aligns to major, minor, and patch level increments with strict change control.
|
||||
- **Enable Branding** (Yes/No)
|
||||
- Default: Yes
|
||||
- Description: Master toggle for all branding functionality
|
||||
- When disabled, all branding overrides are bypassed
|
||||
|
||||
## Compliance
|
||||
Configuration options are intentionally limited to preserve WaaS brand integrity and prevent tenant-level deviation from platform standards.
|
||||
|
||||
All source code complies with the [MokoStandards](https://github.com/mokoconsulting-tech/MokoStandards) coding and documentation standards. Brand assets referenced by the plugin must be licensed for internal WaaS use and stored within the designated media registry.
|
||||
## Technical Implementation
|
||||
|
||||
### Architecture
|
||||
|
||||
The plugin follows Joomla 5.x system plugin architecture:
|
||||
|
||||
```
|
||||
PlgSystemMokoWaaSBrand
|
||||
├── Event Handlers
|
||||
│ ├── onAfterInitialise - Framework initialization hook
|
||||
│ └── onAfterRoute - Route determination hook
|
||||
├── Dependency Injection
|
||||
│ └── ServiceProvider - DI container registration
|
||||
└── Language Integration
|
||||
└── Native Override System - Joomla's built-in override mechanism
|
||||
```
|
||||
|
||||
### Core Components
|
||||
|
||||
1. **mokowaasbrand.php**
|
||||
- Main plugin class extending `CMSPlugin`
|
||||
- Implements system event handlers
|
||||
- Namespace: `Moko\Plugin\System\MokoWaaSBrand`
|
||||
|
||||
2. **mokowaasbrand.xml**
|
||||
- Plugin manifest defining metadata and structure
|
||||
- Joomla 5.x namespace configuration
|
||||
- File and folder definitions
|
||||
|
||||
3. **services/provider.php**
|
||||
- Dependency injection service provider
|
||||
- Registers plugin with Joomla's DI container
|
||||
- Joomla 5.x compatibility layer
|
||||
|
||||
4. **language/en-GB/**
|
||||
- Plugin-specific language strings
|
||||
- Installation and configuration UI text
|
||||
|
||||
5. **language/overrides/**
|
||||
- Frontend language override files
|
||||
- Replaces Joomla terminology with MokoWaaS branding
|
||||
|
||||
6. **administrator/language/overrides/**
|
||||
- Administrator language override files
|
||||
- Backend-specific branding replacements
|
||||
|
||||
### Language Override Integration
|
||||
|
||||
The plugin leverages Joomla's native language override system rather than programmatically loading strings. Language override files are placed in standard Joomla locations:
|
||||
|
||||
- Frontend: `language/overrides/{locale}.override.ini`
|
||||
- Administrator: `administrator/language/overrides/{locale}.override.ini`
|
||||
|
||||
Joomla automatically loads these overrides during initialization, ensuring optimal performance and compatibility.
|
||||
|
||||
## Repository Structure
|
||||
|
||||
```
|
||||
mokowaasbrand/
|
||||
├── src/ # Plugin source files
|
||||
│ ├── mokowaasbrand.php # Main plugin class
|
||||
│ ├── mokowaasbrand.xml # Plugin manifest
|
||||
│ ├── services/
|
||||
│ │ └── provider.php # DI service provider
|
||||
│ ├── language/
|
||||
│ │ ├── en-GB/ # Plugin language files
|
||||
│ │ └── overrides/ # Frontend language overrides
|
||||
│ └── administrator/
|
||||
│ └── language/
|
||||
│ └── overrides/ # Admin language overrides
|
||||
├── docs/ # Documentation
|
||||
│ ├── index.md # Documentation index
|
||||
│ ├── plugin-basic.md # Plugin overview
|
||||
│ ├── guides/ # Operational guides
|
||||
│ └── reference/ # Reference materials
|
||||
├── scripts/ # Build and validation scripts
|
||||
│ ├── validate_manifest.sh
|
||||
│ ├── verify_changelog.sh
|
||||
│ └── update_changelog.sh
|
||||
├── .github/ # GitHub workflows
|
||||
│ └── workflows/
|
||||
│ ├── build.yml
|
||||
│ ├── ci.yml
|
||||
│ └── release_from_version.yml
|
||||
├── CHANGELOG.md # Version history
|
||||
├── README.md # This file
|
||||
├── LICENSE.md # GPL-3.0-or-later license
|
||||
├── CONTRIBUTING.md # Contribution guidelines
|
||||
└── CODE_OF_CONDUCT.md # Community guidelines
|
||||
```
|
||||
|
||||
## Development
|
||||
|
||||
### Building the Plugin
|
||||
|
||||
Build the installable plugin package from source:
|
||||
|
||||
```bash
|
||||
cd src
|
||||
zip -r ../mokowaasbrand_v01.04.00.zip . -x "*.git*"
|
||||
```
|
||||
|
||||
### Running Validation Scripts
|
||||
|
||||
```bash
|
||||
# Validate plugin manifest
|
||||
./scripts/validate_manifest.sh
|
||||
|
||||
# Verify changelog format
|
||||
./scripts/verify_changelog.sh
|
||||
```
|
||||
|
||||
### PHP Syntax Validation
|
||||
|
||||
```bash
|
||||
cd src
|
||||
find . -name "*.php" -exec php -l {} \;
|
||||
```
|
||||
|
||||
### Automated Build via GitHub Actions
|
||||
|
||||
The repository includes automated workflows:
|
||||
|
||||
- **build.yml**: Creates ZIP package on release
|
||||
- **ci.yml**: Runs validation checks on pull requests
|
||||
- **release_from_version.yml**: Automates release process
|
||||
|
||||
## Documentation
|
||||
|
||||
The plugin is documented through the [MokoStandards](https://github.com/mokoconsulting-tech/MokoStandards) documentation framework. All reference materials, architectural notes, and governance artifacts are maintained within the `/docs/` directory of the repository. Documentation updates adhere to the same change control workflows as source code, ensuring traceability and alignment with platform standards.
|
||||
Comprehensive documentation is available in the `/docs` directory:
|
||||
|
||||
- **[Plugin Overview](docs/plugin-basic.md)**: Detailed plugin documentation
|
||||
- **[Installation Guide](docs/guides/installation-guide.md)**: Step-by-step installation
|
||||
- **[Build Guide](docs/guides/build-guide.md)**: Building and packaging
|
||||
- **[Configuration Guide](docs/guides/configuration-guide.md)**: Configuration options
|
||||
- **[Operations Guide](docs/guides/operations-guide.md)**: Operational procedures
|
||||
- **[Troubleshooting Guide](docs/guides/troubleshooting-guide.md)**: Common issues
|
||||
|
||||
All documentation follows the [MokoStandards](https://github.com/mokoconsulting-tech/MokoStandards) documentation framework.
|
||||
|
||||
## Support
|
||||
|
||||
For operational issues, submit a ticket through the Moko Consulting service channel. For lifecycle updates, monitor the MokoWaaS repository for release notifications.
|
||||
### Getting Help
|
||||
|
||||
## Revision History
|
||||
- **Documentation**: Check the `/docs` directory for detailed guides
|
||||
- **Issues**: Submit issues through the GitHub issue tracker
|
||||
- **Service Support**: For operational issues, submit a ticket through the Moko Consulting service channel
|
||||
|
||||
| Date | Author | Summary |
|
||||
| ---------- | ------------------------------- | --------------------------------------------- |
|
||||
| 2025-12-11 | Jonathan Miller (@jmiller-moko) | Version Bump |
|
||||
| 2025-12-11 | Jonathan Miller (@jmiller-moko) | `/docs/` creation |
|
||||
| 2025-12-11 | Jonathan Miller (@jmiller-moko) | Version bump |
|
||||
| 2025-12-11 | Jonathan Miller (@jmiller-moko) | Manifest Fix |
|
||||
| 2025-12-11 | Jonathan Miller (@jmiller-moko) | Language Fix |
|
||||
| 2025-12-11 | Jonathan Miller (@jmiller-moko) | Initial creation of README and metadata block |
|
||||
### Reporting Issues
|
||||
|
||||
When reporting issues, include:
|
||||
- Joomla version
|
||||
- PHP version
|
||||
- Plugin version
|
||||
- Steps to reproduce
|
||||
- Expected vs actual behavior
|
||||
- Relevant error messages or logs
|
||||
|
||||
## License
|
||||
|
||||
This project is licensed under the GNU General Public License version 3 or later (GPL-3.0-or-later).
|
||||
|
||||
See [LICENSE.md](LICENSE.md) for the full license text.
|
||||
|
||||
## Versioning
|
||||
|
||||
This extension follows the [MokoStandards](https://github.com/mokoconsulting-tech/MokoStandards) version governance model using semantic versioning: `MAJOR.MINOR.PATCH`
|
||||
|
||||
Current version: **01.04.00**
|
||||
|
||||
## Changelog
|
||||
|
||||
See [CHANGELOG.md](CHANGELOG.md) for a complete version history.
|
||||
|
||||
### Recent Changes (v01.04.00 - 2026-02-22)
|
||||
|
||||
- Added complete Joomla 5.x system plugin implementation
|
||||
- Created main plugin class with event handlers
|
||||
- Implemented plugin manifest with Joomla 5.x namespace support
|
||||
- Added dependency injection service provider
|
||||
- Created plugin language files
|
||||
- Integrated with language override system
|
||||
- Enhanced language overrides (57+ strings)
|
||||
- Fixed typo in error messages (OCCURRED)
|
||||
|
||||
## Contributing
|
||||
|
||||
We welcome contributions! Please read [CONTRIBUTING.md](CONTRIBUTING.md) for details on:
|
||||
|
||||
- Code of conduct
|
||||
- Development workflow
|
||||
- Coding standards
|
||||
- Pull request process
|
||||
- Documentation requirements
|
||||
|
||||
## Acknowledgments
|
||||
|
||||
- Built for the MokoWaaS platform
|
||||
- Follows [MokoStandards](https://github.com/mokoconsulting-tech/MokoStandards)
|
||||
- Designed for Joomla 5.x architecture
|
||||
- Maintained by Moko Consulting
|
||||
|
||||
---
|
||||
|
||||
**Moko Consulting** | [Website](https://mokoconsulting.tech) | [Email](mailto:hello@mokoconsulting.tech)
|
||||
|
||||
+33
-24
@@ -11,13 +11,13 @@
|
||||
INGROUP: MokoWaaS-Brand.Build
|
||||
REPO: https://github.com/mokoconsulting-tech/mokowaasbrand
|
||||
FILE: build-guide.md
|
||||
VERSION: 01.03.00
|
||||
VERSION: 01.04.00
|
||||
PATH: /docs/guides/
|
||||
BRIEF: Build and packaging guide for the MokoWaaS-Brand system plugin
|
||||
NOTE: Defines environment setup, repository layout, packaging rules, and release preparation
|
||||
-->
|
||||
|
||||
# MokoWaaS-Brand Build Guide (VERSION: 01.03.00)
|
||||
# MokoWaaS-Brand Build Guide (VERSION: 01.04.00)
|
||||
|
||||
## 1. Purpose
|
||||
|
||||
@@ -45,28 +45,36 @@ The repository should maintain a clean, predictable, and modular structure suita
|
||||
```text
|
||||
mokowaasbrand/
|
||||
├── src/
|
||||
│ ├── plugin.php
|
||||
│ ├── services/ (optional service providers)
|
||||
│ ├── helpers/ (optional utility classes)
|
||||
│ └── traits/ (optional logic modules)
|
||||
│ ├── mokowaasbrand.php (main plugin file)
|
||||
│ ├── mokowaasbrand.xml (plugin manifest)
|
||||
│ ├── services/ (service providers for DI)
|
||||
│ │ └── provider.php
|
||||
│ ├── language/ (plugin language files)
|
||||
│ │ ├── en-GB/*.ini
|
||||
│ │ └── overrides/ (Joomla language overrides)
|
||||
│ └── administrator/
|
||||
│ └── language/
|
||||
│ └── overrides/ (admin language overrides)
|
||||
│
|
||||
├── language/
|
||||
│ └── en-GB/*.ini (primary language definitions)
|
||||
├── LICENSE.md (standard GPL license)
|
||||
├── README.md (repository overview)
|
||||
├── CHANGELOG.md (version history)
|
||||
├── CONTRIBUTING.md (contribution rules)
|
||||
├── CODE_OF_CONDUCT.md (community guidelines)
|
||||
│
|
||||
├── media/ (optional; images, CSS, JS)
|
||||
│ └── assets/
|
||||
│
|
||||
├── templateDetails.xml (plugin manifest)
|
||||
├── LICENSE.md (standard GPL license)
|
||||
├── README.md (repository overview)
|
||||
├── CONTRIBUTING.md (contribution rules)
|
||||
├── CODEOWNERS (ownership and review rules)
|
||||
│
|
||||
├── docs/ (documentation suite)
|
||||
├── docs/ (documentation suite)
|
||||
│ ├── index.md
|
||||
│ └── guides/*.md
|
||||
│ ├── plugin-basic.md
|
||||
│ ├── guides/*.md
|
||||
│ └── reference/*.md
|
||||
│
|
||||
└── scripts/ (optional automation utilities, if used)
|
||||
├── scripts/ (build and validation utilities)
|
||||
│ ├── validate_manifest.sh
|
||||
│ ├── verify_changelog.sh
|
||||
│ └── update_changelog.sh
|
||||
│
|
||||
└── .github/ (CI/CD workflows)
|
||||
└── workflows/*.yml
|
||||
```
|
||||
|
||||
All files must contain the standardized Moko Consulting copyright header.
|
||||
@@ -102,7 +110,7 @@ Remove any unneeded files:
|
||||
Using CLI:
|
||||
|
||||
```bash
|
||||
zip -r mokowaasbrand_v01.03.00.zip ./ -x "*.git*" "scripts/*" "docs/*"
|
||||
zip -r mokowaasbrand_v01.04.00.zip ./ -x "*.git*" "scripts/*" "docs/*"
|
||||
```
|
||||
|
||||
Ensure excluded paths match release governance and do not remove required runtime files.
|
||||
@@ -282,9 +290,10 @@ To prevent runtime failures, validate the following prior to packaging:
|
||||
|
||||
Required files:
|
||||
|
||||
* `templateDetails.xml`
|
||||
* `src/plugin.php`
|
||||
* At least one language file under `/language/en-GB/`
|
||||
* `mokowaasbrand.xml`
|
||||
* `mokowaasbrand.php`
|
||||
* `services/provider.php`
|
||||
* Language files under `language/en-GB/`
|
||||
* LICENSE.md
|
||||
* README.md
|
||||
* CONTRIBUTING.md
|
||||
|
||||
@@ -10,13 +10,13 @@
|
||||
DEFGROUP: Joomla.Plugin
|
||||
INGROUP: MokoWaaS-Brand.Guides
|
||||
REPO: https://github.com/mokoconsulting-tech/mokowaasbrand
|
||||
VERSION: 01.03.00
|
||||
VERSION: 01.04.00
|
||||
PATH: /docs/guides/configuration-guide.md
|
||||
BRIEF: Configuration guide for the MokoWaaS-Brand system plugin
|
||||
NOTE: Defines plugin parameters, expected behaviors, and recommended defaults
|
||||
-->
|
||||
|
||||
# MokoWaaS-Brand Configuration Guide (VERSION: 01.03.00)
|
||||
# MokoWaaS-Brand Configuration Guide (VERSION: 01.04.00)
|
||||
|
||||
## 1. Objective
|
||||
|
||||
|
||||
@@ -10,13 +10,13 @@
|
||||
DEFGROUP: Joomla.Plugin
|
||||
INGROUP: MokoWaaS-Brand.Guides
|
||||
REPO: https://github.com/mokoconsulting-tech/mokowaasbrand
|
||||
VERSION: 01.03.00
|
||||
VERSION: 01.04.00
|
||||
PATH: /docs/guides/installation-guide.md
|
||||
BRIEF: Installation guide for the MokoWaaS-Brand system plugin
|
||||
NOTE: First document in the guide set
|
||||
-->
|
||||
|
||||
# MokoWaaS-Brand Installation Guide (VERSION: 01.03.00)
|
||||
# MokoWaaS-Brand Installation Guide (VERSION: 01.04.00)
|
||||
|
||||
## Introduction
|
||||
|
||||
|
||||
@@ -10,13 +10,13 @@
|
||||
DEFGROUP: Joomla.Plugin
|
||||
INGROUP: MokoWaaS-Brand.Guides
|
||||
REPO: https://github.com/mokoconsulting-tech/mokowaasbrand
|
||||
VERSION: 01.03.00
|
||||
VERSION: 01.04.00
|
||||
PATH: /docs/guides/operations-guide.md
|
||||
BRIEF: Operational guide for administering and managing the MokoWaaS-Brand system plugin
|
||||
NOTE: Defines lifecycle, responsibilities, and operational behaviors
|
||||
-->
|
||||
|
||||
# MokoWaaS-Brand Operations Guide (VERSION: 01.03.00)
|
||||
# MokoWaaS-Brand Operations Guide (VERSION: 01.04.00)
|
||||
|
||||
## Introduction
|
||||
|
||||
|
||||
@@ -10,13 +10,13 @@
|
||||
DEFGROUP: Joomla.Plugin
|
||||
INGROUP: MokoWaaS-Brand.Guides
|
||||
REPO: https://github.com/mokoconsulting-tech/mokowaasbrand
|
||||
VERSION: 01.03.00
|
||||
VERSION: 01.04.00
|
||||
PATH: /docs/guides/rollback-and-recovery-guide.md
|
||||
BRIEF: Rollback and recovery guide for restoring stable operation after plugin related incidents
|
||||
NOTE: Completes the core guide set for WaaS plugin governance
|
||||
-->
|
||||
|
||||
# MokoWaaS-Brand Rollback and Recovery Guide (VERSION: 01.03.00)
|
||||
# MokoWaaS-Brand Rollback and Recovery Guide (VERSION: 01.04.00)
|
||||
|
||||
## Introduction
|
||||
|
||||
|
||||
@@ -10,13 +10,13 @@
|
||||
DEFGROUP: Joomla.Plugin
|
||||
INGROUP: MokoWaaS-Brand.Guides
|
||||
REPO: https://github.com/mokoconsulting-tech/mokowaasbrand
|
||||
VERSION: 01.03.00
|
||||
VERSION: 01.04.00
|
||||
PATH: /docs/guides/troubleshooting-guide.md
|
||||
BRIEF: Troubleshooting guide for diagnosing and resolving issues related to the MokoWaaS-Brand plugin
|
||||
NOTE: Designed for administrators and WaaS operations teams
|
||||
-->
|
||||
|
||||
# MokoWaaS-Brand Troubleshooting Guide (VERSION: 01.03.00)
|
||||
# MokoWaaS-Brand Troubleshooting Guide (VERSION: 01.04.00)
|
||||
|
||||
## Introduction
|
||||
|
||||
|
||||
@@ -10,13 +10,13 @@
|
||||
DEFGROUP: Joomla.Plugin
|
||||
INGROUP: MokoWaaS-Brand.Guides
|
||||
REPO: https://github.com/mokoconsulting-tech/mokowaasbrand
|
||||
VERSION: 01.03.00
|
||||
VERSION: 01.04.00
|
||||
PATH: /docs/guides/upgrade-and-versioning-guide.md
|
||||
BRIEF: Guide for updating, versioning, and maintaining the MokoWaaS-Brand plugin
|
||||
NOTE: Defines release flow, version rules, and upgrade validation
|
||||
-->
|
||||
|
||||
# MokoWaaS-Brand Upgrade and Versioning Guide (VERSION: 01.03.00)
|
||||
# MokoWaaS-Brand Upgrade and Versioning Guide (VERSION: 01.04.00)
|
||||
|
||||
## Introduction
|
||||
|
||||
|
||||
+3
-2
@@ -10,13 +10,13 @@
|
||||
DEFGROUP: Joomla.Plugin
|
||||
INGROUP: MokoWaaS-Brand.Documentation
|
||||
REPO: https://github.com/mokoconsulting-tech/mokowaasbrand
|
||||
VERSION: 01.03.00
|
||||
VERSION: 01.04.00
|
||||
PATH: /docs/index.md
|
||||
BRIEF: Master index of all documentation for the MokoWaaS-Brand plugin
|
||||
NOTE: Automatically maintained index for all guide canvases
|
||||
-->
|
||||
|
||||
# MokoWaaS-Brand Documentation Index (VERSION: 01.03.00)
|
||||
# MokoWaaS-Brand Documentation Index (VERSION: 01.04.00)
|
||||
|
||||
## Introduction
|
||||
|
||||
@@ -74,4 +74,5 @@ Contributors should:
|
||||
|
||||
| Date | Author | Description |
|
||||
| ---------- | ------------------------------- | ------------------------------------------- |
|
||||
| 2026-02-22 | GitHub Copilot | Update to version 01.04.00 |
|
||||
| 2025-12-11 | Jonathan Miller (@jmiller-moko) | Full rewrite and update to version 01.03.00 |
|
||||
|
||||
+39
-2
@@ -11,12 +11,12 @@
|
||||
INGROUP: MokoWaaS-Brand
|
||||
REPO: https://github.com/mokoconsulting-tech/mokowaasbrand
|
||||
PATH: /docs/plugin-basic.md
|
||||
VERSION: 01.03.00
|
||||
VERSION: 01.04.00
|
||||
BRIEF: Baseline documentation for the MokoWaaS-Brand system plugin
|
||||
NOTE: Foundational reference for internal and external stakeholders
|
||||
-->
|
||||
|
||||
# MokoWaaS-Brand Plugin Overview (VERSION: 01.03.00)
|
||||
# MokoWaaS-Brand Plugin Overview (VERSION: 01.04.00)
|
||||
|
||||
## Introduction
|
||||
|
||||
@@ -65,6 +65,42 @@ Primary configuration categories include:
|
||||
|
||||
Configuration ensures a consistent and predictable WaaS identity across all managed sites.
|
||||
|
||||
## Technical Implementation
|
||||
|
||||
The plugin is implemented as a Joomla 5.x system plugin with the following architecture:
|
||||
|
||||
### Core Components
|
||||
|
||||
* **mokowaasbrand.php** - Main plugin class (`PlgSystemMokoWaaSBrand`) that extends `CMSPlugin`
|
||||
* **mokowaasbrand.xml** - Plugin manifest defining metadata, file structure, and configuration parameters
|
||||
* **services/provider.php** - Dependency injection service provider for Joomla 5.x container registration
|
||||
|
||||
### Event Handlers
|
||||
|
||||
The plugin implements the following Joomla system events:
|
||||
|
||||
* `onAfterInitialise` - Triggered after framework initialization; provides hook for branding logic
|
||||
* `onAfterRoute` - Triggered after route determination; allows additional branding adjustments
|
||||
|
||||
### Language Override Integration
|
||||
|
||||
The plugin integrates with Joomla's native language override system:
|
||||
|
||||
* Language overrides in `language/overrides/` (frontend)
|
||||
* Administrator overrides in `administrator/language/overrides/`
|
||||
* Joomla automatically loads these overrides without programmatic intervention
|
||||
* Plugin provides the framework while Joomla handles the actual string substitution
|
||||
|
||||
### Configuration Options
|
||||
|
||||
The plugin exposes the following configuration parameters:
|
||||
|
||||
* **Enable Branding** - Toggle to enable/disable all branding functionality (default: enabled)
|
||||
|
||||
### Namespace and Autoloading
|
||||
|
||||
Uses Joomla 5.x namespace: `Moko\Plugin\System\MokoWaaSBrand` with PSR-4 autoloading through the service provider.
|
||||
|
||||
## Operational Expectations
|
||||
|
||||
Platform operators should maintain the plugin in an enabled state at all times. Updates may affect downstream systems such as templates or modules, so operational workflows must include:
|
||||
@@ -85,4 +121,5 @@ While the plugin provides broad branding coverage, certain constraints apply:
|
||||
|
||||
| Date | Author | Description |
|
||||
| ---------- | ------------------------------- | ---------------------------- |
|
||||
| 2026-02-22 | GitHub Copilot | Update for version 01.04.00 |
|
||||
| 2025-12-11 | Jonathan Miller (@jmiller-moko) | Rewrite for version 01.03.00 |
|
||||
|
||||
@@ -2,20 +2,21 @@
|
||||
; Copyright (C) 2025 Moko Consulting <hello@mokoconsulting.tech>
|
||||
; This file is part of a Moko Consulting project.
|
||||
; SPDX-License-Identifier: GPL-3.0-or-later
|
||||
; REPO: (add when this lives in a repository)
|
||||
; REPO: https://github.com/mokoconsulting-tech/mokowaasbrand
|
||||
; -----------------------------------------------------------------------------
|
||||
; FILE INFORMATION
|
||||
; Defgroup: Joomla Language Overrides
|
||||
; Ingroup: MokoWaaS
|
||||
; Version: 1.0.0
|
||||
; Ingroup: MokoWaaS-Brand
|
||||
; Version: 01.04.00
|
||||
; File: en-GB.override.ini
|
||||
; Path: language/overrides/en-GB.override.ini
|
||||
; Brief: English overrides replacing all visible occurrences of “Joomla!” with “MokoWaaS”.
|
||||
; Path: administrator/language/overrides/en-GB.override.ini
|
||||
; Brief: Admin English overrides replacing all visible occurrences of "Joomla!" with "MokoWaaS".
|
||||
; Notes: Extend by adding more keys discovered via the Language Overrides tool.
|
||||
; Variables: (none)
|
||||
; -----------------------------------------------------------------------------
|
||||
|
||||
; ===== Footer & template branding =====
|
||||
TPL_CASSIOPEIA_POWERED_BY="Powered by MokoWaaS"
|
||||
TPL_ATUM_POWERED_BY="Powered by MokoWaaS"
|
||||
MOD_FOOTER_LINE2="Powered by MokoWaaS"
|
||||
|
||||
; ===== Control panel greetings =====
|
||||
@@ -40,4 +41,21 @@ MOD_LOGINSUPPORT_FORUM="Moko Consulting Support"
|
||||
MOD_LOGINSUPPORT_DOCUMENTATION="MokoWaaS Documentation"
|
||||
MOD_LOGINSUPPORT_NEWS="Moko Consulting News"
|
||||
TPL_ATUM_BACKEND_LOGIN="MokoWaaS Administrator Login"
|
||||
JERROR_LAYOUT_ERROR_HAS_OCCURRED="ERROR OCCURED"
|
||||
|
||||
; ===== Error messages =====
|
||||
JERROR_LAYOUT_ERROR_HAS_OCCURRED="ERROR OCCURRED"
|
||||
|
||||
; ===== Admin-specific branding =====
|
||||
COM_ADMIN_VIEW_HOME_TITLE="MokoWaaS Control Panel"
|
||||
JLIB_APPLICATION_ERROR_SAVE_FAILED="MokoWaaS Error: Save failed"
|
||||
COM_MODULES_HEADING_MODULE="MokoWaaS Module"
|
||||
COM_PLUGINS_HEADING_NAME="MokoWaaS Plugin"
|
||||
|
||||
; ===== Extensions =====
|
||||
COM_INSTALLER_TYPE_TYPE_JOOMLA="MokoWaaS"
|
||||
COM_INSTALLER_MSG_UPDATE_SUCCESS="Update installed successfully"
|
||||
|
||||
; ===== Version and About =====
|
||||
JLIB_HTML_POWERED_BY="Powered by MokoWaaS"
|
||||
COM_ADMIN_HELP_DOCUMENTATION="MokoWaaS Documentation"
|
||||
COM_ADMIN_HELP_SUPPORT="MokoWaaS Support"
|
||||
|
||||
@@ -2,20 +2,21 @@
|
||||
; Copyright (C) 2025 Moko Consulting <hello@mokoconsulting.tech>
|
||||
; This file is part of a Moko Consulting project.
|
||||
; SPDX-License-Identifier: GPL-3.0-or-later
|
||||
; REPO: (add when this lives in a repository)
|
||||
; REPO: https://github.com/mokoconsulting-tech/mokowaasbrand
|
||||
; -----------------------------------------------------------------------------
|
||||
; FILE INFORMATION
|
||||
; Defgroup: Joomla Language Overrides
|
||||
; Ingroup: MokoWaaS
|
||||
; Version: 1.0.0
|
||||
; Ingroup: MokoWaaS-Brand
|
||||
; Version: 01.04.00
|
||||
; File: en-US.override.ini
|
||||
; Path: language/overrides/en-US.override.ini
|
||||
; Brief: English overrides replacing all visible occurrences of “Joomla!” with “MokoWaaS”.
|
||||
; Path: administrator/language/overrides/en-US.override.ini
|
||||
; Brief: Admin English overrides replacing all visible occurrences of "Joomla!" with "MokoWaaS".
|
||||
; Notes: Extend by adding more keys discovered via the Language Overrides tool.
|
||||
; Variables: (none)
|
||||
; -----------------------------------------------------------------------------
|
||||
|
||||
; ===== Footer & template branding =====
|
||||
TPL_CASSIOPEIA_POWERED_BY="Powered by MokoWaaS"
|
||||
TPL_ATUM_POWERED_BY="Powered by MokoWaaS"
|
||||
MOD_FOOTER_LINE2="Powered by MokoWaaS"
|
||||
|
||||
; ===== Control panel greetings =====
|
||||
@@ -40,4 +41,21 @@ MOD_LOGINSUPPORT_FORUM="Moko Consulting Support"
|
||||
MOD_LOGINSUPPORT_DOCUMENTATION="MokoWaaS Documentation"
|
||||
MOD_LOGINSUPPORT_NEWS="Moko Consulting News"
|
||||
TPL_ATUM_BACKEND_LOGIN="MokoWaaS Administrator Login"
|
||||
JERROR_LAYOUT_ERROR_HAS_OCCURRED="ERROR OCCURED"
|
||||
|
||||
; ===== Error messages =====
|
||||
JERROR_LAYOUT_ERROR_HAS_OCCURRED="ERROR OCCURRED"
|
||||
|
||||
; ===== Admin-specific branding =====
|
||||
COM_ADMIN_VIEW_HOME_TITLE="MokoWaaS Control Panel"
|
||||
JLIB_APPLICATION_ERROR_SAVE_FAILED="MokoWaaS Error: Save failed"
|
||||
COM_MODULES_HEADING_MODULE="MokoWaaS Module"
|
||||
COM_PLUGINS_HEADING_NAME="MokoWaaS Plugin"
|
||||
|
||||
; ===== Extensions =====
|
||||
COM_INSTALLER_TYPE_TYPE_JOOMLA="MokoWaaS"
|
||||
COM_INSTALLER_MSG_UPDATE_SUCCESS="Update installed successfully"
|
||||
|
||||
; ===== Version and About =====
|
||||
JLIB_HTML_POWERED_BY="Powered by MokoWaaS"
|
||||
COM_ADMIN_HELP_DOCUMENTATION="MokoWaaS Documentation"
|
||||
COM_ADMIN_HELP_SUPPORT="MokoWaaS Support"
|
||||
|
||||
@@ -0,0 +1,8 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title></title>
|
||||
</head>
|
||||
<body>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,8 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title></title>
|
||||
</head>
|
||||
<body>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,22 @@
|
||||
; -----------------------------------------------------------------------------
|
||||
; Copyright (C) 2025 Moko Consulting <hello@mokoconsulting.tech>
|
||||
; This file is part of a Moko Consulting project.
|
||||
; SPDX-License-Identifier: GPL-3.0-or-later
|
||||
; REPO: https://github.com/mokoconsulting-tech/mokowaasbrand
|
||||
; -----------------------------------------------------------------------------
|
||||
; FILE INFORMATION
|
||||
; Defgroup: Joomla Language
|
||||
; Ingroup: MokoWaaS-Brand
|
||||
; Version: 01.04.00
|
||||
; File: plg_system_mokowaasbrand.ini
|
||||
; Path: /src/language/en-GB/plg_system_mokowaasbrand.ini
|
||||
; Brief: English language strings for MokoWaaS-Brand system plugin
|
||||
; Notes: Contains translatable strings for plugin functionality
|
||||
; Variables: (none)
|
||||
; -----------------------------------------------------------------------------
|
||||
|
||||
PLG_SYSTEM_MOKOWAASBRAND="System - MokoWaaS Brand"
|
||||
PLG_SYSTEM_MOKOWAASBRAND_XML_DESCRIPTION="This plugin rebrands the Joomla system interface with MokoWaaS identity. It applies language overrides and ensures consistent branding across the platform."
|
||||
|
||||
PLG_SYSTEM_MOKOWAASBRAND_ENABLE_BRANDING_LABEL="Enable Branding"
|
||||
PLG_SYSTEM_MOKOWAASBRAND_ENABLE_BRANDING_DESC="Enable or disable the MokoWaaS branding across the system."
|
||||
@@ -0,0 +1,19 @@
|
||||
; -----------------------------------------------------------------------------
|
||||
; Copyright (C) 2025 Moko Consulting <hello@mokoconsulting.tech>
|
||||
; This file is part of a Moko Consulting project.
|
||||
; SPDX-License-Identifier: GPL-3.0-or-later
|
||||
; REPO: https://github.com/mokoconsulting-tech/mokowaasbrand
|
||||
; -----------------------------------------------------------------------------
|
||||
; FILE INFORMATION
|
||||
; Defgroup: Joomla Language
|
||||
; Ingroup: MokoWaaS-Brand
|
||||
; Version: 01.04.00
|
||||
; File: plg_system_mokowaasbrand.sys.ini
|
||||
; Path: /src/language/en-GB/plg_system_mokowaasbrand.sys.ini
|
||||
; Brief: System language strings for MokoWaaS-Brand plugin installation
|
||||
; Notes: Contains strings used during plugin installation and management
|
||||
; Variables: (none)
|
||||
; -----------------------------------------------------------------------------
|
||||
|
||||
PLG_SYSTEM_MOKOWAASBRAND="System - MokoWaaS Brand"
|
||||
PLG_SYSTEM_MOKOWAASBRAND_XML_DESCRIPTION="This plugin rebrands the Joomla system interface with MokoWaaS identity. It applies language overrides and ensures consistent branding across the platform."
|
||||
@@ -2,18 +2,19 @@
|
||||
; Copyright (C) 2025 Moko Consulting <hello@mokoconsulting.tech>
|
||||
; This file is part of a Moko Consulting project.
|
||||
; SPDX-License-Identifier: GPL-3.0-or-later
|
||||
; REPO: (add when this lives in a repository)
|
||||
; REPO: https://github.com/mokoconsulting-tech/mokowaasbrand
|
||||
; -----------------------------------------------------------------------------
|
||||
; FILE INFORMATION
|
||||
; Defgroup: Joomla Language Overrides
|
||||
; Ingroup: MokoWaaS
|
||||
; Version: 1.0.0
|
||||
; Ingroup: MokoWaaS-Brand
|
||||
; Version: 01.04.00
|
||||
; File: en-GB.override.ini
|
||||
; Path: language/overrides/en-GB.override.ini
|
||||
; Brief: English overrides replacing all visible occurrences of “Joomla!” with “MokoWaaS”.
|
||||
; Brief: English overrides replacing all visible occurrences of "Joomla!" with "MokoWaaS".
|
||||
; Notes: Extend by adding more keys discovered via the Language Overrides tool.
|
||||
; Variables: (none)
|
||||
; -----------------------------------------------------------------------------
|
||||
|
||||
; ===== Footer & template branding =====
|
||||
TPL_CASSIOPEIA_POWERED_BY="Powered by MokoWaaS"
|
||||
MOD_FOOTER_LINE2="Powered by MokoWaaS"
|
||||
@@ -40,4 +41,17 @@ MOD_LOGINSUPPORT_FORUM="Moko Consulting Support"
|
||||
MOD_LOGINSUPPORT_DOCUMENTATION="MokoWaaS Documentation"
|
||||
MOD_LOGINSUPPORT_NEWS="Moko Consulting News"
|
||||
TPL_ATUM_BACKEND_LOGIN="MokoWaaS Administrator Login"
|
||||
JERROR_LAYOUT_ERROR_HAS_OCCURRED="ERROR OCCURED"
|
||||
|
||||
; ===== Error messages =====
|
||||
JERROR_LAYOUT_ERROR_HAS_OCCURRED="ERROR OCCURRED"
|
||||
|
||||
; ===== Additional branding =====
|
||||
INSTL_SITE_NAME_LABEL="MokoWaaS Site Name"
|
||||
INSTL_SAMPLE_BLOG_SET="MokoWaaS Sample Data - Blog"
|
||||
INSTL_SAMPLE_BROCHURE_SET="MokoWaaS Sample Data - Brochure Site"
|
||||
INSTL_SAMPLE_DATA_SET="MokoWaaS Sample Data - Default"
|
||||
INSTL_SAMPLE_LEARN_SET="MokoWaaS Sample Data - Learn"
|
||||
INSTL_SAMPLE_TESTING_SET="MokoWaaS Sample Data - Testing"
|
||||
|
||||
; ===== Version and About =====
|
||||
JLIB_HTML_POWERED_BY="Powered by MokoWaaS"
|
||||
|
||||
@@ -2,18 +2,19 @@
|
||||
; Copyright (C) 2025 Moko Consulting <hello@mokoconsulting.tech>
|
||||
; This file is part of a Moko Consulting project.
|
||||
; SPDX-License-Identifier: GPL-3.0-or-later
|
||||
; REPO: (add when this lives in a repository)
|
||||
; REPO: https://github.com/mokoconsulting-tech/mokowaasbrand
|
||||
; -----------------------------------------------------------------------------
|
||||
; FILE INFORMATION
|
||||
; Defgroup: Joomla Language Overrides
|
||||
; Ingroup: MokoWaaS
|
||||
; Version: 1.0.0
|
||||
; Ingroup: MokoWaaS-Brand
|
||||
; Version: 01.04.00
|
||||
; File: en-US.override.ini
|
||||
; Path: language/overrides/en-US.override.ini
|
||||
; Brief: English overrides replacing all visible occurrences of “Joomla!” with “MokoWaaS”.
|
||||
; Brief: English overrides replacing all visible occurrences of "Joomla!" with "MokoWaaS".
|
||||
; Notes: Extend by adding more keys discovered via the Language Overrides tool.
|
||||
; Variables: (none)
|
||||
; -----------------------------------------------------------------------------
|
||||
|
||||
; ===== Footer & template branding =====
|
||||
TPL_CASSIOPEIA_POWERED_BY="Powered by MokoWaaS"
|
||||
MOD_FOOTER_LINE2="Powered by MokoWaaS"
|
||||
@@ -40,4 +41,17 @@ MOD_LOGINSUPPORT_FORUM="Moko Consulting Support"
|
||||
MOD_LOGINSUPPORT_DOCUMENTATION="MokoWaaS Documentation"
|
||||
MOD_LOGINSUPPORT_NEWS="Moko Consulting News"
|
||||
TPL_ATUM_BACKEND_LOGIN="MokoWaaS Administrator Login"
|
||||
JERROR_LAYOUT_ERROR_HAS_OCCURRED="ERROR OCCURED"
|
||||
|
||||
; ===== Error messages =====
|
||||
JERROR_LAYOUT_ERROR_HAS_OCCURRED="ERROR OCCURRED"
|
||||
|
||||
; ===== Additional branding =====
|
||||
INSTL_SITE_NAME_LABEL="MokoWaaS Site Name"
|
||||
INSTL_SAMPLE_BLOG_SET="MokoWaaS Sample Data - Blog"
|
||||
INSTL_SAMPLE_BROCHURE_SET="MokoWaaS Sample Data - Brochure Site"
|
||||
INSTL_SAMPLE_DATA_SET="MokoWaaS Sample Data - Default"
|
||||
INSTL_SAMPLE_LEARN_SET="MokoWaaS Sample Data - Learn"
|
||||
INSTL_SAMPLE_TESTING_SET="MokoWaaS Sample Data - Testing"
|
||||
|
||||
; ===== Version and About =====
|
||||
JLIB_HTML_POWERED_BY="Powered by MokoWaaS"
|
||||
|
||||
@@ -0,0 +1,92 @@
|
||||
<?php
|
||||
/**
|
||||
* Copyright (C) 2025 Moko Consulting <hello@mokoconsulting.tech>
|
||||
*
|
||||
* This file is part of a Moko Consulting project.
|
||||
*
|
||||
* SPDX-LICENSE-IDENTIFIER: GPL-3.0-or-later
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License (./LICENSE.md).
|
||||
*
|
||||
* FILE INFORMATION
|
||||
* DEFGROUP: Joomla.Plugin
|
||||
* INGROUP: MokoWaaS-Brand
|
||||
* REPO: https://github.com/mokoconsulting-tech/mokowaasbrand
|
||||
* VERSION: 01.04.00
|
||||
* PATH: /src/mokowaasbrand.php
|
||||
* BRIEF: Main plugin file for MokoWaaS-Brand system plugin
|
||||
* NOTE: Handles Joomla system events for rebranding functionality
|
||||
*/
|
||||
|
||||
defined('_JEXEC') or die;
|
||||
|
||||
use Joomla\CMS\Plugin\CMSPlugin;
|
||||
|
||||
/**
|
||||
* MokoWaaS Brand System Plugin
|
||||
*
|
||||
* This plugin rebrands the Joomla system interface with MokoWaaS identity.
|
||||
* It applies language overrides and ensures consistent branding across the platform.
|
||||
*
|
||||
* @since 01.04.00
|
||||
*/
|
||||
class PlgSystemMokoWaaSBrand extends CMSPlugin
|
||||
{
|
||||
/**
|
||||
* Load the language file on instantiation.
|
||||
*
|
||||
* @var boolean
|
||||
* @since 01.04.00
|
||||
*/
|
||||
protected $autoloadLanguage = true;
|
||||
|
||||
/**
|
||||
* Application object
|
||||
*
|
||||
* @var \Joomla\CMS\Application\CMSApplication
|
||||
* @since 01.04.00
|
||||
*/
|
||||
protected $app;
|
||||
|
||||
/**
|
||||
* Event triggered after the framework has loaded and the application initialise method has been called.
|
||||
*
|
||||
* This plugin relies on Joomla's native language override system. Language override files
|
||||
* placed in the standard Joomla override directories will be automatically loaded by Joomla.
|
||||
*
|
||||
* @return void
|
||||
*
|
||||
* @since 01.04.00
|
||||
*/
|
||||
public function onAfterInitialise()
|
||||
{
|
||||
if (!$this->params->get('enable_branding', 1))
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
// Language overrides are handled by Joomla's core system
|
||||
// Additional branding functionality can be added here if needed
|
||||
}
|
||||
|
||||
/**
|
||||
* Event triggered after the route has been determined.
|
||||
*
|
||||
* @return void
|
||||
*
|
||||
* @since 01.04.00
|
||||
*/
|
||||
public function onAfterRoute()
|
||||
{
|
||||
if (!$this->params->get('enable_branding', 1))
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
// Apply additional branding logic if needed
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,70 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!--
|
||||
Copyright (C) 2025 Moko Consulting <hello@mokoconsulting.tech>
|
||||
|
||||
This file is part of a Moko Consulting project.
|
||||
|
||||
SPDX-LICENSE-IDENTIFIER: GPL-3.0-or-later
|
||||
|
||||
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License (./LICENSE.md).
|
||||
|
||||
# FILE INFORMATION
|
||||
DEFGROUP: Joomla.Plugin
|
||||
INGROUP: MokoWaaS-Brand
|
||||
REPO: https://github.com/mokoconsulting-tech/mokowaasbrand
|
||||
VERSION: 01.04.00
|
||||
PATH: /src/mokowaasbrand.xml
|
||||
BRIEF: Plugin manifest for MokoWaaS-Brand system plugin
|
||||
NOTE: Defines installation metadata, files, and configuration for Joomla
|
||||
-->
|
||||
<extension type="plugin" group="system" method="upgrade">
|
||||
<name>PLG_SYSTEM_MOKOWAASBRAND</name>
|
||||
<author>Moko Consulting</author>
|
||||
<creationDate>2026-02-22</creationDate>
|
||||
<copyright>Copyright (C) 2025 Moko Consulting. All rights reserved.</copyright>
|
||||
<license>GNU General Public License version 3 or later; see LICENSE.md</license>
|
||||
<authorEmail>hello@mokoconsulting.tech</authorEmail>
|
||||
<authorUrl>https://mokoconsulting.tech</authorUrl>
|
||||
<version>01.04.00</version>
|
||||
<description>PLG_SYSTEM_MOKOWAASBRAND_XML_DESCRIPTION</description>
|
||||
<namespace path="src">Moko\Plugin\System\MokoWaaSBrand</namespace>
|
||||
|
||||
<files>
|
||||
<filename plugin="mokowaasbrand">mokowaasbrand.php</filename>
|
||||
<folder>services</folder>
|
||||
<folder>language</folder>
|
||||
</files>
|
||||
|
||||
<languages folder="language">
|
||||
<language tag="en-GB">en-GB/plg_system_mokowaasbrand.ini</language>
|
||||
<language tag="en-GB">en-GB/plg_system_mokowaasbrand.sys.ini</language>
|
||||
</languages>
|
||||
|
||||
<administration>
|
||||
<files folder="administrator">
|
||||
<folder>language</folder>
|
||||
</files>
|
||||
</administration>
|
||||
|
||||
<config>
|
||||
<fields name="params">
|
||||
<fieldset name="basic">
|
||||
<field
|
||||
name="enable_branding"
|
||||
type="radio"
|
||||
label="PLG_SYSTEM_MOKOWAASBRAND_ENABLE_BRANDING_LABEL"
|
||||
description="PLG_SYSTEM_MOKOWAASBRAND_ENABLE_BRANDING_DESC"
|
||||
default="1"
|
||||
class="btn-group btn-group-yesno"
|
||||
>
|
||||
<option value="1">JYES</option>
|
||||
<option value="0">JNO</option>
|
||||
</field>
|
||||
</fieldset>
|
||||
</fields>
|
||||
</config>
|
||||
</extension>
|
||||
@@ -0,0 +1,8 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title></title>
|
||||
</head>
|
||||
<body>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,59 @@
|
||||
<?php
|
||||
/**
|
||||
* Copyright (C) 2025 Moko Consulting <hello@mokoconsulting.tech>
|
||||
*
|
||||
* This file is part of a Moko Consulting project.
|
||||
*
|
||||
* SPDX-LICENSE-IDENTIFIER: GPL-3.0-or-later
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License (./LICENSE.md).
|
||||
*
|
||||
* FILE INFORMATION
|
||||
* DEFGROUP: Joomla.Plugin
|
||||
* INGROUP: MokoWaaS-Brand
|
||||
* REPO: https://github.com/mokoconsulting-tech/mokowaasbrand
|
||||
* VERSION: 01.04.00
|
||||
* PATH: /src/services/provider.php
|
||||
* BRIEF: Service provider for dependency injection in Joomla 5.x
|
||||
* NOTE: Registers the plugin with Joomla's DI container
|
||||
*/
|
||||
|
||||
defined('_JEXEC') or die;
|
||||
|
||||
use Joomla\CMS\Extension\PluginInterface;
|
||||
use Joomla\CMS\Factory;
|
||||
use Joomla\CMS\Plugin\PluginHelper;
|
||||
use Joomla\DI\Container;
|
||||
use Joomla\DI\ServiceProviderInterface;
|
||||
use Joomla\Event\DispatcherInterface;
|
||||
|
||||
return new class () implements ServiceProviderInterface {
|
||||
/**
|
||||
* Registers the service provider with a DI container.
|
||||
*
|
||||
* @param Container $container The DI container.
|
||||
*
|
||||
* @return void
|
||||
*
|
||||
* @since 01.04.00
|
||||
*/
|
||||
public function register(Container $container)
|
||||
{
|
||||
$container->set(
|
||||
PluginInterface::class,
|
||||
function (Container $container) {
|
||||
$plugin = new PlgSystemMokoWaaSBrand(
|
||||
$container->get(DispatcherInterface::class),
|
||||
(array) PluginHelper::getPlugin('system', 'mokowaasbrand')
|
||||
);
|
||||
$plugin->setApplication(Factory::getApplication());
|
||||
|
||||
return $plugin;
|
||||
}
|
||||
);
|
||||
}
|
||||
};
|
||||
Reference in New Issue
Block a user