From 9e59163661a9898e45f5c57b5033ae5b3a6d78d6 Mon Sep 17 00:00:00 2001 From: aB0t Date: Mon, 8 Jul 2024 22:53:46 +0200 Subject: [PATCH] Release of v3.2.2-alpha7 Add push options to Joomla Power. Complete the Joomla Power Init and Reset features. Fix Gitea Contents class functions. Last Alpha release (feature block). --- CHANGELOG.md | 14 +- README.md | 10 +- admin/README.txt | 10 +- admin/access.xml | 1 + admin/controllers/admin_views.php | 20 +- admin/controllers/compiler.php | 20 +- admin/controllers/custom_codes.php | 20 +- admin/controllers/dynamic_gets.php | 20 +- admin/controllers/fields.php | 20 +- admin/controllers/joomla_components.php | 20 +- admin/controllers/joomla_plugins.php | 20 +- admin/controllers/joomla_power.php | 116 ++++- admin/controllers/joomla_powers.php | 160 +++++- admin/controllers/power.php | 14 + admin/controllers/powers.php | 47 +- admin/controllers/validation_rules.php | 20 +- .../en-GB/en-GB.com_componentbuilder.ini | 10 + .../en-GB/en-GB.com_componentbuilder.sys.ini | 2 + admin/models/admin_fields_relations.php | 12 +- admin/models/admin_view.php | 12 +- admin/models/class_extends.php | 12 +- admin/models/class_method.php | 12 +- admin/models/class_property.php | 12 +- admin/models/component_dashboard.php | 12 +- admin/models/component_router.php | 12 +- admin/models/custom_admin_view.php | 12 +- admin/models/custom_code.php | 12 +- admin/models/dynamic_get.php | 12 +- admin/models/field.php | 12 +- admin/models/fieldtype.php | 12 +- admin/models/joomla_component.php | 12 +- admin/models/joomla_module.php | 12 +- admin/models/joomla_plugin.php | 12 +- admin/models/language_translation.php | 12 +- admin/models/layout.php | 12 +- admin/models/library.php | 12 +- admin/models/placeholder.php | 12 +- admin/models/power.php | 12 +- admin/models/site_view.php | 12 +- admin/models/template.php | 12 +- admin/models/validation_rule.php | 12 +- admin/sql/install.mysql.utf8.sql | 493 +----------------- admin/views/joomla_power/view.html.php | 5 + admin/views/joomla_powers/view.html.php | 5 + componentbuilder.xml | 6 +- componentbuilder_update_server.xml | 6 +- .../src/Repository/Contents.php | 8 +- .../VDM.Joomla.Gitea/src/Utilities/Http.php | 6 +- .../VDM.Joomla/src/Abstraction/Grep.php | 43 +- .../Componentbuilder/JoomlaPower/Config.php | 37 +- .../src/Componentbuilder/JoomlaPower/Grep.php | 58 ++- .../JoomlaPower/Repository.php | 46 ++ .../JoomlaPower/Service/JoomlaPower.php | 34 +- .../src/Componentbuilder/Power/Config.php | 20 - .../VDM.Joomla/src/Data/Repository.php | 386 ++++++++++++++ .../src/Interfaces/GrepInterface.php | 10 + script.php | 4 +- .../en-GB/en-GB.com_componentbuilder.ini | 1 + 58 files changed, 1301 insertions(+), 687 deletions(-) create mode 100644 libraries/vendor_jcb/VDM.Joomla/src/Componentbuilder/JoomlaPower/Repository.php create mode 100644 libraries/vendor_jcb/VDM.Joomla/src/Data/Repository.php diff --git a/CHANGELOG.md b/CHANGELOG.md index fdda0c877..6756b4152 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,8 +1,9 @@ -# v3.2.2-alpha6 +# v3.2.2-alpha7 -- Add new subform classes -- Fix registry class methods return type -- Update all list and custom fields to use the new layouts +- Add push options to Joomla Power +- Complete the Joomla Power Init and Reset features +- Fix Gitea Contents class functions +- Last Alpha release (feature block) # v3.2.2-alpha @@ -12,7 +13,10 @@ - Update the Schema class to also update null mismatching if needed - Add repositories for better integration with gitea - Refactored the Data classes -- Add new Data classes +- Add new Data classes +- Add new subform classes +- Fix registry class methods return type +- Update all list and custom fields to use the new layouts # v3.2.1 diff --git a/README.md b/README.md index d09fb2fe7..4fd3b1786 100644 --- a/README.md +++ b/README.md @@ -9,7 +9,7 @@ The Component Builder for [Joomla](https://extensions.joomla.org/extension/compo Whether you're a seasoned [Joomla](https://extensions.joomla.org/extension/component-builder/) developer, or have just started, Component Builder will save you lots of time and money. A real must have! -You can install it quite easily and with no limitations. On [gitea](https://git.vdm.dev/joomla/Component-Builder/tags) is the latest release (3.2.2-alpha6) with **ALL** its features and **ALL** concepts totally open-source and free! +You can install it quite easily and with no limitations. On [gitea](https://git.vdm.dev/joomla/Component-Builder/tags) is the latest release (3.2.2-alpha7) with **ALL** its features and **ALL** concepts totally open-source and free! > Watch Quick Build of a Hello World component in [JCB on Youtube](https://www.youtube.com/watch?v=IQfsLYIeblk&list=PLQRGFI8XZ_wtGvPQZWBfDzzlERLQgpMRE&index=45) @@ -144,13 +144,13 @@ TODO + *Author*: [Llewellyn van der Merwe](mailto:joomla@vdm.io) + *Name*: [Component Builder](https://git.vdm.dev/joomla/Component-Builder) + *First Build*: 30th April, 2015 -+ *Last Build*: 28th June, 2024 -+ *Version*: 3.2.2-alpha6 ++ *Last Build*: 8th July, 2024 ++ *Version*: 3.2.2-alpha7 + *Copyright*: Copyright (C) 2015 Vast Development Method. All rights reserved. + *License*: GNU General Public License version 2 or later; see LICENSE.txt -+ *Line count*: **777954** ++ *Line count*: **779561** + *Field count*: **2104** -+ *File count*: **5399** ++ *File count*: **5409** + *Folder count*: **476** > This **component** was build with a [Joomla](https://extensions.joomla.org/extension/component-builder/) [Automated Component Builder](https://www.joomlacomponentbuilder.com). diff --git a/admin/README.txt b/admin/README.txt index d09fb2fe7..4fd3b1786 100644 --- a/admin/README.txt +++ b/admin/README.txt @@ -9,7 +9,7 @@ The Component Builder for [Joomla](https://extensions.joomla.org/extension/compo Whether you're a seasoned [Joomla](https://extensions.joomla.org/extension/component-builder/) developer, or have just started, Component Builder will save you lots of time and money. A real must have! -You can install it quite easily and with no limitations. On [gitea](https://git.vdm.dev/joomla/Component-Builder/tags) is the latest release (3.2.2-alpha6) with **ALL** its features and **ALL** concepts totally open-source and free! +You can install it quite easily and with no limitations. On [gitea](https://git.vdm.dev/joomla/Component-Builder/tags) is the latest release (3.2.2-alpha7) with **ALL** its features and **ALL** concepts totally open-source and free! > Watch Quick Build of a Hello World component in [JCB on Youtube](https://www.youtube.com/watch?v=IQfsLYIeblk&list=PLQRGFI8XZ_wtGvPQZWBfDzzlERLQgpMRE&index=45) @@ -144,13 +144,13 @@ TODO + *Author*: [Llewellyn van der Merwe](mailto:joomla@vdm.io) + *Name*: [Component Builder](https://git.vdm.dev/joomla/Component-Builder) + *First Build*: 30th April, 2015 -+ *Last Build*: 28th June, 2024 -+ *Version*: 3.2.2-alpha6 ++ *Last Build*: 8th July, 2024 ++ *Version*: 3.2.2-alpha7 + *Copyright*: Copyright (C) 2015 Vast Development Method. All rights reserved. + *License*: GNU General Public License version 2 or later; see LICENSE.txt -+ *Line count*: **777954** ++ *Line count*: **779561** + *Field count*: **2104** -+ *File count*: **5399** ++ *File count*: **5409** + *Folder count*: **476** > This **component** was build with a [Joomla](https://extensions.joomla.org/extension/component-builder/) [Automated Component Builder](https://www.joomlacomponentbuilder.com). diff --git a/admin/access.xml b/admin/access.xml index eb7688b8b..6a7660f37 100644 --- a/admin/access.xml +++ b/admin/access.xml @@ -419,6 +419,7 @@ + diff --git a/admin/controllers/admin_views.php b/admin/controllers/admin_views.php index 8c99d98c7..a0cad1842 100644 --- a/admin/controllers/admin_views.php +++ b/admin/controllers/admin_views.php @@ -117,27 +117,40 @@ class ComponentbuilderControllerAdmin_views extends AdminController /** - * Run the Expansion + * Runs the expansion module. * - * @return void + * This function performs several checks and operations: + * 1. It verifies the authenticity of the request to prevent request forgery. + * 2. It checks whether the current user has the necessary permissions to run the expansion module. + * 3. If the user is authorized, it attempts to run the expansion via an API call. + * 4. Depending on the result of the expansion operation, it sets the appropriate success or error message. + * 5. It redirects the user to a specified URL with the result message and status. + * + * @return bool True on successful expansion, false on failure. */ public function runExpansion() { // Check for request forgeries - Session::checkToken() or \jexit(Text::_('JINVALID_TOKEN')); + Session::checkToken() or die(Text::_('JINVALID_TOKEN')); + // check if user has the right $user = Factory::getUser(); + // set page redirect $redirect_url = Route::_('index.php?option=com_componentbuilder&view=admin_views', false); + // set massage $message = Text::_('COM_COMPONENTBUILDER_YOU_DO_NOT_HAVE_PERMISSION_TO_RUN_THE_EXPANSION_MODULE'); + // check if this user has the right to run expansion if($user->authorise('admin_views.run_expansion', 'com_componentbuilder')) { // set massage $message = Text::_('COM_COMPONENTBUILDER_EXPANSION_FAILED_PLEASE_CHECK_YOUR_SETTINGS_IN_THE_GLOBAL_OPTIONS_OF_JCB_UNDER_THE_DEVELOPMENT_METHOD_TAB'); + // run expansion via API $result = ComponentbuilderHelper::getFileContents(Uri::root() . 'index.php?option=com_componentbuilder&task=api.expand'); + // is there a message returned if (!is_numeric($result) && StringHelper::check($result)) { @@ -151,6 +164,7 @@ class ComponentbuilderControllerAdmin_views extends AdminController return true; } } + $this->setRedirect($redirect_url, $message, 'error'); return false; } diff --git a/admin/controllers/compiler.php b/admin/controllers/compiler.php index 622c810f9..2e83fc4ad 100644 --- a/admin/controllers/compiler.php +++ b/admin/controllers/compiler.php @@ -522,27 +522,40 @@ class ComponentbuilderControllerCompiler extends AdminController } /** - * Run the Expansion + * Runs the expansion module. * - * @return void + * This function performs several checks and operations: + * 1. It verifies the authenticity of the request to prevent request forgery. + * 2. It checks whether the current user has the necessary permissions to run the expansion module. + * 3. If the user is authorized, it attempts to run the expansion via an API call. + * 4. Depending on the result of the expansion operation, it sets the appropriate success or error message. + * 5. It redirects the user to a specified URL with the result message and status. + * + * @return bool True on successful expansion, false on failure. */ public function runExpansion() { // Check for request forgeries - Session::checkToken() or \jexit(Text::_('JINVALID_TOKEN')); + Session::checkToken() or die(Text::_('JINVALID_TOKEN')); + // check if user has the right $user = Factory::getUser(); + // set page redirect $redirect_url = Route::_('index.php?option=com_componentbuilder&view=compiler', false); + // set massage $message = Text::_('COM_COMPONENTBUILDER_YOU_DO_NOT_HAVE_PERMISSION_TO_RUN_THE_EXPANSION_MODULE'); + // check if this user has the right to run expansion if($user->authorise('compiler.run_expansion', 'com_componentbuilder')) { // set massage $message = Text::_('COM_COMPONENTBUILDER_EXPANSION_FAILED_PLEASE_CHECK_YOUR_SETTINGS_IN_THE_GLOBAL_OPTIONS_OF_JCB_UNDER_THE_DEVELOPMENT_METHOD_TAB'); + // run expansion via API $result = ComponentbuilderHelper::getFileContents(Uri::root() . 'index.php?option=com_componentbuilder&task=api.expand'); + // is there a message returned if (!is_numeric($result) && StringHelper::check($result)) { @@ -556,6 +569,7 @@ class ComponentbuilderControllerCompiler extends AdminController return true; } } + $this->setRedirect($redirect_url, $message, 'error'); return false; } diff --git a/admin/controllers/custom_codes.php b/admin/controllers/custom_codes.php index 84b7c9a61..21aa707e7 100644 --- a/admin/controllers/custom_codes.php +++ b/admin/controllers/custom_codes.php @@ -117,27 +117,40 @@ class ComponentbuilderControllerCustom_codes extends AdminController /** - * Run the Expansion + * Runs the expansion module. * - * @return void + * This function performs several checks and operations: + * 1. It verifies the authenticity of the request to prevent request forgery. + * 2. It checks whether the current user has the necessary permissions to run the expansion module. + * 3. If the user is authorized, it attempts to run the expansion via an API call. + * 4. Depending on the result of the expansion operation, it sets the appropriate success or error message. + * 5. It redirects the user to a specified URL with the result message and status. + * + * @return bool True on successful expansion, false on failure. */ public function runExpansion() { // Check for request forgeries - Session::checkToken() or \jexit(Text::_('JINVALID_TOKEN')); + Session::checkToken() or die(Text::_('JINVALID_TOKEN')); + // check if user has the right $user = Factory::getUser(); + // set page redirect $redirect_url = Route::_('index.php?option=com_componentbuilder&view=custom_codes', false); + // set massage $message = Text::_('COM_COMPONENTBUILDER_YOU_DO_NOT_HAVE_PERMISSION_TO_RUN_THE_EXPANSION_MODULE'); + // check if this user has the right to run expansion if($user->authorise('custom_codes.run_expansion', 'com_componentbuilder')) { // set massage $message = Text::_('COM_COMPONENTBUILDER_EXPANSION_FAILED_PLEASE_CHECK_YOUR_SETTINGS_IN_THE_GLOBAL_OPTIONS_OF_JCB_UNDER_THE_DEVELOPMENT_METHOD_TAB'); + // run expansion via API $result = ComponentbuilderHelper::getFileContents(Uri::root() . 'index.php?option=com_componentbuilder&task=api.expand'); + // is there a message returned if (!is_numeric($result) && StringHelper::check($result)) { @@ -151,6 +164,7 @@ class ComponentbuilderControllerCustom_codes extends AdminController return true; } } + $this->setRedirect($redirect_url, $message, 'error'); return false; } diff --git a/admin/controllers/dynamic_gets.php b/admin/controllers/dynamic_gets.php index e9fa22845..b2166207f 100644 --- a/admin/controllers/dynamic_gets.php +++ b/admin/controllers/dynamic_gets.php @@ -117,27 +117,40 @@ class ComponentbuilderControllerDynamic_gets extends AdminController /** - * Run the Expansion + * Runs the expansion module. * - * @return void + * This function performs several checks and operations: + * 1. It verifies the authenticity of the request to prevent request forgery. + * 2. It checks whether the current user has the necessary permissions to run the expansion module. + * 3. If the user is authorized, it attempts to run the expansion via an API call. + * 4. Depending on the result of the expansion operation, it sets the appropriate success or error message. + * 5. It redirects the user to a specified URL with the result message and status. + * + * @return bool True on successful expansion, false on failure. */ public function runExpansion() { // Check for request forgeries - Session::checkToken() or \jexit(Text::_('JINVALID_TOKEN')); + Session::checkToken() or die(Text::_('JINVALID_TOKEN')); + // check if user has the right $user = Factory::getUser(); + // set page redirect $redirect_url = Route::_('index.php?option=com_componentbuilder&view=dynamic_gets', false); + // set massage $message = Text::_('COM_COMPONENTBUILDER_YOU_DO_NOT_HAVE_PERMISSION_TO_RUN_THE_EXPANSION_MODULE'); + // check if this user has the right to run expansion if($user->authorise('dynamic_gets.run_expansion', 'com_componentbuilder')) { // set massage $message = Text::_('COM_COMPONENTBUILDER_EXPANSION_FAILED_PLEASE_CHECK_YOUR_SETTINGS_IN_THE_GLOBAL_OPTIONS_OF_JCB_UNDER_THE_DEVELOPMENT_METHOD_TAB'); + // run expansion via API $result = ComponentbuilderHelper::getFileContents(Uri::root() . 'index.php?option=com_componentbuilder&task=api.expand'); + // is there a message returned if (!is_numeric($result) && StringHelper::check($result)) { @@ -151,6 +164,7 @@ class ComponentbuilderControllerDynamic_gets extends AdminController return true; } } + $this->setRedirect($redirect_url, $message, 'error'); return false; } diff --git a/admin/controllers/fields.php b/admin/controllers/fields.php index 79da8d760..4131eb33e 100644 --- a/admin/controllers/fields.php +++ b/admin/controllers/fields.php @@ -117,27 +117,40 @@ class ComponentbuilderControllerFields extends AdminController /** - * Run the Expansion + * Runs the expansion module. * - * @return void + * This function performs several checks and operations: + * 1. It verifies the authenticity of the request to prevent request forgery. + * 2. It checks whether the current user has the necessary permissions to run the expansion module. + * 3. If the user is authorized, it attempts to run the expansion via an API call. + * 4. Depending on the result of the expansion operation, it sets the appropriate success or error message. + * 5. It redirects the user to a specified URL with the result message and status. + * + * @return bool True on successful expansion, false on failure. */ public function runExpansion() { // Check for request forgeries - Session::checkToken() or \jexit(Text::_('JINVALID_TOKEN')); + Session::checkToken() or die(Text::_('JINVALID_TOKEN')); + // check if user has the right $user = Factory::getUser(); + // set page redirect $redirect_url = Route::_('index.php?option=com_componentbuilder&view=fields', false); + // set massage $message = Text::_('COM_COMPONENTBUILDER_YOU_DO_NOT_HAVE_PERMISSION_TO_RUN_THE_EXPANSION_MODULE'); + // check if this user has the right to run expansion if($user->authorise('fields.run_expansion', 'com_componentbuilder')) { // set massage $message = Text::_('COM_COMPONENTBUILDER_EXPANSION_FAILED_PLEASE_CHECK_YOUR_SETTINGS_IN_THE_GLOBAL_OPTIONS_OF_JCB_UNDER_THE_DEVELOPMENT_METHOD_TAB'); + // run expansion via API $result = ComponentbuilderHelper::getFileContents(Uri::root() . 'index.php?option=com_componentbuilder&task=api.expand'); + // is there a message returned if (!is_numeric($result) && StringHelper::check($result)) { @@ -151,6 +164,7 @@ class ComponentbuilderControllerFields extends AdminController return true; } } + $this->setRedirect($redirect_url, $message, 'error'); return false; } diff --git a/admin/controllers/joomla_components.php b/admin/controllers/joomla_components.php index 1d6062886..97aeccb05 100644 --- a/admin/controllers/joomla_components.php +++ b/admin/controllers/joomla_components.php @@ -118,27 +118,40 @@ class ComponentbuilderControllerJoomla_components extends AdminController /** - * Run the Expansion + * Runs the expansion module. * - * @return void + * This function performs several checks and operations: + * 1. It verifies the authenticity of the request to prevent request forgery. + * 2. It checks whether the current user has the necessary permissions to run the expansion module. + * 3. If the user is authorized, it attempts to run the expansion via an API call. + * 4. Depending on the result of the expansion operation, it sets the appropriate success or error message. + * 5. It redirects the user to a specified URL with the result message and status. + * + * @return bool True on successful expansion, false on failure. */ public function runExpansion() { // Check for request forgeries - Session::checkToken() or \jexit(Text::_('JINVALID_TOKEN')); + Session::checkToken() or die(Text::_('JINVALID_TOKEN')); + // check if user has the right $user = Factory::getUser(); + // set page redirect $redirect_url = Route::_('index.php?option=com_componentbuilder&view=joomla_components', false); + // set massage $message = Text::_('COM_COMPONENTBUILDER_YOU_DO_NOT_HAVE_PERMISSION_TO_RUN_THE_EXPANSION_MODULE'); + // check if this user has the right to run expansion if($user->authorise('joomla_components.run_expansion', 'com_componentbuilder')) { // set massage $message = Text::_('COM_COMPONENTBUILDER_EXPANSION_FAILED_PLEASE_CHECK_YOUR_SETTINGS_IN_THE_GLOBAL_OPTIONS_OF_JCB_UNDER_THE_DEVELOPMENT_METHOD_TAB'); + // run expansion via API $result = ComponentbuilderHelper::getFileContents(Uri::root() . 'index.php?option=com_componentbuilder&task=api.expand'); + // is there a message returned if (!is_numeric($result) && StringHelper::check($result)) { @@ -152,6 +165,7 @@ class ComponentbuilderControllerJoomla_components extends AdminController return true; } } + $this->setRedirect($redirect_url, $message, 'error'); return false; } diff --git a/admin/controllers/joomla_plugins.php b/admin/controllers/joomla_plugins.php index 0c23e39d4..07aa2b729 100644 --- a/admin/controllers/joomla_plugins.php +++ b/admin/controllers/joomla_plugins.php @@ -52,27 +52,40 @@ class ComponentbuilderControllerJoomla_plugins extends AdminController /** - * Run the Expansion + * Runs the expansion module. * - * @return void + * This function performs several checks and operations: + * 1. It verifies the authenticity of the request to prevent request forgery. + * 2. It checks whether the current user has the necessary permissions to run the expansion module. + * 3. If the user is authorized, it attempts to run the expansion via an API call. + * 4. Depending on the result of the expansion operation, it sets the appropriate success or error message. + * 5. It redirects the user to a specified URL with the result message and status. + * + * @return bool True on successful expansion, false on failure. */ public function runExpansion() { // Check for request forgeries - Session::checkToken() or \jexit(Text::_('JINVALID_TOKEN')); + Session::checkToken() or die(Text::_('JINVALID_TOKEN')); + // check if user has the right $user = Factory::getUser(); + // set page redirect $redirect_url = Route::_('index.php?option=com_componentbuilder&view=joomla_plugins', false); + // set massage $message = Text::_('COM_COMPONENTBUILDER_YOU_DO_NOT_HAVE_PERMISSION_TO_RUN_THE_EXPANSION_MODULE'); + // check if this user has the right to run expansion if($user->authorise('joomla_plugins.run_expansion', 'com_componentbuilder')) { // set massage $message = Text::_('COM_COMPONENTBUILDER_EXPANSION_FAILED_PLEASE_CHECK_YOUR_SETTINGS_IN_THE_GLOBAL_OPTIONS_OF_JCB_UNDER_THE_DEVELOPMENT_METHOD_TAB'); + // run expansion via API $result = ComponentbuilderHelper::getFileContents(Uri::root() . 'index.php?option=com_componentbuilder&task=api.expand'); + // is there a message returned if (!is_numeric($result) && StringHelper::check($result)) { @@ -86,6 +99,7 @@ class ComponentbuilderControllerJoomla_plugins extends AdminController return true; } } + $this->setRedirect($redirect_url, $message, 'error'); return false; } diff --git a/admin/controllers/joomla_power.php b/admin/controllers/joomla_power.php index f4160fb38..2305342e8 100644 --- a/admin/controllers/joomla_power.php +++ b/admin/controllers/joomla_power.php @@ -49,6 +49,20 @@ class ComponentbuilderControllerJoomla_power extends FormController parent::__construct($config); } + /** + * Resets the specified Joomla power. + * + * This function performs several checks and operations: + * 1. It verifies the authenticity of the request to prevent request forgery. + * 2. It retrieves the item data posted by the user. + * 3. It checks whether the current user has the necessary permissions to reset the Joomla power. + * 4. It validates the presence of the necessary item identifiers (ID and GUID). + * 5. If the user is authorized and the identifiers are valid, it attempts to reset the specified power. + * 6. Depending on the result of the reset operation, it sets the appropriate success or error message. + * 7. It redirects the user to a specified URL with the result message and status. + * + * @return bool True on successful reset, false on failure. + */ public function resetPowers() { // Check for request forgeries @@ -79,18 +93,98 @@ class ComponentbuilderControllerJoomla_power extends FormController } elseif($user->authorise('power.reset', 'com_componentbuilder')) { - if (JoomlaPowerFactory::_('Joomlapower')->reset([$guid])) - { - // set success message - $message = '

'.Text::_('COM_COMPONENTBUILDER_SUCCESS').'

'; - $message .= '

'.Text::_('COM_COMPONENTBUILDER_THE_JOOMLA_POWER_HAS_SUCCESSFULLY_BEEN_RESET').'

'; - $status = 'success'; - $success = true; - } - else - { + try { + if (JoomlaPowerFactory::_('Joomlapower')->reset([$guid])) + { + // set success message + $message = '

'.Text::_('COM_COMPONENTBUILDER_SUCCESS').'

'; + $message .= '

'.Text::_('COM_COMPONENTBUILDER_THE_JOOMLA_POWER_HAS_SUCCESSFULLY_BEEN_RESET').'

'; + $status = 'success'; + $success = true; + } + else + { + $message = '

' . Text::_('COM_COMPONENTBUILDER_RESET_FAILED') . '

'; + $message .= '

' . Text::_('COM_COMPONENTBUILDER_THE_RESET_OF_THIS_JOOMLA_POWER_HAS_FAILED') . '

'; + } + } catch (\Exception $e) { $message = '

' . Text::_('COM_COMPONENTBUILDER_RESET_FAILED') . '

'; - $message .= '

' . Text::_('COM_COMPONENTBUILDER_THE_RESET_OF_THIS_JOOMLA_POWER_HAS_FAILED') . '

'; + $message .= '

' . \htmlspecialchars($e->getMessage()) . '

'; + } + } + + // set redirect + $redirect_url = Route::_( + 'index.php?option=com_componentbuilder&view=joomla_power' + . $this->getRedirectToItemAppend($id), $success + ); + + $this->setRedirect($redirect_url, $message, $status); + + return $success; + } + + /** + * Pushes the specified Joomla power. + * + * This function performs several checks and operations: + * 1. It verifies the authenticity of the request to prevent request forgery. + * 2. It retrieves the item data posted by the user. + * 3. It checks whether the current user has the necessary permissions to push the Joomla power. + * 4. It validates the presence of the necessary item identifiers (ID and GUID). + * 5. If the user is authorized and the identifiers are valid, it attempts to push the specified power. + * 6. Depending on the result of the push operation, it sets the appropriate success or error message. + * 7. It redirects the user to a specified URL with the result message and status. + * + * @return bool True on successful push, false on failure. + */ + public function pushPowers() + { + // Check for request forgeries + Session::checkToken() or die(Text::_('JINVALID_TOKEN')); + + // get Item posted + $item = $this->input->post->get('jform', array(), 'array'); + + // check if user has the right + $user = Factory::getUser(); + + // set default error message + $message = '

' . Text::_('COM_COMPONENTBUILDER_PERMISSION_DENIED') . '

'; + $message .= '

' . Text::_('COM_COMPONENTBUILDER_YOU_DO_NOT_HAVE_PERMISSION_TO_PUSH_THIS_JOOMLA_POWER') . '

'; + $status = 'error'; + $success = false; + + // load the ID + $id = $item['id'] ?? null; + $guid = $item['guid'] ?? null; + + // check if there is any selections + if ($id === null || $guid === null) + { + // set error message + $message = '

' . Text::_('COM_COMPONENTBUILDER_NOT_SAVED') . '

'; + $message .= '

' . Text::_('COM_COMPONENTBUILDER_YOU_MUST_FIRST_SAVE_THE_JOOMLA_POWER_BEFORE_YOU_CAN_USE_THIS_FEATURE') . '

'; + } + elseif($user->authorise('power.push', 'com_componentbuilder')) + { + try { + if (JoomlaPowerFactory::_('Joomla.Power.Repository')->set([$guid])) + { + // set success message + $message = '

'.Text::_('COM_COMPONENTBUILDER_SUCCESS').'

'; + $message .= '

'.Text::_('COM_COMPONENTBUILDER_THE_JOOMLA_POWER_HAS_SUCCESSFULLY_BEEN_PUSHED').'

'; + $status = 'success'; + $success = true; + } + else + { + $message = '

' . Text::_('COM_COMPONENTBUILDER_PUSH_FAILED') . '

'; + $message .= '

' . Text::_('COM_COMPONENTBUILDER_THE_PUSH_OF_THIS_JOOMLA_POWER_HAS_FAILED') . '

'; + } + } catch (\Exception $e) { + $message = '

' . Text::_('COM_COMPONENTBUILDER_PUSH_FAILED') . '

'; + $message .= '

' . \htmlspecialchars($e->getMessage()) . '

'; } } diff --git a/admin/controllers/joomla_powers.php b/admin/controllers/joomla_powers.php index 4f8b853d9..6c39c489a 100644 --- a/admin/controllers/joomla_powers.php +++ b/admin/controllers/joomla_powers.php @@ -50,6 +50,18 @@ class ComponentbuilderControllerJoomla_powers extends AdminController return parent::getModel($name, $prefix, $config); } + /** + * Initializes all remote Joomla powers and syncs them with the local database. + * + * This function performs several checks and operations: + * 1. It verifies the authenticity of the request to prevent request forgery. + * 2. It checks whether the current user has the necessary permissions to initialize the Joomla powers. + * 3. If the user is authorized, it attempts to initialize the remote Joomla powers. + * 4. Depending on the result of the initialization operation, it sets the appropriate success or error message. + * 5. It redirects the user to a specified URL with the result message and status. + * + * @return bool True on successful initialization, false on failure. + */ public function initPowers() { // Check for request forgeries @@ -66,19 +78,24 @@ class ComponentbuilderControllerJoomla_powers extends AdminController if($user->authorise('power.init', 'com_componentbuilder')) { - if (JoomlaPowerFactory::_('Joomlapower')->init()) - { - // set success message - $message = '

' . Text::_('COM_COMPONENTBUILDER_SUCCESSFULLY_INITIALIZED_ALL_REMOTE_JOOMLA_POWERS') . '

'; - $message .= '

' . Text::_('COM_COMPONENTBUILDER_THE_LOCAL_DATABASE_JOOMLA_POWERS_HAS_SUCCESSFULLY_BEEN_SYNCED_WITH_THE_REMOTE_REPOSITORIES') . '

'; + try { + if (JoomlaPowerFactory::_('Joomlapower')->init()) + { + // set success message + $message = '

' . Text::_('COM_COMPONENTBUILDER_SUCCESSFULLY_INITIALIZED_ALL_REMOTE_JOOMLA_POWERS') . '

'; + $message .= '

' . Text::_('COM_COMPONENTBUILDER_THE_LOCAL_DATABASE_JOOMLA_POWERS_HAS_SUCCESSFULLY_BEEN_SYNCED_WITH_THE_REMOTE_REPOSITORIES') . '

'; - $status = 'success'; - $success = true; - } - else - { + $status = 'success'; + $success = true; + } + else + { + $message = '

' . Text::_('COM_COMPONENTBUILDER_INITIALIZATION_FAILED') . '

'; + $message .= '

' . Text::_('COM_COMPONENTBUILDER_THE_INITIALIZATION_OF_THIS_JOOMLA_POWERS_HAS_FAILED') . '

'; + } + } catch (\Exception $e) { $message = '

' . Text::_('COM_COMPONENTBUILDER_INITIALIZATION_FAILED') . '

'; - $message .= '

' . Text::_('COM_COMPONENTBUILDER_THE_INITIALIZATION_OF_THIS_JOOMLA_POWERS_HAS_FAILED') . '

'; + $message .= '

' . \htmlspecialchars($e->getMessage()) . '

'; } } @@ -89,6 +106,21 @@ class ComponentbuilderControllerJoomla_powers extends AdminController return $success; } + /** + * Resets the selected Joomla powers. + * + * This function performs several checks and operations: + * 1. It verifies the authenticity of the request to prevent request forgery. + * 2. It retrieves the IDs of the selected powers from the user input. + * 3. It sanitizes the input by converting the IDs to integers. + * 4. It checks whether any powers have been selected. + * 5. It checks whether the current user has the necessary permissions to reset the selected Joomla powers. + * 6. If the user is authorized and powers are selected, it attempts to reset the selected Joomla powers. + * 7. Depending on the result of the reset operation, it sets the appropriate success or error message. + * 8. It redirects the user to a specified URL with the result message and status. + * + * @return bool True on successful reset, false on failure. + */ public function resetPowers() { // Check for request forgeries @@ -121,18 +153,102 @@ class ComponentbuilderControllerJoomla_powers extends AdminController { $guids = GetHelper::vars('joomla_power', $pks, 'id', 'guid'); - if (JoomlaPowerFactory::_('Joomlapower')->reset($guids)) - { - // set success message - $message = '

'.Text::_('COM_COMPONENTBUILDER_SUCCESS').'

'; - $message .= '

'.Text::_('COM_COMPONENTBUILDER_THESE_JOOMLA_POWERS_HAVE_SUCCESSFULLY_BEEN_RESET').'

'; - $status = 'success'; - $success = true; - } - else - { + try { + if (JoomlaPowerFactory::_('Joomlapower')->reset($guids)) + { + // set success message + $message = '

'.Text::_('COM_COMPONENTBUILDER_SUCCESS').'

'; + $message .= '

'.Text::_('COM_COMPONENTBUILDER_THESE_JOOMLA_POWERS_HAVE_SUCCESSFULLY_BEEN_RESET').'

'; + $status = 'success'; + $success = true; + } + else + { + $message = '

' . Text::_('COM_COMPONENTBUILDER_RESET_FAILED') . '

'; + $message .= '

' . Text::_('COM_COMPONENTBUILDER_THE_RESET_OF_THESE_JOOMLA_POWERS_HAS_FAILED') . '

'; + } + } catch (\Exception $e) { $message = '

' . Text::_('COM_COMPONENTBUILDER_RESET_FAILED') . '

'; - $message .= '

' . Text::_('COM_COMPONENTBUILDER_THE_RESET_OF_THESE_JOOMLA_POWERS_HAS_FAILED') . '

'; + $message .= '

' . \htmlspecialchars($e->getMessage()) . '

'; + } + + // set redirect + $redirect_url = Route::_('index.php?option=com_componentbuilder&view=joomla_powers', $success); + $this->setRedirect($redirect_url, $message, $status); + + return $success; + } + + // set redirect + $redirect_url = Route::_('index.php?option=com_componentbuilder&view=joomla_powers', false); + $this->setRedirect($redirect_url); + return $success; + } + + /** + * Pushes the selected Joomla powers. + * + * This function performs several checks and operations: + * 1. It verifies the authenticity of the request to prevent request forgery. + * 2. It retrieves the IDs of the selected powers from the user input. + * 3. It sanitizes the input by converting the IDs to integers. + * 4. It checks whether any powers have been selected. + * 5. It checks whether the current user has the necessary permissions to push the selected Joomla powers. + * 6. If the user is authorized and powers are selected, it attempts to push the selected Joomla powers. + * 7. Depending on the result of the push operation, it sets the appropriate success or error message. + * 8. It redirects the user to a specified URL with the result message and status. + * + * @return bool True on successful push, false on failure. + */ + public function pushPowers() + { + // Check for request forgeries + Session::checkToken() or die(Text::_('JINVALID_TOKEN')); + + // get IDS of the selected powers + $pks = $this->input->post->get('cid', [], 'array'); + + // Sanitize the input + ArrayHelper::toInteger($pks); + + // check if there is any selections + if ($pks === []) + { + // set error message + $message = '

'.Text::_('COM_COMPONENTBUILDER_NO_SELECTION_DETECTED').'

'; + $message .= '

'.Text::_('COM_COMPONENTBUILDER_PLEASE_FIRST_MAKE_A_SELECTION_FROM_THE_LIST').'

'; + // set redirect + $redirect_url = Route::_('index.php?option=com_componentbuilder&view=joomla_powers', false); + $this->setRedirect($redirect_url, $message, 'error'); + return false; + } + + $status = 'error'; + $success = false; + + // check if user has the right + $user = Factory::getUser(); + if($user->authorise('power.push', 'com_componentbuilder')) + { + $guids = GetHelper::vars('joomla_power', $pks, 'id', 'guid'); + + try { + if (JoomlaPowerFactory::_('Joomla.Power.Repository')->set($guids)) + { + // set success message + $message = '

'.Text::_('COM_COMPONENTBUILDER_SUCCESS').'

'; + $message .= '

'.Text::_('COM_COMPONENTBUILDER_THESE_JOOMLA_POWERS_HAVE_SUCCESSFULLY_BEEN_PUSHED').'

'; + $status = 'success'; + $success = true; + } + else + { + $message = '

' . Text::_('COM_COMPONENTBUILDER_PUSH_FAILED') . '

'; + $message .= '

' . Text::_('COM_COMPONENTBUILDER_THE_PUSH_OF_THESE_JOOMLA_POWERS_HAS_FAILED') . '

'; + } + } catch (\Exception $e) { + $message = '

' . Text::_('COM_COMPONENTBUILDER_PUSH_FAILED') . '

'; + $message .= '

' . \htmlspecialchars($e->getMessage()) . '

'; } // set redirect diff --git a/admin/controllers/power.php b/admin/controllers/power.php index bec57a81d..9a4a8d402 100644 --- a/admin/controllers/power.php +++ b/admin/controllers/power.php @@ -49,6 +49,20 @@ class ComponentbuilderControllerPower extends FormController parent::__construct($config); } + /** + * Resets the specified power. + * + * This function performs several checks and operations: + * 1. It verifies the authenticity of the request to prevent request forgery. + * 2. It retrieves the item data posted by the user. + * 3. It checks whether the current user has the necessary permissions to reset the power. + * 4. It validates the presence of the necessary item identifiers (ID and GUID). + * 5. If the user is authorized and the identifiers are valid, it attempts to reset the specified power. + * 6. Depending on the result of the reset operation, it sets the appropriate success or error message. + * 7. It redirects the user to a specified URL with the result message and status. + * + * @return bool True on successful reset, false on failure. + */ public function resetPowers() { // Check for request forgeries diff --git a/admin/controllers/powers.php b/admin/controllers/powers.php index c66cfcd6e..86410875b 100644 --- a/admin/controllers/powers.php +++ b/admin/controllers/powers.php @@ -54,27 +54,40 @@ class ComponentbuilderControllerPowers extends AdminController /** - * Run the Expansion + * Runs the expansion module. * - * @return void + * This function performs several checks and operations: + * 1. It verifies the authenticity of the request to prevent request forgery. + * 2. It checks whether the current user has the necessary permissions to run the expansion module. + * 3. If the user is authorized, it attempts to run the expansion via an API call. + * 4. Depending on the result of the expansion operation, it sets the appropriate success or error message. + * 5. It redirects the user to a specified URL with the result message and status. + * + * @return bool True on successful expansion, false on failure. */ public function runExpansion() { // Check for request forgeries - Session::checkToken() or \jexit(Text::_('JINVALID_TOKEN')); + Session::checkToken() or die(Text::_('JINVALID_TOKEN')); + // check if user has the right $user = Factory::getUser(); + // set page redirect $redirect_url = Route::_('index.php?option=com_componentbuilder&view=powers', false); + // set massage $message = Text::_('COM_COMPONENTBUILDER_YOU_DO_NOT_HAVE_PERMISSION_TO_RUN_THE_EXPANSION_MODULE'); + // check if this user has the right to run expansion if($user->authorise('powers.run_expansion', 'com_componentbuilder')) { // set massage $message = Text::_('COM_COMPONENTBUILDER_EXPANSION_FAILED_PLEASE_CHECK_YOUR_SETTINGS_IN_THE_GLOBAL_OPTIONS_OF_JCB_UNDER_THE_DEVELOPMENT_METHOD_TAB'); + // run expansion via API $result = ComponentbuilderHelper::getFileContents(Uri::root() . 'index.php?option=com_componentbuilder&task=api.expand'); + // is there a message returned if (!is_numeric($result) && StringHelper::check($result)) { @@ -88,10 +101,23 @@ class ComponentbuilderControllerPowers extends AdminController return true; } } + $this->setRedirect($redirect_url, $message, 'error'); return false; } + /** + * Initializes all remote powers and syncs them with the local database. + * + * This function performs several checks and operations: + * 1. It verifies the authenticity of the request to prevent request forgery. + * 2. It checks whether the current user has the necessary permissions to initialize the powers. + * 3. If the user is authorized, it attempts to initialize the remote powers. + * 4. Depending on the result of the initialization operation, it sets the appropriate success or error message. + * 5. It redirects the user to a specified URL with the result message and status. + * + * @return bool True on successful initialization, false on failure. + */ public function initPowers() { // Check for request forgeries @@ -131,6 +157,21 @@ class ComponentbuilderControllerPowers extends AdminController return $success; } + /** + * Resets the selected powers. + * + * This function performs several checks and operations: + * 1. It verifies the authenticity of the request to prevent request forgery. + * 2. It retrieves the IDs of the selected powers from the user input. + * 3. It sanitizes the input by converting the IDs to integers. + * 4. It checks whether any powers have been selected. + * 5. It checks whether the current user has the necessary permissions to reset the selected powers. + * 6. If the user is authorized and powers are selected, it attempts to reset the selected powers. + * 7. Depending on the result of the reset operation, it sets the appropriate success or error message. + * 8. It redirects the user to a specified URL with the result message and status. + * + * @return bool True on successful reset, false on failure. + */ public function resetPowers() { // Check for request forgeries diff --git a/admin/controllers/validation_rules.php b/admin/controllers/validation_rules.php index f2f78f12d..e4847f1c1 100644 --- a/admin/controllers/validation_rules.php +++ b/admin/controllers/validation_rules.php @@ -117,27 +117,40 @@ class ComponentbuilderControllerValidation_rules extends AdminController /** - * Run the Expansion + * Runs the expansion module. * - * @return void + * This function performs several checks and operations: + * 1. It verifies the authenticity of the request to prevent request forgery. + * 2. It checks whether the current user has the necessary permissions to run the expansion module. + * 3. If the user is authorized, it attempts to run the expansion via an API call. + * 4. Depending on the result of the expansion operation, it sets the appropriate success or error message. + * 5. It redirects the user to a specified URL with the result message and status. + * + * @return bool True on successful expansion, false on failure. */ public function runExpansion() { // Check for request forgeries - Session::checkToken() or \jexit(Text::_('JINVALID_TOKEN')); + Session::checkToken() or die(Text::_('JINVALID_TOKEN')); + // check if user has the right $user = Factory::getUser(); + // set page redirect $redirect_url = Route::_('index.php?option=com_componentbuilder&view=validation_rules', false); + // set massage $message = Text::_('COM_COMPONENTBUILDER_YOU_DO_NOT_HAVE_PERMISSION_TO_RUN_THE_EXPANSION_MODULE'); + // check if this user has the right to run expansion if($user->authorise('validation_rules.run_expansion', 'com_componentbuilder')) { // set massage $message = Text::_('COM_COMPONENTBUILDER_EXPANSION_FAILED_PLEASE_CHECK_YOUR_SETTINGS_IN_THE_GLOBAL_OPTIONS_OF_JCB_UNDER_THE_DEVELOPMENT_METHOD_TAB'); + // run expansion via API $result = ComponentbuilderHelper::getFileContents(Uri::root() . 'index.php?option=com_componentbuilder&task=api.expand'); + // is there a message returned if (!is_numeric($result) && StringHelper::check($result)) { @@ -151,6 +164,7 @@ class ComponentbuilderControllerValidation_rules extends AdminController return true; } } + $this->setRedirect($redirect_url, $message, 'error'); return false; } diff --git a/admin/language/en-GB/en-GB.com_componentbuilder.ini b/admin/language/en-GB/en-GB.com_componentbuilder.ini index 9b90b2f51..f3fb1c9eb 100644 --- a/admin/language/en-GB/en-GB.com_componentbuilder.ini +++ b/admin/language/en-GB/en-GB.com_componentbuilder.ini @@ -6912,6 +6912,8 @@ COM_COMPONENTBUILDER_JOOMLA_POWER_NEW="A New Joomla Power" COM_COMPONENTBUILDER_JOOMLA_POWER_ORDERING_LABEL="Ordering" COM_COMPONENTBUILDER_JOOMLA_POWER_PERMISSION="Permissions" COM_COMPONENTBUILDER_JOOMLA_POWER_PUBLISHING="Publishing" +COM_COMPONENTBUILDER_JOOMLA_POWER_PUSH_BUTTON_ACCESS="Joomla Power Push Button Access" +COM_COMPONENTBUILDER_JOOMLA_POWER_PUSH_BUTTON_ACCESS_DESC="Allows the users in this group to access the push button." COM_COMPONENTBUILDER_JOOMLA_POWER_RESET_BUTTON_ACCESS="Joomla Power Reset Button Access" COM_COMPONENTBUILDER_JOOMLA_POWER_RESET_BUTTON_ACCESS_DESC="Allows the users in this group to access the reset button." COM_COMPONENTBUILDER_JOOMLA_POWER_SAVE_WARNING="Alias already existed so a number was added at the end. You can re-edit the Joomla Power to customise the alias." @@ -7659,6 +7661,7 @@ COM_COMPONENTBUILDER_PATH_TO_THE_ZIPPED_PACKAGE_IS_CODESCODE_BR_S_S="Path to the COM_COMPONENTBUILDER_PERMISSIONS="Permissions" COM_COMPONENTBUILDER_PERMISSION_DENIED="Permission Denied!" COM_COMPONENTBUILDER_PFILE_AT_BSSB_GAVE_THE_FOLLOWING_ERRORBR_SP="

File at %s/%s gave the following error!
%s

" +COM_COMPONENTBUILDER_PJOOMLA_POWERB_REPOSITORY_AT_BSSB_GAVE_THE_FOLLOWING_ERRORBR_SP="

Joomla Power repository at %s/%s gave the following error!
%s

" COM_COMPONENTBUILDER_PJOOMLA_POWER_BGUIDSB_NOT_FOUNDP="

Joomla Power guid:%s not found!

" COM_COMPONENTBUILDER_PJOOMLA_POWER_BGUIDSB_WAS_FOUND_BUT_MISSING_A_NAMESPACE_VALUE_FOR_JOOMLA_SP="

Joomla Power guid:%s was found, but missing a namespace value for Joomla %s!

" COM_COMPONENTBUILDER_PLACEHOLDER="Placeholder" @@ -7948,6 +7951,8 @@ COM_COMPONENTBUILDER_PS_NAMING_MISMATCH_ERROR_SPPTHE_S_NAME_IS_BSB_AND_THE_ENDIN COM_COMPONENTBUILDER_PUBLIC_ACCESS="Public Access" COM_COMPONENTBUILDER_PUBLISHED="Published" COM_COMPONENTBUILDER_PUBLISHING="Publishing" +COM_COMPONENTBUILDER_PUSH="Push" +COM_COMPONENTBUILDER_PUSH_FAILED="Push Failed!" COM_COMPONENTBUILDER_README="Readme" COM_COMPONENTBUILDER_READY_TO_COMPILE_A_COMPONENT="Ready to compile a component" COM_COMPONENTBUILDER_REFRESH="Refresh" @@ -9072,6 +9077,7 @@ COM_COMPONENTBUILDER_THERE_WAS_AN_ERROR_GETTING_THE_PACKAGE_INFO="There was an e COM_COMPONENTBUILDER_THERE_WAS_A_PROBLEM_BNO_VIEW_OR_ID_FOUND_IN_SESSION_OR_VIEW_NOT_ALLOWED_TO_ACCESS_AREAB_WE_COULD_NOT_LOAD_ANY_LINKED_TO_VALUES_PLEASE_INFORM_YOUR_SYSTEM_ADMINISTRATOR="There was a problem, no view or id found in session or view not allowed to access area, we could not load any linked to values. Please inform your system administrator!" COM_COMPONENTBUILDER_THESE_ARE_THE_SAME_PACKAGES_FOUND_ON_A_S_GITHUBA_AND_CAN_BE_IMPORTED_BY_SIMPLY_MAKING_A_SELECTION_AND_THEN_CLICKING_THE_BGET_PACKAGEB_BUTTONBR_SOME_OF_THESE_PACKAGES_WOULD_REQUIRE_A_KEY_SINCE_THEY_ARE_NOT_FREE="These are the same packages found on gitHub and can be imported by simply making a selection and then clicking the [Get Package] button.
Some of these packages would require a key, since they are not free." COM_COMPONENTBUILDER_THESE_ARE_THE_SAME_PACKAGES_FOUND_ON_A_S_GITHUBA_AND_CAN_BE_IMPORTED_BY_SIMPLY_MAKING_A_SELECTION_AND_THEN_CLICKING_THE_BGET_PACKAGEB_BUTTONBR_SOME_OF_THESE_PACKAGES_WOULD_REQUIRE_A_KEY_SINCE_THEY_ARE_NOT_FREE_A_S_GET_A_KEY_TODAYA="These are the same packages found on gitHub and can be imported by simply making a selection and then clicking the [Get Package] button.
Some of these packages would require a key, since they are not free. Get a key today!." +COM_COMPONENTBUILDER_THESE_JOOMLA_POWERS_HAVE_SUCCESSFULLY_BEEN_PUSHED="These Joomla powers have successfully been pushed." COM_COMPONENTBUILDER_THESE_JOOMLA_POWERS_HAVE_SUCCESSFULLY_BEEN_RESET="These Joomla powers have successfully been reset." COM_COMPONENTBUILDER_THESE_OPTIONS_ARE_NOT_AVAILABLE_TO_THE_FIELD_IF_BNONE_DBB_OPTION_IS_SELECTED="These options are not available to the field if None DB option is selected." COM_COMPONENTBUILDER_THESE_OPTIONS_ARE_ONLY_AVAILABLE_TO_THE_FIELD_IF_BSHOW_IN_LIST_VIEWB_OPTION_IS_SELECTED="These options are only available to the field if Show in list view option is selected." @@ -9122,6 +9128,7 @@ COM_COMPONENTBUILDER_THE_FTP_CONNECTION_FOR_BSB_COULD_NOT_BE_MADE_PLEASE_CHECK_Y COM_COMPONENTBUILDER_THE_FTP_SIGNATURE_FOR_BSB_WAS_NOT_WELL_FORMED_PLEASE_CHECK_YOUR_SIGNATURE_DETAILS="The FTP signature for %s was not well formed, please check your signature details!" COM_COMPONENTBUILDER_THE_INITIALIZATION_OF_THIS_JOOMLA_POWERS_HAS_FAILED="The initialization of this Joomla powers has failed." COM_COMPONENTBUILDER_THE_INITIALIZATION_OF_THIS_POWERS_HAS_FAILED="The initialization of this powers has failed." +COM_COMPONENTBUILDER_THE_JOOMLA_POWER_HAS_SUCCESSFULLY_BEEN_PUSHED="The Joomla power has successfully been pushed." COM_COMPONENTBUILDER_THE_JOOMLA_POWER_HAS_SUCCESSFULLY_BEEN_RESET="The Joomla power has successfully been reset." COM_COMPONENTBUILDER_THE_KEY_OF_THIS_PACKAGE="The key of this package." COM_COMPONENTBUILDER_THE_LIBRARY_CONFIG_FIELDS="The library config fields" @@ -9142,6 +9149,8 @@ COM_COMPONENTBUILDER_THE_POWER_HAS_SUCCESSFULLY_BEEN_RESET="The power has succes COM_COMPONENTBUILDER_THE_PRIVATE_KEY_FIELD_COULD_NOT_BE_LOADED_FOR_BSB_SERVER="The private key field could not be loaded for %s server!" COM_COMPONENTBUILDER_THE_PRIVATE_KEY_FILE_COULD_NOT_BE_LOADEDFOUND_FOR_BSB_SERVER="The private key file could not be loaded/found for %s server!" COM_COMPONENTBUILDER_THE_PRO_BOARD_IS_LOADING="The pro board is loading" +COM_COMPONENTBUILDER_THE_PUSH_OF_THESE_JOOMLA_POWERS_HAS_FAILED="The push of these Joomla powers has failed." +COM_COMPONENTBUILDER_THE_PUSH_OF_THIS_JOOMLA_POWER_HAS_FAILED="The push of this Joomla power has failed." COM_COMPONENTBUILDER_THE_README_IS_LOADING="The readme is loading" COM_COMPONENTBUILDER_THE_REPLACE_PROCESS_HAD_AN_ERROR_WITH_TABLE="The replace process had an error with table" COM_COMPONENTBUILDER_THE_RESET_OF_THESE_JOOMLA_POWERS_HAS_FAILED="The reset of these Joomla powers has failed." @@ -9402,6 +9411,7 @@ COM_COMPONENTBUILDER_YOU_DO_NOT_HAVE_PERMISSION_TO_INSTALL_THESE_EXTENSIONS="You COM_COMPONENTBUILDER_YOU_DO_NOT_HAVE_PERMISSION_TO_INSTALL_THE_COMPONENT="You do not have permission to install the component!" COM_COMPONENTBUILDER_YOU_DO_NOT_HAVE_PERMISSION_TO_INSTALL_THE_MODULE="You do not have permission to install the module!" COM_COMPONENTBUILDER_YOU_DO_NOT_HAVE_PERMISSION_TO_INSTALL_THE_PLUGIN="You do not have permission to install the plugin!" +COM_COMPONENTBUILDER_YOU_DO_NOT_HAVE_PERMISSION_TO_PUSH_THIS_JOOMLA_POWER="You do not have permission to push this Joomla power" COM_COMPONENTBUILDER_YOU_DO_NOT_HAVE_PERMISSION_TO_RESET_THIS_JOOMLA_POWER="You do not have permission to reset this Joomla power" COM_COMPONENTBUILDER_YOU_DO_NOT_HAVE_PERMISSION_TO_RESET_THIS_POWER="You do not have permission to reset this power" COM_COMPONENTBUILDER_YOU_DO_NOT_HAVE_PERMISSION_TO_RUN_THE_EXPANSION_MODULE="You do not have permission to run the expansion module!" diff --git a/admin/language/en-GB/en-GB.com_componentbuilder.sys.ini b/admin/language/en-GB/en-GB.com_componentbuilder.sys.ini index fdcc753da..da976856b 100644 --- a/admin/language/en-GB/en-GB.com_componentbuilder.sys.ini +++ b/admin/language/en-GB/en-GB.com_componentbuilder.sys.ini @@ -850,6 +850,8 @@ COM_COMPONENTBUILDER_JOOMLA_POWERS_SUBMENU="Joomla Powers Submenu" COM_COMPONENTBUILDER_JOOMLA_POWERS_SUBMENU_DESC="Allows the users in this group to submenu of joomla power" COM_COMPONENTBUILDER_JOOMLA_POWER_INIT_BUTTON_ACCESS="Joomla Power Init Button Access" COM_COMPONENTBUILDER_JOOMLA_POWER_INIT_BUTTON_ACCESS_DESC="Allows the users in this group to access the init button." +COM_COMPONENTBUILDER_JOOMLA_POWER_PUSH_BUTTON_ACCESS="Joomla Power Push Button Access" +COM_COMPONENTBUILDER_JOOMLA_POWER_PUSH_BUTTON_ACCESS_DESC="Allows the users in this group to access the push button." COM_COMPONENTBUILDER_JOOMLA_POWER_RESET_BUTTON_ACCESS="Joomla Power Reset Button Access" COM_COMPONENTBUILDER_JOOMLA_POWER_RESET_BUTTON_ACCESS_DESC="Allows the users in this group to access the reset button." COM_COMPONENTBUILDER_LANGUAGES_ACCESS="Languages Access" diff --git a/admin/models/admin_fields_relations.php b/admin/models/admin_fields_relations.php index f8f8295fb..268b81f87 100644 --- a/admin/models/admin_fields_relations.php +++ b/admin/models/admin_fields_relations.php @@ -86,10 +86,18 @@ class ComponentbuilderModelAdmin_fields_relations extends AdminModel /** - * get VDM internal session key + * Retrieves or generates a Vast Development Method (VDM) key for the current item. * - * @return string the session key + * This function performs the following operations: + * 1. Checks if the VDM key is already set. If not, it proceeds to generate or retrieve one. + * 2. Determines the item ID based on the presence of a specific argument. + * 3. Attempts to retrieve an existing VDM key from a helper method using the item ID. + * 4. If a VDM key is not found, it generates a new random VDM key. + * 5. Stores the VDM key and associates it with the item ID in a helper method. + * 6. Optionally, stores return and GUID values if available. + * 7. Returns the VDM key. * + * @return string The VDM key for the current item. */ public function getVDM() { diff --git a/admin/models/admin_view.php b/admin/models/admin_view.php index 4009a3dd5..ad09c4062 100644 --- a/admin/models/admin_view.php +++ b/admin/models/admin_view.php @@ -235,10 +235,18 @@ class ComponentbuilderModelAdmin_view extends AdminModel /** - * get VDM internal session key + * Retrieves or generates a Vast Development Method (VDM) key for the current item. * - * @return string the session key + * This function performs the following operations: + * 1. Checks if the VDM key is already set. If not, it proceeds to generate or retrieve one. + * 2. Determines the item ID based on the presence of a specific argument. + * 3. Attempts to retrieve an existing VDM key from a helper method using the item ID. + * 4. If a VDM key is not found, it generates a new random VDM key. + * 5. Stores the VDM key and associates it with the item ID in a helper method. + * 6. Optionally, stores return and GUID values if available. + * 7. Returns the VDM key. * + * @return string The VDM key for the current item. */ public function getVDM() { diff --git a/admin/models/class_extends.php b/admin/models/class_extends.php index d7b0ea4ac..410963f91 100644 --- a/admin/models/class_extends.php +++ b/admin/models/class_extends.php @@ -90,10 +90,18 @@ class ComponentbuilderModelClass_extends extends AdminModel /** - * get VDM internal session key + * Retrieves or generates a Vast Development Method (VDM) key for the current item. * - * @return string the session key + * This function performs the following operations: + * 1. Checks if the VDM key is already set. If not, it proceeds to generate or retrieve one. + * 2. Determines the item ID based on the presence of a specific argument. + * 3. Attempts to retrieve an existing VDM key from a helper method using the item ID. + * 4. If a VDM key is not found, it generates a new random VDM key. + * 5. Stores the VDM key and associates it with the item ID in a helper method. + * 6. Optionally, stores return and GUID values if available. + * 7. Returns the VDM key. * + * @return string The VDM key for the current item. */ public function getVDM() { diff --git a/admin/models/class_method.php b/admin/models/class_method.php index dee338956..980df2869 100644 --- a/admin/models/class_method.php +++ b/admin/models/class_method.php @@ -94,10 +94,18 @@ class ComponentbuilderModelClass_method extends AdminModel /** - * get VDM internal session key + * Retrieves or generates a Vast Development Method (VDM) key for the current item. * - * @return string the session key + * This function performs the following operations: + * 1. Checks if the VDM key is already set. If not, it proceeds to generate or retrieve one. + * 2. Determines the item ID based on the presence of a specific argument. + * 3. Attempts to retrieve an existing VDM key from a helper method using the item ID. + * 4. If a VDM key is not found, it generates a new random VDM key. + * 5. Stores the VDM key and associates it with the item ID in a helper method. + * 6. Optionally, stores return and GUID values if available. + * 7. Returns the VDM key. * + * @return string The VDM key for the current item. */ public function getVDM() { diff --git a/admin/models/class_property.php b/admin/models/class_property.php index c306dcb82..123d1c9cb 100644 --- a/admin/models/class_property.php +++ b/admin/models/class_property.php @@ -91,10 +91,18 @@ class ComponentbuilderModelClass_property extends AdminModel /** - * get VDM internal session key + * Retrieves or generates a Vast Development Method (VDM) key for the current item. * - * @return string the session key + * This function performs the following operations: + * 1. Checks if the VDM key is already set. If not, it proceeds to generate or retrieve one. + * 2. Determines the item ID based on the presence of a specific argument. + * 3. Attempts to retrieve an existing VDM key from a helper method using the item ID. + * 4. If a VDM key is not found, it generates a new random VDM key. + * 5. Stores the VDM key and associates it with the item ID in a helper method. + * 6. Optionally, stores return and GUID values if available. + * 7. Returns the VDM key. * + * @return string The VDM key for the current item. */ public function getVDM() { diff --git a/admin/models/component_dashboard.php b/admin/models/component_dashboard.php index b31983261..e87040075 100644 --- a/admin/models/component_dashboard.php +++ b/admin/models/component_dashboard.php @@ -94,10 +94,18 @@ class ComponentbuilderModelComponent_dashboard extends AdminModel /** - * get VDM internal session key + * Retrieves or generates a Vast Development Method (VDM) key for the current item. * - * @return string the session key + * This function performs the following operations: + * 1. Checks if the VDM key is already set. If not, it proceeds to generate or retrieve one. + * 2. Determines the item ID based on the presence of a specific argument. + * 3. Attempts to retrieve an existing VDM key from a helper method using the item ID. + * 4. If a VDM key is not found, it generates a new random VDM key. + * 5. Stores the VDM key and associates it with the item ID in a helper method. + * 6. Optionally, stores return and GUID values if available. + * 7. Returns the VDM key. * + * @return string The VDM key for the current item. */ public function getVDM() { diff --git a/admin/models/component_router.php b/admin/models/component_router.php index e4134d45e..c582ae9f7 100644 --- a/admin/models/component_router.php +++ b/admin/models/component_router.php @@ -95,10 +95,18 @@ class ComponentbuilderModelComponent_router extends AdminModel /** - * get VDM internal session key + * Retrieves or generates a Vast Development Method (VDM) key for the current item. * - * @return string the session key + * This function performs the following operations: + * 1. Checks if the VDM key is already set. If not, it proceeds to generate or retrieve one. + * 2. Determines the item ID based on the presence of a specific argument. + * 3. Attempts to retrieve an existing VDM key from a helper method using the item ID. + * 4. If a VDM key is not found, it generates a new random VDM key. + * 5. Stores the VDM key and associates it with the item ID in a helper method. + * 6. Optionally, stores return and GUID values if available. + * 7. Returns the VDM key. * + * @return string The VDM key for the current item. */ public function getVDM() { diff --git a/admin/models/custom_admin_view.php b/admin/models/custom_admin_view.php index d34f0a455..63905590a 100644 --- a/admin/models/custom_admin_view.php +++ b/admin/models/custom_admin_view.php @@ -152,10 +152,18 @@ class ComponentbuilderModelCustom_admin_view extends AdminModel /** - * get VDM internal session key + * Retrieves or generates a Vast Development Method (VDM) key for the current item. * - * @return string the session key + * This function performs the following operations: + * 1. Checks if the VDM key is already set. If not, it proceeds to generate or retrieve one. + * 2. Determines the item ID based on the presence of a specific argument. + * 3. Attempts to retrieve an existing VDM key from a helper method using the item ID. + * 4. If a VDM key is not found, it generates a new random VDM key. + * 5. Stores the VDM key and associates it with the item ID in a helper method. + * 6. Optionally, stores return and GUID values if available. + * 7. Returns the VDM key. * + * @return string The VDM key for the current item. */ public function getVDM() { diff --git a/admin/models/custom_code.php b/admin/models/custom_code.php index 52daa7d24..a82a9e7a1 100644 --- a/admin/models/custom_code.php +++ b/admin/models/custom_code.php @@ -106,10 +106,18 @@ class ComponentbuilderModelCustom_code extends AdminModel /** - * get VDM internal session key + * Retrieves or generates a Vast Development Method (VDM) key for the current item. * - * @return string the session key + * This function performs the following operations: + * 1. Checks if the VDM key is already set. If not, it proceeds to generate or retrieve one. + * 2. Determines the item ID based on the presence of a specific argument. + * 3. Attempts to retrieve an existing VDM key from a helper method using the item ID. + * 4. If a VDM key is not found, it generates a new random VDM key. + * 5. Stores the VDM key and associates it with the item ID in a helper method. + * 6. Optionally, stores return and GUID values if available. + * 7. Returns the VDM key. * + * @return string The VDM key for the current item. */ public function getVDM() { diff --git a/admin/models/dynamic_get.php b/admin/models/dynamic_get.php index 7a8df707a..494d8d467 100644 --- a/admin/models/dynamic_get.php +++ b/admin/models/dynamic_get.php @@ -146,10 +146,18 @@ class ComponentbuilderModelDynamic_get extends AdminModel /** - * get VDM internal session key + * Retrieves or generates a Vast Development Method (VDM) key for the current item. * - * @return string the session key + * This function performs the following operations: + * 1. Checks if the VDM key is already set. If not, it proceeds to generate or retrieve one. + * 2. Determines the item ID based on the presence of a specific argument. + * 3. Attempts to retrieve an existing VDM key from a helper method using the item ID. + * 4. If a VDM key is not found, it generates a new random VDM key. + * 5. Stores the VDM key and associates it with the item ID in a helper method. + * 6. Optionally, stores return and GUID values if available. + * 7. Returns the VDM key. * + * @return string The VDM key for the current item. */ public function getVDM() { diff --git a/admin/models/field.php b/admin/models/field.php index 6646be4d9..183b42695 100644 --- a/admin/models/field.php +++ b/admin/models/field.php @@ -139,10 +139,18 @@ class ComponentbuilderModelField extends AdminModel /** - * get VDM internal session key + * Retrieves or generates a Vast Development Method (VDM) key for the current item. * - * @return string the session key + * This function performs the following operations: + * 1. Checks if the VDM key is already set. If not, it proceeds to generate or retrieve one. + * 2. Determines the item ID based on the presence of a specific argument. + * 3. Attempts to retrieve an existing VDM key from a helper method using the item ID. + * 4. If a VDM key is not found, it generates a new random VDM key. + * 5. Stores the VDM key and associates it with the item ID in a helper method. + * 6. Optionally, stores return and GUID values if available. + * 7. Returns the VDM key. * + * @return string The VDM key for the current item. */ public function getVDM() { diff --git a/admin/models/fieldtype.php b/admin/models/fieldtype.php index f8f7ab619..660728d53 100644 --- a/admin/models/fieldtype.php +++ b/admin/models/fieldtype.php @@ -113,10 +113,18 @@ class ComponentbuilderModelFieldtype extends AdminModel /** - * get VDM internal session key + * Retrieves or generates a Vast Development Method (VDM) key for the current item. * - * @return string the session key + * This function performs the following operations: + * 1. Checks if the VDM key is already set. If not, it proceeds to generate or retrieve one. + * 2. Determines the item ID based on the presence of a specific argument. + * 3. Attempts to retrieve an existing VDM key from a helper method using the item ID. + * 4. If a VDM key is not found, it generates a new random VDM key. + * 5. Stores the VDM key and associates it with the item ID in a helper method. + * 6. Optionally, stores return and GUID values if available. + * 7. Returns the VDM key. * + * @return string The VDM key for the current item. */ public function getVDM() { diff --git a/admin/models/joomla_component.php b/admin/models/joomla_component.php index 382b1f135..d09bda18e 100644 --- a/admin/models/joomla_component.php +++ b/admin/models/joomla_component.php @@ -270,10 +270,18 @@ class ComponentbuilderModelJoomla_component extends AdminModel /** - * get VDM internal session key + * Retrieves or generates a Vast Development Method (VDM) key for the current item. * - * @return string the session key + * This function performs the following operations: + * 1. Checks if the VDM key is already set. If not, it proceeds to generate or retrieve one. + * 2. Determines the item ID based on the presence of a specific argument. + * 3. Attempts to retrieve an existing VDM key from a helper method using the item ID. + * 4. If a VDM key is not found, it generates a new random VDM key. + * 5. Stores the VDM key and associates it with the item ID in a helper method. + * 6. Optionally, stores return and GUID values if available. + * 7. Returns the VDM key. * + * @return string The VDM key for the current item. */ public function getVDM() { diff --git a/admin/models/joomla_module.php b/admin/models/joomla_module.php index 592dded5d..6ea7a8625 100644 --- a/admin/models/joomla_module.php +++ b/admin/models/joomla_module.php @@ -176,10 +176,18 @@ class ComponentbuilderModelJoomla_module extends AdminModel /** - * get VDM internal session key + * Retrieves or generates a Vast Development Method (VDM) key for the current item. * - * @return string the session key + * This function performs the following operations: + * 1. Checks if the VDM key is already set. If not, it proceeds to generate or retrieve one. + * 2. Determines the item ID based on the presence of a specific argument. + * 3. Attempts to retrieve an existing VDM key from a helper method using the item ID. + * 4. If a VDM key is not found, it generates a new random VDM key. + * 5. Stores the VDM key and associates it with the item ID in a helper method. + * 6. Optionally, stores return and GUID values if available. + * 7. Returns the VDM key. * + * @return string The VDM key for the current item. */ public function getVDM() { diff --git a/admin/models/joomla_plugin.php b/admin/models/joomla_plugin.php index eb8fd4c1a..3aeb36efe 100644 --- a/admin/models/joomla_plugin.php +++ b/admin/models/joomla_plugin.php @@ -153,10 +153,18 @@ class ComponentbuilderModelJoomla_plugin extends AdminModel /** - * get VDM internal session key + * Retrieves or generates a Vast Development Method (VDM) key for the current item. * - * @return string the session key + * This function performs the following operations: + * 1. Checks if the VDM key is already set. If not, it proceeds to generate or retrieve one. + * 2. Determines the item ID based on the presence of a specific argument. + * 3. Attempts to retrieve an existing VDM key from a helper method using the item ID. + * 4. If a VDM key is not found, it generates a new random VDM key. + * 5. Stores the VDM key and associates it with the item ID in a helper method. + * 6. Optionally, stores return and GUID values if available. + * 7. Returns the VDM key. * + * @return string The VDM key for the current item. */ public function getVDM() { diff --git a/admin/models/language_translation.php b/admin/models/language_translation.php index 14057eef7..15b68e347 100644 --- a/admin/models/language_translation.php +++ b/admin/models/language_translation.php @@ -86,10 +86,18 @@ class ComponentbuilderModelLanguage_translation extends AdminModel /** - * get VDM internal session key + * Retrieves or generates a Vast Development Method (VDM) key for the current item. * - * @return string the session key + * This function performs the following operations: + * 1. Checks if the VDM key is already set. If not, it proceeds to generate or retrieve one. + * 2. Determines the item ID based on the presence of a specific argument. + * 3. Attempts to retrieve an existing VDM key from a helper method using the item ID. + * 4. If a VDM key is not found, it generates a new random VDM key. + * 5. Stores the VDM key and associates it with the item ID in a helper method. + * 6. Optionally, stores return and GUID values if available. + * 7. Returns the VDM key. * + * @return string The VDM key for the current item. */ public function getVDM() { diff --git a/admin/models/layout.php b/admin/models/layout.php index d4f5b2ae9..16ce3db78 100644 --- a/admin/models/layout.php +++ b/admin/models/layout.php @@ -108,10 +108,18 @@ class ComponentbuilderModelLayout extends AdminModel /** - * get VDM internal session key + * Retrieves or generates a Vast Development Method (VDM) key for the current item. * - * @return string the session key + * This function performs the following operations: + * 1. Checks if the VDM key is already set. If not, it proceeds to generate or retrieve one. + * 2. Determines the item ID based on the presence of a specific argument. + * 3. Attempts to retrieve an existing VDM key from a helper method using the item ID. + * 4. If a VDM key is not found, it generates a new random VDM key. + * 5. Stores the VDM key and associates it with the item ID in a helper method. + * 6. Optionally, stores return and GUID values if available. + * 7. Returns the VDM key. * + * @return string The VDM key for the current item. */ public function getVDM() { diff --git a/admin/models/library.php b/admin/models/library.php index f9df3454b..9631d22a9 100644 --- a/admin/models/library.php +++ b/admin/models/library.php @@ -124,10 +124,18 @@ class ComponentbuilderModelLibrary extends AdminModel /** - * get VDM internal session key + * Retrieves or generates a Vast Development Method (VDM) key for the current item. * - * @return string the session key + * This function performs the following operations: + * 1. Checks if the VDM key is already set. If not, it proceeds to generate or retrieve one. + * 2. Determines the item ID based on the presence of a specific argument. + * 3. Attempts to retrieve an existing VDM key from a helper method using the item ID. + * 4. If a VDM key is not found, it generates a new random VDM key. + * 5. Stores the VDM key and associates it with the item ID in a helper method. + * 6. Optionally, stores return and GUID values if available. + * 7. Returns the VDM key. * + * @return string The VDM key for the current item. */ public function getVDM() { diff --git a/admin/models/placeholder.php b/admin/models/placeholder.php index 936c497ba..b0e33c5be 100644 --- a/admin/models/placeholder.php +++ b/admin/models/placeholder.php @@ -88,10 +88,18 @@ class ComponentbuilderModelPlaceholder extends AdminModel /** - * get VDM internal session key + * Retrieves or generates a Vast Development Method (VDM) key for the current item. * - * @return string the session key + * This function performs the following operations: + * 1. Checks if the VDM key is already set. If not, it proceeds to generate or retrieve one. + * 2. Determines the item ID based on the presence of a specific argument. + * 3. Attempts to retrieve an existing VDM key from a helper method using the item ID. + * 4. If a VDM key is not found, it generates a new random VDM key. + * 5. Stores the VDM key and associates it with the item ID in a helper method. + * 6. Optionally, stores return and GUID values if available. + * 7. Returns the VDM key. * + * @return string The VDM key for the current item. */ public function getVDM() { diff --git a/admin/models/power.php b/admin/models/power.php index 63fd427e0..583a5372a 100644 --- a/admin/models/power.php +++ b/admin/models/power.php @@ -134,10 +134,18 @@ class ComponentbuilderModelPower extends AdminModel /** - * get VDM internal session key + * Retrieves or generates a Vast Development Method (VDM) key for the current item. * - * @return string the session key + * This function performs the following operations: + * 1. Checks if the VDM key is already set. If not, it proceeds to generate or retrieve one. + * 2. Determines the item ID based on the presence of a specific argument. + * 3. Attempts to retrieve an existing VDM key from a helper method using the item ID. + * 4. If a VDM key is not found, it generates a new random VDM key. + * 5. Stores the VDM key and associates it with the item ID in a helper method. + * 6. Optionally, stores return and GUID values if available. + * 7. Returns the VDM key. * + * @return string The VDM key for the current item. */ public function getVDM() { diff --git a/admin/models/site_view.php b/admin/models/site_view.php index c0d25e856..27668f3c9 100644 --- a/admin/models/site_view.php +++ b/admin/models/site_view.php @@ -155,10 +155,18 @@ class ComponentbuilderModelSite_view extends AdminModel /** - * get VDM internal session key + * Retrieves or generates a Vast Development Method (VDM) key for the current item. * - * @return string the session key + * This function performs the following operations: + * 1. Checks if the VDM key is already set. If not, it proceeds to generate or retrieve one. + * 2. Determines the item ID based on the presence of a specific argument. + * 3. Attempts to retrieve an existing VDM key from a helper method using the item ID. + * 4. If a VDM key is not found, it generates a new random VDM key. + * 5. Stores the VDM key and associates it with the item ID in a helper method. + * 6. Optionally, stores return and GUID values if available. + * 7. Returns the VDM key. * + * @return string The VDM key for the current item. */ public function getVDM() { diff --git a/admin/models/template.php b/admin/models/template.php index f38a4edc5..d2e0f69f1 100644 --- a/admin/models/template.php +++ b/admin/models/template.php @@ -108,10 +108,18 @@ class ComponentbuilderModelTemplate extends AdminModel /** - * get VDM internal session key + * Retrieves or generates a Vast Development Method (VDM) key for the current item. * - * @return string the session key + * This function performs the following operations: + * 1. Checks if the VDM key is already set. If not, it proceeds to generate or retrieve one. + * 2. Determines the item ID based on the presence of a specific argument. + * 3. Attempts to retrieve an existing VDM key from a helper method using the item ID. + * 4. If a VDM key is not found, it generates a new random VDM key. + * 5. Stores the VDM key and associates it with the item ID in a helper method. + * 6. Optionally, stores return and GUID values if available. + * 7. Returns the VDM key. * + * @return string The VDM key for the current item. */ public function getVDM() { diff --git a/admin/models/validation_rule.php b/admin/models/validation_rule.php index 43b98b4d1..e313856a1 100644 --- a/admin/models/validation_rule.php +++ b/admin/models/validation_rule.php @@ -91,10 +91,18 @@ class ComponentbuilderModelValidation_rule extends AdminModel /** - * get VDM internal session key + * Retrieves or generates a Vast Development Method (VDM) key for the current item. * - * @return string the session key + * This function performs the following operations: + * 1. Checks if the VDM key is already set. If not, it proceeds to generate or retrieve one. + * 2. Determines the item ID based on the presence of a specific argument. + * 3. Attempts to retrieve an existing VDM key from a helper method using the item ID. + * 4. If a VDM key is not found, it generates a new random VDM key. + * 5. Stores the VDM key and associates it with the item ID in a helper method. + * 6. Optionally, stores return and GUID values if available. + * 7. Returns the VDM key. * + * @return string The VDM key for the current item. */ public function getVDM() { diff --git a/admin/sql/install.mysql.utf8.sql b/admin/sql/install.mysql.utf8.sql index 548d37491..3d3054f6b 100644 --- a/admin/sql/install.mysql.utf8.sql +++ b/admin/sql/install.mysql.utf8.sql @@ -2098,496 +2098,6 @@ INSERT INTO `#__componentbuilder_joomla_plugin` (`id`, `add_head`, `add_php_meth (24, '', '', '', '', 1, '', '', '', '', '', '', '', '', 1, 'Add Access Token to easy update [[[Component]]]', '{}', '29ac30d2-1c1a-4b9e-9cfa-c5fcb08caa01', 'dXNlIEpvb21sYVxDTVNcQXBwbGljYXRpb25cQ01TQXBwbGljYXRpb247DQp1c2UgSm9vbWxhXENNU1xQbHVnaW5cQ01TUGx1Z2luOw==', 12, '{\"method_selection0\":{\"method\":\"103\"}}', 'CS8qKg0KCSAqIEFwcGxpY2F0aW9uIG9iamVjdA0KCSAqDQoJICogQHZhciAgICBDTVNBcHBsaWNhdGlvbg0KCSAqIEBzaW5jZSAgMS4wLjANCgkgKi8NCglwcm90ZWN0ZWQgICRhcHA7DQoNCgkvKioNCgkgKiBBZmZlY3RzIGNvbnN0cnVjdG9yIGJlaGF2aW9yLiBJZiB0cnVlLCBsYW5ndWFnZSBmaWxlcyB3aWxsIGJlIGxvYWRlZCBhdXRvbWF0aWNhbGx5Lg0KCSAqDQoJICogQHZhciAgICBib29sZWFuDQoJICogQHNpbmNlICAxLjAuMA0KCSAqLw0KCXByb3RlY3RlZCAgJGF1dG9sb2FkTGFuZ3VhZ2UgPSB0cnVlOw0KDQoJLyoqDQoJICogb25JbnN0YWxsZXJCZWZvcmVQYWNrYWdlRG93bmxvYWQuDQoJICoNCgkgKiBGb3IgbW9kaWZpY2F0aW9uIG9mIFVSTCBhbmQgaGVhZGVycyBiZWZvcmUgcGFja2FnZSBkb3dubG9hZA0KCSAqDQoJICogQHJldHVybiAgdm9pZA0KCSAqDQoJICogQHNpbmNlICAgMS4wDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIG9uSW5zdGFsbGVyQmVmb3JlUGFja2FnZURvd25sb2FkKCYkdXJsLCAmJGhlYWRlcnMpDQoJew0KCQkvLyBzZXQgdGhlIFVSSSBvYmplY3QNCgkJJHVyaSA9IEpvb21sYV9fX2VlY2MxNDNlX2I1Y2ZfNGMzM19iYTRkXzk3ZGExZGY2MTQyMl9fX1Bvd2VyOjpnZXRJbnN0YW5jZSgkdXJsKTsNCgkJJHBhcnRzID0gZXhwbG9kZSgnLycsICR1cmktPmdldFBhdGgoKSk7DQoNCgkJLy8gY2hlY2sgdGhhdCB0aGlzIGlzIG91ciBBUEkNCgkJaWYgKCR1cmktPmdldEhvc3QoKSA9PSAnW1tbZ2l0ZWFfdXJsXV1dJyAmJiBpbl9hcnJheSgnW1tbZ2l0ZWFfcGFja2FnZV9uYW1lXV1dJywgJHBhcnRzKSkNCgkJew0KCQkJLy8gZ2V0IHRoZSB0b2tlbiBpZiBzZXQNCgkJCSR0b2tlbiA9IEpvb21sYV9fX2FlYjhlNDYzXzI5MWZfNDQ0NV85YWM0XzM0YjYzN2MxMmRiZF9fX1Bvd2VyOjpnZXRQYXJhbXMoJ2NvbV9bW1tjb21wb25lbnRdXV0nKS0+Z2V0KCdnaXRlYV90b2tlbicsIGZhbHNlKTsNCgkJCS8vIG9ubHkgYWRkIGlmIHRva2VuIGlzIHNldA0KCQkJaWYgKCR0b2tlbikNCgkJCXsNCgkJCQkvLyBhZGQgdGhlIHRva2VuDQoJCQkJJHVyaS0+c2V0VmFyKCdhY2Nlc3NfdG9rZW4nLCAkdG9rZW4pOw0KCQkJCS8vIHVwZGF0ZSB0aGUgVVJMDQoJCQkJJHVybCA9ICR1cmktPnRvU3RyaW5nKCk7DQoJCQl9DQoJCQllbHNlDQoJCQl7DQoJCQkJLy8gc2V0IHRoZSByZXR1cm4gVVJMDQoJCQkJJHJldHVybiA9IHVybGVuY29kZShiYXNlNjRfZW5jb2RlKChzdHJpbmcpIEpvb21sYV9fX2VlY2MxNDNlX2I1Y2ZfNGMzM19iYTRkXzk3ZGExZGY2MTQyMl9fX1Bvd2VyOjpnZXRJbnN0YW5jZSgpKSk7DQoJCQkJLy8gc2V0IHRoZSB1cmxzDQoJCQkJJGdldF9hY2Nlc3NfdG9rZW5fdXJsID0gJyJodHRwczovL1tbW2dpdGVhX3VybF1dXS91c2VyL3NldHRpbmdzL2FwcGxpY2F0aW9ucyIgdGFyZ2V0PSJfYmxhbmsiIHRpdGxlPSInIC4gVGV4dDo6XygnR2V0IEFjY2VzcyBUb2tlbicpIC4gJyInOw0KCQkJCSRzZXRfYWNjZXNzX3Rva2VuX3VybCA9ICciJyAuIEpvb21sYV9fX2VlY2MxNDNlX2I1Y2ZfNGMzM19iYTRkXzk3ZGExZGY2MTQyMl9fX1Bvd2VyOjpyb290KCkgLiAnYWRtaW5pc3RyYXRvci9pbmRleC5waHA/b3B0aW9uPWNvbV9jb25maWcmdmlldz1jb21wb25lbnQmY29tcG9uZW50PWNvbV9bW1tjb21wb25lbnRdXV0mcGF0aD0mcmV0dXJuPScgLiAkcmV0dXJuIC4gJyIgdGl0bGU9IicgLiBUZXh0OjpfKCdTZXQgQWNjZXNzIFRva2VuJykgLiAnIic7DQoJCQkJLy8gbG9hZCB0aGUgbWVzc2FnZQ0KCQkJCSR0aGlzLT5hcHAtPmVucXVldWVNZXNzYWdlKA0KCQkJCQlUZXh0OjpzcHJpbnRmKCJJZiB0aGVyZSB3YXMgYSBkb3dubG9hZC91cGRhdGUgZXJyb3IsIGl0J3MgcHJvYmFibHkgYmVjYXVzZSB0aGUgPGEgaHJlZj0lcyA+QVBJIEFjY2VzcyBUb2tlbjwvYT4gZm9yIHVwZGF0ZXMgb2YgW1tbY29tcG9uZW50XV1dIGhhcyBub3QgYmVlbiBzZXQsIHlvdSBjYW4gc2V0IHRoaXMgYWNjZXNzIHRva2VuIGluIHRoZSA8YSBocmVmPSVzID5nbG9iYWwgb3B0aW9ucyB0YWI8L2E+LiIsDQoJCQkJCQkkZ2V0X2FjY2Vzc190b2tlbl91cmwsDQoJCQkJCQkkc2V0X2FjY2Vzc190b2tlbl91cmwNCgkJCQkJKSwgJ25vdGljZScpOw0KCQkJfQ0KCQl9DQoJfQ0K', 'componentbuilder', '', '', '', 'Ly8gbmVlZHMgZml4', '', '', '', '1.0.2', '{\"property_selection0\":{\"property\":\"39\"},\"property_selection1\":{\"property\":\"37\"}}', 'WW91IGNhbiB1c2UgYWxsIHRoZSBub3JtYWwgbWFya2Rvd24sIGluY2x1ZGluZyB0aGUgcGxhY2UtaG9sZGVycy4=', '', '', '', 'Update (git.vdm.dev)', '', 1, '', '', 1, '2021-12-08 07:42:39', '2024-03-01 21:17:50', 17, '', 9), (28, 1, '', '', '', 1, '', '', '', '', '', '', '', 1, 1, 'This plugin is used to load PreUpVer on your website. So it adds https://cdn.jsdelivr.net/gh/Llewellynvdm/PreUpVer@1.0.0/dist/js/preupver.min.js to the header of your website. See: https://git.vdm.dev/Llewellyn/PreUpVer for more details.', '{}', 'dd6580c4-6bbb-4d13-a868-0b38fbb6a66e', 'dXNlIEpvb21sYVxDTVNcUGx1Z2luXENNU1BsdWdpbjsNCnVzZSBKb29tbGFcQ01TXEh0bWxcSFRNTEhlbHBlcjsNCg==', 8, '{\"method_selection0\":{\"method\":\"122\"}}', 'CS8qKg0KCSAqIEFwcGxpY2F0aW9uIG9iamVjdA0KCSAqDQoJICogQHZhciAgICBDTVNBcHBsaWNhdGlvbg0KCSAqIEBzaW5jZSAgMS4wLjANCgkgKi8NCglwcm90ZWN0ZWQgICRhcHA7DQoNCgkvKioNCgkgKiBUaGlzIG1ldGhvZCBpcyBjYWxsZWQgYmVmb3JlIHRoZSBoZWFkIGlzIGNvbXBpbGVkIGFuZCBhbGxvd3MgbWFuaXB1bGF0aW9uIG9mIHRoZSBoZWFkIGRhdGEuDQoJICogSW4gdGhpcyBjYXNlLCBpdCdzIHVzZWQgdG8gYWRkIGEgSmF2YVNjcmlwdCBmaWxlIHRvIHRoZSBmcm9udCBlbmQgb2YgdGhlIEpvb21sYSBzaXRlLg0KCSAqDQoJICogQHJldHVybiAgdm9pZA0KCSAqDQoJICogQHNpbmNlICAgMy4wLjANCgkgKiBAdGhyb3dzICBFeGNlcHRpb24gb24gZXJyb3IuDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIG9uQmVmb3JlQ29tcGlsZUhlYWQoKQ0KCXsNCgkJLy8gQ2hlY2sgaWYgd2UgYXJlIGluIHRoZSBzaXRlIGFwcGxpY2F0aW9uDQoJCWlmICgkdGhpcy0+YXBwLT5pc0NsaWVudCgnc2l0ZScpKSB7DQoJCQlIVE1MSGVscGVyOjpfKCdzY3JpcHQnLCAnaHR0cHM6Ly9jZG4uanNkZWxpdnIubmV0L2doL0xsZXdlbGx5bnZkbS9QcmVVcFZlckAxLjAuMC9kaXN0L2pzL3ByZXVwdmVyLm1pbi5qcycsIFsndmVyc2lvbicgPT4gJ2F1dG8nXSk7DQoJCX0NCgl9', 'PreUpVerLoader', '', '', '', 'CQkJJGp2ZXJzaW9uID0gbmV3IEpWZXJzaW9uKCk7DQoJCQlpZiAoISRqdmVyc2lvbi0+aXNDb21wYXRpYmxlKCczLjEwLjAnKSkgew0KCQkJCSRhcHAtPmVucXVldWVNZXNzYWdlKCdQbGVhc2UgdXBncmFkZSB0byBhdCBsZWFzdCBKb29tbGEhIDMuMTAgYmVmb3JlIGNvbnRpbnVpbmchJywgJ2Vycm9yJyk7DQoJCQkJcmV0dXJuIGZhbHNlOw0KCQkJfQ0K', '', '', '', '1.0.0', '{\"property_selection0\":{\"property\":\"25\"}}', 'IyBQcmVVcFZlciBMb2FkZXIgKFtbW3BsdWdpbi52ZXJzaW9uXV1dKQ0KDQojIyBJbnRyb2R1Y3Rpb24NCg0KUHJlVXBWZXIgaXMgYSB2ZXJzYXRpbGUgSmF2YVNjcmlwdCBsaWJyYXJ5IGRlc2lnbmVkIHRvIGF1dG9tYXRpY2FsbHkgdXBkYXRlIHRoZSB2ZXJzaW9uIG51bWJlcnMgb2YgbGlicmFyeSBzY3JpcHRzIGluIHlvdXIgZG9jdW1lbnRhdGlvbi4gSXQgaWRlbnRpZmllcyBzcGVjaWZpYyBgPHByZT5gIHRhZ3Mgb24geW91ciB3ZWJwYWdlIGFuZCB1cGRhdGVzIHRoZW0gd2l0aCB0aGUgbGF0ZXN0IHZlcnNpb24gdGFnIGZldGNoZWQgZnJvbSBhIHNwZWNpZmllZCByZXBvc2l0b3J5LCBlbnN1cmluZyB5b3VyIGRvY3VtZW50YXRpb24gYWx3YXlzIGRpc3BsYXlzIHVwLXRvLWRhdGUgaW5mb3JtYXRpb24uDQoNCiMjIEhvdyBJdCBXb3Jrcw0KDQpQcmVVcFZlciBvcGVyYXRlcyBieSBzZWFyY2hpbmcgZm9yIGA8cHJlPmAgdGFncyB3aXRoIGEgZGVzaWduYXRlZCBjbGFzcyAoYHByZXVwdmVyYCkgYW5kIHVzaW5nIHRoZWlyIGRhdGEgYXR0cmlidXRlcyB0byBwZXJmb3JtIHZlcnNpb24gdXBkYXRlcy4gSXQgc2ltcGxpZmllcyB0aGUgcHJvY2VzcyBvZiBrZWVwaW5nIHlvdXIgbGlicmFyeSByZWZlcmVuY2VzIHVwLXRvLWRhdGUgaW4gZG9jdW1lbnRhdGlvbi4NCg0KIyMjIEF1dG9tYXRpYyBEZXRlY3Rpb24gYW5kIFVwZGF0aW5nDQoNCldoZW4gdGhlIHdlYnBhZ2UgbG9hZHMsIFByZVVwVmVyIGZpbmRzIGFsbCBgPHByZT5gIHRhZ3MgbWFya2VkIHdpdGggdGhlIGBwcmV1cHZlcmAgY2xhc3MuIEl0IHRoZW4gZXh0cmFjdHMgbmVjZXNzYXJ5IGRldGFpbHMgZnJvbSB0aGVpciBkYXRhIGF0dHJpYnV0ZXMgYW5kIHVwZGF0ZXMgZWFjaCB0YWcgd2l0aCB0aGUgbGF0ZXN0IGxpYnJhcnkgdmVyc2lvbi4NCg0KIyMjIFVzYWdlDQoNCjEuICoqTWFya2luZyBgPHByZT5gIFRhZ3M6KioNCg0KICAgQWRkIHRoZSBgY2xhc3M9InByZXVwdmVyImAgdG8gYDxwcmU+YCB0YWdzIGluIHlvdXIgSFRNTCBhbmQgZGVmaW5lIHRoZSByZXF1aXJlZCBkYXRhIGF0dHJpYnV0ZXMgZm9yIGF1dG9tYXRpYyB1cGRhdGluZzoNCg0KICAgYGBgaHRtbA0KICAgPHByZSBpZD0idW5pcXVlLWlkIiBjbGFzcz0icHJldXB2ZXIiDQogICAgICAgIGRhdGEtYXBpLXVybD0iaHR0cHM6Ly9hcGkuZ2l0aHViLmNvbS9yZXBvcy91c2VybmFtZS9saWJyYXJ5L3RhZ3MiDQogICAgICAgIGRhdGEtZGVzY3JpcHRpb249IkRlc2NyaXB0aW9uIG9mIHRoZSBsaWJyYXJ5IHNjcmlwdCINCiAgICAgICAgZGF0YS11cmw9Imh0dHBzOi8vY2RuLmpzZGVsaXZyLm5ldC9naC91c2VybmFtZS9saWJyYXJ5QCR7dmVyc2lvbn0vZGlzdC9saWJyYXJ5Lm1pbi5qcyI+DQogICA8L3ByZT4NCiAgIGBgYA0KDQogICBSZXBsYWNlIGB1bmlxdWUtaWRgLCBgdXNlcm5hbWVgLCBgbGlicmFyeWAsIGFuZCBvdGhlciBwbGFjZWhvbGRlcnMgd2l0aCB5b3VyIHNwZWNpZmljIGRldGFpbHMuDQoNCjIuICoqQXR0cmlidXRlcyBFeHBsYWluZWQ6KioNCg0KICAgLSBgaWRgOiBBIHVuaXF1ZSBpZGVudGlmaWVyIGZvciB0aGUgYDxwcmU+YCB0YWcuDQogICAtIGBkYXRhLWFwaS11cmxgOiBUaGUgQVBJIFVSTCB0byBmZXRjaCB0aGUgbGF0ZXN0IGxpYnJhcnkgdmVyc2lvbi4NCiAgIC0gYGRhdGEtZGVzY3JpcHRpb25gOiBBIGJyaWVmIGRlc2NyaXB0aW9uIG9mIHRoZSBsaWJyYXJ5IHNjcmlwdC4NCiAgIC0gYGRhdGEtdXJsYDogVGhlIFVSTCBvZiB0aGUgc2NyaXB0LCB3aGVyZSBgJHt2ZXJzaW9ufWAgd2lsbCBiZSByZXBsYWNlZCB3aXRoIHRoZSBsYXRlc3QgdmVyc2lvbiBudW1iZXIuDQoNCiMjIyBFeGFtcGxlDQoNCkNoZWNrIG91dCB0aGUgW3Rlc3RzXShodHRwczovL2dpdC52ZG0uZGV2L0xsZXdlbGx5bi9QcmVVcFZlci9zcmMvYnJhbmNoL21hc3Rlci90ZXN0cy8pIGZvbGRlciBmb3IgdGhlIGV4YW1wbGVzIHdlIHVzZSB0byB0ZXN0IGlmIHRoaXMgbGlicmFyeSB3b3JrcyBhcyBleHBlY3RlZC4NCg0KIyBCdWlsZCBEZXRhaWxzDQoNCisgKkF1dGhvcio6IFtMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZV0obWFpbHRvOmpvb21sYUB2ZG0uaW8pDQorICpOYW1lKjogW1ByZVVwVmVyIExvYWRlcl0oaHR0cHM6Ly9naXQudmRtLmRldi9MbGV3ZWxseW4vUHJlVXBWZXIpDQorICpGaXJzdCBCdWlsZCo6ICMjI0NSRUFUSU9OREFURSMjIw0KKyAqTGFzdCBCdWlsZCo6ICMjI0JVSUxEREFURSMjIw0KKyAqVmVyc2lvbio6IFtbW3BsdWdpbi52ZXJzaW9uXV1dDQorICpDb3B5cmlnaHQqOiAjIyNDT1BZUklHSFQjIyMNCisgKkxpY2Vuc2UqOiAjIyNMSUNFTlNFIyMjDQoNCj4gVGhpcyAqKnBsdWdpbioqIHdhcyBidWlsZCB3aXRoIGEgSm9vbWxhIFtBdXRvbWF0ZWQgQ29tcG9uZW50IEJ1aWxkZXJdKGh0dHBzOi8vd3d3Lmpvb21sYWNvbXBvbmVudGJ1aWxkZXIuY29tKS4NCj4gRGV2ZWxvcGVkIGJ5IFtMbGV3ZWxseW4gdmFuIGRlciBNZXJ3ZV0obWFpbHRvOmpvb21sYUB2ZG0uaW8p', '', '', '', 'PreUpVer Loader', '', 1, '', '', 1, '2023-11-28 09:01:02', '2023-11-28 11:27:32', 5, '', 2); --- --- Dumping data for table `#__componentbuilder_joomla_power` --- - -INSERT INTO `#__componentbuilder_joomla_power` (`id`, `description`, `guid`, `settings`, `system_name`, `params`, `published`, `created`, `modified`, `version`, `hits`, `access`, `ordering`) VALUES -(1, 'The Joomla Factory class', '39403062-84fb-46e0-bac4-0023f766e827', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Factory\",\"joomla_version\":\"0\"}}', 'JFactory', '', 1, '2024-04-09 15:00:24', '0000-00-00 00:00:00', 1, '', 1, 1), -(2, 'The core Joomla Text class.', 'ba6326ef-cb79-4348-80f4-ab086082e3c5', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Language\\\\Text\",\"joomla_version\":\"0\"}}', 'JText', '', 1, '2024-04-09 15:01:16', '0000-00-00 00:00:00', 1, '', 1, 2), -(3, 'The Joomla core component helper class.', 'aeb8e463-291f-4445-9ac4-34b637c12dbd', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Component\\\\ComponentHelper\",\"joomla_version\":\"0\"}}', 'JComponentHelper', '', 1, '2024-04-09 15:02:09', '0000-00-00 00:00:00', 1, '', 1, 3), -(4, 'The Joomla core session class.', '5ba38513-5c4f-4b0d-935e-49e986a6bce8', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Session\\\\Session\",\"joomla_version\":\"0\"}}', 'JSession', '', 1, '2024-04-09 15:03:18', '0000-00-00 00:00:00', 1, '', 1, 4), -(5, 'The Joomla core uri class.', 'eecc143e-b5cf-4c33-ba4d-97da1df61422', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Uri\\\\Uri\",\"joomla_version\":\"0\"}}', 'JUri', '', 1, '2024-04-09 15:04:32', '0000-00-00 00:00:00', 1, '', 1, 5), -(6, 'HTTP client class.', '8417ac0e-2abd-4452-91fd-4ca6493d55f2', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Http\\\\Http\",\"joomla_version\":\"0\"}}', 'JHttp', '', 1, '2024-04-27 11:59:57', '0000-00-00 00:00:00', 1, '', 1, 6), -(7, 'Route handling class', 'd4c76099-4c32-408a-8701-d0a724484dfd', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Router\\\\Route\",\"joomla_version\":\"0\"}}', 'JRoute', '', 1, '2024-04-27 12:01:46', '0000-00-00 00:00:00', 1, '', 1, 7), -(8, 'Class to create and parse routes', '4efa4c21-5114-472a-b1f8-48aa9bd14900', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Router\\\\Router\",\"joomla_version\":\"0\"}}', 'JRouter', '', 1, '2024-04-27 12:02:16', '0000-00-00 00:00:00', 1, '', 1, 7), -(9, 'This is an abstracted input class used to manage retrieving data from the application environment.', '59106b64-dd51-4280-be0a-1b9b9ebb7161', '{\"settings0\":{\"namespace\":\"Joomla\\\\Input\\\\Input\",\"joomla_version\":\"0\"},\"settings1\":{\"namespace\":\"Joomla\\\\CMS\\\\Input\\\\Input\",\"joomla_version\":\"3\"}}', 'JInput', '', 1, '2024-04-27 12:04:55', '2024-05-18 09:27:32', 2, '', 1, 8), -(10, 'Helper to render a Layout object, storing a base path', '7ab82272-0b3d-4bb1-af35-e63a096cfe0b', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Layout\\\\LayoutHelper\",\"joomla_version\":\"0\"}}', 'JLayoutHelper', '', 1, '2024-04-27 12:06:33', '0000-00-00 00:00:00', 1, '', 1, 9), -(11, 'Utility class for all HTML drawing classes', '34690c75-1090-47eb-8c06-7228dc7eedd6', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\HTML\\\\HTMLHelper\",\"joomla_version\":\"0\"}}', 'JHtml', '', 1, '2024-04-27 12:07:27', '0000-00-00 00:00:00', 1, '', 1, 10), -(12, 'Class that handles all access authorisation routines.', '2d513d69-8c7c-4dab-bb84-c5ecafb91a9d', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Access\\\\Access\",\"joomla_version\":\"0\"}}', 'JAccess', '', 1, '2024-04-27 12:56:41', '0000-00-00 00:00:00', 1, '', 1, 11), -(13, 'Access rules class.', '80425d73-1789-4f59-b49d-1a712611a77a', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Access\\\\Rules\",\"joomla_version\":\"0\"}}', 'JRules', '', 1, '2024-04-27 12:57:12', '0000-00-00 00:00:00', 1, '', 1, 11), -(14, 'Rule class.', 'b07d4be5-bbbe-48c9-a2ab-843090a1c0de', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Access\\\\Rule\",\"joomla_version\":\"0\"}}', 'JRule', '', 1, '2024-04-27 12:57:34', '0000-00-00 00:00:00', 1, '', 1, 11), -(15, 'JDate is a class that stores a date and provides logic to manipulate and render that date in a variety of formats.', '3864fa33-ab10-48d5-98ea-5e1397e6a191', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Date\\\\Date\",\"joomla_version\":\"0\"}}', 'JDate', '', 1, '2024-04-27 12:58:11', '0000-00-00 00:00:00', 1, '', 1, 11), -(16, '', 'b32954a3-05c3-41a0-8238-85262ad46246', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Filesystem\\\\Folder\",\"joomla_version\":\"0\"}}', 'JFolder', '', 1, '2024-05-06 05:29:46', '2024-05-18 09:32:35', 2, '', 1, 12), -(17, '', '55e9e8f0-3c5e-483a-a063-7c7565b00ed7', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Filesystem\\\\File\",\"joomla_version\":\"0\"}}', 'JFile', '', 1, '2024-05-18 09:22:26', '0000-00-00 00:00:00', 1, '', 1, 12), -(18, '', 'a87c432d-b5b4-428e-b7ff-14b51664c624', '{\"settings0\":{\"namespace\":\"Joomla\\\\Registry\\\\Registry\",\"joomla_version\":\"0\"}}', 'JRegistry', '', 1, '2024-05-18 09:33:30', '0000-00-00 00:00:00', 1, '', 1, 13), -(19, '', 'c2ec5cd7-4272-42de-820a-277a935981ed', '{\"settings0\":{\"namespace\":\"Joomla\\\\Registry\\\\AbstractRegistryFormat\",\"joomla_version\":\"0\"}}', 'JRegistryFormat', '', 1, '2024-05-18 09:33:47', '0000-00-00 00:00:00', 1, '', 1, 14), -(20, '', '9f8a11fe-a1e5-4b91-8af7-b62943692616', '{\"settings0\":{\"namespace\":\"Joomla\\\\Registry\\\\Format\\\\Ini\",\"joomla_version\":\"0\"}}', 'JRegistryFormatIni', '', 1, '2024-05-18 09:34:04', '0000-00-00 00:00:00', 1, '', 1, 15), -(21, '', '005224a7-00a1-402a-8818-7ccaf7cdf65c', '{\"settings0\":{\"namespace\":\"Joomla\\\\Registry\\\\Format\\\\Json\",\"joomla_version\":\"0\"}}', 'JRegistryFormatJson', '', 1, '2024-05-18 09:34:29', '0000-00-00 00:00:00', 1, '', 1, 16), -(22, '', '28e671b6-6d4a-4fc8-8588-ad7f46fd68a3', '{\"settings0\":{\"namespace\":\"Joomla\\\\Registry\\\\Format\\\\Php\",\"joomla_version\":\"0\"}}', 'JRegistryFormatPhp', '', 1, '2024-05-18 09:34:47', '0000-00-00 00:00:00', 1, '', 1, 17), -(23, '', '8ae32459-1a0a-4e07-97a5-e1e7aed6e311', '{\"settings0\":{\"namespace\":\"Joomla\\\\Registry\\\\Format\\\\Xml\",\"joomla_version\":\"0\"}}', 'JRegistryFormatXml', '', 1, '2024-05-18 09:35:02', '0000-00-00 00:00:00', 1, '', 1, 18), -(24, '', '0b0a3a94-d3c4-4960-8f6c-1fe928e866ab', '{\"settings0\":{\"namespace\":\"Joomla\\\\String\\\\Inflector\",\"joomla_version\":\"0\"}}', 'JStringInflector', '', 1, '2024-05-18 09:35:19', '0000-00-00 00:00:00', 1, '', 1, 19), -(25, '', 'acb6d6f1-44b2-43ae-88d0-17c5f1fc5ff7', '{\"settings0\":{\"namespace\":\"Joomla\\\\String\\\\Normalise\",\"joomla_version\":\"0\"}}', 'JStringNormalise', '', 1, '2024-05-18 09:35:37', '0000-00-00 00:00:00', 1, '', 1, 20), -(26, '', '4ec5ce19-d42e-461b-89a2-4e9f77c482e6', '{\"settings0\":{\"namespace\":\"Joomla\\\\Data\\\\DataObject\",\"joomla_version\":\"0\"}}', 'JData', '', 1, '2024-05-18 09:35:52', '0000-00-00 00:00:00', 1, '', 1, 21), -(27, '', '9dbdb40d-0e80-4de0-9401-45f09bae4f00', '{\"settings0\":{\"namespace\":\"Joomla\\\\Data\\\\DataSet\",\"joomla_version\":\"0\"}}', 'JDataSet', '', 1, '2024-05-18 09:36:18', '0000-00-00 00:00:00', 1, '', 1, 22), -(28, '', '5ca5e9c5-21c0-4702-af46-f42f2d7ffc4f', '{\"settings0\":{\"namespace\":\"Joomla\\\\Data\\\\DumpableInterface\",\"joomla_version\":\"0\"}}', 'JDataDumpable', '', 1, '2024-05-18 09:36:35', '0000-00-00 00:00:00', 1, '', 1, 23), -(29, '', '038f1396-bba2-4f2c-aad9-94b954fe52f9', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Application\\\\AdministratorApplication\",\"joomla_version\":\"0\"}}', 'JApplicationAdministrator', '', 1, '2024-05-18 09:36:53', '0000-00-00 00:00:00', 1, '', 1, 24), -(30, '', '081cdfea-37d6-47d4-a658-ad92e4055da6', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Application\\\\ApplicationHelper\",\"joomla_version\":\"0\"}}', 'JApplicationHelper', '', 1, '2024-05-18 09:37:11', '0000-00-00 00:00:00', 1, '', 1, 25), -(31, '', '64b2a378-24f6-42ab-909e-9fd9f7219f88', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Application\\\\BaseApplication\",\"joomla_version\":\"0\"}}', 'JApplicationBase', '', 1, '2024-05-18 09:37:27', '0000-00-00 00:00:00', 1, '', 1, 26), -(32, '', '2a129ee4-54b9-489e-b6bc-673ebad4a77f', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Application\\\\CliApplication\",\"joomla_version\":\"0\"}}', 'JApplicationCli', '', 1, '2024-05-18 09:37:44', '0000-00-00 00:00:00', 1, '', 1, 27), -(33, '', 'c05365c0-9ceb-4bac-b271-e50c19a278f9', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Application\\\\CMSApplication\",\"joomla_version\":\"0\"}}', 'JApplicationCms', '', 1, '2024-05-18 09:38:03', '0000-00-00 00:00:00', 1, '', 1, 28), -(34, '', '27251fb5-d5eb-4662-ad07-75085bda322b', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Application\\\\DaemonApplication\",\"joomla_version\":\"0\"}}', 'JApplicationDaemon', '', 1, '2024-05-18 09:39:18', '0000-00-00 00:00:00', 1, '', 1, 29), -(35, '', 'f82894b5-d83a-4f44-a921-08848bae979c', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Application\\\\SiteApplication\",\"joomla_version\":\"0\"}}', 'JApplicationSite', '', 1, '2024-05-18 09:39:26', '0000-00-00 00:00:00', 1, '', 1, 30), -(36, '', '2405b210-b10e-40e0-92f4-5783875f56cf', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Application\\\\WebApplication\",\"joomla_version\":\"0\"}}', 'JApplicationWeb', '', 1, '2024-05-18 09:39:34', '0000-00-00 00:00:00', 1, '', 1, 31), -(37, '', 'af98ae86-763a-41c2-9b05-50da4b0e4eb9', '{\"settings0\":{\"namespace\":\"Joomla\\\\Application\\\\Web\\\\WebClient\",\"joomla_version\":\"0\"}}', 'JApplicationWebClient', '', 1, '2024-05-18 09:39:44', '0000-00-00 00:00:00', 1, '', 1, 32), -(38, '', '8c57a999-92f6-4cd4-b2a8-0711d902343e', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Application\\\\DaemonApplication\",\"joomla_version\":\"0\"}}', 'JDaemon', '', 1, '2024-05-18 09:40:05', '0000-00-00 00:00:00', 1, '', 1, 33), -(39, '', '508c69b1-eb0d-4ae1-8979-bf3ecb596ac9', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Application\\\\CliApplication\",\"joomla_version\":\"0\"}}', 'JCli', '', 1, '2024-05-18 09:40:37', '0000-00-00 00:00:00', 1, '', 1, 34), -(40, '', 'd57b084b-bfba-45d2-9131-bcc40f16deaf', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Application\\\\WebApplication\",\"joomla_version\":\"0\"}}', 'JWeb', '', 1, '2024-05-18 09:40:47', '0000-00-00 00:00:00', 1, '', 1, 35), -(41, '', '32ad40f6-cec1-48a6-8316-962714f08af9', '{\"settings0\":{\"namespace\":\"Joomla\\\\Application\\\\Web\\\\WebClient\",\"joomla_version\":\"0\"}}', 'JWebClient', '', 1, '2024-05-18 09:40:57', '0000-00-00 00:00:00', 1, '', 1, 36), -(42, '', 'db2b366c-0319-4509-85e2-df2b49e1f4d8', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\MVC\\\\Model\\\\AdminModel\",\"joomla_version\":\"0\"}}', 'JModelAdmin', '', 1, '2024-05-18 09:41:06', '0000-00-00 00:00:00', 1, '', 1, 37), -(43, '', 'd1cd87a5-84d4-4068-929d-a431caaa3106', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\MVC\\\\Model\\\\FormModel\",\"joomla_version\":\"0\"}}', 'JModelForm', '', 1, '2024-05-18 09:41:16', '0000-00-00 00:00:00', 1, '', 1, 38), -(44, '', 'df684d65-fc00-4927-b5e4-71b19cb17816', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\MVC\\\\Model\\\\ItemModel\",\"joomla_version\":\"0\"}}', 'JModelItem', '', 1, '2024-05-18 09:41:26', '0000-00-00 00:00:00', 1, '', 1, 39), -(45, '', 'afc402b6-1082-4aeb-bd12-27d63df8a736', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\MVC\\\\Model\\\\ListModel\",\"joomla_version\":\"0\"}}', 'JModelList', '', 1, '2024-05-18 09:41:36', '0000-00-00 00:00:00', 1, '', 1, 40), -(46, '', '6dce7a1b-cfc3-4c2a-837d-be9cbc902446', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\MVC\\\\Model\\\\BaseDatabaseModel\",\"joomla_version\":\"0\"}}', 'JModelLegacy', '', 1, '2024-05-18 09:41:48', '0000-00-00 00:00:00', 1, '', 1, 41), -(47, '', 'a0d15871-8694-48cc-9eee-4b42f867836f', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\MVC\\\\View\\\\CategoriesView\",\"joomla_version\":\"0\"}}', 'JViewCategories', '', 1, '2024-05-18 09:41:58', '0000-00-00 00:00:00', 1, '', 1, 42), -(48, '', '1b7c899c-af04-4090-8f29-cf76e9976d89', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\MVC\\\\View\\\\CategoryView\",\"joomla_version\":\"0\"}}', 'JViewCategory', '', 1, '2024-05-18 09:42:07', '0000-00-00 00:00:00', 1, '', 1, 43), -(49, '', '1e72b813-344e-487e-90b2-8a949f586d26', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\MVC\\\\View\\\\CategoryFeedView\",\"joomla_version\":\"0\"}}', 'JViewCategoryfeed', '', 1, '2024-05-18 09:42:19', '0000-00-00 00:00:00', 1, '', 1, 44), -(50, '', '3cca7cc5-481b-4f21-944c-4f85ec4b1b05', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\MVC\\\\View\\\\HtmlView\",\"joomla_version\":\"0\"}}', 'JViewLegacy', '', 1, '2024-05-18 09:42:28', '0000-00-00 00:00:00', 1, '', 1, 45), -(51, '', '10c86913-be3b-4642-ad75-d7e98e297859', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\MVC\\\\Controller\\\\AdminController\",\"joomla_version\":\"0\"}}', 'JControllerAdmin', '', 1, '2024-05-18 09:42:39', '0000-00-00 00:00:00', 1, '', 1, 46), -(52, '', '1a101bb6-f02b-4629-9379-c7c0d0df90f2', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\MVC\\\\Controller\\\\BaseController\",\"joomla_version\":\"0\"}}', 'JControllerLegacy', '', 1, '2024-05-18 09:42:51', '0000-00-00 00:00:00', 1, '', 1, 47), -(53, '', '907ccae5-57a9-44b9-a8aa-5b905d1cd70f', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\MVC\\\\Controller\\\\FormController\",\"joomla_version\":\"0\"}}', 'JControllerForm', '', 1, '2024-05-18 09:42:59', '0000-00-00 00:00:00', 1, '', 1, 48), -(54, '', '3c00255b-9da8-4917-9381-d5e327d61cfb', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Table\\\\TableInterface\",\"joomla_version\":\"0\"}}', 'JTableInterface', '', 1, '2024-05-18 09:43:11', '0000-00-00 00:00:00', 1, '', 1, 49), -(55, '', '7ac01b46-d981-4c48-a574-382c20da780b', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Table\\\\Table\",\"joomla_version\":\"0\"}}', 'JTable', '', 1, '2024-05-18 09:43:25', '0000-00-00 00:00:00', 1, '', 1, 50), -(56, '', 'e1f27169-946a-4798-bc33-40c3573643b1', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Table\\\\Nested\",\"joomla_version\":\"0\"}}', 'JTableNested', '', 1, '2024-05-18 09:43:35', '0000-00-00 00:00:00', 1, '', 1, 51), -(57, '', 'ad69bc17-d1e6-4eb9-a67f-158da8586b43', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Table\\\\Asset\",\"joomla_version\":\"0\"}}', 'JTableAsset', '', 1, '2024-05-18 09:43:48', '0000-00-00 00:00:00', 1, '', 1, 52), -(58, '', '5d108832-c7aa-4b39-8c40-c9a118e731d9', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Table\\\\Extension\",\"joomla_version\":\"0\"}}', 'JTableExtension', '', 1, '2024-05-18 09:43:58', '0000-00-00 00:00:00', 1, '', 1, 53), -(59, '', 'c216b7ff-40cb-49be-a9ea-83d7cd5f7efe', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Table\\\\Language\",\"joomla_version\":\"0\"}}', 'JTableLanguage', '', 1, '2024-05-18 09:44:10', '0000-00-00 00:00:00', 1, '', 1, 54), -(60, '', '7d6daa00-491e-4e4c-9ee1-ad16eb5374ea', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Table\\\\Update\",\"joomla_version\":\"0\"}}', 'JTableUpdate', '', 1, '2024-05-18 09:44:19', '0000-00-00 00:00:00', 1, '', 1, 55), -(61, '', 'bebd821b-b81c-47be-b3fc-e1e1206921d3', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Table\\\\UpdateSite\",\"joomla_version\":\"0\"}}', 'JTableUpdatesite', '', 1, '2024-05-18 09:44:28', '0000-00-00 00:00:00', 1, '', 1, 56), -(62, '', '11accf54-fcb9-4ba0-a645-7c80ce14e224', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Table\\\\User\",\"joomla_version\":\"0\"}}', 'JTableUser', '', 1, '2024-05-18 09:44:37', '0000-00-00 00:00:00', 1, '', 1, 57), -(63, '', '91b54f35-f2c7-4914-aa48-a523fac6833c', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Table\\\\Usergroup\",\"joomla_version\":\"0\"}}', 'JTableUsergroup', '', 1, '2024-05-18 09:44:55', '0000-00-00 00:00:00', 1, '', 1, 58), -(64, '', '9bf4628e-8dc5-4557-a2ae-0dda581e3163', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Table\\\\ViewLevel\",\"joomla_version\":\"0\"}}', 'JTableViewlevel', '', 1, '2024-05-18 09:45:19', '0000-00-00 00:00:00', 1, '', 1, 59), -(65, '', '2173d123-2a16-4628-b262-e93d1cbd391b', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Table\\\\ContentHistory\",\"joomla_version\":\"0\"}}', 'JTableContenthistory', '', 1, '2024-05-18 09:45:28', '0000-00-00 00:00:00', 1, '', 1, 60), -(66, '', '62c93780-efe8-44f3-8e6e-2d507cd5ccaa', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Table\\\\ContentType\",\"joomla_version\":\"0\"}}', 'JTableContenttype', '', 1, '2024-05-18 09:45:37', '0000-00-00 00:00:00', 1, '', 1, 61), -(67, '', '3a4f6683-b71a-4539-80fc-a4150a64e4f8', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Table\\\\CoreContent\",\"joomla_version\":\"0\"}}', 'JTableCorecontent', '', 1, '2024-05-18 09:45:46', '0000-00-00 00:00:00', 1, '', 1, 62), -(68, '', 'eb18f368-4122-42ee-95ab-95ec78dc0c19', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Table\\\\Ucm\",\"joomla_version\":\"0\"}}', 'JTableUcm', '', 1, '2024-05-18 09:45:55', '0000-00-00 00:00:00', 1, '', 1, 63), -(69, '', 'e6cc78b2-848c-4b17-ae46-a3bc08a5ab90', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Table\\\\Category\",\"joomla_version\":\"0\"}}', 'JTableCategory', '', 1, '2024-05-18 09:46:03', '0000-00-00 00:00:00', 1, '', 1, 64), -(70, '', '69574867-d64f-4ef1-b785-fb6e69cb2339', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Table\\\\Content\",\"joomla_version\":\"0\"}}', 'JTableContent', '', 1, '2024-05-18 09:46:13', '0000-00-00 00:00:00', 1, '', 1, 65), -(71, '', '840f0c60-81ee-46ba-9ce5-50cfb2d33594', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Table\\\\Menu\",\"joomla_version\":\"0\"}}', 'JTableMenu', '', 1, '2024-05-18 09:46:25', '0000-00-00 00:00:00', 1, '', 1, 66), -(72, '', '7488bc11-3224-4a3a-938c-0ebdfad38935', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Table\\\\MenuType\",\"joomla_version\":\"0\"}}', 'JTableMenuType', '', 1, '2024-05-18 09:46:33', '0000-00-00 00:00:00', 1, '', 1, 67), -(73, '', '102ef6e3-7e85-41b1-b702-0b464cc879f5', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Table\\\\Module\",\"joomla_version\":\"0\"}}', 'JTableModule', '', 1, '2024-05-18 09:46:42', '0000-00-00 00:00:00', 1, '', 1, 68), -(74, '', 'b8c64f3f-ca63-4897-a9e1-8afc64220079', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Table\\\\Observer\\\\AbstractObserver\",\"joomla_version\":\"0\"}}', 'JTableObserver', '', 1, '2024-05-18 09:46:51', '0000-00-00 00:00:00', 1, '', 1, 69), -(75, '', '9ac794c2-f96d-4522-8acf-b8d48c4f51c5', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Table\\\\Observer\\\\ContentHistory\",\"joomla_version\":\"0\"}}', 'JTableObserverContenthistory', '', 1, '2024-05-18 09:46:59', '0000-00-00 00:00:00', 1, '', 1, 70), -(76, '', 'fe63add8-0a40-4b3d-b548-f735fa6072fb', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Table\\\\Observer\\\\Tags\",\"joomla_version\":\"0\"}}', 'JTableObserverTags', '', 1, '2024-05-18 09:47:09', '0000-00-00 00:00:00', 1, '', 1, 71), -(77, '', '1e77d689-78b9-4418-809b-923edc4cb21b', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Access\\\\Rule\",\"joomla_version\":\"0\"}}', 'JAccessRule', '', 1, '2024-05-18 09:47:20', '2024-05-18 13:22:44', 2, '', 1, 72), -(78, '', 'd3fe9cbd-ff84-4501-9298-bbd213b8a348', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Access\\\\Rules\",\"joomla_version\":\"0\"}}', 'JAccessRules', '', 1, '2024-05-18 09:47:46', '0000-00-00 00:00:00', 1, '', 1, 73), -(79, '', 'fd33274b-d900-47a0-8676-5beadc31331f', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Access\\\\Wrapper\\\\Access\",\"joomla_version\":\"0\"}}', 'JAccessWrapperAccess', '', 1, '2024-05-18 09:50:55', '0000-00-00 00:00:00', 1, '', 1, 74), -(80, '', '2fa1c08d-c4ff-4cb0-8338-7221e95c1fe4', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Access\\\\Exception\\\\NotAllowed\",\"joomla_version\":\"0\"}}', 'JAccessExceptionNotallowed', '', 1, '2024-05-18 09:51:57', '0000-00-00 00:00:00', 1, '', 1, 75), -(81, '', '85ddedfc-d44d-485d-ae2a-0c81b2e77d89', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Help\\\\Help\",\"joomla_version\":\"0\"}}', 'JHelp', '', 1, '2024-05-18 09:52:19', '0000-00-00 00:00:00', 1, '', 1, 76), -(82, '', '201d8d3c-3ba9-4237-911a-106a70d559e1', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Captcha\\\\Captcha\",\"joomla_version\":\"0\"}}', 'JCaptcha', '', 1, '2024-05-18 09:52:29', '0000-00-00 00:00:00', 1, '', 1, 77), -(83, '', '4486fa2e-643f-4ab3-b52d-c85972b9853c', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Language\\\\Associations\",\"joomla_version\":\"0\"}}', 'JLanguageAssociations', '', 1, '2024-05-18 09:52:40', '0000-00-00 00:00:00', 1, '', 1, 78), -(84, '', '4256a427-9bfa-4572-b539-cc699ab8f18b', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Language\\\\Language\",\"joomla_version\":\"0\"}}', 'JLanguage', '', 1, '2024-05-18 09:52:50', '0000-00-00 00:00:00', 1, '', 1, 79), -(85, '', 'f1bd5f92-0eb0-40d3-ab90-920df3e25a3d', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Language\\\\LanguageHelper\",\"joomla_version\":\"0\"}}', 'JLanguageHelper', '', 1, '2024-05-18 09:52:59', '0000-00-00 00:00:00', 1, '', 1, 80), -(86, '', 'c76d192b-1bed-44c8-9a29-27d73a014d3b', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Language\\\\LanguageStemmer\",\"joomla_version\":\"0\"}}', 'JLanguageStemmer', '', 1, '2024-05-18 09:53:10', '0000-00-00 00:00:00', 1, '', 1, 81), -(87, '', 'cc8224bd-07f2-46f1-a69b-d3f8afd5438f', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Language\\\\Multilanguage\",\"joomla_version\":\"0\"}}', 'JLanguageMultilang', '', 1, '2024-05-18 09:53:21', '0000-00-00 00:00:00', 1, '', 1, 82), -(88, '', 'a643b662-7ec9-491a-ae28-de34667f0ea5', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Language\\\\Transliterate\",\"joomla_version\":\"0\"}}', 'JLanguageTransliterate', '', 1, '2024-05-18 09:53:31', '0000-00-00 00:00:00', 1, '', 1, 83), -(89, '', 'b98da7dc-0aa0-4a10-9441-ae6039f369ba', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Language\\\\Stemmer\\\\Porteren\",\"joomla_version\":\"0\"}}', 'JLanguageStemmerPorteren', '', 1, '2024-05-18 09:53:41', '0000-00-00 00:00:00', 1, '', 1, 84), -(90, '', 'f9b5df00-4690-4ae7-99f2-30bd05a5ad9b', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Language\\\\Wrapper\\\\JTextWrapper\",\"joomla_version\":\"0\"}}', 'JLanguageWrapperText', '', 1, '2024-05-18 09:53:50', '0000-00-00 00:00:00', 1, '', 1, 85), -(91, '', '161f1710-dc19-4e8a-8299-0519ae5809d3', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Language\\\\Wrapper\\\\LanguageHelperWrapper\",\"joomla_version\":\"0\"}}', 'JLanguageWrapperHelper', '', 1, '2024-05-18 09:54:01', '0000-00-00 00:00:00', 1, '', 1, 86), -(92, '', '2fbbf4bc-3627-4b63-a879-1c675cee4cf2', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Language\\\\Wrapper\\\\TransliterateWrapper\",\"joomla_version\":\"0\"}}', 'JLanguageWrapperTransliterate', '', 1, '2024-05-18 09:54:09', '0000-00-00 00:00:00', 1, '', 1, 87), -(93, '', '5255b942-8d9a-4984-8091-9fffea8d12dc', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Component\\\\ComponentRecord\",\"joomla_version\":\"0\"}}', 'JComponentRecord', '', 1, '2024-05-18 09:54:21', '0000-00-00 00:00:00', 1, '', 1, 88), -(94, '', '77b5e594-3e89-47f6-96e0-91dcf095083d', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Component\\\\Exception\\\\MissingComponentException\",\"joomla_version\":\"0\"}}', 'JComponentExceptionMissing', '', 1, '2024-05-18 09:54:38', '0000-00-00 00:00:00', 1, '', 1, 89), -(95, '', '1a993901-ded0-47d1-90cb-e00134a252d8', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Component\\\\Router\\\\RouterBase\",\"joomla_version\":\"0\"}}', 'JComponentRouterBase', '', 1, '2024-05-18 09:54:52', '2024-05-18 09:55:16', 2, '', 1, 88), -(96, '', '60ef2eac-e1bf-4f02-9e00-406988dceb7c', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Component\\\\Router\\\\RouterInterface\",\"joomla_version\":\"0\"}}', 'JComponentRouterInterface', '', 1, '2024-05-18 09:55:30', '2024-05-18 09:55:16', 1, '', 1, 88), -(97, '', '5b8498be-e8a6-4941-b0e7-16e12020d7fd', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Component\\\\Router\\\\RouterLegacy\",\"joomla_version\":\"0\"}}', 'JComponentRouterLegacy', '', 1, '2024-05-18 09:55:43', '2024-05-18 09:55:16', 1, '', 1, 88), -(98, '', '5c7d19b6-315f-49b5-9d79-da33e83251d8', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Component\\\\Router\\\\RouterView\",\"joomla_version\":\"0\"}}', 'JComponentRouterView', '', 1, '2024-05-18 09:56:09', '2024-05-18 09:55:16', 1, '', 1, 88), -(99, '', '7bbeef79-a79c-4a1d-8a46-e2063136a648', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Component\\\\Router\\\\RouterViewConfiguration\",\"joomla_version\":\"0\"}}', 'JComponentRouterViewconfiguration', '', 1, '2024-05-18 09:56:34', '2024-05-18 09:55:16', 1, '', 1, 88), -(100, '', '81b80eaa-0854-41a1-9304-3d858cbb8dd7', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Component\\\\Router\\\\Rules\\\\MenuRules\",\"joomla_version\":\"0\"}}', 'JComponentRouterRulesMenu', '', 1, '2024-05-18 09:56:47', '2024-05-18 09:55:16', 1, '', 1, 88), -(101, '', '4f6f2089-8ff4-42ff-a3c5-44ac26f03d72', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Component\\\\Router\\\\Rules\\\\NomenuRules\",\"joomla_version\":\"0\"}}', 'JComponentRouterRulesNomenu', '', 1, '2024-05-18 09:56:57', '2024-05-18 09:55:16', 1, '', 1, 88), -(102, '', '3a9cfc8e-d596-4144-943e-b0e40ef940e7', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Component\\\\Router\\\\Rules\\\\RulesInterface\",\"joomla_version\":\"0\"}}', 'JComponentRouterRulesInterface', '', 1, '2024-05-18 09:57:08', '2024-05-18 09:55:16', 1, '', 1, 88), -(103, '', '3c55de55-8cc0-446c-bfd9-f3d80239ccf3', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Component\\\\Router\\\\Rules\\\\StandardRules\",\"joomla_version\":\"0\"}}', 'JComponentRouterRulesStandard', '', 1, '2024-05-18 09:57:21', '2024-05-18 09:55:16', 1, '', 1, 88), -(104, '', '9d3f65ab-4635-48b4-8456-dc7b61ee8d4a', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Editor\\\\Editor\",\"joomla_version\":\"0\"}}', 'JEditor', '', 1, '2024-05-18 09:57:33', '2024-05-18 09:55:16', 1, '', 1, 88), -(105, '', '52d5da48-8711-4b36-bd18-fb126e900acc', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Exception\\\\ExceptionHandler\",\"joomla_version\":\"0\"}}', 'JErrorPage', '', 1, '2024-05-18 09:57:45', '2024-05-18 09:55:16', 1, '', 1, 88), -(106, '', 'c6b045d1-06b5-406f-b05c-87a9e3465603', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Helper\\\\AuthenticationHelper\",\"joomla_version\":\"0\"}}', 'JAuthenticationHelper', '', 1, '2024-05-18 09:57:59', '2024-05-18 09:55:16', 1, '', 1, 88), -(107, '', '7bc1ad97-b165-4804-b243-396eb5d7d300', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Helper\\\\CMSHelper\",\"joomla_version\":\"0\"}}', 'JHelper', '', 1, '2024-05-18 09:58:19', '2024-05-18 09:55:16', 1, '', 1, 88), -(108, '', '3aa6094c-0c87-437d-b301-e2f2547d6fdd', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Helper\\\\ContentHelper\",\"joomla_version\":\"0\"}}', 'JHelperContent', '', 1, '2024-05-18 09:58:30', '2024-05-18 09:55:16', 1, '', 1, 88), -(109, '', '1cb6e8f7-e3a6-499a-972b-dcfbd9dd1c51', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Helper\\\\ContentHistoryHelper\",\"joomla_version\":\"0\"}}', 'JHelperContenthistory', '', 1, '2024-05-18 09:58:40', '2024-05-18 09:55:16', 1, '', 1, 88), -(110, '', 'e736158d-3e8f-4cbd-80f5-1e9152f1119b', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Helper\\\\LibraryHelper\",\"joomla_version\":\"0\"}}', 'JLibraryHelper', '', 1, '2024-05-18 09:58:49', '2024-05-18 09:55:16', 1, '', 1, 88), -(111, '', 'b2f0313b-4535-4080-85f2-2f6f0f327215', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Helper\\\\MediaHelper\",\"joomla_version\":\"0\"}}', 'JHelperMedia', '', 1, '2024-05-18 09:58:59', '2024-05-18 09:55:16', 1, '', 1, 88), -(112, '', 'f15d556d-33dd-4ee3-a0f7-0653e4a7a1e4', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Helper\\\\ModuleHelper\",\"joomla_version\":\"0\"}}', 'JModuleHelper', '', 1, '2024-05-18 09:59:11', '2024-05-18 09:55:16', 1, '', 1, 88), -(113, '', '291ce84f-34fd-4a2a-a5d9-2e8cc7470250', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Helper\\\\RouteHelper\",\"joomla_version\":\"0\"}}', 'JHelperRoute', '', 1, '2024-05-18 09:59:34', '0000-00-00 00:00:00', 1, '', 1, 90), -(114, '', '30d4027a-50b2-45bf-9121-278fdd09ba1d', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Helper\\\\SearchHelper\",\"joomla_version\":\"0\"}}', 'JSearchHelper', '', 1, '2024-05-18 10:01:51', '0000-00-00 00:00:00', 1, '', 1, 91), -(115, '', '9726b24c-d6e2-4e5c-bbf6-fc4aeb9616be', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Helper\\\\TagsHelper\",\"joomla_version\":\"0\"}}', 'JHelperTags', '', 1, '2024-05-18 10:02:01', '0000-00-00 00:00:00', 1, '', 1, 92), -(116, '', '49fe3fd8-a9a4-458c-98b6-2437d18552e9', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Helper\\\\UserGroupsHelper\",\"joomla_version\":\"0\"}}', 'JHelperUsergroups', '', 1, '2024-05-18 10:02:11', '0000-00-00 00:00:00', 1, '', 1, 93), -(117, '', '6014e278-94ca-4a20-9118-deae8bb0ddc9', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Layout\\\\BaseLayout\",\"joomla_version\":\"0\"}}', 'JLayoutBase', '', 1, '2024-05-18 10:02:21', '0000-00-00 00:00:00', 1, '', 1, 94), -(118, '', '2dc653cd-4f87-4028-be2b-40fc9676d762', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Layout\\\\FileLayout\",\"joomla_version\":\"0\"}}', 'JLayoutFile', '', 1, '2024-05-18 10:02:35', '0000-00-00 00:00:00', 1, '', 1, 95), -(119, '', '6cb426a4-a026-425d-9078-7973c5c5c627', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Layout\\\\LayoutInterface\",\"joomla_version\":\"0\"}}', 'JLayout', '', 1, '2024-05-18 10:02:54', '0000-00-00 00:00:00', 1, '', 1, 96), -(120, '', 'ac193072-cd64-4423-9cc3-18d10080c995', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Response\\\\JsonResponse\",\"joomla_version\":\"0\"}}', 'JResponseJson', '', 1, '2024-05-18 10:03:03', '0000-00-00 00:00:00', 1, '', 1, 97), -(121, '', '98de0895-76eb-406f-99be-bd3eeaeff388', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Plugin\\\\CMSPlugin\",\"joomla_version\":\"0\"}}', 'JPlugin', '', 1, '2024-05-18 10:03:12', '0000-00-00 00:00:00', 1, '', 1, 98), -(122, '', '7934665b-e432-4ec6-b38d-27bf32730eb9', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Plugin\\\\PluginHelper\",\"joomla_version\":\"0\"}}', 'JPluginHelper', '', 1, '2024-05-18 10:03:20', '0000-00-00 00:00:00', 1, '', 1, 99), -(123, '', 'd7168e2e-eda9-43b5-8b90-fb488ff39d81', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Menu\\\\AbstractMenu\",\"joomla_version\":\"0\"}}', 'JMenu', '', 1, '2024-05-18 10:03:30', '0000-00-00 00:00:00', 1, '', 1, 100), -(124, '', '37611ab6-f672-4e7c-b5d4-8bdf8ab701ed', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Menu\\\\AdministratorMenu\",\"joomla_version\":\"0\"}}', 'JMenuAdministrator', '', 1, '2024-05-18 10:03:39', '0000-00-00 00:00:00', 1, '', 1, 101), -(125, '', '97cf0325-76e1-4463-a900-f18ea74a6867', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Menu\\\\MenuItem\",\"joomla_version\":\"0\"}}', 'JMenuItem', '', 1, '2024-05-18 10:03:47', '0000-00-00 00:00:00', 1, '', 1, 102), -(126, '', 'ce5b2139-00e7-4d20-b33f-567848c954ff', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Menu\\\\SiteMenu\",\"joomla_version\":\"0\"}}', 'JMenuSite', '', 1, '2024-05-18 10:03:55', '0000-00-00 00:00:00', 1, '', 1, 103), -(127, '', '2ede2a45-7cfb-4ddd-a12c-f6fe0f22c6c7', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Pagination\\\\Pagination\",\"joomla_version\":\"0\"}}', 'JPagination', '', 1, '2024-05-18 10:04:04', '0000-00-00 00:00:00', 1, '', 1, 104), -(128, '', 'b12288c5-6c95-4251-b2ff-51f1ff00365d', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Pagination\\\\PaginationObject\",\"joomla_version\":\"0\"}}', 'JPaginationObject', '', 1, '2024-05-18 10:04:13', '0000-00-00 00:00:00', 1, '', 1, 105), -(129, '', '1dcda3f6-245e-4a3e-9235-6f1d3079a731', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Pathway\\\\Pathway\",\"joomla_version\":\"0\"}}', 'JPathway', '', 1, '2024-05-18 10:04:22', '0000-00-00 00:00:00', 1, '', 1, 106), -(130, '', '8a9d4936-c63c-481c-9c75-e533954c441e', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Pathway\\\\SitePathway\",\"joomla_version\":\"0\"}}', 'JPathwaySite', '', 1, '2024-05-18 10:04:31', '0000-00-00 00:00:00', 1, '', 1, 107), -(131, '', '27682053-11d2-46aa-b2f1-00e66eb43f9c', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Schema\\\\ChangeItem\",\"joomla_version\":\"0\"}}', 'JSchemaChangeitem', '', 1, '2024-05-18 10:04:40', '0000-00-00 00:00:00', 1, '', 1, 108), -(132, '', '25b32eb9-2728-45b3-80e7-9619e969c210', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Schema\\\\ChangeSet\",\"joomla_version\":\"0\"}}', 'JSchemaChangeset', '', 1, '2024-05-18 10:04:50', '0000-00-00 00:00:00', 1, '', 1, 109), -(133, '', '1d2df8c9-d6ca-444f-8fa0-c21df077b4e9', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Schema\\\\ChangeItem\\\\MysqlChangeItem\",\"joomla_version\":\"0\"}}', 'JSchemaChangeitemMysql', '', 1, '2024-05-18 10:04:59', '0000-00-00 00:00:00', 1, '', 1, 110), -(134, '', 'd100cd9b-d633-456a-8bf7-9a8dd350011f', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Schema\\\\ChangeItem\\\\PostgresqlChangeItem\",\"joomla_version\":\"0\"}}', 'JSchemaChangeitemPostgresql', '', 1, '2024-05-18 10:05:11', '0000-00-00 00:00:00', 1, '', 1, 111), -(135, '', 'b04a740a-8a32-4ac6-8197-f87078608323', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Schema\\\\ChangeItem\\\\SqlsrvChangeItem\",\"joomla_version\":\"0\"}}', 'JSchemaChangeitemSqlsrv', '', 1, '2024-05-18 10:05:21', '0000-00-00 00:00:00', 1, '', 1, 112), -(136, '', '717cd776-fc89-4e57-a187-67911316e874', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\UCM\\\\UCM\",\"joomla_version\":\"0\"}}', 'JUcm', '', 1, '2024-05-18 10:05:31', '0000-00-00 00:00:00', 1, '', 1, 113), -(137, '', 'ba90ea14-ae54-4a58-8b67-5774f0bf4704', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\UCM\\\\UCMBase\",\"joomla_version\":\"0\"}}', 'JUcmBase', '', 1, '2024-05-18 10:05:40', '0000-00-00 00:00:00', 1, '', 1, 114), -(138, '', 'a0ab1d29-3e80-418a-8762-dfd30b6bdfdb', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\UCM\\\\UCMContent\",\"joomla_version\":\"0\"}}', 'JUcmContent', '', 1, '2024-05-18 10:05:56', '0000-00-00 00:00:00', 1, '', 1, 115), -(139, '', '8949b206-0589-4468-8ae1-ea17edeaa909', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\UCM\\\\UCMType\",\"joomla_version\":\"0\"}}', 'JUcmType', '', 1, '2024-05-18 10:06:07', '0000-00-00 00:00:00', 1, '', 1, 116), -(140, '', '47ee1f2b-9902-4f26-a856-04930ac9ddc3', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Toolbar\\\\Toolbar\",\"joomla_version\":\"0\"}}', 'JToolbar', '', 1, '2024-05-18 10:06:16', '0000-00-00 00:00:00', 1, '', 1, 117), -(141, '', 'b044eae7-c8c8-4632-add5-1cdada77dbe8', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Toolbar\\\\ToolbarButton\",\"joomla_version\":\"0\"}}', 'JToolbarButton', '', 1, '2024-05-18 10:06:25', '0000-00-00 00:00:00', 1, '', 1, 118), -(142, '', '262219a3-c599-4f73-9256-ffe38968e0df', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Toolbar\\\\Button\\\\ConfirmButton\",\"joomla_version\":\"0\"}}', 'JToolbarButtonConfirm', '', 1, '2024-05-18 10:06:35', '0000-00-00 00:00:00', 1, '', 1, 119), -(143, '', '0f7e94e1-0480-4192-b8a5-1f53f5bfd984', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Toolbar\\\\Button\\\\CustomButton\",\"joomla_version\":\"0\"}}', 'JToolbarButtonCustom', '', 1, '2024-05-18 10:06:43', '0000-00-00 00:00:00', 1, '', 1, 120), -(144, '', 'a8f3658a-8be1-48cd-95ba-4209950046c7', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Toolbar\\\\Button\\\\HelpButton\",\"joomla_version\":\"0\"}}', 'JToolbarButtonHelp', '', 1, '2024-05-18 10:06:53', '0000-00-00 00:00:00', 1, '', 1, 121), -(145, '', '948a32c1-a87d-48a0-9914-b0b7ad8308ed', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Toolbar\\\\Button\\\\LinkButton\",\"joomla_version\":\"0\"}}', 'JToolbarButtonLink', '', 1, '2024-05-18 10:07:03', '0000-00-00 00:00:00', 1, '', 1, 122), -(146, '', '3761e315-c940-4f54-adc2-94d73fe4cb05', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Toolbar\\\\Button\\\\PopupButton\",\"joomla_version\":\"0\"}}', 'JToolbarButtonPopup', '', 1, '2024-05-18 10:07:11', '0000-00-00 00:00:00', 1, '', 1, 123), -(147, '', '6d3a8457-e9a8-4d05-ae98-a89e7aef7fd0', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Toolbar\\\\Button\\\\SeparatorButton\",\"joomla_version\":\"0\"}}', 'JToolbarButtonSeparator', '', 1, '2024-05-18 10:07:19', '0000-00-00 00:00:00', 1, '', 1, 124), -(148, '', '13aa9ff9-93eb-4ee6-ba27-f451fe027f28', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Toolbar\\\\Button\\\\SliderButton\",\"joomla_version\":\"0\"}}', 'JToolbarButtonSlider', '', 1, '2024-05-18 10:07:30', '0000-00-00 00:00:00', 1, '', 1, 125), -(149, '', 'fe490f72-816d-4771-a915-2bec9440754f', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Toolbar\\\\Button\\\\StandardButton\",\"joomla_version\":\"0\"}}', 'JToolbarButtonStandard', '', 1, '2024-05-18 10:07:39', '0000-00-00 00:00:00', 1, '', 1, 126), -(150, '', '0c1a176a-304f-433a-8233-37d01ff87815', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Toolbar\\\\ToolbarHelper\",\"joomla_version\":\"0\"}}', 'JToolbarHelper', '', 1, '2024-05-18 10:07:48', '0000-00-00 00:00:00', 1, '', 1, 127), -(151, '', '98c24e3e-4ffd-47fe-aae1-7216d364c69b', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Toolbar\\\\ToolbarButton\",\"joomla_version\":\"0\"}}', 'JButton', '', 1, '2024-05-18 10:07:57', '0000-00-00 00:00:00', 1, '', 1, 128), -(152, '', '703937e1-abd9-4373-8c5c-07e29ea4b2c5', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Version\",\"joomla_version\":\"0\"}}', 'JVersion', '', 1, '2024-05-18 10:08:07', '0000-00-00 00:00:00', 1, '', 1, 129), -(153, '', 'e7193dd0-5839-4e5f-9f86-1d2cb29f2116', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Authentication\\\\Authentication\",\"joomla_version\":\"0\"}}', 'JAuthentication', '', 1, '2024-05-18 10:08:17', '0000-00-00 00:00:00', 1, '', 1, 130), -(154, '', 'd2f1e6b1-7f62-4f2f-9f0a-8378d1da654b', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Authentication\\\\AuthenticationResponse\",\"joomla_version\":\"0\"}}', 'JAuthenticationResponse', '', 1, '2024-05-18 10:08:27', '0000-00-00 00:00:00', 1, '', 1, 131), -(155, '', 'c5dd6a36-c4ab-4d66-9ec5-c97cc5b96858', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Environment\\\\Browser\",\"joomla_version\":\"0\"}}', 'JBrowser', '', 1, '2024-05-18 10:08:36', '0000-00-00 00:00:00', 1, '', 1, 132), -(156, '', '1046fbd3-859f-40b6-8cd9-4f2a0f91413a', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Association\\\\AssociationExtensionInterface\",\"joomla_version\":\"0\"}}', 'JAssociationExtensionInterface', '', 1, '2024-05-18 10:08:47', '0000-00-00 00:00:00', 1, '', 1, 133), -(157, '', 'e88e262d-b08f-43f3-9f0d-adf352030ddd', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Association\\\\AssociationExtensionHelper\",\"joomla_version\":\"0\"}}', 'JAssociationExtensionHelper', '', 1, '2024-05-18 10:08:55', '0000-00-00 00:00:00', 1, '', 1, 134), -(158, '', 'f0198edb-6be6-4ca5-9e1d-9ec899939a32', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Document\\\\Document\",\"joomla_version\":\"0\"}}', 'JDocument', '', 1, '2024-05-18 10:09:04', '0000-00-00 00:00:00', 1, '', 1, 135), -(159, '', 'f340c858-e0a7-4db6-9a4c-7919e0e27ee4', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Document\\\\ErrorDocument\",\"joomla_version\":\"0\"}}', 'JDocumentError', '', 1, '2024-05-18 10:09:12', '0000-00-00 00:00:00', 1, '', 1, 136), -(160, '', '07796eb3-5ac1-4f1f-8ebb-5a4009bdc64b', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Document\\\\FeedDocument\",\"joomla_version\":\"0\"}}', 'JDocumentFeed', '', 1, '2024-05-18 10:09:21', '0000-00-00 00:00:00', 1, '', 1, 137), -(161, '', 'b81aea75-742b-4b0f-8182-ce50a3c4a98f', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Document\\\\HtmlDocument\",\"joomla_version\":\"0\"}}', 'JDocumentHtml', '', 1, '2024-05-18 10:09:30', '0000-00-00 00:00:00', 1, '', 1, 138), -(162, '', '2e066e66-ace9-4a38-91f1-2c7cdd3bcbde', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Document\\\\ImageDocument\",\"joomla_version\":\"0\"}}', 'JDocumentImage', '', 1, '2024-05-18 10:09:39', '0000-00-00 00:00:00', 1, '', 1, 139), -(163, '', 'df2ca2b1-1474-4e76-8a89-6213121d6642', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Document\\\\JsonDocument\",\"joomla_version\":\"0\"}}', 'JDocumentJson', '', 1, '2024-05-18 10:09:47', '0000-00-00 00:00:00', 1, '', 1, 140), -(164, '', 'df1c4e45-d5cd-493b-a7f8-68d5fe257790', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Document\\\\OpensearchDocument\",\"joomla_version\":\"0\"}}', 'JDocumentOpensearch', '', 1, '2024-05-18 10:09:56', '0000-00-00 00:00:00', 1, '', 1, 141), -(165, '', '51facd6c-7dbd-49b4-98b6-eab01d638d72', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Document\\\\RawDocument\",\"joomla_version\":\"0\"}}', 'JDocumentRaw', '', 1, '2024-05-18 10:10:05', '0000-00-00 00:00:00', 1, '', 1, 142), -(166, '', 'e9d9761f-0c10-4c4a-a2f7-9c365805c2d5', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Document\\\\DocumentRenderer\",\"joomla_version\":\"0\"}}', 'JDocumentRenderer', '', 1, '2024-05-18 10:10:14', '0000-00-00 00:00:00', 1, '', 1, 143), -(167, '', 'ad7918a0-a784-42a8-8bd6-4584075c2f91', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Document\\\\XmlDocument\",\"joomla_version\":\"0\"}}', 'JDocumentXml', '', 1, '2024-05-18 10:10:23', '0000-00-00 00:00:00', 1, '', 1, 144), -(168, '', '9f778aa1-9f63-4734-a326-e62e649c9669', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Document\\\\Renderer\\\\Feed\\\\AtomRenderer\",\"joomla_version\":\"0\"}}', 'JDocumentRendererFeedAtom', '', 1, '2024-05-18 10:10:31', '0000-00-00 00:00:00', 1, '', 1, 145), -(169, '', '9292ee49-e310-47ea-ac3f-3d23bf454bb9', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Document\\\\Renderer\\\\Feed\\\\RssRenderer\",\"joomla_version\":\"0\"}}', 'JDocumentRendererFeedRss', '', 1, '2024-05-18 10:10:46', '0000-00-00 00:00:00', 1, '', 1, 146), -(170, '', 'de6c54e2-b040-4a14-8de5-317d03c0dd30', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Document\\\\Renderer\\\\Html\\\\ComponentRenderer\",\"joomla_version\":\"0\"}}', 'JDocumentRendererHtmlComponent', '', 1, '2024-05-18 10:10:54', '0000-00-00 00:00:00', 1, '', 1, 147), -(171, '', '0733e243-c078-4647-be3b-a57aa6c8da5e', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Document\\\\Renderer\\\\Html\\\\HeadRenderer\",\"joomla_version\":\"0\"}}', 'JDocumentRendererHtmlHead', '', 1, '2024-05-18 10:11:04', '0000-00-00 00:00:00', 1, '', 1, 148), -(172, '', '73642c41-abb6-45fa-96c9-a32e8c8ae5ec', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Document\\\\Renderer\\\\Html\\\\MessageRenderer\",\"joomla_version\":\"0\"}}', 'JDocumentRendererHtmlMessage', '', 1, '2024-05-18 10:11:17', '0000-00-00 00:00:00', 1, '', 1, 149), -(173, '', '2cae3c40-1f83-449e-92e8-3ef7a073694e', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Document\\\\Renderer\\\\Html\\\\ModuleRenderer\",\"joomla_version\":\"0\"}}', 'JDocumentRendererHtmlModule', '', 1, '2024-05-18 10:11:27', '0000-00-00 00:00:00', 1, '', 1, 150), -(174, '', '2b616377-af1c-42cf-8645-8b63fd65ac4f', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Document\\\\Renderer\\\\Html\\\\ModulesRenderer\",\"joomla_version\":\"0\"}}', 'JDocumentRendererHtmlModules', '', 1, '2024-05-18 10:11:35', '0000-00-00 00:00:00', 1, '', 1, 151), -(175, '', '34b75849-7d6e-407e-9f16-dd3c1c58ddfc', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Document\\\\Renderer\\\\Feed\\\\AtomRenderer\",\"joomla_version\":\"0\"}}', 'JDocumentRendererAtom', '', 1, '2024-05-18 10:11:44', '0000-00-00 00:00:00', 1, '', 1, 152), -(176, '', '515e4335-e131-4fed-8e41-832e3477ffd8', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Document\\\\Renderer\\\\Feed\\\\RssRenderer\",\"joomla_version\":\"0\"}}', 'JDocumentRendererRSS', '', 1, '2024-05-18 10:11:53', '0000-00-00 00:00:00', 1, '', 1, 153), -(177, '', 'a4f78bba-c3a5-4e62-a565-7e011665ed95', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Document\\\\Renderer\\\\Html\\\\ComponentRenderer\",\"joomla_version\":\"0\"}}', 'JDocumentRendererComponent', '', 1, '2024-05-18 10:12:04', '0000-00-00 00:00:00', 1, '', 1, 154), -(178, '', '876058a8-106f-498d-a1fb-1a30000915f3', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Document\\\\Renderer\\\\Html\\\\HeadRenderer\",\"joomla_version\":\"0\"}}', 'JDocumentRendererHead', '', 1, '2024-05-18 10:12:17', '0000-00-00 00:00:00', 1, '', 1, 155), -(179, '', 'd2fb6e55-4ff3-41e2-ace2-f049abff35c2', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Document\\\\Renderer\\\\Html\\\\MessageRenderer\",\"joomla_version\":\"0\"}}', 'JDocumentRendererMessage', '', 1, '2024-05-18 10:12:37', '0000-00-00 00:00:00', 1, '', 1, 156), -(180, '', 'fadc3f46-11df-4800-beb0-43edc3c0a1bd', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Document\\\\Renderer\\\\Html\\\\ModuleRenderer\",\"joomla_version\":\"0\"}}', 'JDocumentRendererModule', '', 1, '2024-05-18 10:12:59', '0000-00-00 00:00:00', 1, '', 1, 157), -(181, '', 'e9b2281e-0abc-48c7-9cf4-7d4f71d331a3', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Document\\\\Renderer\\\\Html\\\\ModulesRenderer\",\"joomla_version\":\"0\"}}', 'JDocumentRendererModules', '', 1, '2024-05-18 10:13:07', '0000-00-00 00:00:00', 1, '', 1, 158), -(182, '', 'd1ff6ed5-1dce-4ec4-be9d-aa687a332103', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Document\\\\Feed\\\\FeedEnclosure\",\"joomla_version\":\"0\"}}', 'JFeedEnclosure', '', 1, '2024-05-18 10:13:17', '0000-00-00 00:00:00', 1, '', 1, 159), -(183, '', 'b6d8fbd2-4873-4a76-b8d5-7b219bd85fb3', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Document\\\\Feed\\\\FeedImage\",\"joomla_version\":\"0\"}}', 'JFeedImage', '', 1, '2024-05-18 10:13:29', '0000-00-00 00:00:00', 1, '', 1, 160), -(184, '', '7310b31c-a886-4e81-a3b4-c74f41da071b', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Document\\\\Feed\\\\FeedItem\",\"joomla_version\":\"0\"}}', 'JFeedItem', '', 1, '2024-05-18 10:13:39', '0000-00-00 00:00:00', 1, '', 1, 161), -(185, '', 'e0870b1b-8df0-4a63-955a-6edcffb8f95c', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Document\\\\Opensearch\\\\OpensearchImage\",\"joomla_version\":\"0\"}}', 'JOpenSearchImage', '', 1, '2024-05-18 10:13:48', '0000-00-00 00:00:00', 1, '', 1, 162), -(186, '', 'be23edb4-a948-46ea-aa4d-06a5d176d184', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Document\\\\Opensearch\\\\OpensearchUrl\",\"joomla_version\":\"0\"}}', 'JOpenSearchUrl', '', 1, '2024-05-18 10:13:56', '0000-00-00 00:00:00', 1, '', 1, 163), -(187, '', '193deb3e-0c3e-4610-8e55-450e463095b4', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Filter\\\\InputFilter\",\"joomla_version\":\"0\"}}', 'JFilterInput', '', 1, '2024-05-18 10:14:06', '0000-00-00 00:00:00', 1, '', 1, 164), -(188, '', '6c5e67f8-44ff-4376-b531-ffd3a2f4ed74', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Filter\\\\OutputFilter\",\"joomla_version\":\"0\"}}', 'JFilterOutput', '', 1, '2024-05-18 10:14:14', '0000-00-00 00:00:00', 1, '', 1, 165), -(189, '', '7caf5bfe-bf21-4664-bf3d-f8584418a1aa', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Filter\\\\Wrapper\\\\OutputFilterWrapper\",\"joomla_version\":\"0\"}}', 'JFilterWrapperOutput', '', 1, '2024-05-18 10:14:22', '0000-00-00 00:00:00', 1, '', 1, 166), -(190, '', 'd6c6b007-de51-484a-a6fb-d0773b929bb9', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Http\\\\HttpFactory\",\"joomla_version\":\"0\"}}', 'JHttpFactory', '', 1, '2024-05-18 10:14:36', '0000-00-00 00:00:00', 1, '', 1, 167), -(191, '', 'b23db2d7-208b-466f-91cc-d2a1c8e91da9', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Http\\\\Response\",\"joomla_version\":\"0\"}}', 'JHttpResponse', '', 1, '2024-05-18 10:14:45', '0000-00-00 00:00:00', 1, '', 1, 168), -(192, '', '12bad63b-715a-4a9c-8627-79f8f39ac4a2', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Http\\\\TransportInterface\",\"joomla_version\":\"0\"}}', 'JHttpTransport', '', 1, '2024-05-18 10:14:54', '0000-00-00 00:00:00', 1, '', 1, 169), -(193, '', '67b0223d-e19d-41ed-9253-21afbb3702ad', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Http\\\\Transport\\\\CurlTransport\",\"joomla_version\":\"0\"}}', 'JHttpTransportCurl', '', 1, '2024-05-18 10:15:03', '0000-00-00 00:00:00', 1, '', 1, 170), -(194, '', 'b637202b-b1ac-4c99-81c6-03eda33c8ed5', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Http\\\\Transport\\\\SocketTransport\",\"joomla_version\":\"0\"}}', 'JHttpTransportSocket', '', 1, '2024-05-18 10:15:12', '0000-00-00 00:00:00', 1, '', 1, 171), -(195, '', '82e96434-4855-4086-9ab1-060c9538b21e', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Http\\\\Transport\\\\StreamTransport\",\"joomla_version\":\"0\"}}', 'JHttpTransportStream', '', 1, '2024-05-18 10:15:21', '0000-00-00 00:00:00', 1, '', 1, 172), -(196, '', '4c0c71c8-4604-4cc2-ae57-b4a6d12878bf', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Http\\\\Wrapper\\\\FactoryWrapper\",\"joomla_version\":\"0\"}}', 'JHttpWrapperFactory', '', 1, '2024-05-18 10:15:30', '0000-00-00 00:00:00', 1, '', 1, 173), -(197, '', 'fca8b0ad-5975-46a7-a741-91f399fce0bb', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Installer\\\\Installer\",\"joomla_version\":\"0\"}}', 'JInstaller', '', 1, '2024-05-18 10:15:43', '0000-00-00 00:00:00', 1, '', 1, 174), -(198, '', '774d62a7-0b4e-461a-952d-f23f04e6ae0b', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Installer\\\\InstallerAdapter\",\"joomla_version\":\"0\"}}', 'JInstallerAdapter', '', 1, '2024-05-18 10:15:57', '0000-00-00 00:00:00', 1, '', 1, 175), -(199, '', '9b50b6fa-4eee-45f8-8476-805de083d048', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Installer\\\\InstallerExtension\",\"joomla_version\":\"0\"}}', 'JInstallerExtension', '', 1, '2024-05-18 10:16:07', '0000-00-00 00:00:00', 1, '', 1, 176), -(200, '', '70f7a0f0-a9f5-4e3f-9862-f41ffedaaa82', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Installer\\\\InstallerExtension\",\"joomla_version\":\"0\"}}', 'JExtension', '', 1, '2024-05-18 10:16:16', '0000-00-00 00:00:00', 1, '', 1, 177), -(201, '', '686af399-4ddb-4167-adfe-23350cce0c5f', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Installer\\\\InstallerHelper\",\"joomla_version\":\"0\"}}', 'JInstallerHelper', '', 1, '2024-05-18 10:16:25', '0000-00-00 00:00:00', 1, '', 1, 178), -(202, '', '8072b858-8ce5-4b41-b44f-3ecb8eff1a99', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Installer\\\\InstallerScript\",\"joomla_version\":\"0\"}}', 'JInstallerScript', '', 1, '2024-05-18 10:16:34', '0000-00-00 00:00:00', 1, '', 1, 179), -(203, '', 'ebe650ad-0e99-435d-b414-d32089f7583e', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Installer\\\\Manifest\",\"joomla_version\":\"0\"}}', 'JInstallerManifest', '', 1, '2024-05-18 10:16:44', '0000-00-00 00:00:00', 1, '', 1, 180), -(204, '', '40f1fa2c-5141-4daf-bfbc-3d8ae5a29e20', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Installer\\\\Adapter\\\\ComponentAdapter\",\"joomla_version\":\"0\"}}', 'JInstallerAdapterComponent', '', 1, '2024-05-18 10:16:53', '0000-00-00 00:00:00', 1, '', 1, 181), -(205, '', 'ede39863-0c16-42f8-8f88-fe043590d7f2', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Installer\\\\Adapter\\\\ComponentAdapter\",\"joomla_version\":\"0\"}}', 'JInstallerComponent', '', 1, '2024-05-18 10:17:02', '0000-00-00 00:00:00', 1, '', 1, 182), -(206, '', 'aaba374e-f882-4bf1-bb5d-de5777fd4c57', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Installer\\\\Adapter\\\\FileAdapter\",\"joomla_version\":\"0\"}}', 'JInstallerAdapterFile', '', 1, '2024-05-18 10:17:10', '0000-00-00 00:00:00', 1, '', 1, 183), -(207, '', 'aef5c56a-599f-428d-ab9f-1616f784f398', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Installer\\\\Adapter\\\\FileAdapter\",\"joomla_version\":\"0\"}}', 'JInstallerFile', '', 1, '2024-05-18 10:17:18', '0000-00-00 00:00:00', 1, '', 1, 184), -(208, '', '0adc132e-a1e8-4292-87bb-1419a9957d8d', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Installer\\\\Adapter\\\\LanguageAdapter\",\"joomla_version\":\"0\"}}', 'JInstallerAdapterLanguage', '', 1, '2024-05-18 10:17:34', '0000-00-00 00:00:00', 1, '', 1, 185), -(209, '', '3c1658da-be38-4d96-bdc7-cfe5769ca9a7', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Installer\\\\Adapter\\\\LanguageAdapter\",\"joomla_version\":\"0\"}}', 'JInstallerLanguage', '', 1, '2024-05-18 10:18:29', '0000-00-00 00:00:00', 1, '', 1, 186), -(210, '', '7c43334d-a0e3-449c-b6e9-82212ecc5c91', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Installer\\\\Adapter\\\\LibraryAdapter\",\"joomla_version\":\"0\"}}', 'JInstallerAdapterLibrary', '', 1, '2024-05-18 10:19:45', '0000-00-00 00:00:00', 1, '', 1, 187), -(211, '', '27afff9f-e18d-46b1-bcca-9b6481071fe0', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Installer\\\\Adapter\\\\LibraryAdapter\",\"joomla_version\":\"0\"}}', 'JInstallerLibrary', '', 1, '2024-05-18 10:19:55', '0000-00-00 00:00:00', 1, '', 1, 188), -(212, '', '14ef559b-5741-4133-87a4-6b871ca61977', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Installer\\\\Adapter\\\\ModuleAdapter\",\"joomla_version\":\"0\"}}', 'JInstallerAdapterModule', '', 1, '2024-05-18 10:20:03', '0000-00-00 00:00:00', 1, '', 1, 189), -(213, '', 'a67bc372-981e-438c-9000-0fb1a80dccd7', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Installer\\\\Adapter\\\\ModuleAdapter\",\"joomla_version\":\"0\"}}', 'JInstallerModule', '', 1, '2024-05-18 10:20:11', '0000-00-00 00:00:00', 1, '', 1, 190), -(214, '', '08cf8605-309d-4722-9cb0-71d7e8701e0a', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Installer\\\\Adapter\\\\PackageAdapter\",\"joomla_version\":\"0\"}}', 'JInstallerAdapterPackage', '', 1, '2024-05-18 10:20:20', '0000-00-00 00:00:00', 1, '', 1, 191), -(215, '', '1a71e699-ee4a-44c2-a14d-e3a5e0b42c6b', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Installer\\\\Adapter\\\\PackageAdapter\",\"joomla_version\":\"0\"}}', 'JInstallerPackage', '', 1, '2024-05-18 10:20:29', '0000-00-00 00:00:00', 1, '', 1, 192), -(216, '', '141913e7-a24f-4313-9fa2-86460de87622', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Installer\\\\Adapter\\\\PluginAdapter\",\"joomla_version\":\"0\"}}', 'JInstallerAdapterPlugin', '', 1, '2024-05-18 10:20:38', '0000-00-00 00:00:00', 1, '', 1, 193), -(217, '', '0f195d54-7266-420d-992b-ff3fffc89db9', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Installer\\\\Adapter\\\\PluginAdapter\",\"joomla_version\":\"0\"}}', 'JInstallerPlugin', '', 1, '2024-05-18 10:20:50', '0000-00-00 00:00:00', 1, '', 1, 194), -(218, '', '15f59c5b-40e8-4f48-a4f4-eb14754167f9', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Installer\\\\Adapter\\\\TemplateAdapter\",\"joomla_version\":\"0\"}}', 'JInstallerAdapterTemplate', '', 1, '2024-05-18 10:21:24', '0000-00-00 00:00:00', 1, '', 1, 195), -(219, '', 'c7126375-b30d-4cf2-8a47-2964675195e5', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Installer\\\\Adapter\\\\TemplateAdapter\",\"joomla_version\":\"0\"}}', 'JInstallerTemplate', '', 1, '2024-05-18 10:21:34', '0000-00-00 00:00:00', 1, '', 1, 196), -(220, '', 'dda3aaa6-fbeb-47be-9a26-1de4d3b28d01', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Installer\\\\Manifest\\\\LibraryManifest\",\"joomla_version\":\"0\"}}', 'JInstallerManifestLibrary', '', 1, '2024-05-18 10:21:44', '0000-00-00 00:00:00', 1, '', 1, 197), -(221, '', '8612f700-f4f2-4306-89d4-5264f77855c6', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Installer\\\\Manifest\\\\PackageManifest\",\"joomla_version\":\"0\"}}', 'JInstallerManifestPackage', '', 1, '2024-05-18 10:32:03', '0000-00-00 00:00:00', 1, '', 1, 198), -(222, '', 'f76b5c78-317a-4938-92ce-20d4c97cbabc', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Router\\\\AdministratorRouter\",\"joomla_version\":\"0\"}}', 'JRouterAdministrator', '', 1, '2024-05-18 10:32:15', '0000-00-00 00:00:00', 1, '', 1, 199), -(223, '', '4f18f44f-e64a-4f5b-9706-4fd0837c2e68', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Router\\\\SiteRouter\",\"joomla_version\":\"0\"}}', 'JRouterSite', '', 1, '2024-05-18 10:32:24', '0000-00-00 00:00:00', 1, '', 1, 200), -(224, '', '2b9896a1-6a0d-4900-a3bf-f85c48ec0a5e', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Categories\\\\Categories\",\"joomla_version\":\"0\"}}', 'JCategories', '', 1, '2024-05-18 10:32:32', '0000-00-00 00:00:00', 1, '', 1, 201), -(225, '', '504a968d-6621-4c8e-b0a3-d9da70d2e00c', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Categories\\\\CategoryNode\",\"joomla_version\":\"0\"}}', 'JCategoryNode', '', 1, '2024-05-18 10:32:53', '0000-00-00 00:00:00', 1, '', 1, 202), -(226, '', 'b8246a5d-54eb-4e3d-83c2-d7bed1270062', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Log\\\\Log\",\"joomla_version\":\"0\"}}', 'JLog', '', 1, '2024-05-18 10:33:01', '0000-00-00 00:00:00', 1, '', 1, 203), -(227, '', 'a2b54e8c-db60-4bb4-b361-258bc7ff65cb', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Log\\\\LogEntry\",\"joomla_version\":\"0\"}}', 'JLogEntry', '', 1, '2024-05-18 10:33:11', '0000-00-00 00:00:00', 1, '', 1, 204), -(228, '', 'bddca947-7f73-4ce3-bf45-edfe8193c134', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Log\\\\Logger\",\"joomla_version\":\"0\"}}', 'JLogLogger', '', 1, '2024-05-18 10:49:07', '0000-00-00 00:00:00', 1, '', 1, 205), -(229, '', '90434d94-46bd-4262-abd7-050993eb1ce8', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Log\\\\Logger\",\"joomla_version\":\"0\"}}', 'JLogger', '', 1, '2024-05-18 10:49:46', '0000-00-00 00:00:00', 1, '', 1, 206), -(230, '', 'a4d15f01-b749-4424-a721-1ac509a057f8', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Log\\\\Logger\\\\CallbackLogger\",\"joomla_version\":\"0\"}}', 'JLogLoggerCallback', '', 1, '2024-05-18 10:50:10', '0000-00-00 00:00:00', 1, '', 1, 207), -(231, '', 'ff42eeea-cd66-461c-beff-85212d420df0', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Log\\\\Logger\\\\DatabaseLogger\",\"joomla_version\":\"0\"}}', 'JLogLoggerDatabase', '', 1, '2024-05-18 10:53:34', '0000-00-00 00:00:00', 1, '', 1, 208), -(232, '', '2de66116-3618-4c91-ab20-808cb7e3a15d', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Log\\\\Logger\\\\EchoLogger\",\"joomla_version\":\"0\"}}', 'JLogLoggerEcho', '', 1, '2024-05-18 10:54:14', '0000-00-00 00:00:00', 1, '', 1, 209), -(233, '', '7a4e2111-dfe4-4c4f-9b64-cf03997b0809', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Log\\\\Logger\\\\FormattedtextLogger\",\"joomla_version\":\"0\"}}', 'JLogLoggerFormattedtext', '', 1, '2024-05-18 10:55:20', '0000-00-00 00:00:00', 1, '', 1, 210), -(234, '', 'f6008b54-d2c0-4c93-b74d-2e18b0789737', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Log\\\\Logger\\\\MessagequeueLogger\",\"joomla_version\":\"0\"}}', 'JLogLoggerMessagequeue', '', 1, '2024-05-18 10:56:02', '0000-00-00 00:00:00', 1, '', 1, 211), -(235, '', 'b1842de9-196d-4078-8a13-6425dbb35766', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Log\\\\Logger\\\\SyslogLogger\",\"joomla_version\":\"0\"}}', 'JLogLoggerSyslog', '', 1, '2024-05-18 10:56:32', '0000-00-00 00:00:00', 1, '', 1, 212), -(236, '', '6a789af7-bd8d-4431-b1f3-7df40ace53ee', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Log\\\\Logger\\\\W3cLogger\",\"joomla_version\":\"0\"}}', 'JLogLoggerW3c', '', 1, '2024-05-18 10:57:03', '0000-00-00 00:00:00', 1, '', 1, 213), -(237, '', '90c09a0a-9b2e-4fbc-b317-5dc7d97cc061', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Profiler\\\\Profiler\",\"joomla_version\":\"0\"}}', 'JProfiler', '', 1, '2024-05-18 10:57:53', '0000-00-00 00:00:00', 1, '', 1, 214), -(238, '', 'f3f4adfb-f742-465f-9e8d-3d1615f2a5d6', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Cache\\\\Cache\",\"joomla_version\":\"0\"}}', 'JCache', '', 1, '2024-05-18 10:58:46', '0000-00-00 00:00:00', 1, '', 1, 215), -(239, '', '8cf4ef54-307e-4939-9d94-ef9d20c22555', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Cache\\\\CacheController\",\"joomla_version\":\"0\"}}', 'JCacheController', '', 1, '2024-05-18 10:59:14', '0000-00-00 00:00:00', 1, '', 1, 216), -(240, '', '8ad3c42e-894d-48d6-a5fa-654f482517ab', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Cache\\\\CacheStorage\",\"joomla_version\":\"0\"}}', 'JCacheStorage', '', 1, '2024-05-18 10:59:45', '0000-00-00 00:00:00', 1, '', 1, 217), -(241, '', '4166425f-552f-4763-adcc-ca443ff4bbd4', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Cache\\\\Controller\\\\CallbackController\",\"joomla_version\":\"0\"}}', 'JCacheControllerCallback', '', 1, '2024-05-18 11:00:21', '0000-00-00 00:00:00', 1, '', 1, 218), -(242, '', '4f386749-bf3f-4e36-b4ea-6d1f0ce7df6e', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Cache\\\\Controller\\\\OutputController\",\"joomla_version\":\"0\"}}', 'JCacheControllerOutput', '', 1, '2024-05-18 11:00:47', '0000-00-00 00:00:00', 1, '', 1, 219), -(243, '', '644a3808-a1af-45fc-945f-4a6b7a8a14a0', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Cache\\\\Controller\\\\PageController\",\"joomla_version\":\"0\"}}', 'JCacheControllerPage', '', 1, '2024-05-18 11:01:16', '0000-00-00 00:00:00', 1, '', 1, 220), -(244, '', '393966ad-4fe2-403f-af93-5e239b6ad22d', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Cache\\\\Controller\\\\ViewController\",\"joomla_version\":\"0\"}}', 'JCacheControllerView', '', 1, '2024-05-18 11:01:42', '0000-00-00 00:00:00', 1, '', 1, 221), -(245, '', '346d1e4e-358b-4c88-8690-2b21daf30bb8', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Cache\\\\Storage\\\\ApcStorage\",\"joomla_version\":\"0\"}}', 'JCacheStorageApc', '', 1, '2024-05-18 11:02:10', '0000-00-00 00:00:00', 1, '', 1, 222), -(246, '', '665c8d8f-14dd-4e32-93b8-b5530a1b653a', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Cache\\\\Storage\\\\ApcuStorage\",\"joomla_version\":\"0\"}}', 'JCacheStorageApcu', '', 1, '2024-05-18 11:02:35', '0000-00-00 00:00:00', 1, '', 1, 223), -(247, '', '54013086-a3fc-4189-a05f-f8f9697d6382', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Cache\\\\Storage\\\\CacheStorageHelper\",\"joomla_version\":\"0\"}}', 'JCacheStorageHelper', '', 1, '2024-05-18 11:03:05', '0000-00-00 00:00:00', 1, '', 1, 224), -(248, '', 'd35e8d75-e238-49a9-9e88-442339def271', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Cache\\\\Storage\\\\CacheliteStorage\",\"joomla_version\":\"0\"}}', 'JCacheStorageCachelite', '', 1, '2024-05-18 11:03:31', '0000-00-00 00:00:00', 1, '', 1, 225), -(249, '', '5c5c7493-c6ee-4b65-9b1c-dfbc2751e7bd', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Cache\\\\Storage\\\\FileStorage\",\"joomla_version\":\"0\"}}', 'JCacheStorageFile', '', 1, '2024-05-18 11:03:56', '0000-00-00 00:00:00', 1, '', 1, 226), -(250, '', 'c9c39cde-0e2b-4423-86ed-6558c0927474', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Cache\\\\Storage\\\\MemcachedStorage\",\"joomla_version\":\"0\"}}', 'JCacheStorageMemcached', '', 1, '2024-05-18 11:04:35', '0000-00-00 00:00:00', 1, '', 1, 227), -(251, '', '41b7f904-cd24-46d2-aa81-52fb1a067a14', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Cache\\\\Storage\\\\MemcacheStorage\",\"joomla_version\":\"0\"}}', 'JCacheStorageMemcache', '', 1, '2024-05-18 11:04:59', '0000-00-00 00:00:00', 1, '', 1, 228), -(252, '', 'a93f314d-e648-48ea-a0dd-3cb6798a8692', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Cache\\\\Storage\\\\RedisStorage\",\"joomla_version\":\"0\"}}', 'JCacheStorageRedis', '', 1, '2024-05-18 11:05:24', '0000-00-00 00:00:00', 1, '', 1, 229), -(253, '', '7135fb75-1249-49e0-9ef3-e102639046bd', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Cache\\\\Storage\\\\WincacheStorage\",\"joomla_version\":\"0\"}}', 'JCacheStorageWincache', '', 1, '2024-05-18 11:05:48', '0000-00-00 00:00:00', 1, '', 1, 230), -(254, '', '64bfbdcf-18f0-479f-9632-28666c04d345', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Cache\\\\Storage\\\\XcacheStorage\",\"joomla_version\":\"0\"}}', 'JCacheStorageXcache', '', 1, '2024-05-18 11:06:16', '0000-00-00 00:00:00', 1, '', 1, 231), -(255, '', '3655e717-79d0-4cef-925f-61a7341eb8be', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Cache\\\\Exception\\\\CacheExceptionInterface\",\"joomla_version\":\"0\"}}', 'JCacheException', '', 1, '2024-05-18 11:06:36', '0000-00-00 00:00:00', 1, '', 1, 232), -(256, '', 'e2926512-e86d-4d0b-b532-0cb4733233d6', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Cache\\\\Exception\\\\CacheConnectingException\",\"joomla_version\":\"0\"}}', 'JCacheExceptionConnecting', '', 1, '2024-05-18 11:07:00', '0000-00-00 00:00:00', 1, '', 1, 233), -(257, '', '52cb7255-a68e-4ba7-910a-c5ebb0de1eaa', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Cache\\\\Exception\\\\UnsupportedCacheException\",\"joomla_version\":\"0\"}}', 'JCacheExceptionUnsupported', '', 1, '2024-05-18 11:07:26', '0000-00-00 00:00:00', 1, '', 1, 234), -(258, '', '4517efb1-f395-4000-9221-f31910acb2c0', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Session\\\\Exception\\\\UnsupportedStorageException\",\"joomla_version\":\"0\"}}', 'JSessionExceptionUnsupported', '', 1, '2024-05-18 11:08:00', '0000-00-00 00:00:00', 1, '', 1, 235), -(259, '', 'effdaf6d-2275-425d-9f52-d4952e564d34', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\User\\\\User\",\"joomla_version\":\"0\"}}', 'JUser', '', 1, '2024-05-18 11:08:29', '0000-00-00 00:00:00', 1, '', 1, 236), -(260, '', '47107a0a-cdfd-4841-9b2d-7c59404784bd', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\User\\\\UserHelper\",\"joomla_version\":\"0\"}}', 'JUserHelper', '', 1, '2024-05-18 11:08:50', '0000-00-00 00:00:00', 1, '', 1, 237), -(261, '', 'e38236a2-67c6-4dfd-86d8-649645bfe4fd', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\User\\\\UserWrapper\",\"joomla_version\":\"0\"}}', 'JUserWrapperHelper', '', 1, '2024-05-18 11:09:10', '0000-00-00 00:00:00', 1, '', 1, 238), -(262, '', 'c4fe7377-f891-4218-b7e3-a40bc99c0a61', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Form\",\"joomla_version\":\"0\"}}', 'JForm', '', 1, '2024-05-18 11:09:26', '0000-00-00 00:00:00', 1, '', 1, 239), -(263, '', '8ae86b41-2690-46f0-bf68-0478f997d61d', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\FormField\",\"joomla_version\":\"0\"}}', 'JFormField', '', 1, '2024-05-18 11:09:56', '0000-00-00 00:00:00', 1, '', 1, 240), -(264, '', '571422c4-0340-49f8-b846-5729c7af6ed7', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\FormHelper\",\"joomla_version\":\"0\"}}', 'JFormHelper', '', 1, '2024-05-18 11:10:22', '0000-00-00 00:00:00', 1, '', 1, 241), -(265, '', '7c931501-6650-4efd-be81-ccdbbef8f372', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\FormRule\",\"joomla_version\":\"0\"}}', 'JFormRule', '', 1, '2024-05-18 11:10:57', '0000-00-00 00:00:00', 1, '', 1, 242), -(266, '', 'dd78f485-1018-4b6a-8ac5-8bd05a6b9f82', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\FormWrapper\",\"joomla_version\":\"0\"}}', 'JFormWrapper', '', 1, '2024-05-18 11:11:26', '0000-00-00 00:00:00', 1, '', 1, 243), -(267, '', 'e3a4cfbd-02af-454f-ad05-fae7938638ba', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\AuthorField\",\"joomla_version\":\"0\"}}', 'JFormFieldAuthor', '', 1, '2024-05-18 11:11:46', '0000-00-00 00:00:00', 1, '', 1, 244), -(268, '', 'b32a2a13-2caa-48b7-b15c-12302b287752', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\CaptchaField\",\"joomla_version\":\"0\"}}', 'JFormFieldCaptcha', '', 1, '2024-05-18 11:12:12', '0000-00-00 00:00:00', 1, '', 1, 245), -(269, '', '3061ee38-a449-4ceb-95bf-ba0c999c9023', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\ChromestyleField\",\"joomla_version\":\"0\"}}', 'JFormFieldChromeStyle', '', 1, '2024-05-18 11:12:37', '0000-00-00 00:00:00', 1, '', 1, 246), -(270, '', '636d48f0-8575-4a78-a8af-e9368ceb59aa', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\ContenthistoryField\",\"joomla_version\":\"0\"}}', 'JFormFieldContenthistory', '', 1, '2024-05-18 11:12:58', '0000-00-00 00:00:00', 1, '', 1, 247), -(271, '', '95838506-662b-4e79-bbd3-dcf47d15e81d', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\ContentlanguageField\",\"joomla_version\":\"0\"}}', 'JFormFieldContentlanguage', '', 1, '2024-05-18 11:13:18', '0000-00-00 00:00:00', 1, '', 1, 248), -(272, '', '92f8e58c-29b7-44b2-8be7-76b7a403591b', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\ContenttypeField\",\"joomla_version\":\"0\"}}', 'JFormFieldContenttype', '', 1, '2024-05-18 11:13:34', '2024-05-18 11:19:19', 2, '', 1, 249), -(273, '', '3c6bb160-422c-4e86-8709-61a647418c5a', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\EditorField\",\"joomla_version\":\"0\"}}', 'JFormFieldEditor', '', 1, '2024-05-18 11:19:45', '0000-00-00 00:00:00', 1, '', 1, 250), -(274, '', '4a0bd64c-2739-4206-b7f3-1c91061509c5', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\FrontendlanguageField\",\"joomla_version\":\"0\"}}', 'JFormFieldFrontend_Language', '', 1, '2024-05-18 11:20:10', '0000-00-00 00:00:00', 1, '', 1, 251), -(275, '', '2eb90029-9209-48e0-96f7-47ba8e66129c', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\HeadertagField\",\"joomla_version\":\"0\"}}', 'JFormFieldHeadertag', '', 1, '2024-05-18 11:20:33', '0000-00-00 00:00:00', 1, '', 1, 252), -(276, '', 'bf3ecce9-65c3-4a9f-a0da-d3f7f17e14e1', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\HelpsiteField\",\"joomla_version\":\"0\"}}', 'JFormFieldHelpsite', '', 1, '2024-05-18 11:20:58', '0000-00-00 00:00:00', 1, '', 1, 253), -(277, '', '32514363-e6c2-42b3-9d3f-4c3278bf0dcc', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\LastvisitdaterangeField\",\"joomla_version\":\"0\"}}', 'JFormFieldLastvisitDateRange', '', 1, '2024-05-18 11:21:25', '0000-00-00 00:00:00', 1, '', 1, 254), -(278, '', '4d509ca3-e38d-4bb1-a190-c73bc0d8fbfd', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\LimitboxField\",\"joomla_version\":\"0\"}}', 'JFormFieldLimitbox', '', 1, '2024-05-18 11:21:49', '0000-00-00 00:00:00', 1, '', 1, 255), -(279, '', '87d2e4fb-8a68-4a70-92f1-eb33b853288c', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\MediaField\",\"joomla_version\":\"0\"}}', 'JFormFieldMedia', '', 1, '2024-05-18 11:22:15', '0000-00-00 00:00:00', 1, '', 1, 256), -(280, '', '2455bac2-ed24-4c40-9bd2-2c8c89d25d76', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\MenuField\",\"joomla_version\":\"0\"}}', 'JFormFieldMenu', '', 1, '2024-05-18 11:22:42', '0000-00-00 00:00:00', 1, '', 1, 257), -(281, '', 'dc182776-50b8-4761-b40a-838a6235d157', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\MenuitemField\",\"joomla_version\":\"0\"}}', 'JFormFieldMenuitem', '', 1, '2024-05-18 11:23:00', '0000-00-00 00:00:00', 1, '', 1, 258), -(282, '', '630643bf-9fb7-4c58-b60d-41567a5534f6', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\ModuleorderField\",\"joomla_version\":\"0\"}}', 'JFormFieldModuleOrder', '', 1, '2024-05-18 11:23:25', '0000-00-00 00:00:00', 1, '', 1, 259), -(283, '', '74b22117-c4a3-4adc-be20-3f60e9e22847', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\ModulepositionField\",\"joomla_version\":\"0\"}}', 'JFormFieldModulePosition', '', 1, '2024-05-18 11:23:55', '0000-00-00 00:00:00', 1, '', 1, 260), -(284, '', 'a374f963-c5b6-4126-8d66-5163be2654ca', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\ModuletagField\",\"joomla_version\":\"0\"}}', 'JFormFieldModuletag', '', 1, '2024-05-18 11:24:16', '0000-00-00 00:00:00', 1, '', 1, 261), -(285, '', '10bb0c15-34df-49e5-9e75-e6e6888d1ad9', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\OrderingField\",\"joomla_version\":\"0\"}}', 'JFormFieldOrdering', '', 1, '2024-05-18 11:24:32', '0000-00-00 00:00:00', 1, '', 1, 262), -(286, '', 'bc4e1526-6911-40a0-aa4b-c34ce3e3c1ac', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\PluginstatusField\",\"joomla_version\":\"0\"}}', 'JFormFieldPlugin_Status', '', 1, '2024-05-18 11:24:58', '0000-00-00 00:00:00', 1, '', 1, 263), -(287, '', 'ddfd9953-12b5-457d-b0f4-ee3f4037f1c8', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\RedirectStatusField\",\"joomla_version\":\"0\"}}', 'JFormFieldRedirect_Status', '', 1, '2024-05-18 11:25:16', '0000-00-00 00:00:00', 1, '', 1, 264), -(288, '', '5740ef5d-ad58-45c6-b63a-d9b3be84852e', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\RegistrationdaterangeField\",\"joomla_version\":\"0\"}}', 'JFormFieldRegistrationDateRange', '', 1, '2024-05-18 11:25:36', '0000-00-00 00:00:00', 1, '', 1, 265), -(289, '', 'a3ca4b07-c3ad-405c-aeb5-640e06e0007f', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\StatusField\",\"joomla_version\":\"0\"}}', 'JFormFieldStatus', '', 1, '2024-05-18 11:25:54', '0000-00-00 00:00:00', 1, '', 1, 266), -(290, '', '33f12f0a-37d6-4eb8-8c93-a5df4ddf639e', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\TagField\",\"joomla_version\":\"0\"}}', 'JFormFieldTag', '', 1, '2024-05-18 11:26:14', '0000-00-00 00:00:00', 1, '', 1, 267), -(291, '', '81400858-9b44-4899-beaf-34932880e62d', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\TemplatestyleField\",\"joomla_version\":\"0\"}}', 'JFormFieldTemplatestyle', '', 1, '2024-05-18 11:26:36', '0000-00-00 00:00:00', 1, '', 1, 268), -(292, '', 'b4f358e7-9fb5-443b-8287-4a4138c02135', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\UseractiveField\",\"joomla_version\":\"0\"}}', 'JFormFieldUserActive', '', 1, '2024-05-18 11:26:59', '0000-00-00 00:00:00', 1, '', 1, 269), -(293, '', 'd35304f8-b5d8-4604-8aac-a292eaa4d7a8', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\UsergrouplistField\",\"joomla_version\":\"0\"}}', 'JFormFieldUserGroupList', '', 1, '2024-05-18 11:27:16', '0000-00-00 00:00:00', 1, '', 1, 270), -(294, '', '98b18db8-7eb9-412f-a785-5c3735ffd870', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\UserstateField\",\"joomla_version\":\"0\"}}', 'JFormFieldUserState', '', 1, '2024-05-18 11:27:35', '0000-00-00 00:00:00', 1, '', 1, 271), -(295, '', '37e3ef8d-4631-47ee-91f1-43f4d7fc4a12', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\UserField\",\"joomla_version\":\"0\"}}', 'JFormFieldUser', '', 1, '2024-05-18 11:27:58', '0000-00-00 00:00:00', 1, '', 1, 272), -(296, '', '7e5b7df9-f893-46c1-a750-7afdd0b191bf', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Rule\\\\BooleanRule\",\"joomla_version\":\"0\"}}', 'JFormRuleBoolean', '', 1, '2024-05-18 11:28:22', '0000-00-00 00:00:00', 1, '', 1, 273), -(297, '', 'a0d9471b-b7f2-4878-9d0d-cf1aa2554cd0', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Rule\\\\CalendarRule\",\"joomla_version\":\"0\"}}', 'JFormRuleCalendar', '', 1, '2024-05-18 11:29:16', '0000-00-00 00:00:00', 1, '', 1, 274), -(298, '', '95ac2316-6e45-49b6-a699-43c27c574e98', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Rule\\\\CaptchaRule\",\"joomla_version\":\"0\"}}', 'JFormRuleCaptcha', '', 1, '2024-05-18 11:29:42', '0000-00-00 00:00:00', 1, '', 1, 275), -(299, '', 'c878d3bd-34ba-48cf-8b5d-81b69658a666', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Rule\\\\ColorRule\",\"joomla_version\":\"0\"}}', 'JFormRuleColor', '', 1, '2024-05-18 11:30:04', '0000-00-00 00:00:00', 1, '', 1, 276), -(300, '', '3402dda1-8406-4f80-8330-46952879ab66', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Rule\\\\EmailRule\",\"joomla_version\":\"0\"}}', 'JFormRuleEmail', '', 1, '2024-05-18 11:30:25', '0000-00-00 00:00:00', 1, '', 1, 277), -(301, '', 'c8a86e8f-a573-4906-8f82-f8d0e369c16a', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Rule\\\\EqualsRule\",\"joomla_version\":\"0\"}}', 'JFormRuleEquals', '', 1, '2024-05-18 11:30:53', '0000-00-00 00:00:00', 1, '', 1, 278), -(302, '', '5cb3c5c8-b350-4a3b-8dab-e0b7252bc687', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Rule\\\\NotequalsRule\",\"joomla_version\":\"0\"}}', 'JFormRuleNotequals', '', 1, '2024-05-18 11:31:11', '0000-00-00 00:00:00', 1, '', 1, 279), -(303, '', 'b3455c2b-5ed7-4a2a-bb11-7b085331b712', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Rule\\\\NumberRule\",\"joomla_version\":\"0\"}}', 'JFormRuleNumber', '', 1, '2024-05-18 11:31:30', '0000-00-00 00:00:00', 1, '', 1, 280), -(304, '', '7ee396f8-0c95-4a79-8157-0804f34fcb16', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Rule\\\\OptionsRule\",\"joomla_version\":\"0\"}}', 'JFormRuleOptions', '', 1, '2024-05-18 11:31:55', '0000-00-00 00:00:00', 1, '', 1, 281), -(305, '', '2bffaaff-58a2-4f14-be5b-d3548de6cbbb', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Rule\\\\PasswordRule\",\"joomla_version\":\"0\"}}', 'JFormRulePassword', '', 1, '2024-05-18 11:32:15', '0000-00-00 00:00:00', 1, '', 1, 282), -(306, '', 'c5205116-78c0-4d8b-863b-b0fd32f0cb9d', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Rule\\\\RulesRule\",\"joomla_version\":\"0\"}}', 'JFormRuleRules', '', 1, '2024-05-18 11:32:39', '0000-00-00 00:00:00', 1, '', 1, 283), -(307, '', '757b02fe-4149-45bc-b110-2ebaeae66f17', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Rule\\\\TelRule\",\"joomla_version\":\"0\"}}', 'JFormRuleTel', '', 1, '2024-05-18 11:33:06', '0000-00-00 00:00:00', 1, '', 1, 284), -(308, '', '9214cd9a-d08e-407a-8c6f-d6b49aec82a8', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Rule\\\\UrlRule\",\"joomla_version\":\"0\"}}', 'JFormRuleUrl', '', 1, '2024-05-18 11:33:29', '0000-00-00 00:00:00', 1, '', 1, 285), -(309, '', '577ce475-83a3-4a2e-b69f-dcd0703aec70', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Rule\\\\UsernameRule\",\"joomla_version\":\"0\"}}', 'JFormRuleUsername', '', 1, '2024-05-18 11:33:51', '0000-00-00 00:00:00', 1, '', 1, 286), -(310, '', 'c8219b24-374a-4cb3-8faf-3c23b129ceba', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Microdata\\\\Microdata\",\"joomla_version\":\"0\"}}', 'JMicrodata', '', 1, '2024-05-18 11:34:12', '0000-00-00 00:00:00', 1, '', 1, 287), -(311, '', 'a5f433b4-de43-45ad-b6aa-ed7e2b4524b1', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Mail\\\\Mail\",\"joomla_version\":\"0\"}}', 'JMail', '', 1, '2024-05-18 11:34:29', '0000-00-00 00:00:00', 1, '', 1, 288), -(312, '', 'e2695146-82f9-4f4e-ae24-a2e28c9aa692', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Mail\\\\MailHelper\",\"joomla_version\":\"0\"}}', 'JMailHelper', '', 1, '2024-05-18 11:34:47', '0000-00-00 00:00:00', 1, '', 1, 289), -(313, '', '8f87732c-ae41-4685-b9e3-381c8ee277f5', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Mail\\\\MailWrapper\",\"joomla_version\":\"0\"}}', 'JMailWrapperHelper', '', 1, '2024-05-18 11:35:14', '0000-00-00 00:00:00', 1, '', 1, 290), -(314, '', '01f9f992-adc3-4529-abc8-ed1e0fb1f88e', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Client\\\\ClientHelper\",\"joomla_version\":\"0\"}}', 'JClientHelper', '', 1, '2024-05-18 11:35:38', '0000-00-00 00:00:00', 1, '', 1, 291), -(315, '', '06286fff-ee87-4b45-9f9f-9b77dbf3dde1', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Client\\\\ClientWrapper\",\"joomla_version\":\"0\"}}', 'JClientWrapperHelper', '', 1, '2024-05-18 11:35:59', '0000-00-00 00:00:00', 1, '', 1, 292), -(316, '', 'ba0b2e6c-54c1-472b-8164-2977eff95530', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Client\\\\FtpClient\",\"joomla_version\":\"0\"}}', 'JClientFtp', '', 1, '2024-05-18 11:36:19', '0000-00-00 00:00:00', 1, '', 1, 293), -(317, '', 'e8fccc29-e48c-4c4c-94c5-338db3ac0ec2', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Client\\\\FtpClient\",\"joomla_version\":\"0\"}}', 'JFTP', '', 1, '2024-05-18 11:36:53', '0000-00-00 00:00:00', 1, '', 1, 294), -(318, '', '93ff2bec-b4b7-4f53-aec1-c22e68fe83a4', '{\"settings0\":{\"namespace\":\"Joomla\\\\Ldap\\\\LdapClient\",\"joomla_version\":\"0\"}}', 'JClientLdap', '', 1, '2024-05-18 11:37:14', '0000-00-00 00:00:00', 1, '', 1, 295), -(319, '', '13ff417a-8633-4b8c-949a-97e35a0d03ff', '{\"settings0\":{\"namespace\":\"Joomla\\\\Ldap\\\\LdapClient\",\"joomla_version\":\"0\"}}', 'JLDAP', '', 1, '2024-05-18 11:37:36', '0000-00-00 00:00:00', 1, '', 1, 296), -(320, '', 'f27df948-aff9-484d-a38d-7e7a16b26050', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Updater\\\\Update\",\"joomla_version\":\"0\"}}', 'JUpdate', '', 1, '2024-05-18 11:37:58', '0000-00-00 00:00:00', 1, '', 1, 297), -(321, '', '6368b71b-1848-41ea-a83b-6594214c67c2', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Updater\\\\UpdateAdapter\",\"joomla_version\":\"0\"}}', 'JUpdateAdapter', '', 1, '2024-05-18 11:38:20', '0000-00-00 00:00:00', 1, '', 1, 298), -(322, '', '4e0f3ff1-ded0-4d9e-851c-d10701b9155e', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Updater\\\\Updater\",\"joomla_version\":\"0\"}}', 'JUpdater', '', 1, '2024-05-18 11:38:46', '0000-00-00 00:00:00', 1, '', 1, 299), -(323, '', 'a64019e0-eb96-4991-b302-6feccd025586', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Updater\\\\Adapter\\\\CollectionAdapter\",\"joomla_version\":\"0\"}}', 'JUpdaterCollection', '', 1, '2024-05-18 11:39:10', '0000-00-00 00:00:00', 1, '', 1, 300), -(324, '', 'c96caaab-5a9b-4d0f-8927-5c5fcf23b6f4', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Updater\\\\Adapter\\\\ExtensionAdapter\",\"joomla_version\":\"0\"}}', 'JUpdaterExtension', '', 1, '2024-05-18 11:39:31', '0000-00-00 00:00:00', 1, '', 1, 301), -(325, '', 'bfc1b531-2c63-45a2-93bd-9b968bdef8c0', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Crypt\\\\Crypt\",\"joomla_version\":\"0\"}}', 'JCrypt', '', 1, '2024-05-18 11:39:54', '0000-00-00 00:00:00', 1, '', 1, 302), -(326, '', '76d2f1c4-e213-40ee-9811-be0d2d0ca00a', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Crypt\\\\CipherInterface\",\"joomla_version\":\"3\"},\"settings1\":{\"namespace\":\"Joomla\\\\Crypt\\\\CipherInterface\",\"joomla_version\":\"0\"}}', 'JCryptCipher', '', 1, '2024-05-18 11:40:10', '2024-05-18 17:37:14', 2, '', 1, 303), -(327, '', '19a95b7a-af63-4fb1-b8b3-7a5370629981', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Crypt\\\\Key\",\"joomla_version\":\"3\"},\"settings1\":{\"namespace\":\"Joomla\\\\Crypt\\\\Key\",\"joomla_version\":\"0\"}}', 'JCryptKey', '', 1, '2024-05-18 11:40:31', '2024-05-18 17:39:17', 2, '', 1, 304), -(328, '', 'a4b1a2f8-0ea2-44e2-b633-0270af3bc594', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Crypt\\\\CryptPassword\",\"joomla_version\":\"0\"}}', 'JCryptPassword', '', 1, '2024-05-18 11:40:55', '0000-00-00 00:00:00', 1, '', 1, 305), -(329, '', '774cb055-f1bf-46d7-a102-bbce2de1c8c3', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Crypt\\\\Cipher\\\\BlowfishCipher\",\"joomla_version\":\"0\"}}', 'JCryptCipherBlowfish', '', 1, '2024-05-18 11:41:16', '0000-00-00 00:00:00', 1, '', 1, 306), -(330, '', '062bb518-0559-47f3-aed3-d47536df1cab', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Crypt\\\\Cipher\\\\CryptoCipher\",\"joomla_version\":\"0\"}}', 'JCryptCipherCrypto', '', 1, '2024-05-18 11:41:43', '0000-00-00 00:00:00', 1, '', 1, 307), -(331, '', '2407b5c1-a3ed-4c5b-9044-09011aaf6751', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Crypt\\\\Cipher\\\\McryptCipher\",\"joomla_version\":\"0\"}}', 'JCryptCipherMcrypt', '', 1, '2024-05-18 11:42:08', '0000-00-00 00:00:00', 1, '', 1, 308), -(332, '', '758de6d8-4d77-4877-a0d2-d7cd23232dc0', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Crypt\\\\Cipher\\\\Rijndael256Cipher\",\"joomla_version\":\"0\"}}', 'JCryptCipherRijndael256', '', 1, '2024-05-18 11:42:41', '0000-00-00 00:00:00', 1, '', 1, 309), -(333, '', '65669775-fbcd-4fd4-8b14-636c26a59b18', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Crypt\\\\Cipher\\\\SimpleCipher\",\"joomla_version\":\"0\"}}', 'JCryptCipherSimple', '', 1, '2024-05-18 11:43:07', '0000-00-00 00:00:00', 1, '', 1, 310), -(334, '', '2a5ea144-20f9-4ce6-b0ea-193dd7292e1b', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Crypt\\\\Cipher\\\\SodiumCipher\",\"joomla_version\":\"0\"}}', 'JCryptCipherSodium', '', 1, '2024-05-18 11:43:31', '0000-00-00 00:00:00', 1, '', 1, 311), -(335, '', 'b0d18c3a-c9fc-4fed-b63d-7f441ee7e0ee', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Crypt\\\\Cipher\\\\TripleDesCipher\",\"joomla_version\":\"0\"}}', 'JCryptCipher3Des', '', 1, '2024-05-18 11:43:56', '0000-00-00 00:00:00', 1, '', 1, 312), -(336, '', '4a5e397d-32cc-4cf3-8721-fd5e9c554021', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Crypt\\\\Password\\\\SimpleCryptPassword\",\"joomla_version\":\"0\"}}', 'JCryptPasswordSimple', '', 1, '2024-05-18 11:44:32', '0000-00-00 00:00:00', 1, '', 1, 313), -(337, '', 'b6882f3d-a8bc-4d82-ae7b-5f0fede36979', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\String\\\\PunycodeHelper\",\"joomla_version\":\"0\"}}', 'JStringPunycode', '', 1, '2024-05-18 11:45:00', '0000-00-00 00:00:00', 1, '', 1, 314), -(338, '', '3970e758-a029-48c3-87df-5898010963ba', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Utility\\\\BufferStreamHandler\",\"joomla_version\":\"0\"}}', 'JBuffer', '', 1, '2024-05-18 11:45:22', '0000-00-00 00:00:00', 1, '', 1, 315), -(339, '', '0823882c-5fc2-4c6a-ac6d-6e35e85067af', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Utility\\\\Utility\",\"joomla_version\":\"0\"}}', 'JUtility', '', 1, '2024-05-18 11:45:44', '0000-00-00 00:00:00', 1, '', 1, 316), -(340, '', '0d1b3cc4-7093-498f-8599-521a555e9cd6', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Input\\\\Cli\",\"joomla_version\":\"0\"}}', 'JInputCli', '', 1, '2024-05-18 11:46:26', '0000-00-00 00:00:00', 1, '', 1, 317), -(341, '', 'e46476c4-9bd1-4197-aadf-b3fb5249febf', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Input\\\\Cookie\",\"joomla_version\":\"0\"}}', 'JInputCookie', '', 1, '2024-05-18 11:46:53', '0000-00-00 00:00:00', 1, '', 1, 318), -(342, '', '7247ce0b-e13f-4f23-9851-2d34b9bd9e23', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Input\\\\Files\",\"joomla_version\":\"0\"}}', 'JInputFiles', '', 1, '2024-05-18 11:47:28', '0000-00-00 00:00:00', 1, '', 1, 319), -(343, '', 'b72e6a7a-85a2-401e-80e3-e57e28a157e3', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Input\\\\Json\",\"joomla_version\":\"0\"}}', 'JInputJSON', '', 1, '2024-05-18 11:47:45', '0000-00-00 00:00:00', 1, '', 1, 320), -(344, '', 'e4d24f01-125c-4a42-980f-952cb176740f', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Feed\\\\Feed\",\"joomla_version\":\"0\"}}', 'JFeed', '', 1, '2024-05-18 11:48:04', '0000-00-00 00:00:00', 1, '', 1, 321), -(345, '', '83c45c5a-51b7-4475-a91b-693a1ce519c3', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Feed\\\\FeedEntry\",\"joomla_version\":\"0\"}}', 'JFeedEntry', '', 1, '2024-05-18 11:48:21', '0000-00-00 00:00:00', 1, '', 1, 322), -(346, '', '5141d728-204c-400c-8648-77eb7f59f9ff', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Feed\\\\FeedFactory\",\"joomla_version\":\"0\"}}', 'JFeedFactory', '', 1, '2024-05-18 11:48:40', '0000-00-00 00:00:00', 1, '', 1, 323), -(347, '', '99679894-a0e2-4299-927e-26413d23e28c', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Feed\\\\FeedLink\",\"joomla_version\":\"0\"}}', 'JFeedLink', '', 1, '2024-05-18 11:48:59', '0000-00-00 00:00:00', 1, '', 1, 324), -(348, '', '7f6c2c10-4672-463d-832c-1d686db339c0', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Feed\\\\FeedParser\",\"joomla_version\":\"0\"}}', 'JFeedParser', '', 1, '2024-05-18 11:49:24', '0000-00-00 00:00:00', 1, '', 1, 325), -(349, '', '5f4d46e9-8f94-44ff-ad76-14477d357f77', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Feed\\\\FeedPerson\",\"joomla_version\":\"0\"}}', 'JFeedPerson', '', 1, '2024-05-18 11:50:27', '0000-00-00 00:00:00', 1, '', 1, 326), -(350, '', 'bd9884f1-33d4-4a27-beb0-be229285c03c', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Feed\\\\Parser\\\\AtomParser\",\"joomla_version\":\"0\"}}', 'JFeedParserAtom', '', 1, '2024-05-18 11:50:47', '0000-00-00 00:00:00', 1, '', 1, 327), -(351, '', '47aab0ce-f4e7-4b7e-896d-0acfa5bd44b5', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Feed\\\\Parser\\\\NamespaceParserInterface\",\"joomla_version\":\"0\"}}', 'JFeedParserNamespace', '', 1, '2024-05-18 11:51:12', '0000-00-00 00:00:00', 1, '', 1, 328), -(352, '', '307f6a22-e7cb-4cf3-9cdd-c504a214fb97', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Feed\\\\Parser\\\\RssParser\",\"joomla_version\":\"0\"}}', 'JFeedParserRss', '', 1, '2024-05-18 11:51:34', '0000-00-00 00:00:00', 1, '', 1, 329), -(353, '', 'f94d1eff-ffd0-4809-a27f-0c52ca37585a', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Feed\\\\Parser\\\\Rss\\\\ItunesRssParser\",\"joomla_version\":\"0\"}}', 'JFeedParserRssItunes', '', 1, '2024-05-18 11:52:01', '0000-00-00 00:00:00', 1, '', 1, 330), -(354, '', '20d4459b-a6ad-400a-8529-ccc016465392', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Feed\\\\Parser\\\\Rss\\\\MediaRssParser\",\"joomla_version\":\"0\"}}', 'JFeedParserRssMedia', '', 1, '2024-05-18 11:52:25', '0000-00-00 00:00:00', 1, '', 1, 331), -(355, '', '5957958d-1249-49af-98ad-51f4bca471a8', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Image\\\\Image\",\"joomla_version\":\"0\"}}', 'JImage', '', 1, '2024-05-18 11:52:50', '0000-00-00 00:00:00', 1, '', 1, 332), -(356, '', '3e5c8d3e-f54a-4ca0-9926-7b43530f5260', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Image\\\\ImageFilter\",\"joomla_version\":\"0\"}}', 'JImageFilter', '', 1, '2024-05-18 11:53:07', '0000-00-00 00:00:00', 1, '', 1, 333), -(357, '', 'c5fa10fc-b5bc-4b75-80f5-879314ca744c', '{\"settings0\":{\"namespace\":\"Joomla\\\\Image\\\\Filter\\\\Backgroundfill\",\"joomla_version\":\"3\"},\"settings1\":{\"namespace\":\"Joomla\\\\CMS\\\\Image\\\\Filter\\\\Backgroundfill\",\"joomla_version\":\"0\"}}', 'JImageFilterBackgroundfill', '', 1, '2024-05-18 11:53:28', '2024-05-18 19:24:35', 2, '', 1, 334), -(358, '', 'a31af1d6-6ddd-4b52-94a0-c19719938bfe', '{\"settings0\":{\"namespace\":\"Joomla\\\\Image\\\\Filter\\\\Brightness\",\"joomla_version\":\"3\"},\"settings1\":{\"namespace\":\"Joomla\\\\CMS\\\\Image\\\\Filter\\\\Brightness\",\"joomla_version\":\"0\"}}', 'JImageFilterBrightness', '', 1, '2024-05-18 11:53:48', '2024-05-18 19:25:00', 2, '', 1, 335), -(359, '', 'fc1c1b94-af75-4df0-8ff2-dd628cdd2fd6', '{\"settings0\":{\"namespace\":\"Joomla\\\\Image\\\\Filter\\\\Contrast\",\"joomla_version\":\"3\"},\"settings1\":{\"namespace\":\"Joomla\\\\CMS\\\\Image\\\\Filter\\\\Contrast\",\"joomla_version\":\"0\"}}', 'JImageFilterContrast', '', 1, '2024-05-18 11:54:19', '2024-05-18 19:25:33', 2, '', 1, 336), -(360, '', '2a1bf749-aee1-4ca5-8435-431eca453a38', '{\"settings0\":{\"namespace\":\"Joomla\\\\Image\\\\Filter\\\\Edgedetect\",\"joomla_version\":\"3\"},\"settings1\":{\"namespace\":\"Joomla\\\\CMS\\\\Image\\\\Filter\\\\Edgedetect\",\"joomla_version\":\"0\"}}', 'JImageFilterEdgedetect', '', 1, '2024-05-18 11:54:43', '2024-05-18 19:25:58', 2, '', 1, 337), -(361, '', 'b08f9da5-f177-420b-8717-bb3d0b526f03', '{\"settings0\":{\"namespace\":\"Joomla\\\\Image\\\\Filter\\\\Emboss\",\"joomla_version\":\"3\"},\"settings1\":{\"namespace\":\"Joomla\\\\CMS\\\\Image\\\\Filter\\\\Emboss\",\"joomla_version\":\"0\"}}', 'JImageFilterEmboss', '', 1, '2024-05-18 11:55:00', '2024-05-18 19:26:15', 2, '', 1, 338), -(362, '', 'fbdce191-84f3-42c7-9c47-cc52796627bf', '{\"settings0\":{\"namespace\":\"Joomla\\\\Image\\\\Filter\\\\Negate\",\"joomla_version\":\"3\"},\"settings1\":{\"namespace\":\"Joomla\\\\CMS\\\\Image\\\\Filter\\\\Negate\",\"joomla_version\":\"0\"}}', 'JImageFilterNegate', '', 1, '2024-05-18 11:55:25', '2024-05-18 19:26:40', 2, '', 1, 339), -(363, '', 'fca5f2e5-47db-48b6-a28d-43732cc180a9', '{\"settings0\":{\"namespace\":\"Joomla\\\\Image\\\\Filter\\\\Sketchy\",\"joomla_version\":\"0\"}}', 'JImageFilterSketchy', '', 1, '2024-05-18 11:55:45', '0000-00-00 00:00:00', 1, '', 1, 340), -(364, '', '16e40573-2dca-4e1a-b021-ddb68e71594b', '{\"settings0\":{\"namespace\":\"Joomla\\\\Image\\\\Filter\\\\Smooth\",\"joomla_version\":\"3\"},\"settings1\":{\"namespace\":\"Joomla\\\\CMS\\\\Image\\\\Filter\\\\Smooth\",\"joomla_version\":\"0\"}}', 'JImageFilterSmooth', '', 1, '2024-05-18 11:56:13', '2024-05-18 19:26:57', 2, '', 1, 341), -(365, '', 'ac166443-eb68-4b57-8a3c-63bcf4aaeb2a', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Object\\\\CMSObject\",\"joomla_version\":\"0\"}}', 'JObject', '', 1, '2024-05-18 11:56:34', '0000-00-00 00:00:00', 1, '', 1, 342), -(366, '', 'fdf6b2b2-1561-4ccf-bf66-2d05b0b956aa', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Extension\\\\ExtensionHelper\",\"joomla_version\":\"0\"}}', 'JExtensionHelper', '', 1, '2024-05-18 11:56:56', '0000-00-00 00:00:00', 1, '', 1, 343), -(367, '', '93a098fc-58b6-4f1b-978a-0a5d31bba09f', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Filesystem\\\\FilesystemHelper\",\"joomla_version\":\"0\"}}', 'JFilesystemHelper', '', 1, '2024-05-18 11:57:24', '0000-00-00 00:00:00', 1, '', 1, 344), -(368, '', '48e08187-e797-4072-a6e7-bd0d6dcb32c5', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Filesystem\\\\Patcher\",\"joomla_version\":\"0\"}}', 'JFilesystemPatcher', '', 1, '2024-05-18 11:57:52', '0000-00-00 00:00:00', 1, '', 1, 345), -(369, '', '97b81dcd-93cb-4b52-804a-23f2af8d0e2d', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Filesystem\\\\Path\",\"joomla_version\":\"0\"}}', 'JPath', '', 1, '2024-05-18 11:58:18', '0000-00-00 00:00:00', 1, '', 1, 346), -(370, '', '3b625fe9-b66d-4d0c-af3b-b657fa279cd2', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Filesystem\\\\Stream\",\"joomla_version\":\"0\"}}', 'JStream', '', 1, '2024-05-18 11:58:42', '0000-00-00 00:00:00', 1, '', 1, 347), -(371, '', 'fdc5c1aa-7dce-49ce-b35c-917155aa4d53', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Filesystem\\\\Streams\\\\StreamString\",\"joomla_version\":\"0\"}}', 'JStreamString', '', 1, '2024-05-18 11:59:01', '0000-00-00 00:00:00', 1, '', 1, 348), -(372, '', '9c1997f5-592a-471f-a6a6-ec205bf20b58', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Filesystem\\\\Support\\\\StringController\",\"joomla_version\":\"0\"}}', 'JStringController', '', 1, '2024-05-18 11:59:41', '0000-00-00 00:00:00', 1, '', 1, 349), -(373, '', 'cad536bf-a916-439b-b814-adbb9c8d11ef', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Filesystem\\\\Wrapper\\\\FileWrapper\",\"joomla_version\":\"0\"}}', 'JFilesystemWrapperFile', '', 1, '2024-05-18 11:59:58', '0000-00-00 00:00:00', 1, '', 1, 350), -(374, '', '648adc06-9a7e-459e-8af1-5cf7d1c3a0ca', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Filesystem\\\\Wrapper\\\\FolderWrapper\",\"joomla_version\":\"0\"}}', 'JFilesystemWrapperFolder', '', 1, '2024-05-18 12:00:22', '0000-00-00 00:00:00', 1, '', 1, 351), -(375, '', 'eb19e279-1649-4c1a-9a50-b9a22108383f', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Filesystem\\\\Wrapper\\\\PathWrapper\",\"joomla_version\":\"0\"}}', 'JFilesystemWrapperPath', '', 1, '2024-05-18 12:00:50', '0000-00-00 00:00:00', 1, '', 1, 352), -(376, '', '2ef6137d-d122-4769-94ca-2eb991e30fb1', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Adapter\\\\Adapter\",\"joomla_version\":\"0\"}}', 'JAdapter', '', 1, '2024-05-18 12:01:10', '0000-00-00 00:00:00', 1, '', 1, 353), -(377, '', 'ae56c9d7-2c2a-446a-a4b0-9f979da47f3b', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Adapter\\\\AdapterInstance\",\"joomla_version\":\"0\"}}', 'JAdapterInstance', '', 1, '2024-05-18 12:01:30', '0000-00-00 00:00:00', 1, '', 1, 354), -(378, '', '8af6f6e0-7fe4-40f4-be49-d40e2bed9570', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\AccesslevelField\",\"joomla_version\":\"0\"}}', 'JFormFieldAccessLevel', '', 1, '2024-05-18 15:44:58', '0000-00-00 00:00:00', 1, '', 1, 355), -(379, '', '5d897103-1522-48b9-aa85-bae53e1160f5', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\AliastagField\",\"joomla_version\":\"0\"}}', 'JFormFieldAliastag', '', 1, '2024-05-18 15:46:16', '0000-00-00 00:00:00', 1, '', 1, 356), -(380, '', '80f32455-afc5-42f9-a307-ee357b0dd6fe', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\CachehandlerField\",\"joomla_version\":\"0\"}}', 'JFormFieldCacheHandler', '', 1, '2024-05-18 15:48:15', '0000-00-00 00:00:00', 1, '', 1, 357), -(381, '', '80a6e469-8999-414c-b292-debcdbc41815', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\CalendarField\",\"joomla_version\":\"0\"}}', 'JFormFieldCalendar', '', 1, '2024-05-18 15:49:06', '0000-00-00 00:00:00', 1, '', 1, 358), -(382, '', 'a56c632d-5bec-45c2-a8a2-40c6a12b545f', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\CategoryField\",\"joomla_version\":\"0\"}}', 'JFormFieldCategory', '', 1, '2024-05-18 15:51:00', '0000-00-00 00:00:00', 1, '', 1, 359), -(383, '', '5f83b06a-e133-4305-9a55-acb9c663856a', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\CheckboxField\",\"joomla_version\":\"0\"}}', 'JFormFieldCheckbox', '', 1, '2024-05-18 15:51:50', '0000-00-00 00:00:00', 1, '', 1, 360), -(384, '', 'e60f4fbf-e94d-44e8-a1b6-d17f05033eac', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\CheckboxesField\",\"joomla_version\":\"0\"}}', 'JFormFieldCheckboxes', '', 1, '2024-05-18 15:53:42', '0000-00-00 00:00:00', 1, '', 1, 361), -(385, '', '521a1a08-97b5-46fa-adf1-49a2295ab883', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\ColorField\",\"joomla_version\":\"0\"}}', 'JFormFieldColor', '', 1, '2024-05-18 15:56:03', '0000-00-00 00:00:00', 1, '', 1, 362), -(386, '', '55be30ee-0823-480a-aba8-e0bc2cb64503', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\ComboField\",\"joomla_version\":\"0\"}}', 'JFormFieldCombo', '', 1, '2024-05-18 15:56:48', '0000-00-00 00:00:00', 1, '', 1, 363), -(387, '', 'cf5e4e33-3822-46fa-bd59-d8b8dd84fe0a', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\ComponentlayoutField\",\"joomla_version\":\"0\"}}', 'JFormFieldComponentlayout', '', 1, '2024-05-18 15:57:49', '0000-00-00 00:00:00', 1, '', 1, 364), -(388, '', '3582a327-292f-48a4-b3e1-970bbc078411', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\ComponentsField\",\"joomla_version\":\"0\"}}', 'JFormFieldComponents', '', 1, '2024-05-18 15:59:07', '0000-00-00 00:00:00', 1, '', 1, 365), -(389, '', 'e42ffd96-0c63-43c3-9d96-f40ba67628c0', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\DatabaseconnectionField\",\"joomla_version\":\"0\"}}', 'JFormFieldDatabaseConnection', '', 1, '2024-05-18 16:02:20', '0000-00-00 00:00:00', 1, '', 1, 366), -(390, '', '8024b772-6bfe-47cf-b776-39c883789e48', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\EmailField\",\"joomla_version\":\"0\"}}', 'JFormFieldEMail', '', 1, '2024-05-18 16:03:59', '0000-00-00 00:00:00', 1, '', 1, 367), -(391, '', '1ce01a05-7010-427d-a333-37dcd3947f56', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\FileField\",\"joomla_version\":\"0\"}}', 'JFormFieldFile', '', 1, '2024-05-18 16:05:07', '0000-00-00 00:00:00', 1, '', 1, 368), -(392, '', 'ff395590-ed93-4e39-8636-c9084325de96', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\FilelistField\",\"joomla_version\":\"0\"}}', 'JFormFieldFileList', '', 1, '2024-05-18 16:06:01', '0000-00-00 00:00:00', 1, '', 1, 369), -(393, '', 'c5e03fd6-4919-4463-9a86-82033763d649', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\FolderlistField\",\"joomla_version\":\"0\"}}', 'JFormFieldFolderList', '', 1, '2024-05-18 16:06:51', '0000-00-00 00:00:00', 1, '', 1, 370), -(394, '', '92eb5c12-48f4-4b2c-8f2f-08f95019ecc7', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\GroupedlistField\",\"joomla_version\":\"0\"}}', 'JFormFieldGroupedList', '', 1, '2024-05-18 16:08:29', '0000-00-00 00:00:00', 1, '', 1, 371), -(395, '', 'fe2d12c0-a6e3-4a85-b2e6-1e792d2ed774', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\HiddenField\",\"joomla_version\":\"0\"}}', 'JFormFieldHidden', '', 1, '2024-05-18 16:10:07', '0000-00-00 00:00:00', 1, '', 1, 372), -(396, '', '1e403041-66cc-424b-a435-b82538036a44', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\ImagelistField\",\"joomla_version\":\"0\"}}', 'JFormFieldImageList', '', 1, '2024-05-18 16:10:50', '0000-00-00 00:00:00', 1, '', 1, 373), -(397, '', 'ccb4a7a6-67f6-4db5-b89c-324bfbed3981', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\IntegerField\",\"joomla_version\":\"0\"}}', 'JFormFieldInteger', '', 1, '2024-05-18 16:11:35', '0000-00-00 00:00:00', 1, '', 1, 374), -(398, '', 'fa54b2bf-61fd-401e-8e89-96adb3d919bf', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\LanguageField\",\"joomla_version\":\"0\"}}', 'JFormFieldLanguage', '', 1, '2024-05-18 16:12:31', '0000-00-00 00:00:00', 1, '', 1, 375), -(399, '', '960bb57d-eafc-4aa8-830d-f74898b7a546', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\ListField\",\"joomla_version\":\"0\"}}', 'JFormFieldList', '', 1, '2024-05-18 16:15:17', '0000-00-00 00:00:00', 1, '', 1, 376), -(400, '', 'd9b4d9a1-f6e5-46ef-ac46-6f91969a4139', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\MeterField\",\"joomla_version\":\"0\"}}', 'JFormFieldMeter', '', 1, '2024-05-18 16:18:18', '0000-00-00 00:00:00', 1, '', 1, 377), -(401, '', 'ab56b96f-8904-4d0e-af60-29f8b4bc6252', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\ModulelayoutField\",\"joomla_version\":\"0\"}}', 'JFormFieldModulelayout', '', 1, '2024-05-18 16:19:14', '0000-00-00 00:00:00', 1, '', 1, 378), -(402, '', '4c4bc84e-e324-4064-83e5-282d854d3a22', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\NoteField\",\"joomla_version\":\"0\"}}', 'JFormFieldNote', '', 1, '2024-05-18 16:22:23', '0000-00-00 00:00:00', 1, '', 1, 379), -(403, '', 'e1659b22-2f96-49fa-a26f-84dab3001abe', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\NumberField\",\"joomla_version\":\"0\"}}', 'JFormFieldNumber', '', 1, '2024-05-18 16:23:13', '0000-00-00 00:00:00', 1, '', 1, 380), -(404, '', 'b190bdbe-1868-4c7c-bbb8-af66e1d78191', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\PasswordField\",\"joomla_version\":\"0\"}}', 'JFormFieldPassword', '', 1, '2024-05-18 16:24:57', '0000-00-00 00:00:00', 1, '', 1, 381), -(405, '', 'd88ab2ea-70d2-4da5-8a8f-44adc308f223', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\PluginsField\",\"joomla_version\":\"0\"}}', 'JFormFieldPlugins', '', 1, '2024-05-18 16:26:10', '0000-00-00 00:00:00', 1, '', 1, 382), -(406, '', '8d5d180e-257e-4c57-8205-6c04771f6999', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\PredefinedListField\",\"joomla_version\":\"0\"}}', 'JFormFieldPredefinedList', '', 1, '2024-05-18 16:27:32', '0000-00-00 00:00:00', 1, '', 1, 383), -(407, '', '0b2a2152-d48a-490d-a147-5dbb194fe2af', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\RadioField\",\"joomla_version\":\"0\"}}', 'JFormFieldRadio', '', 1, '2024-05-18 16:28:29', '0000-00-00 00:00:00', 1, '', 1, 384), -(408, '', '4abb8168-ee77-42c0-8cb4-9d7c1ec85ce6', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\RangeField\",\"joomla_version\":\"0\"}}', 'JFormFieldRange', '', 1, '2024-05-18 16:29:15', '0000-00-00 00:00:00', 1, '', 1, 385), -(409, '', 'aa4a472d-3791-48a8-bb28-6c335a858adc', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\RulesField\",\"joomla_version\":\"0\"}}', 'JFormFieldRules', '', 1, '2024-05-18 16:32:48', '0000-00-00 00:00:00', 1, '', 1, 386), -(410, '', '81edbf8f-308c-40c3-95e0-6026815e6ccb', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\SessionhandlerField\",\"joomla_version\":\"0\"}}', 'JFormFieldSessionHandler', '', 1, '2024-05-18 16:33:29', '0000-00-00 00:00:00', 1, '', 1, 387), -(411, '', 'b6059797-0263-4f94-b313-81f76a80e1cb', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\SpacerField\",\"joomla_version\":\"0\"}}', 'JFormFieldSpacer', '', 1, '2024-05-18 16:34:11', '0000-00-00 00:00:00', 1, '', 1, 388), -(412, '', '1afe394e-e066-4f96-98c0-d78f38d66638', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\SqlField\",\"joomla_version\":\"0\"}}', 'JFormFieldSQL', '', 1, '2024-05-18 16:35:06', '0000-00-00 00:00:00', 1, '', 1, 389), -(413, '', 'b3319bad-a2b4-4762-af28-7942bea822bd', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\SubformField\",\"joomla_version\":\"0\"}}', 'JFormFieldSubform', '', 1, '2024-05-18 16:36:31', '0000-00-00 00:00:00', 1, '', 1, 390), -(414, '', '62abd5ac-95d8-4263-abd4-29aba234bed9', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\TelephoneField\",\"joomla_version\":\"0\"}}', 'JFormFieldTel', '', 1, '2024-05-18 16:38:04', '0000-00-00 00:00:00', 1, '', 1, 391), -(415, '', 'd977aed1-4935-4e7e-982c-399b5c7bdb9e', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\TextField\",\"joomla_version\":\"0\"}}', 'JFormFieldText', '', 1, '2024-05-18 16:39:32', '0000-00-00 00:00:00', 1, '', 1, 392), -(416, '', '305617a7-c828-4a8c-ac77-8c88f0535549', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\TextareaField\",\"joomla_version\":\"0\"}}', 'JFormFieldTextarea', '', 1, '2024-05-18 16:40:19', '0000-00-00 00:00:00', 1, '', 1, 393), -(417, '', '2c1cbfcd-55ea-40b9-9cd3-5ec02d8093cd', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\TimezoneField\",\"joomla_version\":\"0\"}}', 'JFormFieldTimezone', '', 1, '2024-05-18 16:41:29', '0000-00-00 00:00:00', 1, '', 1, 394), -(418, '', '59636bef-ad63-46a6-b3d0-1b5a57bb85fa', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Field\\\\UrlField\",\"joomla_version\":\"0\"}}', 'JFormFieldUrl', '', 1, '2024-05-18 16:42:06', '0000-00-00 00:00:00', 1, '', 1, 395), -(419, '', 'ec78bf74-f80c-42df-85cc-6c1ecd2417fc', '{\"settings0\":{\"namespace\":\"Joomla\\\\Database\\\\DatabaseDriver\",\"joomla_version\":\"0\"}}', 'JDatabaseDriver', '', 1, '2024-05-18 16:59:32', '0000-00-00 00:00:00', 1, '', 1, 396), -(420, '', 'ed39669e-c163-43c7-b942-2aa16f0bcebd', '{\"settings0\":{\"namespace\":\"Joomla\\\\Database\\\\DatabaseExporter\",\"joomla_version\":\"0\"}}', 'JDatabaseExporter', '', 1, '2024-05-18 17:00:33', '0000-00-00 00:00:00', 1, '', 1, 397), -(421, '', 'fe666da1-eebe-41e0-9b05-f2b747d2bc8f', '{\"settings0\":{\"namespace\":\"Joomla\\\\Database\\\\DatabaseFactory\",\"joomla_version\":\"0\"}}', 'JDatabaseFactory', '', 1, '2024-05-18 17:01:32', '0000-00-00 00:00:00', 1, '', 1, 398), -(422, '', '837bb77a-c85b-480d-ae8c-93c95e9c34d0', '{\"settings0\":{\"namespace\":\"Joomla\\\\Database\\\\DatabaseImporter\",\"joomla_version\":\"0\"}}', 'JDatabaseImporter', '', 1, '2024-05-18 17:02:20', '0000-00-00 00:00:00', 1, '', 1, 399), -(423, '', '7bd29d76-73c9-4c07-a5da-4f7a32aff78f', '{\"settings0\":{\"namespace\":\"Joomla\\\\Database\\\\DatabaseInterface\",\"joomla_version\":\"0\"}}', 'JDatabaseInterface', '', 1, '2024-05-18 17:03:02', '0000-00-00 00:00:00', 1, '', 1, 400), -(424, '', 'f9c17662-8434-4819-85bd-e62c59c8ce25', '{\"settings0\":{\"namespace\":\"Joomla\\\\Database\\\\DatabaseIterator\",\"joomla_version\":\"0\"}}', 'JDatabaseIterator', '', 1, '2024-05-18 17:03:43', '0000-00-00 00:00:00', 1, '', 1, 401), -(425, '', 'cf86ed0d-bbe6-4451-aeb8-c63ee4d0fc14', '{\"settings0\":{\"namespace\":\"Joomla\\\\Database\\\\DatabaseQuery\",\"joomla_version\":\"0\"}}', 'JDatabaseQuery', '', 1, '2024-05-18 17:04:31', '0000-00-00 00:00:00', 1, '', 1, 402), -(426, '', 'c8bd9af6-7821-4a12-b7bf-f04b492e03c3', '{\"settings0\":{\"namespace\":\"Joomla\\\\Database\\\\Mysqli\\\\MysqliDriver\",\"joomla_version\":\"0\"}}', 'JDatabaseDriverMysqli', '', 1, '2024-05-18 17:05:06', '0000-00-00 00:00:00', 1, '', 1, 403), -(427, '', '33aed640-4fd5-4b93-b5ee-7bc98499e97a', '{\"settings0\":{\"namespace\":\"Joomla\\\\Database\\\\Pdo\\\\PdoDriver\",\"joomla_version\":\"0\"}}', 'JDatabaseDriverPdo', '', 1, '2024-05-18 17:05:55', '0000-00-00 00:00:00', 1, '', 1, 404), -(428, '', '40c148a2-0fb1-424e-b5f9-f9edf1130f85', '{\"settings0\":{\"namespace\":\"Joomla\\\\Database\\\\Mysql\\\\MysqlDriver\",\"joomla_version\":\"0\"}}', 'JDatabaseDriverPdomysql', '', 1, '2024-05-18 17:06:39', '0000-00-00 00:00:00', 1, '', 1, 405), -(429, '', '3a7db958-21dd-4fd6-acca-077be8dcb534', '{\"settings0\":{\"namespace\":\"Joomla\\\\Database\\\\Pgsql\\\\PgsqlDriver\",\"joomla_version\":\"0\"}}', 'JDatabaseDriverPgsql', '', 1, '2024-05-18 17:07:16', '0000-00-00 00:00:00', 1, '', 1, 406), -(430, '', '52e8fced-b8a6-4ab8-b249-55acd61504c2', '{\"settings0\":{\"namespace\":\"Joomla\\\\Database\\\\Sqlazure\\\\SqlazureDriver\",\"joomla_version\":\"0\"}}', 'JDatabaseDriverSqlazure', '', 1, '2024-05-18 17:08:03', '0000-00-00 00:00:00', 1, '', 1, 407), -(431, '', '325ac31d-c4bc-4f83-88e0-0cd4cd233f7f', '{\"settings0\":{\"namespace\":\"Joomla\\\\Database\\\\Sqlite\\\\SqliteDriver\",\"joomla_version\":\"0\"}}', 'JDatabaseDriverSqlite', '', 1, '2024-05-18 17:08:48', '0000-00-00 00:00:00', 1, '', 1, 408), -(432, '', '76965fed-18ce-41da-b89c-43bd5fd40f92', '{\"settings0\":{\"namespace\":\"Joomla\\\\Database\\\\Sqlsrv\\\\SqlsrvDriver\",\"joomla_version\":\"0\"}}', 'JDatabaseDriverSqlsrv', '', 1, '2024-05-18 17:09:23', '0000-00-00 00:00:00', 1, '', 1, 409), -(433, '', '4ea4e196-9c69-4eb1-ae7e-d09d8b1a9bed', '{\"settings0\":{\"namespace\":\"Joomla\\\\Database\\\\Exception\\\\ConnectionFailureException\",\"joomla_version\":\"0\"}}', 'JDatabaseExceptionConnecting', '', 1, '2024-05-18 17:10:18', '0000-00-00 00:00:00', 1, '', 1, 410), -(434, '', '54c9fc90-5f76-42fa-bf63-d3bfa56c3ad0', '{\"settings0\":{\"namespace\":\"Joomla\\\\Database\\\\Exception\\\\ExecutionFailureException\",\"joomla_version\":\"0\"}}', 'JDatabaseExceptionExecuting', '', 1, '2024-05-18 17:11:04', '0000-00-00 00:00:00', 1, '', 1, 411), -(435, '', '62f11ab3-7903-4e1d-b899-cf6df3b32467', '{\"settings0\":{\"namespace\":\"Joomla\\\\Database\\\\Exception\\\\UnsupportedAdapterException\",\"joomla_version\":\"0\"}}', 'JDatabaseExceptionUnsupported', '', 1, '2024-05-18 17:11:40', '0000-00-00 00:00:00', 1, '', 1, 412), -(436, '', 'a5bade51-4131-40db-9dbe-0fd81ff8c627', '{\"settings0\":{\"namespace\":\"Joomla\\\\Database\\\\Mysqli\\\\MysqliExporter\",\"joomla_version\":\"0\"}}', 'JDatabaseExporterMysqli', '', 1, '2024-05-18 17:12:18', '0000-00-00 00:00:00', 1, '', 1, 413), -(437, '', '30864f36-704e-4d28-a1b5-49d24b2ffe5e', '{\"settings0\":{\"namespace\":\"Joomla\\\\Database\\\\Mysql\\\\MysqlExporter\",\"joomla_version\":\"0\"}}', 'JDatabaseExporterPdomysql', '', 1, '2024-05-18 17:12:55', '0000-00-00 00:00:00', 1, '', 1, 414), -(438, '', '3ae5f3d6-5916-4319-983f-193654d9a821', '{\"settings0\":{\"namespace\":\"Joomla\\\\Database\\\\Pgsql\\\\PgsqlExporter\",\"joomla_version\":\"0\"}}', 'JDatabaseExporterPgsql', '', 1, '2024-05-18 17:13:37', '0000-00-00 00:00:00', 1, '', 1, 415), -(439, '', 'cc6e5cc3-19c8-4cab-b10b-9825aa142ead', '{\"settings0\":{\"namespace\":\"Joomla\\\\Database\\\\Mysqli\\\\MysqliImporter\",\"joomla_version\":\"0\"}}', 'JDatabaseImporterMysqli', '', 1, '2024-05-18 17:14:33', '0000-00-00 00:00:00', 1, '', 1, 416), -(440, '', '4481898b-7cdc-496a-b717-a245d494de64', '{\"settings0\":{\"namespace\":\"Joomla\\\\Database\\\\Mysql\\\\MysqlImporter\",\"joomla_version\":\"0\"}}', 'JDatabaseImporterPdomysql', '', 1, '2024-05-18 17:15:12', '0000-00-00 00:00:00', 1, '', 1, 417), -(441, '', '84f05d10-31ed-44ce-bffe-04d7c12c350a', '{\"settings0\":{\"namespace\":\"Joomla\\\\Database\\\\Pgsql\\\\PgsqlImporter\",\"joomla_version\":\"0\"}}', 'JDatabaseImporterPgsql', '', 1, '2024-05-18 17:16:07', '0000-00-00 00:00:00', 1, '', 1, 418), -(442, '', 'e5a0df6b-c0a7-485e-acee-091d8c610fc1', '{\"settings0\":{\"namespace\":\"Joomla\\\\Database\\\\Query\\\\QueryElement\",\"joomla_version\":\"0\"}}', 'JDatabaseQueryElement', '', 1, '2024-05-18 17:17:04', '0000-00-00 00:00:00', 1, '', 1, 419), -(443, '', 'e23ccf34-2cf2-4ae7-8a73-adb2fc1d2493', '{\"settings0\":{\"namespace\":\"Joomla\\\\Database\\\\Query\\\\LimitableInterface\",\"joomla_version\":\"0\"}}', 'JDatabaseQueryLimitable', '', 1, '2024-05-18 17:18:06', '0000-00-00 00:00:00', 1, '', 1, 420), -(444, '', 'f46f02b4-e39e-40c3-ba1a-c590f52ea467', '{\"settings0\":{\"namespace\":\"Joomla\\\\Database\\\\Query\\\\PreparableInterface\",\"joomla_version\":\"0\"}}', 'JDatabaseQueryPreparable', '', 1, '2024-05-18 17:18:54', '0000-00-00 00:00:00', 1, '', 1, 421), -(445, '', 'ecacda91-6902-4c19-9cbd-101f8faacc1c', '{\"settings0\":{\"namespace\":\"Joomla\\\\Database\\\\Mysqli\\\\MysqliQuery\",\"joomla_version\":\"0\"}}', 'JDatabaseQueryMysqli', '', 1, '2024-05-18 17:19:30', '0000-00-00 00:00:00', 1, '', 1, 422), -(446, '', '943e39bf-87a2-45fa-9fc6-07d784212358', '{\"settings0\":{\"namespace\":\"Joomla\\\\Database\\\\Pdo\\\\PdoQuery\",\"joomla_version\":\"0\"}}', 'JDatabaseQueryPdo', '', 1, '2024-05-18 17:20:46', '0000-00-00 00:00:00', 1, '', 1, 423), -(447, '', '52cd1c83-a2ec-47c6-9c3c-7d316165addc', '{\"settings0\":{\"namespace\":\"Joomla\\\\Database\\\\Mysql\\\\MysqlQuery\",\"joomla_version\":\"0\"}}', 'JDatabaseQueryPdomysql', '', 1, '2024-05-18 17:21:15', '0000-00-00 00:00:00', 1, '', 1, 424), -(448, '', 'ec48cc53-4a90-47a4-bb8f-6b496cfacf43', '{\"settings0\":{\"namespace\":\"Joomla\\\\Database\\\\Pgsql\\\\PgsqlQuery\",\"joomla_version\":\"0\"}}', 'JDatabaseQueryPgsql', '', 1, '2024-05-18 17:22:09', '0000-00-00 00:00:00', 1, '', 1, 425), -(449, '', '7d4657c9-5896-410f-9c13-7348588018e8', '{\"settings0\":{\"namespace\":\"Joomla\\\\Database\\\\Sqlazure\\\\SqlazureQuery\",\"joomla_version\":\"0\"}}', 'JDatabaseQuerySqlazure', '', 1, '2024-05-18 17:23:02', '0000-00-00 00:00:00', 1, '', 1, 426), -(450, '', '3e3c8caa-822e-4f9f-b395-a14a3f6f31e4', '{\"settings0\":{\"namespace\":\"Joomla\\\\Database\\\\Sqlite\\\\SqliteQuery\",\"joomla_version\":\"0\"}}', 'JDatabaseQuerySqlite', '', 1, '2024-05-18 17:23:55', '0000-00-00 00:00:00', 1, '', 1, 427), -(451, '', '5e22cd09-33e9-43d7-8cfa-3225822296a1', '{\"settings0\":{\"namespace\":\"Joomla\\\\Database\\\\Sqlsrv\\\\SqlsrvQuery\",\"joomla_version\":\"0\"}}', 'JDatabaseQuerySqlsrv', '', 1, '2024-05-18 17:24:47', '0000-00-00 00:00:00', 1, '', 1, 428), -(452, '', '0e589f1c-7288-4c5e-ada0-3b8593875de0', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Autoload\\\\ClassLoader\",\"joomla_version\":\"0\"}}', 'JClassLoader', '', 1, '2024-05-18 18:40:34', '0000-00-00 00:00:00', 1, '', 1, 429), -(453, '', '28dee7b7-346d-4aec-8585-62752f502f1a', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\Form\\\\Filter\\\\IntarrayFilter\",\"joomla_version\":\"0\"}}', 'JFormFilterInt_Array', '', 1, '2024-05-18 18:41:13', '0000-00-00 00:00:00', 1, '', 1, 430), -(454, '', 'b649640e-d8d7-45be-bde9-3593b7a99a56', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\HTML\\\\Helpers\\\\Access\",\"joomla_version\":\"0\"}}', 'JHtmlAccess', '', 1, '2024-05-18 18:43:19', '0000-00-00 00:00:00', 1, '', 1, 431), -(455, '', '290f32aa-71d4-4ebc-9be5-5f8e305bc7e5', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\HTML\\\\Helpers\\\\ActionsDropdown\",\"joomla_version\":\"0\"}}', 'JHtmlActionsDropdown', '', 1, '2024-05-18 18:44:01', '0000-00-00 00:00:00', 1, '', 1, 432), -(456, '', '2f610b1b-799e-4318-8e05-efaa3aa3de0b', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\HTML\\\\Helpers\\\\AdminLanguage\",\"joomla_version\":\"0\"}}', 'JHtmlAdminLanguage', '', 1, '2024-05-18 18:44:39', '0000-00-00 00:00:00', 1, '', 1, 433), -(457, '', '172b70b8-8b24-4f07-8b1c-d7e7eb4618f0', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\HTML\\\\Helpers\\\\Behavior\",\"joomla_version\":\"0\"}}', 'JHtmlBehavior', '', 1, '2024-05-18 18:45:22', '0000-00-00 00:00:00', 1, '', 1, 434), -(458, '', '524a8f19-1be0-44f7-8d8e-024f13919151', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\HTML\\\\Helpers\\\\Bootstrap\",\"joomla_version\":\"0\"}}', 'JHtmlBootstrap', '', 1, '2024-05-18 18:45:55', '0000-00-00 00:00:00', 1, '', 1, 435), -(459, '', 'd1a074b7-ab65-46a1-8e55-f2cf8da4b8a2', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\HTML\\\\Helpers\\\\Category\",\"joomla_version\":\"0\"}}', 'JHtmlCategory', '', 1, '2024-05-18 18:46:28', '0000-00-00 00:00:00', 1, '', 1, 436), -(460, '', 'aa3544be-235f-43e5-850c-7bad5862b741', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\HTML\\\\Helpers\\\\Content\",\"joomla_version\":\"0\"}}', 'JHtmlContent', '', 1, '2024-05-18 18:47:13', '0000-00-00 00:00:00', 1, '', 1, 437), -(461, '', '305d5b6f-6ebf-40f1-b9f5-b44aa27c3925', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\HTML\\\\Helpers\\\\ContentLanguage\",\"joomla_version\":\"0\"}}', 'JHtmlContentlanguage', '', 1, '2024-05-18 18:48:09', '0000-00-00 00:00:00', 1, '', 1, 438), -(462, '', 'b1c4364a-7cf7-420b-b200-2997b0bfb2eb', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\HTML\\\\Helpers\\\\Date\",\"joomla_version\":\"0\"}}', 'JHtmlDate', '', 1, '2024-05-18 18:49:19', '0000-00-00 00:00:00', 1, '', 1, 439), -(463, '', '966aae72-5e2e-4844-a34b-af7ad670208e', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\HTML\\\\Helpers\\\\Debug\",\"joomla_version\":\"0\"}}', 'JHtmlDebug', '', 1, '2024-05-18 18:50:08', '0000-00-00 00:00:00', 1, '', 1, 440), -(464, '', 'c603424a-da38-4e7c-92fa-3e8ee35792c1', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\HTML\\\\Helpers\\\\DraggableList\",\"joomla_version\":\"0\"}}', 'JHtmlDraggablelist', '', 1, '2024-05-18 18:51:58', '0000-00-00 00:00:00', 1, '', 1, 441), -(465, '', '6e5a6bbf-3ae1-4264-b3a6-db6c0b20c048', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\HTML\\\\Helpers\\\\Dropdown\",\"joomla_version\":\"0\"}}', 'JHtmlDropdown', '', 1, '2024-05-18 18:52:48', '0000-00-00 00:00:00', 1, '', 1, 442), -(466, '', '679a9d06-c5ff-4fd0-824c-9e26c3cb890f', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\HTML\\\\Helpers\\\\Email\",\"joomla_version\":\"0\"}}', 'JHtmlEmail', '', 1, '2024-05-18 18:53:57', '0000-00-00 00:00:00', 1, '', 1, 443), -(467, '', 'f07f4d81-4528-4221-ae1d-c28089ad38b5', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\HTML\\\\Helpers\\\\Form\",\"joomla_version\":\"0\"}}', 'JHtmlForm', '', 1, '2024-05-18 18:54:47', '0000-00-00 00:00:00', 1, '', 1, 444), -(468, '', '46d11f95-d0cb-48a0-bf44-eb5985f81395', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\HTML\\\\Helpers\\\\FormBehavior\",\"joomla_version\":\"0\"}}', 'JHtmlFormbehavior', '', 1, '2024-05-18 18:55:28', '0000-00-00 00:00:00', 1, '', 1, 445), -(469, '', 'ff31ae41-8106-4863-97b0-bb4bf6e3ebf4', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\HTML\\\\Helpers\\\\Grid\",\"joomla_version\":\"0\"}}', 'JHtmlGrid', '', 1, '2024-05-18 18:56:17', '0000-00-00 00:00:00', 1, '', 1, 446), -(470, '', '7ef9f6f2-59e0-463d-bd3a-f31e2ee85451', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\HTML\\\\Helpers\\\\Icons\",\"joomla_version\":\"0\"}}', 'JHtmlIcons', '', 1, '2024-05-18 18:57:39', '0000-00-00 00:00:00', 1, '', 1, 447), -(471, '', '8c1ad286-fdbe-49b3-b4de-555b56425cb3', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\HTML\\\\Helpers\\\\JGrid\",\"joomla_version\":\"0\"}}', 'JHtmlJGrid', '', 1, '2024-05-18 18:59:04', '0000-00-00 00:00:00', 1, '', 1, 448), -(472, '', '8ed6b791-f434-4407-9d55-498b7ec1ddbf', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\HTML\\\\Helpers\\\\Jquery\",\"joomla_version\":\"0\"}}', 'JHtmlJquery', '', 1, '2024-05-18 19:06:38', '0000-00-00 00:00:00', 1, '', 1, 449), -(473, '', '3474f0cb-43dc-4e0f-b05d-7ff934d443c7', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\HTML\\\\Helpers\\\\Links\",\"joomla_version\":\"0\"}}', 'JHtmlLinks', '', 1, '2024-05-18 19:07:17', '0000-00-00 00:00:00', 1, '', 1, 450), -(474, '', '87db9ce7-c772-407f-b154-f2b9a649fdc4', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\HTML\\\\Helpers\\\\ListHelper\",\"joomla_version\":\"0\"}}', 'JHtmlList', '', 1, '2024-05-18 19:08:10', '0000-00-00 00:00:00', 1, '', 1, 451), -(475, '', '1f53a674-7173-472a-9fde-679b68266a3f', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\HTML\\\\Helpers\\\\Menu\",\"joomla_version\":\"0\"}}', 'JHtmlMenu', '', 1, '2024-05-18 19:09:09', '0000-00-00 00:00:00', 1, '', 1, 452), -(476, '', '4cd834ca-7b73-4105-9058-28fd15a1605e', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\HTML\\\\Helpers\\\\Number\",\"joomla_version\":\"0\"}}', 'JHtmlNumber', '', 1, '2024-05-18 19:10:23', '0000-00-00 00:00:00', 1, '', 1, 453), -(477, '', '4081570d-1a8a-4c56-9454-347e060bc630', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\HTML\\\\Helpers\\\\SearchTools\",\"joomla_version\":\"0\"}}', 'JHtmlSearchtools', '', 1, '2024-05-18 19:11:01', '0000-00-00 00:00:00', 1, '', 1, 454), -(478, '', '8097574b-722e-4b8c-b5b2-7bf8dff6535c', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\HTML\\\\Helpers\\\\Select\",\"joomla_version\":\"0\"}}', 'JHtmlSelect', '', 1, '2024-05-18 19:11:53', '0000-00-00 00:00:00', 1, '', 1, 455), -(479, '', 'ca5456e1-552c-45fb-bf4c-b751ba6e9fa1', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\HTML\\\\Helpers\\\\Sidebar\",\"joomla_version\":\"0\"}}', 'JHtmlSidebar', '', 1, '2024-05-18 19:12:27', '0000-00-00 00:00:00', 1, '', 1, 456), -(480, '', '9d461911-59c1-4b2a-9abb-5bc83d268974', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\HTML\\\\Helpers\\\\SortableList\",\"joomla_version\":\"0\"}}', 'JHtmlSortableList', '', 1, '2024-05-18 19:13:01', '0000-00-00 00:00:00', 1, '', 1, 457), -(481, '', '86a9e60d-ae43-4e29-8f33-78b9206e2145', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\HTML\\\\Helpers\\\\StringHelper\",\"joomla_version\":\"0\"}}', 'JHtmlString', '', 1, '2024-05-18 19:13:31', '0000-00-00 00:00:00', 1, '', 1, 458), -(482, '', 'e10e9448-0b0c-4101-80c2-abe8f41c6a81', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\HTML\\\\Helpers\\\\Tag\",\"joomla_version\":\"0\"}}', 'JHtmlTag', '', 1, '2024-05-18 19:14:20', '0000-00-00 00:00:00', 1, '', 1, 459), -(483, '', '80303734-98f9-4436-8e57-e73542abf4c1', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\HTML\\\\Helpers\\\\Telephone\",\"joomla_version\":\"0\"}}', 'JHtmlTel', '', 1, '2024-05-18 19:15:17', '0000-00-00 00:00:00', 1, '', 1, 460), -(484, '', '40a7483f-87c9-4272-ac72-236b0f773b02', '{\"settings0\":{\"namespace\":\"Joomla\\\\CMS\\\\HTML\\\\Helpers\\\\User\",\"joomla_version\":\"0\"}}', 'JHtmlUser', '', 1, '2024-05-18 19:15:52', '0000-00-00 00:00:00', 1, '', 1, 461); - -- -- Dumping data for table `#__componentbuilder_admin_view` -- @@ -2955,7 +2465,8 @@ INSERT INTO `#__componentbuilder_repository` (`id`, `system_name`, `organisation (7, 'Openai', 'joomla', 'openai', 1, 1, 'https://git.vdm.dev', 'c736a46f-0880-428a-8837-02627fdbd38d', 'master', 1, 7, 1, '2024-06-15 17:43:09', '2024-06-10 11:03:19', ''), (8, 'Minify', 'joomla', 'minify', 1, 1, 'https://git.vdm.dev', '6c741f48-a192-4e17-a932-df552164cffb', 'master', 1, 8, 1, '2024-06-15 17:43:09', '2024-06-10 11:03:30', ''), (9, 'psr', 'joomla', 'psr', 1, 1, 'https://git.vdm.dev', 'bfaa857a-df24-4d8c-97c3-1da4167a2bc8', 'master', 1, 9, 1, '2024-06-15 17:43:09', '2024-06-10 11:03:41', ''), -(10, 'fof', 'joomla', 'fof', 1, 1, 'https://git.vdm.dev', 'dd591247-1215-4faf-8a00-1f294768ba13', 'master', 1, 10, 1, '2024-06-15 17:43:09', '2024-06-10 11:03:47', ''); +(10, 'fof', 'joomla', 'fof', 1, 1, 'https://git.vdm.dev', 'dd591247-1215-4faf-8a00-1f294768ba13', 'master', 1, 10, 1, '2024-06-15 17:43:09', '2024-06-10 11:03:47', ''), +(12, 'Joomla Powers', 'joomla', 'joomla-powers', 2, 1, 'https://git.vdm.dev', 'dfba58ef-f823-43d4-ab73-865fdaf09294', 'master', 1, 12, 1, '2024-07-08 20:29:15', '2024-07-08 14:07:31', ''); -- -- Dumping data for table `#__componentbuilder_help_document` diff --git a/admin/views/joomla_power/view.html.php b/admin/views/joomla_power/view.html.php index 52d26253a..6ef729bba 100644 --- a/admin/views/joomla_power/view.html.php +++ b/admin/views/joomla_power/view.html.php @@ -163,6 +163,11 @@ class ComponentbuilderViewJoomla_power extends HtmlView // add Reset button. ToolbarHelper::custom('joomla_power.resetPowers', 'joomla custom-button-resetpowers', '', 'COM_COMPONENTBUILDER_RESET', false); } + if ($this->canDo->get('joomla_power.push')) + { + // add Push button. + ToolbarHelper::custom('joomla_power.pushPowers', 'share custom-button-pushpowers', '', 'COM_COMPONENTBUILDER_PUSH', false); + } ToolbarHelper::cancel('joomla_power.cancel', 'JTOOLBAR_CLOSE'); } } diff --git a/admin/views/joomla_powers/view.html.php b/admin/views/joomla_powers/view.html.php index ec471f2ae..baaeb5e3c 100644 --- a/admin/views/joomla_powers/view.html.php +++ b/admin/views/joomla_powers/view.html.php @@ -159,6 +159,11 @@ class ComponentbuilderViewJoomla_powers extends HtmlView // add Reset button. ToolbarHelper::custom('joomla_powers.resetPowers', 'joomla custom-button-resetpowers', '', 'COM_COMPONENTBUILDER_RESET', false); } + if ($this->user->authorise('joomla_power.push', 'com_componentbuilder')) + { + // add Push button. + ToolbarHelper::custom('joomla_powers.pushPowers', 'share custom-button-pushpowers', '', 'COM_COMPONENTBUILDER_PUSH', false); + } // set help url for this view if found $this->help_url = ComponentbuilderHelper::getHelpUrl('joomla_powers'); diff --git a/componentbuilder.xml b/componentbuilder.xml index f54bd6d31..b0ffc5b1d 100644 --- a/componentbuilder.xml +++ b/componentbuilder.xml @@ -1,15 +1,15 @@ COM_COMPONENTBUILDER - 28th June, 2024 + 8th July, 2024 Llewellyn van der Merwe joomla@vdm.io https://dev.vdm.io Copyright (C) 2015 Vast Development Method. All rights reserved. GNU General Public License version 2 or later; see LICENSE.txt - 3.2.2-alpha6 + 3.2.2-alpha7 Component Builder (v.3.2.2-alpha6) +

Component Builder (v.3.2.2-alpha7)

The Component Builder for [Joomla](https://extensions.joomla.org/extension/component-builder/) is highly advanced tool that is truly able to build extremely complex components in a fraction of the time. diff --git a/componentbuilder_update_server.xml b/componentbuilder_update_server.xml index eb06f8aa4..4dfd29ff5 100644 --- a/componentbuilder_update_server.xml +++ b/componentbuilder_update_server.xml @@ -151,7 +151,7 @@ 3.2.2-alpha https://dev.vdm.io - https://git.vdm.dev/api/v1/repos/joomla/pkg-component-builder/archive/v3.2.2-alpha6.zip + https://git.vdm.dev/api/v1/repos/joomla/pkg-component-builder/archive/v3.2.2-alpha7.zip alpha @@ -166,10 +166,10 @@ pkg_component_builder package site - 3.2.2-alpha6 + 3.2.2-alpha7 https://dev.vdm.io - https://git.vdm.dev/api/v1/repos/joomla/pkg-component-builder/archive/v3.2.2-alpha6.zip + https://git.vdm.dev/api/v1/repos/joomla/pkg-component-builder/archive/v3.2.2-alpha7.zip alpha diff --git a/libraries/vendor_jcb/VDM.Joomla.Gitea/src/Repository/Contents.php b/libraries/vendor_jcb/VDM.Joomla.Gitea/src/Repository/Contents.php index 3f2476b67..3ba26d362 100644 --- a/libraries/vendor_jcb/VDM.Joomla.Gitea/src/Repository/Contents.php +++ b/libraries/vendor_jcb/VDM.Joomla.Gitea/src/Repository/Contents.php @@ -64,10 +64,10 @@ class Contents extends Api * @param string|null $ref Optional. The name of the commit/branch/tag. * Default the repository's default branch (usually master). * - * @return object|null + * @return null|array|object * @since 3.2.0 **/ - public function metadata(string $owner, string $repo, string $filepath, ?string $ref = null): ?object + public function metadata(string $owner, string $repo, string $filepath, ?string $ref = null): null|array|object { // Build the request path. $path = "/repos/{$owner}/{$repo}/contents/{$filepath}"; @@ -100,7 +100,7 @@ class Contents extends Api * @param string|null $authorEmail The author's email. * @param string|null $committerName The committer's name. * @param string|null $committerEmail The committer's email. - * @param bool|null $newBranch Whether to create a new branch. Defaults to false. + * @param string|null $newBranch Whether to create a new branch. Defaults to null. * @param string|null $authorDate The author's date. * @param string|null $committerDate The committer's date. * @param bool|null $signoff Add a Signed-off-by trailer. Defaults to null. @@ -119,7 +119,7 @@ class Contents extends Api ?string $authorEmail = null, ?string $committerName = null, ?string $committerEmail = null, - ?bool $newBranch = false, + ?string $newBranch = null, ?string $authorDate = null, ?string $committerDate = null, ?bool $signoff = null diff --git a/libraries/vendor_jcb/VDM.Joomla.Gitea/src/Utilities/Http.php b/libraries/vendor_jcb/VDM.Joomla.Gitea/src/Utilities/Http.php index ea65e1c7e..3529cac34 100644 --- a/libraries/vendor_jcb/VDM.Joomla.Gitea/src/Utilities/Http.php +++ b/libraries/vendor_jcb/VDM.Joomla.Gitea/src/Utilities/Http.php @@ -29,7 +29,7 @@ final class Http extends JoomlaHttp * @var string * @since 3.2.0 */ - protected string $_token_; // to avoid collusions (but allow swapping) + protected string $_token_; // to avoid collisions (but allow swapping) /** * Constructor. @@ -52,7 +52,7 @@ final class Http extends JoomlaHttp // add the token if given if (is_string($token)) { - $config['headers']['Authorization'] = $token; + $config['headers']['Authorization'] = 'token ' . $token; $this->_token_ = $token; } @@ -78,7 +78,7 @@ final class Http extends JoomlaHttp ); // add the token - $headers['Authorization'] = $token; + $headers['Authorization'] = 'token ' . $token; $this->_token_ = $token; $this->setOption('headers', $headers); diff --git a/libraries/vendor_jcb/VDM.Joomla/src/Abstraction/Grep.php b/libraries/vendor_jcb/VDM.Joomla/src/Abstraction/Grep.php index f4c306f41..9a8bdba9c 100644 --- a/libraries/vendor_jcb/VDM.Joomla/src/Abstraction/Grep.php +++ b/libraries/vendor_jcb/VDM.Joomla/src/Abstraction/Grep.php @@ -55,6 +55,14 @@ abstract class Grep implements GrepInterface **/ protected array $order = ['local', 'remote']; + /** + * The target branch field name ['read_branch', 'write_branch'] + * + * @var string + * @since 3.2.2 + **/ + protected string $branch_field = 'read_branch'; + /** * Gitea Repository Contents * @@ -120,6 +128,19 @@ abstract class Grep implements GrepInterface return empty($powers) ? null : array_unique($powers); } + /** + * Set the branch field + * + * @param string $field The global unique id of the power + * + * @return void + * @since 3.2.2 + */ + public function setBranchField(string $field): void + { + $this->branch_field = $field; + } + /** * Get a power * @@ -196,15 +217,12 @@ abstract class Grep implements GrepInterface $path->path = trim($path->organisation) . '/' . trim($path->repository); // update the branch - if ($path->read_branch === 'default' || empty($path->read_branch)) - { - $path->read_branch = null; - } + $branch_field = $this->getBranchField(); + $branch = $path->{$branch_field} ?? null; - // only update the write branch if set - if (isset($path->write_branch) && ($path->write_branch === 'default' || empty($path->write_branch))) + if ($branch === 'default' || empty($branch)) { - $path->write_branch = null; + $path->{$branch_field} = null; } // set local path @@ -219,6 +237,17 @@ abstract class Grep implements GrepInterface } } } + } + + /** + * Get the branch field + * + * @return string + * @since 3.2.2 + */ + public function getBranchField(): string + { + return $this->branch_field; } } diff --git a/libraries/vendor_jcb/VDM.Joomla/src/Componentbuilder/JoomlaPower/Config.php b/libraries/vendor_jcb/VDM.Joomla/src/Componentbuilder/JoomlaPower/Config.php index 8aabf5757..a1d52bc50 100644 --- a/libraries/vendor_jcb/VDM.Joomla/src/Componentbuilder/JoomlaPower/Config.php +++ b/libraries/vendor_jcb/VDM.Joomla/src/Componentbuilder/JoomlaPower/Config.php @@ -16,6 +16,7 @@ use Joomla\Registry\Registry as JoomlaRegistry; use Joomla\CMS\Factory as JoomlaFactory; use VDM\Joomla\Utilities\GetHelper; use VDM\Joomla\Utilities\StringHelper; +use VDM\Joomla\Componentbuilder\Utilities\RepoHelper; use VDM\Joomla\Componentbuilder\Abstraction\BaseConfig; @@ -113,21 +114,6 @@ class Config extends BaseConfig return $repos; } - /** - * Get Joomla power push repo - * - * @return object|null The push repository on Gitea - * @since 3.2.1 - */ - protected function getJoomlapowerspushrepo(): ?object - { - // some defaults repos we need by JCB - if (!empty($this->gitea_username)) - { - return (object) ['organisation' => $this->gitea_username, 'repository' => 'joomla-powers', 'read_branch' => 'master']; - } - } - /** * Get joomla power approved paths * @@ -136,7 +122,26 @@ class Config extends BaseConfig */ protected function getApprovedjoomlapaths(): array { - return array_values($this->joomla_powers_init_repos); + // some defaults repos we need by JCB + $approved = $this->joomla_powers_init_repos; + + $paths = RepoHelper::get(2); // Joomla Power = 2 + + if ($paths !== null) + { + foreach ($paths as $path) + { + $owner = $path->organisation ?? null; + $repo = $path->repository ?? null; + if ($owner !== null && $repo !== null) + { + // we make sure to get only the objects + $approved = ["{$owner}.{$repo}" => $path] + $approved; + } + } + } + + return array_values($approved); } } diff --git a/libraries/vendor_jcb/VDM.Joomla/src/Componentbuilder/JoomlaPower/Grep.php b/libraries/vendor_jcb/VDM.Joomla/src/Componentbuilder/JoomlaPower/Grep.php index 2803490a5..2092bdf16 100644 --- a/libraries/vendor_jcb/VDM.Joomla/src/Componentbuilder/JoomlaPower/Grep.php +++ b/libraries/vendor_jcb/VDM.Joomla/src/Componentbuilder/JoomlaPower/Grep.php @@ -54,20 +54,36 @@ final class Grep extends ExtendingGrep implements GrepInterface return; } + $path->index = null; + + // update the branch + $branch_field = $this->getBranchField(); + $branch = $path->{$branch_field} ?? $path->read_branch ?? 'master'; + try { $this->contents->load_($path->base ?? null, $path->token ?? null); - $path->index = $this->contents->get($path->organisation, $path->repository, 'joomla-powers.json', $path->read_branch); + $source = $this->contents->metadata($path->organisation, $path->repository, 'src', $branch); + if ($source && is_array($source)) + { + $path->index = new \stdClass(); + foreach ($source as $index) + { + if (is_object($index) && isset($index->name)) + { + $path->index->{$index->name} = $index; + } + } + } + $this->contents->reset_(); } catch (\Exception $e) { $this->app->enqueueMessage( - Text::sprintf('COM_COMPONENTBUILDER_PSUPER_POWERB_REPOSITORY_AT_BSSB_GAVE_THE_FOLLOWING_ERRORBR_SP', $this->contents->api(), $path->path, $e->getMessage()), + Text::sprintf('COM_COMPONENTBUILDER_PJOOMLA_POWERB_REPOSITORY_AT_BSSB_GAVE_THE_FOLLOWING_ERRORBR_SP', $this->contents->api(), $path->path, $e->getMessage()), 'Error' ); - - $path->index = null; } } @@ -82,7 +98,7 @@ final class Grep extends ExtendingGrep implements GrepInterface protected function searchRemote(string $guid): ?object { // we can only search if we have paths - if ($this->path && $this->paths) + if (is_array($this->paths)) { foreach ($this->paths as $path) { @@ -100,7 +116,7 @@ final class Grep extends ExtendingGrep implements GrepInterface } /** - * Get a remote power + * Get a remote joomla power * * @param object $path The repository path details * @param string $guid The global unique id of the power @@ -111,20 +127,40 @@ final class Grep extends ExtendingGrep implements GrepInterface protected function getRemote(object $path, string $guid): ?object { $power = null; - if (empty($path->index->{$guid}->settings)) + if (empty($path->index->{$guid}->path)) { return $power; } + // get the branch name + $branch_field = $this->getBranchField(); + $branch = $path->{$branch_field} ?? $path->read_branch ?? 'master'; + // get the settings $this->contents->load_($path->base ?? null, $path->token ?? null); - if (($power = $this->loadRemoteFile($path->organisation, $path->repository, $path->index->{$guid}->settings, $path->read_branch)) !== null && + if (($power = $this->loadRemoteFile($path->organisation, $path->repository, $path->index->{$guid}->path . '/item.json', $branch)) !== null && isset($power->guid)) { // set the git details in params - $power->params = (object) [ - 'source' => ['guid' => $path->guid ?? null] - ]; + $path_guid = $path->guid ?? null; + if ($path_guid !== null) + { + if (($meta = $this->contents->metadata($path->organisation, $path->repository, $path->index->{$guid}->path . '/item.json', $branch)) !== null && + isset($meta->sha)) + { + if (isset($power->params) && is_object($power->params) && + isset($power->params->source) && is_array($power->params->source)) + { + $power->params->source[$path_guid] = $meta->sha; + } + else + { + $power->params = (object)[ + 'source' => [$path_guid => $meta->sha] + ]; + } + } + } } $this->contents->reset_(); diff --git a/libraries/vendor_jcb/VDM.Joomla/src/Componentbuilder/JoomlaPower/Repository.php b/libraries/vendor_jcb/VDM.Joomla/src/Componentbuilder/JoomlaPower/Repository.php new file mode 100644 index 000000000..4ad6a751b --- /dev/null +++ b/libraries/vendor_jcb/VDM.Joomla/src/Componentbuilder/JoomlaPower/Repository.php @@ -0,0 +1,46 @@ + + * @git Joomla Component Builder + * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. + * @license GNU General Public License version 2 or later; see LICENSE.txt + */ + +namespace VDM\Joomla\Componentbuilder\JoomlaPower; + + +use VDM\Joomla\Data\Repository as ExtendingRepository; + + +/** + * Set JoomlaPower based on global unique ids to remote repository + * + * @since 3.2.2 + */ +final class Repository extends ExtendingRepository +{ + /** + * Table Name + * + * @var string + * @since 3.2.1 + */ + protected string $table = 'joomla_power'; + + /** + * The item map + * + * @var array + * @since 3.2.2 + */ + protected array $map = [ + 'system_name' => 'system_name', + 'settings' => 'settings', + 'guid' => 'guid', + 'description' => 'description' + ]; +} + diff --git a/libraries/vendor_jcb/VDM.Joomla/src/Componentbuilder/JoomlaPower/Service/JoomlaPower.php b/libraries/vendor_jcb/VDM.Joomla/src/Componentbuilder/JoomlaPower/Service/JoomlaPower.php index 9e7a2f8fc..560793199 100644 --- a/libraries/vendor_jcb/VDM.Joomla/src/Componentbuilder/JoomlaPower/Service/JoomlaPower.php +++ b/libraries/vendor_jcb/VDM.Joomla/src/Componentbuilder/JoomlaPower/Service/JoomlaPower.php @@ -18,6 +18,7 @@ use VDM\Joomla\Componentbuilder\JoomlaPower\Config; use VDM\Joomla\Componentbuilder\Table; use VDM\Joomla\Componentbuilder\JoomlaPower\Grep; use VDM\Joomla\Componentbuilder\JoomlaPower\Super as Superpower; +use VDM\Joomla\Componentbuilder\JoomlaPower\Repository; use VDM\Joomla\Componentbuilder\Compiler\Power\Parser; @@ -34,7 +35,7 @@ class JoomlaPower implements ServiceProviderInterface * @param Container $container The DI container. * * @return void - * @since 3.2.0 + * @since 3.2.1 */ public function register(Container $container) { @@ -50,6 +51,9 @@ class JoomlaPower implements ServiceProviderInterface $container->alias(Superpower::class, 'Joomlapower') ->share('Joomlapower', [$this, 'getSuperpower'], true); + $container->alias(Repository::class, 'Joomla.Power.Repository') + ->share('Joomla.Power.Repository', [$this, 'getRepository'], true); + $container->alias(Parser::class, 'Power.Parser') ->share('Power.Parser', [$this, 'getParser'], true); } @@ -60,7 +64,7 @@ class JoomlaPower implements ServiceProviderInterface * @param Container $container The DI container. * * @return Config - * @since 3.2.0 + * @since 3.2.1 */ public function getConfig(Container $container): Config { @@ -73,7 +77,7 @@ class JoomlaPower implements ServiceProviderInterface * @param Container $container The DI container. * * @return Table - * @since 3.2.0 + * @since 3.2.1 */ public function getTable(Container $container): Table { @@ -86,7 +90,7 @@ class JoomlaPower implements ServiceProviderInterface * @param Container $container The DI container. * * @return Grep - * @since 3.2.0 + * @since 3.2.1 */ public function getGrep(Container $container): Grep { @@ -102,7 +106,7 @@ class JoomlaPower implements ServiceProviderInterface * @param Container $container The DI container. * * @return Superpower - * @since 3.2.0 + * @since 3.2.1 */ public function getSuperpower(Container $container): Superpower { @@ -112,13 +116,31 @@ class JoomlaPower implements ServiceProviderInterface ); } + /** + * Get The Repository Class. + * + * @param Container $container The DI container. + * + * @return Repository + * @since 3.2.2 + */ + public function getRepository(Container $container): Repository + { + return new Repository( + $container->get('Config')->approved_joomla_paths, + $container->get('Joomla.Power.Grep'), + $container->get('Data.Items'), + $container->get('Gitea.Repository.Contents') + ); + } + /** * Get The Parser Class. * * @param Container $container The DI container. * * @return Parser - * @since 3.2.0 + * @since 3.2.1 */ public function getParser(Container $container): Parser { diff --git a/libraries/vendor_jcb/VDM.Joomla/src/Componentbuilder/Power/Config.php b/libraries/vendor_jcb/VDM.Joomla/src/Componentbuilder/Power/Config.php index b0ad88ef6..d5e624373 100644 --- a/libraries/vendor_jcb/VDM.Joomla/src/Componentbuilder/Power/Config.php +++ b/libraries/vendor_jcb/VDM.Joomla/src/Componentbuilder/Power/Config.php @@ -135,26 +135,6 @@ class Config extends BaseConfig return $repos; } - /** - * Get super power push repo - * - * @return object|null The push repository on Gitea - * @since 3.2.1 - */ - protected function getSuperpowerspushrepo(): ?object - { - if ($this->gitea_username !== null) - { - return (object) [ - 'organisation' => $this->gitea_username, - 'repository' => 'super-powers', - 'read_branch' => 'master' - ]; - } - - return null; - } - /** * get temporary path * diff --git a/libraries/vendor_jcb/VDM.Joomla/src/Data/Repository.php b/libraries/vendor_jcb/VDM.Joomla/src/Data/Repository.php new file mode 100644 index 000000000..44e6bf616 --- /dev/null +++ b/libraries/vendor_jcb/VDM.Joomla/src/Data/Repository.php @@ -0,0 +1,386 @@ + + * @git Joomla Component Builder + * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. + * @license GNU General Public License version 2 or later; see LICENSE.txt + */ + +namespace VDM\Joomla\Data; + + +use VDM\Joomla\Interfaces\GrepInterface as Grep; +use VDM\Joomla\Interfaces\Data\ItemsInterface as Items; +use VDM\Joomla\Gitea\Repository\Contents as Git; + + +/** + * Set data based on global unique ids to remote repository + * + * @since 3.2.2 + */ +class Repository +{ + /** + * The GrepInterface Class. + * + * @var Grep + * @since 3.2.2 + */ + protected Grep $grep; + + /** + * The ItemsInterface Class. + * + * @var Items + * @since 3.2.2 + */ + protected Items $items; + + /** + * The Contents Class. + * + * @var Git + * @since 3.2.2 + */ + protected Git $git; + + /** + * All active repos + * + * @var array + * @since 3.2.0 + **/ + public array $repos; + + /** + * Table Name + * + * @var string + * @since 3.2.1 + */ + protected string $table; + + /** + * The item map + * + * @var array + * @since 3.2.2 + */ + protected array $map; + + /** + * Constructor. + * + * @param array $repos The active repos + * @param Grep $grep The GrepInterface Class. + * @param Items $items The ItemsInterface Class. + * @param Git $git The Contents Class. + * @param string|null $table The table name. + * + * @since 3.2.2 + */ + public function __construct(array $repos, Grep $grep, Items $items, Git $git, ?string $table = null) + { + $this->repos = $repos; + $this->grep = $grep; + $this->items = $items; + $this->git = $git; + if ($table !== null) + { + $this->table = $table; + } + // set the branch to writing + $this->grep->setBranchField('write_branch'); + } + + /** + * Set the current active table + * + * @param string $table The table that should be active + * + * @return self + * @since 3.2.2 + */ + public function table(string $table): self + { + $this->table = $table; + + return $this; + } + + /** + * Set items + * + * @param array $guids The global unique id of the item + * + * @return bool + * @throws \Exception + * @since 3.2.0 + */ + public function set(array $guids): bool + { + if (($items = $this->getLocalItems($guids)) === null) + { + throw new \Exception("At least one valid local [Joomla Power] must exist for the push function to operate correctly."); + } + + if (!$this->canWrite()) + { + throw new \Exception("At least one [Joomla Power] content repository must be configured with a [Write Branch] value in the repositories area for the push function to operate correctly."); + } + + // update the existing found + if (($existing_items = $this->getRepoItems($guids)) !== []) + { + foreach ($existing_items as $e_guid => $item) + { + if (isset($items[$e_guid])) + { + $this->updateItem($items[$e_guid], $item); + unset($items[$e_guid]); + } + } + } + + // create the new items + foreach ($items as $item) + { + $this->createItem($item); + } + + return true; + } + + /** + * Get the current active table + * + * @return string + * @since 3.2.2 + */ + public function getTable(): string + { + return $this->table; + } + + /** + * Get items + * + * @param array $guids The global unique id of the item + * + * @return array|null + * @since 3.2.2 + */ + public function getLocalItems(array $guids): ?array + { + $items = $this->fetchLocalItems($guids); + + if ($items === null) + { + return null; + } + + return $this->mapItems($items); + } + + /** + * Fetch items from the database + * + * @param array $guids The global unique id of the item + * + * @return array|null + * @since 3.2.2 + */ + protected function fetchLocalItems(array $guids): ?array + { + return $this->items->table($this->table)->get($guids); + } + + /** + * Map items to their properties + * + * @param array $items The items fetched from the database + * + * @return array + * @since 3.2.2 + */ + protected function mapItems(array $items): array + { + $bucket = []; + + foreach ($items as $item) + { + if (!isset($item->guid)) + { + continue; + } + + $bucket[$item->guid] = $this->mapItem($item); + } + + return $bucket; + } + + /** + * Map a single item to its properties + * + * @param object $item The item to be mapped + * + * @return object + * @since 3.2.2 + */ + protected function mapItem(object $item): object + { + $power = []; + + foreach ($this->map as $key => $map) + { + $power[$key] = $item->{$map} ?? null; + } + + return (object) $power; + } + + /** + * get existing items + * + * @param array $guids The global unique id of the item + * + * @return array|null + * @since 3.2.2 + */ + protected function getRepoItems(array $guids): ?array + { + $bucket = []; + foreach ($guids as $guid) + { + if (($item = $this->grep->get($guid)) !== null) + { + $bucket[$guid] = (object) $item; + } + } + + return $bucket ?? null; + } + + /** + * check that we have an active repo towards which we can write data + * + * @return bool + * @since 3.2.2 + */ + protected function canWrite(): bool + { + foreach ($this->repos as $repo) + { + if (!empty($repo->write_branch) && $repo->write_branch !== 'default') + { + return true; + } + } + + return false; + } + + /** + * Checks if two objects are equal by comparing their JSON representations. + * + * This method converts both input objects to JSON strings and compares these strings. + * If the JSON strings are identical, the objects are considered equal. + * + * @param object $obj1 The first object to compare. + * @param object $obj2 The second object to compare. + * + * @return bool True if the objects are equal, false otherwise. + * @since 3.2.2 + */ + protected function areObjectsEqual(object $obj1, object $obj2): bool + { + // Convert both objects to JSON strings + $json1 = json_encode($obj1); + $json2 = json_encode($obj2); + + // Compare the JSON strings + return $json1 === $json2; + } + + /** + * update an existing item (if changed) + * + * @param object $item + * @param object $existing + * + * @return void + * @since 3.2.2 + */ + protected function updateItem(object $item, object $existing): void + { + if (isset($existing->params->source) && is_array($existing->params->source)) + { + // get the source values + $source = $existing->params->source; + + // make sure there was a change + $existing = $this->mapItem($existing); + if ($this->areObjectsEqual($item, $existing)) + { + return; + } + + foreach ($this->repos as $repo) + { + if (isset($source[$repo->guid])) + { + $this->git->load_($repo->base ?? null, $repo->token ?? null); + $this->git->update( + $repo->organisation, // The owner name. + $repo->repository, // The repository name. + 'src/' . $item->guid . '/item.json', // The file path. + json_encode($item, JSON_PRETTY_PRINT), // The file content. + 'Update ' . $item->system_name, // The commit message. + $source[$repo->guid], // The blob SHA of the old file. + $repo->write_branch // The branch name. + ); + $this->git->reset_(); + + // only update in the first found repo + return; + } + } + } + } + + /** + * create a new item + * + * @param object $item + * + * @return void + * @since 3.2.2 + */ + protected function createItem(object $item): void + { + foreach ($this->repos as $repo) + { + if (!empty($repo->write_branch) && $repo->write_branch !== 'default') + { + $this->git->load_($repo->base ?? null, $repo->token ?? null); + $this->git->create( + $repo->organisation, // The owner name. + $repo->repository, // The repository name. + 'src/' . $item->guid . '/item.json', // The file path. + json_encode($item, JSON_PRETTY_PRINT), // The file content. + 'Create ' . $item->system_name, // The commit message. + $repo->write_branch // The branch name. + ); + $this->git->reset_(); + // only create in the first found repo + return; + } + } + } +} + diff --git a/libraries/vendor_jcb/VDM.Joomla/src/Interfaces/GrepInterface.php b/libraries/vendor_jcb/VDM.Joomla/src/Interfaces/GrepInterface.php index 5b1badb56..574b2db35 100644 --- a/libraries/vendor_jcb/VDM.Joomla/src/Interfaces/GrepInterface.php +++ b/libraries/vendor_jcb/VDM.Joomla/src/Interfaces/GrepInterface.php @@ -27,6 +27,16 @@ interface GrepInterface */ public function getRemotePowersGuid(): ?array; + /** + * Set the branch field + * + * @param string $field The global unique id of the power + * + * @return void + * @since 3.2.2 + */ + public function setBranchField(string $field): void; + /** * Get a power * diff --git a/script.php b/script.php index cfd89e2dc..923b5c310 100644 --- a/script.php +++ b/script.php @@ -7143,7 +7143,7 @@ class Com_ComponentbuilderInstallerScript { $rule_length = $db->loadResult(); // Check the size of the rules column - if ($rule_length <= 103680) + if ($rule_length <= 103840) { // Fix the assets table rules column size $fix_rules_size = "ALTER TABLE `#__assets` CHANGE `rules` `rules` MEDIUMTEXT NOT NULL COMMENT 'JSON encoded access control. Enlarged to MEDIUMTEXT by JCB';"; @@ -9979,7 +9979,7 @@ class Com_ComponentbuilderInstallerScript echo '

-

Upgrade to Version 3.2.2-alpha6 Was Successful! Let us know if anything is not working as expected.

'; +

Upgrade to Version 3.2.2-alpha7 Was Successful! Let us know if anything is not working as expected.

'; // Set db if not set already. if (!isset($db)) diff --git a/site/language/en-GB/en-GB.com_componentbuilder.ini b/site/language/en-GB/en-GB.com_componentbuilder.ini index 381f4c9bf..2038c1074 100644 --- a/site/language/en-GB/en-GB.com_componentbuilder.ini +++ b/site/language/en-GB/en-GB.com_componentbuilder.ini @@ -100,6 +100,7 @@ COM_COMPONENTBUILDER_PACKAGE_OWNER_DETAILS_NOT_FOUND="Package owner details not COM_COMPONENTBUILDER_PACKAGE_OWNER_NOT_SET="Package Owner Not Set" COM_COMPONENTBUILDER_PAIDLOCKED="Paid/Locked" COM_COMPONENTBUILDER_PFILE_AT_BSSB_GAVE_THE_FOLLOWING_ERRORBR_SP="

File at %s/%s gave the following error!
%s

" +COM_COMPONENTBUILDER_PJOOMLA_POWERB_REPOSITORY_AT_BSSB_GAVE_THE_FOLLOWING_ERRORBR_SP="

Joomla Power repository at %s/%s gave the following error!
%s

" COM_COMPONENTBUILDER_PJOOMLA_POWER_BGUIDSB_NOT_FOUNDP="

Joomla Power guid:%s not found!

" COM_COMPONENTBUILDER_PJOOMLA_POWER_BGUIDSB_WAS_FOUND_BUT_MISSING_A_NAMESPACE_VALUE_FOR_JOOMLA_SP="

Joomla Power guid:%s was found, but missing a namespace value for Joomla %s!

" COM_COMPONENTBUILDER_PLEASE_TRY_AGAIN_THIS_ERROR_USUALLY_HAPPENS_IF_IT_IS_A_NEW_COMPONENT_BECAUSE_WE_NEED_A_COMPONENT_ID_TO_DO_THIS_BUILD_WITH_YOUR_SQL_DUMP="Please try again, this error usually happens if it is a new component, because we need a component ID to do this build with your sql dump."