From 7fb7e3876276e53caef35805bdf07013b8a14478 Mon Sep 17 00:00:00 2001 From: Jonathan Miller Date: Sun, 28 Jun 2026 14:31:18 -0500 Subject: [PATCH] refactor: rename MokoJoomOpenGraph -> MokoSuiteOpenGraph; require Joomla 6+ MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Product rename (display name / docs / comments / language strings only — technical element names mokoog/com_mokoog/MokoOG namespace unchanged): - Replace "MokoJoom" -> "MokoSuite" across 55 files - Fixes the update-site license lookup in script.php, which matched the old "%MokoJoomOpenGraph%" name and would never find a "MokoSuite" site Joomla 6 compatibility: - script.php: minimumJoomla 4.0.0 -> 6.0.0, minimumPhp 8.1.0 -> 8.2.0, and actually enforce the Joomla floor in preflight() (was PHP-only) - Add PKG_MOKOOG_JOOMLA_VERSION_ERROR language strings (en-GB, en-US) - openapi.yaml + README state Joomla 6.0+ requirement - Audit confirmed the codebase already uses only Joomla-6-supported APIs --- .mokogitea/CLAUDE.md | 4 ++-- README.md | 2 +- source/language/en-GB/pkg_mokoog.sys.ini | 7 ++++--- source/language/en-US/pkg_mokoog.sys.ini | 7 ++++--- .../api/src/Controller/TagsController.php | 2 +- .../api/src/View/Tags/JsonapiView.php | 2 +- .../packages/com_mokoog/forms/filter_tags.xml | 2 +- source/packages/com_mokoog/forms/tag.xml | 2 +- .../com_mokoog/language/en-GB/com_mokoog.ini | 6 +++--- .../language/en-GB/com_mokoog.sys.ini | 4 ++-- .../com_mokoog/language/en-US/com_mokoog.ini | 6 +++--- .../language/en-US/com_mokoog.sys.ini | 4 ++-- source/packages/com_mokoog/mokoog.xml | 2 +- source/packages/com_mokoog/script.php | 6 +++--- .../packages/com_mokoog/services/provider.php | 2 +- .../packages/com_mokoog/sql/install.mysql.sql | 2 +- .../com_mokoog/sql/uninstall.mysql.sql | 2 +- .../com_mokoog/sql/updates/mysql/01.01.00.sql | 2 +- .../com_mokoog/sql/updates/mysql/01.02.00.sql | 2 +- .../com_mokoog/sql/updates/mysql/01.03.00.sql | 2 +- .../com_mokoog/sql/updates/mysql/01.04.00.sql | 2 +- .../src/Controller/DisplayController.php | 2 +- .../src/Extension/MokoOGComponent.php | 2 +- .../packages/com_mokoog/src/Model/TagModel.php | 2 +- .../com_mokoog/src/Model/TagsModel.php | 2 +- .../com_mokoog/src/View/Tags/HtmlView.php | 2 +- .../packages/com_mokoog/tmpl/tags/coverage.php | 2 +- .../packages/com_mokoog/tmpl/tags/default.php | 2 +- .../plg_content_mokoog/forms/mokoog.xml | 2 +- .../language/en-GB/plg_content_mokoog.ini | 2 +- .../language/en-GB/plg_content_mokoog.sys.ini | 4 ++-- .../language/en-US/plg_content_mokoog.ini | 2 +- .../language/en-US/plg_content_mokoog.sys.ini | 4 ++-- .../plg_content_mokoog/media/css/preview.css | 2 +- .../plg_content_mokoog/media/joomla.asset.json | 2 +- .../plg_content_mokoog/media/js/preview.js | 2 +- source/packages/plg_content_mokoog/mokoog.php | 2 +- source/packages/plg_content_mokoog/mokoog.xml | 4 ++-- .../plg_content_mokoog/services/provider.php | 2 +- .../src/Extension/MokoOGContent.php | 2 +- .../language/en-GB/plg_system_mokoog.ini | 2 +- .../language/en-GB/plg_system_mokoog.sys.ini | 4 ++-- .../language/en-US/plg_system_mokoog.ini | 2 +- .../language/en-US/plg_system_mokoog.sys.ini | 4 ++-- source/packages/plg_system_mokoog/mokoog.php | 2 +- source/packages/plg_system_mokoog/mokoog.xml | 4 ++-- .../plg_system_mokoog/services/provider.php | 2 +- .../language/en-GB/plg_webservices_mokoog.ini | 4 ++-- .../en-GB/plg_webservices_mokoog.sys.ini | 6 +++--- .../language/en-US/plg_webservices_mokoog.ini | 4 ++-- .../en-US/plg_webservices_mokoog.sys.ini | 6 +++--- .../packages/plg_webservices_mokoog/mokoog.php | 2 +- .../packages/plg_webservices_mokoog/mokoog.xml | 4 ++-- .../services/provider.php | 2 +- .../src/Extension/MokoOGWebServices.php | 4 ++-- source/script.php | 18 ++++++++++++++---- 56 files changed, 98 insertions(+), 86 deletions(-) diff --git a/.mokogitea/CLAUDE.md b/.mokogitea/CLAUDE.md index 8aefbbf..cc3cad6 100644 --- a/.mokogitea/CLAUDE.md +++ b/.mokogitea/CLAUDE.md @@ -1,4 +1,4 @@ -# MokoJoomOpenGraph +# MokoSuiteOpenGraph Open Graph, Twitter Card, and social sharing meta tag management for Joomla. Per-article SEO with auto-generation fallback. @@ -9,7 +9,7 @@ Open Graph, Twitter Card, and social sharing meta tag management for Joomla. Per | **Package** | `pkg_mokoog` | | **Language** | PHP 8.1+ | | **Branch** | develop on `dev`, merge to `main` (protected) | -| **Wiki** | [MokoJoomOpenGraph Wiki](https://git.mokoconsulting.tech/MokoConsulting/MokoJoomOpenGraph/wiki) | +| **Wiki** | [MokoSuiteOpenGraph Wiki](https://git.mokoconsulting.tech/MokoConsulting/MokoSuiteOpenGraph/wiki) | ## Commands diff --git a/README.md b/README.md index 427cdc3..daf29c4 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ -Open Graph, Twitter Card, and social sharing meta tag management for Joomla 4/5/6. +Open Graph, Twitter Card, and social sharing meta tag management for Joomla 6 and higher. ## Overview diff --git a/source/language/en-GB/pkg_mokoog.sys.ini b/source/language/en-GB/pkg_mokoog.sys.ini index 47aa587..0579559 100644 --- a/source/language/en-GB/pkg_mokoog.sys.ini +++ b/source/language/en-GB/pkg_mokoog.sys.ini @@ -1,7 +1,8 @@ -; MokoJoomOpenGraph - Package System Language File +; MokoSuiteOpenGraph - Package System Language File ; Copyright (C) 2026 Moko Consulting. All rights reserved. ; License: GPL-3.0-or-later -PKG_MOKOOG="MokoJoomOpenGraph" +PKG_MOKOOG="MokoSuiteOpenGraph" PKG_MOKOOG_DESCRIPTION="Complete Open Graph, Twitter Card, and social sharing meta tag management for Joomla. Control how every page appears when shared on Facebook, Twitter/X, LinkedIn, WhatsApp, and more." -PKG_MOKOOG_PHP_VERSION_ERROR="MokoJoomOpenGraph requires PHP %s or later." +PKG_MOKOOG_PHP_VERSION_ERROR="MokoSuiteOpenGraph requires PHP %s or later." +PKG_MOKOOG_JOOMLA_VERSION_ERROR="MokoSuiteOpenGraph requires Joomla %s or later." diff --git a/source/language/en-US/pkg_mokoog.sys.ini b/source/language/en-US/pkg_mokoog.sys.ini index 47aa587..0579559 100644 --- a/source/language/en-US/pkg_mokoog.sys.ini +++ b/source/language/en-US/pkg_mokoog.sys.ini @@ -1,7 +1,8 @@ -; MokoJoomOpenGraph - Package System Language File +; MokoSuiteOpenGraph - Package System Language File ; Copyright (C) 2026 Moko Consulting. All rights reserved. ; License: GPL-3.0-or-later -PKG_MOKOOG="MokoJoomOpenGraph" +PKG_MOKOOG="MokoSuiteOpenGraph" PKG_MOKOOG_DESCRIPTION="Complete Open Graph, Twitter Card, and social sharing meta tag management for Joomla. Control how every page appears when shared on Facebook, Twitter/X, LinkedIn, WhatsApp, and more." -PKG_MOKOOG_PHP_VERSION_ERROR="MokoJoomOpenGraph requires PHP %s or later." +PKG_MOKOOG_PHP_VERSION_ERROR="MokoSuiteOpenGraph requires PHP %s or later." +PKG_MOKOOG_JOOMLA_VERSION_ERROR="MokoSuiteOpenGraph requires Joomla %s or later." diff --git a/source/packages/com_mokoog/api/src/Controller/TagsController.php b/source/packages/com_mokoog/api/src/Controller/TagsController.php index 9fbe168..2e62de3 100644 --- a/source/packages/com_mokoog/api/src/Controller/TagsController.php +++ b/source/packages/com_mokoog/api/src/Controller/TagsController.php @@ -1,7 +1,7 @@ * @copyright Copyright (C) 2026 Moko Consulting. All rights reserved. diff --git a/source/packages/com_mokoog/api/src/View/Tags/JsonapiView.php b/source/packages/com_mokoog/api/src/View/Tags/JsonapiView.php index 97a0aa2..4a33148 100644 --- a/source/packages/com_mokoog/api/src/View/Tags/JsonapiView.php +++ b/source/packages/com_mokoog/api/src/View/Tags/JsonapiView.php @@ -1,7 +1,7 @@ * @copyright Copyright (C) 2026 Moko Consulting. All rights reserved. diff --git a/source/packages/com_mokoog/forms/filter_tags.xml b/source/packages/com_mokoog/forms/filter_tags.xml index b4d4015..ae32efc 100644 --- a/source/packages/com_mokoog/forms/filter_tags.xml +++ b/source/packages/com_mokoog/forms/filter_tags.xml @@ -1,6 +1,6 @@ - Content - MokoJoomOpenGraph + Content - MokoSuiteOpenGraph 01.04.15 2026-05-23 Moko Consulting diff --git a/source/packages/plg_content_mokoog/services/provider.php b/source/packages/plg_content_mokoog/services/provider.php index aca7a7d..be5bb48 100644 --- a/source/packages/plg_content_mokoog/services/provider.php +++ b/source/packages/plg_content_mokoog/services/provider.php @@ -1,7 +1,7 @@ * @copyright Copyright (C) 2026 Moko Consulting. All rights reserved. diff --git a/source/packages/plg_content_mokoog/src/Extension/MokoOGContent.php b/source/packages/plg_content_mokoog/src/Extension/MokoOGContent.php index 6f55213..15f2db0 100644 --- a/source/packages/plg_content_mokoog/src/Extension/MokoOGContent.php +++ b/source/packages/plg_content_mokoog/src/Extension/MokoOGContent.php @@ -1,7 +1,7 @@ * @copyright Copyright (C) 2026 Moko Consulting. All rights reserved. diff --git a/source/packages/plg_system_mokoog/language/en-GB/plg_system_mokoog.ini b/source/packages/plg_system_mokoog/language/en-GB/plg_system_mokoog.ini index 3791562..7a8f041 100644 --- a/source/packages/plg_system_mokoog/language/en-GB/plg_system_mokoog.ini +++ b/source/packages/plg_system_mokoog/language/en-GB/plg_system_mokoog.ini @@ -1,4 +1,4 @@ -; MokoJoomOpenGraph - System Plugin Language File +; MokoSuiteOpenGraph - System Plugin Language File ; Copyright (C) 2026 Moko Consulting. All rights reserved. ; License: GPL-3.0-or-later diff --git a/source/packages/plg_system_mokoog/language/en-GB/plg_system_mokoog.sys.ini b/source/packages/plg_system_mokoog/language/en-GB/plg_system_mokoog.sys.ini index 2a356e2..5b3afc6 100644 --- a/source/packages/plg_system_mokoog/language/en-GB/plg_system_mokoog.sys.ini +++ b/source/packages/plg_system_mokoog/language/en-GB/plg_system_mokoog.sys.ini @@ -1,6 +1,6 @@ -; MokoJoomOpenGraph - System Plugin System Language File +; MokoSuiteOpenGraph - System Plugin System Language File ; Copyright (C) 2026 Moko Consulting. All rights reserved. ; License: GPL-3.0-or-later -PLG_SYSTEM_MOKOOG="System - MokoJoomOpenGraph" +PLG_SYSTEM_MOKOOG="System - MokoSuiteOpenGraph" PLG_SYSTEM_MOKOOG_DESCRIPTION="Injects Open Graph and Twitter Card meta tags into every page for optimal social media sharing previews." diff --git a/source/packages/plg_system_mokoog/language/en-US/plg_system_mokoog.ini b/source/packages/plg_system_mokoog/language/en-US/plg_system_mokoog.ini index 3791562..7a8f041 100644 --- a/source/packages/plg_system_mokoog/language/en-US/plg_system_mokoog.ini +++ b/source/packages/plg_system_mokoog/language/en-US/plg_system_mokoog.ini @@ -1,4 +1,4 @@ -; MokoJoomOpenGraph - System Plugin Language File +; MokoSuiteOpenGraph - System Plugin Language File ; Copyright (C) 2026 Moko Consulting. All rights reserved. ; License: GPL-3.0-or-later diff --git a/source/packages/plg_system_mokoog/language/en-US/plg_system_mokoog.sys.ini b/source/packages/plg_system_mokoog/language/en-US/plg_system_mokoog.sys.ini index 2a356e2..5b3afc6 100644 --- a/source/packages/plg_system_mokoog/language/en-US/plg_system_mokoog.sys.ini +++ b/source/packages/plg_system_mokoog/language/en-US/plg_system_mokoog.sys.ini @@ -1,6 +1,6 @@ -; MokoJoomOpenGraph - System Plugin System Language File +; MokoSuiteOpenGraph - System Plugin System Language File ; Copyright (C) 2026 Moko Consulting. All rights reserved. ; License: GPL-3.0-or-later -PLG_SYSTEM_MOKOOG="System - MokoJoomOpenGraph" +PLG_SYSTEM_MOKOOG="System - MokoSuiteOpenGraph" PLG_SYSTEM_MOKOOG_DESCRIPTION="Injects Open Graph and Twitter Card meta tags into every page for optimal social media sharing previews." diff --git a/source/packages/plg_system_mokoog/mokoog.php b/source/packages/plg_system_mokoog/mokoog.php index bfc5577..9e8a445 100644 --- a/source/packages/plg_system_mokoog/mokoog.php +++ b/source/packages/plg_system_mokoog/mokoog.php @@ -1,7 +1,7 @@ * @copyright Copyright (C) 2026 Moko Consulting. All rights reserved. diff --git a/source/packages/plg_system_mokoog/mokoog.xml b/source/packages/plg_system_mokoog/mokoog.xml index 42df4d0..7479263 100644 --- a/source/packages/plg_system_mokoog/mokoog.xml +++ b/source/packages/plg_system_mokoog/mokoog.xml @@ -1,13 +1,13 @@ - System - MokoJoomOpenGraph + System - MokoSuiteOpenGraph 01.04.15 2026-05-23 Moko Consulting diff --git a/source/packages/plg_system_mokoog/services/provider.php b/source/packages/plg_system_mokoog/services/provider.php index 390b1d3..e398480 100644 --- a/source/packages/plg_system_mokoog/services/provider.php +++ b/source/packages/plg_system_mokoog/services/provider.php @@ -1,7 +1,7 @@ * @copyright Copyright (C) 2026 Moko Consulting. All rights reserved. diff --git a/source/packages/plg_webservices_mokoog/language/en-GB/plg_webservices_mokoog.ini b/source/packages/plg_webservices_mokoog/language/en-GB/plg_webservices_mokoog.ini index 97f99e3..23b9cd1 100644 --- a/source/packages/plg_webservices_mokoog/language/en-GB/plg_webservices_mokoog.ini +++ b/source/packages/plg_webservices_mokoog/language/en-GB/plg_webservices_mokoog.ini @@ -1,5 +1,5 @@ -; MokoJoomOpenGraph - Web Services Plugin Language File +; MokoSuiteOpenGraph - Web Services Plugin Language File ; Copyright (C) 2026 Moko Consulting. All rights reserved. ; License: GPL-3.0-or-later -PLG_WEBSERVICES_MOKOOG="Web Services - MokoJoomOpenGraph" +PLG_WEBSERVICES_MOKOOG="Web Services - MokoSuiteOpenGraph" diff --git a/source/packages/plg_webservices_mokoog/language/en-GB/plg_webservices_mokoog.sys.ini b/source/packages/plg_webservices_mokoog/language/en-GB/plg_webservices_mokoog.sys.ini index 086ffe8..8d41317 100644 --- a/source/packages/plg_webservices_mokoog/language/en-GB/plg_webservices_mokoog.sys.ini +++ b/source/packages/plg_webservices_mokoog/language/en-GB/plg_webservices_mokoog.sys.ini @@ -1,6 +1,6 @@ -; MokoJoomOpenGraph - Web Services Plugin System Language File +; MokoSuiteOpenGraph - Web Services Plugin System Language File ; Copyright (C) 2026 Moko Consulting. All rights reserved. ; License: GPL-3.0-or-later -PLG_WEBSERVICES_MOKOOG="Web Services - MokoJoomOpenGraph" -PLG_WEBSERVICES_MOKOOG_DESCRIPTION="Exposes MokoJoomOpenGraph OG tag data via Joomla's REST API at /api/index.php/v1/mokoog/tags." +PLG_WEBSERVICES_MOKOOG="Web Services - MokoSuiteOpenGraph" +PLG_WEBSERVICES_MOKOOG_DESCRIPTION="Exposes MokoSuiteOpenGraph OG tag data via Joomla's REST API at /api/index.php/v1/mokoog/tags." diff --git a/source/packages/plg_webservices_mokoog/language/en-US/plg_webservices_mokoog.ini b/source/packages/plg_webservices_mokoog/language/en-US/plg_webservices_mokoog.ini index 97f99e3..23b9cd1 100644 --- a/source/packages/plg_webservices_mokoog/language/en-US/plg_webservices_mokoog.ini +++ b/source/packages/plg_webservices_mokoog/language/en-US/plg_webservices_mokoog.ini @@ -1,5 +1,5 @@ -; MokoJoomOpenGraph - Web Services Plugin Language File +; MokoSuiteOpenGraph - Web Services Plugin Language File ; Copyright (C) 2026 Moko Consulting. All rights reserved. ; License: GPL-3.0-or-later -PLG_WEBSERVICES_MOKOOG="Web Services - MokoJoomOpenGraph" +PLG_WEBSERVICES_MOKOOG="Web Services - MokoSuiteOpenGraph" diff --git a/source/packages/plg_webservices_mokoog/language/en-US/plg_webservices_mokoog.sys.ini b/source/packages/plg_webservices_mokoog/language/en-US/plg_webservices_mokoog.sys.ini index 086ffe8..8d41317 100644 --- a/source/packages/plg_webservices_mokoog/language/en-US/plg_webservices_mokoog.sys.ini +++ b/source/packages/plg_webservices_mokoog/language/en-US/plg_webservices_mokoog.sys.ini @@ -1,6 +1,6 @@ -; MokoJoomOpenGraph - Web Services Plugin System Language File +; MokoSuiteOpenGraph - Web Services Plugin System Language File ; Copyright (C) 2026 Moko Consulting. All rights reserved. ; License: GPL-3.0-or-later -PLG_WEBSERVICES_MOKOOG="Web Services - MokoJoomOpenGraph" -PLG_WEBSERVICES_MOKOOG_DESCRIPTION="Exposes MokoJoomOpenGraph OG tag data via Joomla's REST API at /api/index.php/v1/mokoog/tags." +PLG_WEBSERVICES_MOKOOG="Web Services - MokoSuiteOpenGraph" +PLG_WEBSERVICES_MOKOOG_DESCRIPTION="Exposes MokoSuiteOpenGraph OG tag data via Joomla's REST API at /api/index.php/v1/mokoog/tags." diff --git a/source/packages/plg_webservices_mokoog/mokoog.php b/source/packages/plg_webservices_mokoog/mokoog.php index 945c592..2b3765d 100644 --- a/source/packages/plg_webservices_mokoog/mokoog.php +++ b/source/packages/plg_webservices_mokoog/mokoog.php @@ -1,7 +1,7 @@ * @copyright Copyright (C) 2026 Moko Consulting. All rights reserved. diff --git a/source/packages/plg_webservices_mokoog/mokoog.xml b/source/packages/plg_webservices_mokoog/mokoog.xml index c3fdbf0..bfbc862 100644 --- a/source/packages/plg_webservices_mokoog/mokoog.xml +++ b/source/packages/plg_webservices_mokoog/mokoog.xml @@ -1,13 +1,13 @@ - Web Services - MokoJoomOpenGraph + Web Services - MokoSuiteOpenGraph 01.04.15 2026-05-23 Moko Consulting diff --git a/source/packages/plg_webservices_mokoog/services/provider.php b/source/packages/plg_webservices_mokoog/services/provider.php index be36a42..72b352e 100644 --- a/source/packages/plg_webservices_mokoog/services/provider.php +++ b/source/packages/plg_webservices_mokoog/services/provider.php @@ -1,7 +1,7 @@ * @copyright Copyright (C) 2026 Moko Consulting. All rights reserved. diff --git a/source/packages/plg_webservices_mokoog/src/Extension/MokoOGWebServices.php b/source/packages/plg_webservices_mokoog/src/Extension/MokoOGWebServices.php index b5cc48f..9fe7a1e 100644 --- a/source/packages/plg_webservices_mokoog/src/Extension/MokoOGWebServices.php +++ b/source/packages/plg_webservices_mokoog/src/Extension/MokoOGWebServices.php @@ -1,7 +1,7 @@ * @copyright Copyright (C) 2026 Moko Consulting. All rights reserved. @@ -38,7 +38,7 @@ final class MokoOGWebServices extends CMSPlugin implements SubscriberInterface } /** - * Register API routes for MokoJoomOpenGraph. + * Register API routes for MokoSuiteOpenGraph. * * Endpoints: * GET /api/index.php/v1/mokoog/tags - List all OG tags diff --git a/source/script.php b/source/script.php index 315a788..479c916 100644 --- a/source/script.php +++ b/source/script.php @@ -1,7 +1,7 @@ * @copyright Copyright (C) 2026 Moko Consulting. All rights reserved. * @license GNU General Public License version 3 or later; see LICENSE @@ -15,8 +15,8 @@ use Joomla\CMS\Language\Text; class Pkg_MokoOGInstallerScript { - protected $minimumJoomla = '4.0.0'; - protected $minimumPhp = '8.1.0'; + protected $minimumJoomla = '6.0.0'; + protected $minimumPhp = '8.2.0'; @@ -33,6 +33,16 @@ class Pkg_MokoOGInstallerScript return false; } + if (version_compare(JVERSION, $this->minimumJoomla, '<')) + { + Factory::getApplication()->enqueueMessage( + Text::sprintf('PKG_MOKOOG_JOOMLA_VERSION_ERROR', $this->minimumJoomla), + 'error' + ); + + return false; + } + $this->saveDownloadKey(); return true; @@ -128,7 +138,7 @@ class Pkg_MokoOGInstallerScript $db->getQuery(true) ->select([$db->quoteName('update_site_id'), $db->quoteName('extra_query')]) ->from($db->quoteName('#__update_sites')) - ->where('(' . $db->quoteName('name') . ' LIKE ' . $db->quote('%MokoJoomOpenGraph%') . ' OR ' . $db->quoteName('location') . ' LIKE ' . $db->quote('%MokoJoomOpenGraph%') . ')') + ->where('(' . $db->quoteName('name') . ' LIKE ' . $db->quote('%MokoSuiteOpenGraph%') . ' OR ' . $db->quoteName('location') . ' LIKE ' . $db->quote('%MokoSuiteOpenGraph%') . ')') ->setLimit(1) ); $site = $db->loadObject();