diff --git a/CHANGELOG.md b/CHANGELOG.md index 5e25bd3e4..02d907061 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,8 @@ +# v4.0.4-alpha1 + +- Add [AllowDynamicProperties] in the base view class for J5 +- Move the _prepareDocument above the display call in the base view class + # v4.0.3 - Add [push] option to powers area. diff --git a/ComponentbuilderInstallerScript.php b/ComponentbuilderInstallerScript.php index debd64427..ca0b0fe8e 100644 --- a/ComponentbuilderInstallerScript.php +++ b/ComponentbuilderInstallerScript.php @@ -3270,7 +3270,7 @@ class Com_ComponentbuilderInstallerScript implements InstallerScriptInterface echo '
-

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

'; +

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

'; // Add/Update component in the action logs extensions table. $this->setActionLogsExtensions(); diff --git a/README.md b/README.md index e13d2a024..c868aa4f7 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 (4.0.3) 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 (4.0.4-alpha1) 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*: 20th September, 2024 -+ *Version*: 4.0.3 ++ *Last Build*: 29th September, 2024 ++ *Version*: 4.0.4-alpha1 + *Copyright*: Copyright (C) 2015 Vast Development Method. All rights reserved. + *License*: GNU General Public License version 2 or later; see LICENSE.txt -+ *Line count*: **855739** ++ *Line count*: **858763** + *Field count*: **2098** -+ *File count*: **5903** ++ *File count*: **5928** + *Folder count*: **619** > 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 e13d2a024..c868aa4f7 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 (4.0.3) 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 (4.0.4-alpha1) 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*: 20th September, 2024 -+ *Version*: 4.0.3 ++ *Last Build*: 29th September, 2024 ++ *Version*: 4.0.4-alpha1 + *Copyright*: Copyright (C) 2015 Vast Development Method. All rights reserved. + *License*: GNU General Public License version 2 or later; see LICENSE.txt -+ *Line count*: **855739** ++ *Line count*: **858763** + *Field count*: **2098** -+ *File count*: **5903** ++ *File count*: **5928** + *Folder count*: **619** > 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/compiler/joomla_3/HtmlView_custom_admin.php b/admin/compiler/joomla_3/HtmlView_custom_admin.php index dc0f06ed4..ebb2ef8a7 100644 --- a/admin/compiler/joomla_3/HtmlView_custom_admin.php +++ b/admin/compiler/joomla_3/HtmlView_custom_admin.php @@ -35,6 +35,9 @@ class ###Component###View###SView### extends HtmlView $this->user = Factory::getUser(); // get global action permissions $this->canDo = ###Component###Helper::getActions('###sview###');###CUSTOM_ADMIN_DIPLAY_METHOD### + + // Display the template + parent::display($tpl); }###CUSTOM_ADMIN_EXTRA_DIPLAY_METHODS### /** diff --git a/admin/compiler/joomla_3/HtmlView_edit.php b/admin/compiler/joomla_3/HtmlView_edit.php index a0c3431a5..eb12a0165 100644 --- a/admin/compiler/joomla_3/HtmlView_edit.php +++ b/admin/compiler/joomla_3/HtmlView_edit.php @@ -72,11 +72,11 @@ class ###Component###View###View### extends HtmlView throw new Exception(implode("\n", $errors), 500); } - // Display the template - parent::display($tpl); - // Set the document $this->setDocument(); + + // Display the template + parent::display($tpl); } diff --git a/admin/compiler/joomla_3/HtmlView_edit_site.php b/admin/compiler/joomla_3/HtmlView_edit_site.php index 070fde9f5..99c3b9875 100644 --- a/admin/compiler/joomla_3/HtmlView_edit_site.php +++ b/admin/compiler/joomla_3/HtmlView_edit_site.php @@ -72,11 +72,11 @@ class ###Component###View###View### extends HtmlView throw new Exception(implode("\n", $errors), 500); } - // Display the template - parent::display($tpl); - // Set the document $this->setDocument(); + + // Display the template + parent::display($tpl); } diff --git a/admin/compiler/joomla_3/HtmlView_list.php b/admin/compiler/joomla_3/HtmlView_list.php index f00898087..e6371926c 100644 --- a/admin/compiler/joomla_3/HtmlView_list.php +++ b/admin/compiler/joomla_3/HtmlView_list.php @@ -65,11 +65,11 @@ class ###Component###View###Views### extends HtmlView throw new Exception(implode("\n", $errors), 500); } - // Display the template - parent::display($tpl); - // Set the document $this->setDocument(); + + // Display the template + parent::display($tpl); } /** diff --git a/admin/compiler/joomla_3/HtmlView_list_custom_admin.php b/admin/compiler/joomla_3/HtmlView_list_custom_admin.php index ebea61327..6752ca0ee 100644 --- a/admin/compiler/joomla_3/HtmlView_list_custom_admin.php +++ b/admin/compiler/joomla_3/HtmlView_list_custom_admin.php @@ -35,6 +35,9 @@ class ###Component###View###SViews### extends HtmlView $this->user = Factory::getUser(); // get global action permissions $this->canDo = ###Component###Helper::getActions('###sview###');###CUSTOM_ADMIN_DIPLAY_METHOD### + + // Display the template + parent::display($tpl); }###CUSTOM_ADMIN_EXTRA_DIPLAY_METHODS### /** diff --git a/admin/compiler/joomla_3/HtmlView_list_site.php b/admin/compiler/joomla_3/HtmlView_list_site.php index 424a6acae..7eb9e0536 100644 --- a/admin/compiler/joomla_3/HtmlView_list_site.php +++ b/admin/compiler/joomla_3/HtmlView_list_site.php @@ -33,6 +33,9 @@ class ###Component###View###SViews### extends HtmlView $this->menu = $this->app->getMenu()->getActive(); // get the user object $this->user = Factory::getUser();###SITE_DIPLAY_METHOD### + + // Display the template + parent::display($tpl); }###SITE_EXTRA_DIPLAY_METHODS### /** diff --git a/admin/compiler/joomla_3/HtmlView_site.php b/admin/compiler/joomla_3/HtmlView_site.php index 5c4ca5ecd..b66f5f394 100644 --- a/admin/compiler/joomla_3/HtmlView_site.php +++ b/admin/compiler/joomla_3/HtmlView_site.php @@ -33,6 +33,9 @@ class ###Component###View###SView### extends HtmlView $this->menu = $this->app->getMenu()->getActive(); // get the user object $this->user = Factory::getUser();###SITE_DIPLAY_METHOD### + + // Display the template + parent::display($tpl); }###SITE_EXTRA_DIPLAY_METHODS### /** diff --git a/admin/compiler/joomla_4/ADMIN_VIEWS_HTML.php b/admin/compiler/joomla_4/ADMIN_VIEWS_HTML.php index c117fa8ae..94e6fd359 100644 --- a/admin/compiler/joomla_4/ADMIN_VIEWS_HTML.php +++ b/admin/compiler/joomla_4/ADMIN_VIEWS_HTML.php @@ -25,6 +25,7 @@ namespace ###NAMESPACEPREFIX###\Component\###ComponentNamespace###\Administrator * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/compiler/joomla_4/ADMIN_VIEW_HTML.php b/admin/compiler/joomla_4/ADMIN_VIEW_HTML.php index 51966d554..7dd658664 100644 --- a/admin/compiler/joomla_4/ADMIN_VIEW_HTML.php +++ b/admin/compiler/joomla_4/ADMIN_VIEW_HTML.php @@ -25,6 +25,7 @@ namespace ###NAMESPACEPREFIX###\Component\###ComponentNamespace###\Administrator * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/compiler/joomla_4/CUSTOM_ADMIN_VIEWS_HTML.php b/admin/compiler/joomla_4/CUSTOM_ADMIN_VIEWS_HTML.php index 96faeed38..6257cfd58 100644 --- a/admin/compiler/joomla_4/CUSTOM_ADMIN_VIEWS_HTML.php +++ b/admin/compiler/joomla_4/CUSTOM_ADMIN_VIEWS_HTML.php @@ -25,6 +25,7 @@ namespace ###NAMESPACEPREFIX###\Component\###ComponentNamespace###\Administrator * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** @@ -82,6 +83,8 @@ class HtmlView extends BaseHtmlView // Set the html view document stuff $this->_prepareDocument(); + + parent::display($tpl); }###CUSTOM_ADMIN_EXTRA_DIPLAY_METHODS### /** diff --git a/admin/compiler/joomla_4/CUSTOM_ADMIN_VIEWS_MODEL.php b/admin/compiler/joomla_4/CUSTOM_ADMIN_VIEWS_MODEL.php index 584eb6b38..bfa9f8e64 100644 --- a/admin/compiler/joomla_4/CUSTOM_ADMIN_VIEWS_MODEL.php +++ b/admin/compiler/joomla_4/CUSTOM_ADMIN_VIEWS_MODEL.php @@ -105,9 +105,12 @@ class ###SViews###Model extends ListModel ]; /** - * A custom property for UIKit components. (not used unless you load v2) + * A custom property for UI Kit components. + * + * @var mixed Property for storing UI Kit component-related data or objects. + * @since 3.2.0 */ - protected $uikitComp; + protected $uikitComp = []; /** * Constructor diff --git a/admin/compiler/joomla_4/CUSTOM_ADMIN_VIEW_HTML.php b/admin/compiler/joomla_4/CUSTOM_ADMIN_VIEW_HTML.php index 6fe4459f2..748ca2454 100644 --- a/admin/compiler/joomla_4/CUSTOM_ADMIN_VIEW_HTML.php +++ b/admin/compiler/joomla_4/CUSTOM_ADMIN_VIEW_HTML.php @@ -25,6 +25,7 @@ namespace ###NAMESPACEPREFIX###\Component\###ComponentNamespace###\Administrator * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** @@ -50,6 +51,8 @@ class HtmlView extends BaseHtmlView // Set the html view document stuff $this->_prepareDocument(); + + parent::display($tpl); }###CUSTOM_ADMIN_EXTRA_DIPLAY_METHODS### /** diff --git a/admin/compiler/joomla_4/CUSTOM_ADMIN_VIEW_MODEL.php b/admin/compiler/joomla_4/CUSTOM_ADMIN_VIEW_MODEL.php index f71b26864..dc935fd94 100644 --- a/admin/compiler/joomla_4/CUSTOM_ADMIN_VIEW_MODEL.php +++ b/admin/compiler/joomla_4/CUSTOM_ADMIN_VIEW_MODEL.php @@ -115,10 +115,10 @@ class ###SView###Model extends ItemModel /** * A custom property for UI Kit components. * - * @var array|null Property for storing UI Kit component-related data or objects. + * @var mixed Property for storing UI Kit component-related data or objects. * @since 3.2.0 */ - protected ?array $uikitComp; + protected $uikitComp = []; /** * @var object item diff --git a/admin/compiler/joomla_4/DASH_VIEW_HTML.php b/admin/compiler/joomla_4/DASH_VIEW_HTML.php index db91cf460..e25b5dc4f 100644 --- a/admin/compiler/joomla_4/DASH_VIEW_HTML.php +++ b/admin/compiler/joomla_4/DASH_VIEW_HTML.php @@ -25,6 +25,7 @@ namespace ###NAMESPACEPREFIX###\Component\###ComponentNamespace###\Administrator * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/compiler/joomla_4/SITE_VIEWS_HTML.php b/admin/compiler/joomla_4/SITE_VIEWS_HTML.php index a01ccbb92..2776f8bc2 100644 --- a/admin/compiler/joomla_4/SITE_VIEWS_HTML.php +++ b/admin/compiler/joomla_4/SITE_VIEWS_HTML.php @@ -93,6 +93,8 @@ class HtmlView extends BaseHtmlView $this->scripts = $this->get('Scripts'); // get the user object $this->user ??= $this->app->getIdentity();###SITE_DIPLAY_METHOD### + + parent::display($tpl); }###SITE_EXTRA_DIPLAY_METHODS### /** diff --git a/admin/compiler/joomla_4/SITE_VIEW_HTML.php b/admin/compiler/joomla_4/SITE_VIEW_HTML.php index 375cf05a0..88b335bfd 100644 --- a/admin/compiler/joomla_4/SITE_VIEW_HTML.php +++ b/admin/compiler/joomla_4/SITE_VIEW_HTML.php @@ -77,6 +77,8 @@ class HtmlView extends BaseHtmlView $this->scripts = $this->get('Scripts') ?? []; // get the user object $this->user ??= $this->getCurrentUser();###SITE_DIPLAY_METHOD### + + parent::display($tpl); }###SITE_EXTRA_DIPLAY_METHODS### /** diff --git a/admin/forms/admin_view.xml b/admin/forms/admin_view.xml index 73021b459..03da74af2 100644 --- a/admin/forms/admin_view.xml +++ b/admin/forms/admin_view.xml @@ -2473,6 +2473,7 @@ name="table" label="COM_COMPONENTBUILDER_ADMIN_VIEW_TABLE_LABEL" class="list_class" + layout="joomla.form.field.list-fancy-select" multiple="false" default="0" button="false" diff --git a/admin/layouts/trashhelper.php b/admin/layouts/trashhelper.php index 9699713e0..6b595be56 100644 --- a/admin/layouts/trashhelper.php +++ b/admin/layouts/trashhelper.php @@ -34,16 +34,16 @@ defined('JPATH_BASE') or die; document.adminForm.elements['checkall-toggle'].checked=1; Joomla.checkAll(document.adminForm.elements['checkall-toggle']); // check to confirm the deletion - if(confirm('')) { - Joomla.submitbutton('get("name") ?>.delete'); + if(confirm('')) { + Joomla.submitbutton('getName(); ?>.delete'); } else { document.adminForm.elements['checkall-toggle'].checked=0; Joomla.checkAll(document.adminForm.elements['checkall-toggle']); } } else { // confirm deletion of those selected - if (confirm('')) { - Joomla.submitbutton('get("name") ?>.delete'); + if (confirm('')) { + Joomla.submitbutton('getName(); ?>.delete'); }; } return false; @@ -59,23 +59,23 @@ defined('JPATH_BASE') or die; items)): ?>

- +

-

+

- +

-

+

diff --git a/admin/sql/install.mysql.utf8.sql b/admin/sql/install.mysql.utf8.sql index 868d2e2ea..c1ab17fb5 100644 --- a/admin/sql/install.mysql.utf8.sql +++ b/admin/sql/install.mysql.utf8.sql @@ -2135,7 +2135,7 @@ INSERT INTO `#__componentbuilder_site_view` (`id`, `add_css_document`, `add_css` -- INSERT INTO `#__componentbuilder_layout` (`id`, `add_php_view`, `alias`, `description`, `dynamic_get`, `layout`, `name`, `php_view`, `snippet`, `params`, `published`, `version`, `hits`, `ordering`, `libraries`) VALUES -(97, '', 'trashhelper', 'Trash Helper Layout', '', 'PD9waHAgaWYgKCRkaXNwbGF5RGF0YS0+c3RhdGUtPmdldCgnZmlsdGVyLnB1Ymxpc2hlZCcpID09IC0yICYmICgkZGlzcGxheURhdGEtPmNhblN0YXRlICYmICRkaXNwbGF5RGF0YS0+Y2FuRGVsZXRlKSkgOiA/Pg0KCTxzY3JpcHQ+DQoJCS8vIGNoYW5nZSB0aGUgY2xhc3Mgb2YgdGhlIGRlbGV0ZSBidXR0b24NCgkJalF1ZXJ5KCIjdG9vbGJhci1kZWxldGUgYnV0dG9uIikudG9nZ2xlQ2xhc3MoImJ0bi1kYW5nZXIiKTsNCgkJLy8gZnVuY3Rpb24gdG8gZW1wdHkgdGhlIHRyYXNoDQoJCWZ1bmN0aW9uIGVtcHR5VHJhc2goKSB7DQoJCQlpZiAoZG9jdW1lbnQuYWRtaW5Gb3JtLmJveGNoZWNrZWQudmFsdWUgPT0gMCkgew0KCQkJCS8vIHNlbGVjdCBhbGwgdGhlIGl0ZW1zIHZpc2FibGUNCgkJCQlkb2N1bWVudC5hZG1pbkZvcm0uZWxlbWVudHNbJ2NoZWNrYWxsLXRvZ2dsZSddLmNoZWNrZWQ9MTsNCgkJCQlKb29tbGEuY2hlY2tBbGwoZG9jdW1lbnQuYWRtaW5Gb3JtLmVsZW1lbnRzWydjaGVja2FsbC10b2dnbGUnXSk7DQoJCQkJLy8gY2hlY2sgdG8gY29uZmlybSB0aGUgZGVsZXRpb24NCgkJCQlpZihjb25maXJtKCc8Pz0gVGV4dDo6XygiQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZT8gQ29uZmlybWluZyB3aWxsIHBlcm1hbmVudGx5IGRlbGV0ZSB0aGUgc2VsZWN0ZWQgaXRlbShzKSEiKSA/PicpKSB7DQoJCQkJCUpvb21sYS5zdWJtaXRidXR0b24oJzw/PSAkZGlzcGxheURhdGEtPmdldCgibmFtZSIpID8+LmRlbGV0ZScpOw0KCQkJCX0gZWxzZSB7DQoJCQkJCWRvY3VtZW50LmFkbWluRm9ybS5lbGVtZW50c1snY2hlY2thbGwtdG9nZ2xlJ10uY2hlY2tlZD0wOw0KCQkJCQlKb29tbGEuY2hlY2tBbGwoZG9jdW1lbnQuYWRtaW5Gb3JtLmVsZW1lbnRzWydjaGVja2FsbC10b2dnbGUnXSk7DQoJCQkJfQ0KCQkJfSBlbHNlIHsNCgkJCQkvLyBjb25maXJtIGRlbGV0aW9uIG9mIHRob3NlIHNlbGVjdGVkDQoJCQkJaWYgKGNvbmZpcm0oJzw/PSBUZXh0OjpfKCJBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gZGVsZXRlPyBDb25maXJtaW5nIHdpbGwgcGVybWFuZW50bHkgZGVsZXRlIHRoZSBzZWxlY3RlZCBpdGVtKHMpISIpID8+JykpIHsNCgkJCQkJSm9vbWxhLnN1Ym1pdGJ1dHRvbignPD89ICRkaXNwbGF5RGF0YS0+Z2V0KCJuYW1lIikgPz4uZGVsZXRlJyk7DQoJCQkJfTsNCgkJCX0NCgkJCXJldHVybiBmYWxzZTsNCgkJfQ0KCQkvLyBmdW5jdGlvbiB0byBleGl0IHRoZSB0YXNoIHN0YXRlDQoJCWZ1bmN0aW9uIGV4aXRUcmFzaCgpIHsNCgkJCWRvY3VtZW50LmFkbWluRm9ybS5maWx0ZXJfcHVibGlzaGVkLnNlbGVjdGVkSW5kZXggPSAwOw0KCQkJZG9jdW1lbnQuYWRtaW5Gb3JtLnN1Ym1pdCgpOw0KCQkJcmV0dXJuIGZhbHNlOw0KCQl9DQoJPC9zY3JpcHQ+DQoJPGRpdiBjbGFzcz0iYWxlcnQgYWxlcnQtZXJyb3IiPg0KCQk8P3BocCBpZiAoZW1wdHkoJGRpc3BsYXlEYXRhLT5pdGVtcykpOiA/Pg0KCQkJPGg0IGNsYXNzPSJhbGVydC1oZWFkaW5nIj4NCgkJCQk8c3BhbiBjbGFzcz0iaWNvbi10cmFzaCI+PC9zcGFuPg0KCQkJCTw/PSBUZXh0OjpfKCJUcmFzaCBBcmVhIikgPz4NCgkJCTwvaDQ+DQoJCQk8cD48Pz0gVGV4dDo6XygiWW91IGFyZSBjdXJyZW50bHkgdmlld2luZyB0aGUgdHJhc2ggYXJlYSwgYW5kIHlvdSBkb24ndCBoYXZlIGFueSBpdGVtcyBpbiB0cmFzaCBhdCB0aGUgbW9tZW50ISIpID8+PC9wPg0KCQk8P3BocCBlbHNlOiA/Pg0KCQkJPGg0IGNsYXNzPSJhbGVydC1oZWFkaW5nIj4NCgkJCQk8c3BhbiBjbGFzcz0iaWNvbi10cmFzaCI+PC9zcGFuPg0KCQkJCTw/PSBUZXh0OjpfKCJUcmFzaGVkIGl0ZW1zIikgPz4NCgkJCTwvaDQ+DQoJCQk8cD48Pz0gVGV4dDo6XygiWW91IGFyZSBjdXJyZW50bHkgdmlld2luZyB0aGUgdHJhc2hlZCBpdGVtcy4iKSA/PjwvcD4NCgkJCTxidXR0b24gb25jbGljaz0iZW1wdHlUcmFzaCgpOyIgY2xhc3M9ImJ0biBidG4tc21hbGwgYnRuLWRhbmdlciI+DQoJCQkJPHNwYW4gY2xhc3M9Imljb24tZGVsZXRlIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9zcGFuPg0KCQkJCTw/PSBUZXh0OjpfKCJFbXB0eSB0cmFzaCIpID8+DQoJCQk8L2J1dHRvbj4NCgkJPD9waHAgZW5kaWY7ID8+DQoJCTxidXR0b24gb25jbGljaz0iZXhpdFRyYXNoKCk7IiBjbGFzcz0iYnRuIGJ0bi1zbWFsbCI+DQoJCQk8c3BhbiBjbGFzcz0iaWNvbi1iYWNrIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9zcGFuPg0KCQkJPD89IFRleHQ6Ol8oIkV4aXQgdHJhc2giKSA/Pg0KCQk8L2J1dHRvbj4NCgk8L2Rpdj4NCjw/cGhwIGVuZGlmOyA/Pg==', 'Trash Helper', '', '', '', 1, 8, '', 27, ''), +(97, '', 'trashhelper', 'Trash Helper Layout', '', 'PD9waHAgaWYgKCRkaXNwbGF5RGF0YS0+c3RhdGUtPmdldCgnZmlsdGVyLnB1Ymxpc2hlZCcpID09IC0yICYmICgkZGlzcGxheURhdGEtPmNhblN0YXRlICYmICRkaXNwbGF5RGF0YS0+Y2FuRGVsZXRlKSkgOiA/Pg0KCTxzY3JpcHQ+DQoJCS8vIGNoYW5nZSB0aGUgY2xhc3Mgb2YgdGhlIGRlbGV0ZSBidXR0b24NCgkJalF1ZXJ5KCIjdG9vbGJhci1kZWxldGUgYnV0dG9uIikudG9nZ2xlQ2xhc3MoImJ0bi1kYW5nZXIiKTsNCgkJLy8gZnVuY3Rpb24gdG8gZW1wdHkgdGhlIHRyYXNoDQoJCWZ1bmN0aW9uIGVtcHR5VHJhc2goKSB7DQoJCQlpZiAoZG9jdW1lbnQuYWRtaW5Gb3JtLmJveGNoZWNrZWQudmFsdWUgPT0gMCkgew0KCQkJCS8vIHNlbGVjdCBhbGwgdGhlIGl0ZW1zIHZpc2FibGUNCgkJCQlkb2N1bWVudC5hZG1pbkZvcm0uZWxlbWVudHNbJ2NoZWNrYWxsLXRvZ2dsZSddLmNoZWNrZWQ9MTsNCgkJCQlKb29tbGEuY2hlY2tBbGwoZG9jdW1lbnQuYWRtaW5Gb3JtLmVsZW1lbnRzWydjaGVja2FsbC10b2dnbGUnXSk7DQoJCQkJLy8gY2hlY2sgdG8gY29uZmlybSB0aGUgZGVsZXRpb24NCgkJCQlpZihjb25maXJtKCc8P3BocCBlY2hvIFRleHQ6Ol8oIkFyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBkZWxldGU/IENvbmZpcm1pbmcgd2lsbCBwZXJtYW5lbnRseSBkZWxldGUgdGhlIHNlbGVjdGVkIGl0ZW0ocykhIikgPz4nKSkgew0KCQkJCQlKb29tbGEuc3VibWl0YnV0dG9uKCc8P3BocCBlY2hvICRkaXNwbGF5RGF0YS0+Z2V0TmFtZSgpOyA/Pi5kZWxldGUnKTsNCgkJCQl9IGVsc2Ugew0KCQkJCQlkb2N1bWVudC5hZG1pbkZvcm0uZWxlbWVudHNbJ2NoZWNrYWxsLXRvZ2dsZSddLmNoZWNrZWQ9MDsNCgkJCQkJSm9vbWxhLmNoZWNrQWxsKGRvY3VtZW50LmFkbWluRm9ybS5lbGVtZW50c1snY2hlY2thbGwtdG9nZ2xlJ10pOw0KCQkJCX0NCgkJCX0gZWxzZSB7DQoJCQkJLy8gY29uZmlybSBkZWxldGlvbiBvZiB0aG9zZSBzZWxlY3RlZA0KCQkJCWlmIChjb25maXJtKCc8P3BocCBlY2hvIFRleHQ6Ol8oIkFyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBkZWxldGU/IENvbmZpcm1pbmcgd2lsbCBwZXJtYW5lbnRseSBkZWxldGUgdGhlIHNlbGVjdGVkIGl0ZW0ocykhIikgPz4nKSkgew0KCQkJCQlKb29tbGEuc3VibWl0YnV0dG9uKCc8P3BocCBlY2hvICRkaXNwbGF5RGF0YS0+Z2V0TmFtZSgpOyA/Pi5kZWxldGUnKTsNCgkJCQl9Ow0KCQkJfQ0KCQkJcmV0dXJuIGZhbHNlOw0KCQl9DQoJCS8vIGZ1bmN0aW9uIHRvIGV4aXQgdGhlIHRhc2ggc3RhdGUNCgkJZnVuY3Rpb24gZXhpdFRyYXNoKCkgew0KCQkJZG9jdW1lbnQuYWRtaW5Gb3JtLmZpbHRlcl9wdWJsaXNoZWQuc2VsZWN0ZWRJbmRleCA9IDA7DQoJCQlkb2N1bWVudC5hZG1pbkZvcm0uc3VibWl0KCk7DQoJCQlyZXR1cm4gZmFsc2U7DQoJCX0NCgk8L3NjcmlwdD4NCgk8ZGl2IGNsYXNzPSJhbGVydCBhbGVydC1lcnJvciI+DQoJCTw/cGhwIGlmIChlbXB0eSgkZGlzcGxheURhdGEtPml0ZW1zKSk6ID8+DQoJCQk8aDQgY2xhc3M9ImFsZXJ0LWhlYWRpbmciPg0KCQkJCTxzcGFuIGNsYXNzPSJpY29uLXRyYXNoIj48L3NwYW4+DQoJCQkJPD9waHAgZWNobyBUZXh0OjpfKCJUcmFzaCBBcmVhIikgPz4NCgkJCTwvaDQ+DQoJCQk8cD48P3BocCBlY2hvIFRleHQ6Ol8oIllvdSBhcmUgY3VycmVudGx5IHZpZXdpbmcgdGhlIHRyYXNoIGFyZWEsIGFuZCB5b3UgZG9uJ3QgaGF2ZSBhbnkgaXRlbXMgaW4gdHJhc2ggYXQgdGhlIG1vbWVudCEiKSA/PjwvcD4NCgkJPD9waHAgZWxzZTogPz4NCgkJCTxoNCBjbGFzcz0iYWxlcnQtaGVhZGluZyI+DQoJCQkJPHNwYW4gY2xhc3M9Imljb24tdHJhc2giPjwvc3Bhbj4NCgkJCQk8P3BocCBlY2hvIFRleHQ6Ol8oIlRyYXNoZWQgaXRlbXMiKSA/Pg0KCQkJPC9oND4NCgkJCTxwPjw/cGhwIGVjaG8gVGV4dDo6XygiWW91IGFyZSBjdXJyZW50bHkgdmlld2luZyB0aGUgdHJhc2hlZCBpdGVtcy4iKSA/PjwvcD4NCgkJCTxidXR0b24gb25jbGljaz0iZW1wdHlUcmFzaCgpOyIgY2xhc3M9ImJ0biBidG4tc21hbGwgYnRuLWRhbmdlciI+DQoJCQkJPHNwYW4gY2xhc3M9Imljb24tZGVsZXRlIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9zcGFuPg0KCQkJCTw/cGhwIGVjaG8gVGV4dDo6XygiRW1wdHkgdHJhc2giKSA/Pg0KCQkJPC9idXR0b24+DQoJCTw/cGhwIGVuZGlmOyA/Pg0KCQk8YnV0dG9uIG9uY2xpY2s9ImV4aXRUcmFzaCgpOyIgY2xhc3M9ImJ0biBidG4tc21hbGwiPg0KCQkJPHNwYW4gY2xhc3M9Imljb24tYmFjayIgYXJpYS1oaWRkZW49InRydWUiPjwvc3Bhbj4NCgkJCTw/cGhwIGVjaG8gVGV4dDo6XygiRXhpdCB0cmFzaCIpID8+DQoJCTwvYnV0dG9uPg0KCTwvZGl2Pg0KPD9waHAgZW5kaWY7ID8+', 'Trash Helper', '', '', '', 1, 9, '', 27, ''), (101, 1, 'input', 'Input', '', 'PGlucHV0DQoJY2xhc3M9Ijw/cGhwIGVjaG8gJGNsYXNzIC4gJGNsYXNzX290aGVyOyA/PiINCgluYW1lPSI8P3BocCBlY2hvICRuYW1lOyA/PiINCglpZD0iPD9waHAgZWNobyAkaWQ7ID8+Ig0KCXR5cGU9Ijw/cGhwIGVjaG8gJHR5cGU7ID8+Ig0KCXBsYWNlaG9sZGVyPSI8P3BocCBlY2hvICRwbGFjZWhvbGRlcjsgPz4iDQoJdmFsdWU9Ijw/cGhwIGVjaG8gJHZhbHVlOyA/PiINCgk8P3BocCBlY2hvICRyZWFkb25seTsgZWNobyAkb25jaGFuZ2U7IGVjaG8gJG9ua2V5ZG93bjsgZWNobyAkZm9ybWF0OyBlY2hvICRyZXF1aXJlZDsgPz4NCj4=', 'Input', 'Ly8gRXh0cmFjdCBhbGwga2V5cyBmcm9tICRkaXNwbGF5RGF0YSBhcyBpbmRpdmlkdWFsIHZhcmlhYmxlcy4NCmV4dHJhY3QoJGRpc3BsYXlEYXRhKTsNCg0KLy8gQXNzaWduIGRlZmF1bHQgdmFsdWVzIGZvciB2YXJpYWJsZXMgdGhhdCBtaWdodCBub3QgYmUgcHJlc2VudCBpbiAkZGlzcGxheURhdGEuDQoNCi8vIFRoZSAnaWQnIHBhcmFtZXRlciwgZGVmYXVsdGluZyB0byBhbiBlbXB0eSBzdHJpbmcgaWYgbm90IHNldCBvciBpcyBudWxsLg0KJGlkID8/PSAnJzsNCg0KLy8gVGhlICduYW1lJyBwYXJhbWV0ZXIsIGRlZmF1bHRpbmcgdG8gJ2lkJyBpZiBub3Qgc2V0LiBBZGRpdGlvbmFsbHksIHJlcGxhY2UgaHlwaGVucyB3aXRoIHVuZGVyc2NvcmVzLg0KJG5hbWUgPz89ICRpZDsNCiRuYW1lID0gc3RyX3JlcGxhY2UoJy0nLCAnXycsICRuYW1lKTsNCg0KLy8gVGhlICd2YWx1ZScgcGFyYW1ldGVyLCBkZWZhdWx0aW5nIHRvIGFuIGVtcHR5IHN0cmluZyBpZiBub3Qgc2V0IG9yIGlzIG51bGwuDQokdmFsdWUgPz89ICcnOw0KDQovLyBUaGUgJ2NsYXNzJyBwYXJhbWV0ZXIsIGRlZmF1bHRpbmcgdG8gJ3VrLWlucHV0JyBpZiBub3Qgc2V0IG9yIGlzIG51bGwuDQokY2xhc3MgPz89ICd1ay1pbnB1dCc7DQoNCi8vIFRoZSAnY2xhc3Nfb3RoZXInIHBhcmFtZXRlciwgcHJlcGVuZGVkIHdpdGggYSBzcGFjZSBpZiBzZXQsIG90aGVyd2lzZSBkZWZhdWx0aW5nIHRvIGFuIGVtcHR5IHN0cmluZy4NCiRjbGFzc19vdGhlciA9IGlzc2V0KCRjbGFzc19vdGhlcikgPyAnICcgLiAkY2xhc3Nfb3RoZXIgOiAnJzsNCg0KLy8gVGhlICdwbGFjZWhvbGRlcicgcGFyYW1ldGVyLCBkZWZhdWx0aW5nIHRvIGFuIGVtcHR5IHN0cmluZyBpZiBub3Qgc2V0IG9yIGlzIG51bGwuDQokcGxhY2Vob2xkZXIgPz89ICcnOw0KDQovLyBUaGUgJ3R5cGUnIHBhcmFtZXRlciwgZGVmYXVsdGluZyB0byAndGV4dCcgaWYgbm90IHNldCBvciBpcyBudWxsLg0KJHR5cGUgPz89ICd0ZXh0JzsNCg0KLy8gVGhlICdyZWFkb25seScgYXR0cmlidXRlLCBzZXQgdG8gJ3JlYWRvbmx5JyBpZiB0cnVlLCBvdGhlcndpc2UgbGVmdCBhcyBhbiBlbXB0eSBzdHJpbmcuDQokcmVhZG9ubHkgPSAhZW1wdHkoJHJlYWRvbmx5KSA/ICcgcmVhZG9ubHknIDogJyc7DQoNCi8vIFRoZSAnZm9ybWF0JyBhdHRyaWJ1dGUsIGFkZGVkIG9ubHkgaWYgc2V0LCBvdGhlcndpc2UgbGVmdCBhcyBhbiBlbXB0eSBzdHJpbmcuDQokZm9ybWF0ID0gIWVtcHR5KCRmb3JtYXQpID8gJyBmb3JtYXQ9IicgLiAkZm9ybWF0IC4gJyInIDogJyc7DQoNCi8vIFRoZSAnb25jaGFuZ2UnIGF0dHJpYnV0ZSwgYWRkZWQgb25seSBpZiBzZXQsIG90aGVyd2lzZSBsZWZ0IGFzIGFuIGVtcHR5IHN0cmluZy4NCiRvbmNoYW5nZSA9IGlzc2V0KCRvbmNoYW5nZSkgPyAnIG9uY2hhbmdlPSInIC4gJG9uY2hhbmdlIC4gJyInIDogJyc7DQoNCi8vIFRoZSAnb25rZXlkb3duJyBhdHRyaWJ1dGUsIGFkZGVkIG9ubHkgaWYgc2V0LCBvdGhlcndpc2UgbGVmdCBhcyBhbiBlbXB0eSBzdHJpbmcuDQokb25rZXlkb3duID0gaXNzZXQoJG9ua2V5ZG93bikgPyAnIG9ua2V5ZG93bj0iJyAuICRvbmtleWRvd24gLiAnIicgOiAnJzsNCg0KLy8gVGhlICdyZXF1aXJlZCcgYXR0cmlidXRlLCBzZXQgdG8gJ3JlcXVpcmVkJyBpZiB0cnVlLCBvdGhlcndpc2UgbGVmdCBhcyBhbiBlbXB0eSBzdHJpbmcuDQokcmVxdWlyZWQgPSAhZW1wdHkoJHJlcXVpcmVkKSA/ICcgcmVxdWlyZWQnIDogJyc7', '', '', 1, 5, '', 30, ''), (102, 1, 'inputbox', 'Input Box', '', 'PGRpdiBjbGFzcz0iPD9waHAgZWNobyAkbWFyZ2luOyA/PiI+DQoJPGxhYmVsIGNsYXNzPSI8P3BocCBlY2hvICRjbGFzc19sYWJlbCA7IGVjaG8gJGNsYXNzX290aGVyX2xhYmVsOyA/PiIgZm9yPSI8P3BocCBlY2hvICRuYW1lOyA/PiI+PD9waHAgZWNobyAkbGFiZWw7ID8+PC9sYWJlbD4NCgk8ZGl2IGNsYXNzPSJ1ay1mb3JtLWNvbnRyb2xzIj4NCgkJPD9waHAgZWNobyBMYXlvdXRIZWxwZXI6OnJlbmRlcignaW5wdXQnLCAkZGlzcGxheURhdGEpOyA/Pg0KCTwvZGl2Pg0KPC9kaXY+', 'Input Box', 'Ly8gRXh0cmFjdCBhbGwga2V5cyBmcm9tICRkaXNwbGF5RGF0YSBhcyBpbmRpdmlkdWFsIHZhcmlhYmxlcy4NCmV4dHJhY3QoJGRpc3BsYXlEYXRhKTsNCg0KLy8gQXNzaWduIGRlZmF1bHQgdmFsdWVzIGZvciB2YXJpYWJsZXMgdGhhdCBtaWdodCBub3QgYmUgcHJlc2VudCBpbiAkZGlzcGxheURhdGEuDQoNCi8vIFRoZSAnaWQnIHBhcmFtZXRlciwgZGVmYXVsdGluZyB0byBhbiBlbXB0eSBzdHJpbmcgaWYgbm90IHNldCBvciBpcyBudWxsLg0KJGlkID8/PSAnJzsNCg0KLy8gVGhlICduYW1lJyBwYXJhbWV0ZXIsIGRlZmF1bHRpbmcgdG8gJ2lkJyBpZiBub3Qgc2V0IG9yIGlzIG51bGwuIEFkZGl0aW9uYWxseSwgcmVwbGFjZSBoeXBoZW5zIHdpdGggdW5kZXJzY29yZXMuDQokbmFtZSA/Pz0gJGlkOw0KJG5hbWUgPSBzdHJfcmVwbGFjZSgnLScsICdfJywgJG5hbWUpOw0KDQovLyBUaGUgJ2xhYmVsJyBwYXJhbWV0ZXIsIGRlZmF1bHRpbmcgdG8gdGhlICdMYWJlbCcgdHJhbnNsYXRpb24gaWYgbm90IHNldCBvciBpcyBudWxsLg0KJGxhYmVsID8/PSBUZXh0OjpfKCdMYWJlbCcpOw0KDQovLyBUaGUgJ2NsYXNzX2xhYmVsJyBwYXJhbWV0ZXIsIGRlZmF1bHRpbmcgdG8gJ3VrLWZvcm0tbGFiZWwnIGlmIG5vdCBzZXQgb3IgaXMgbnVsbC4NCiRjbGFzc19sYWJlbCA/Pz0gJ3VrLWZvcm0tbGFiZWwnOw0KDQovLyBUaGUgJ2NsYXNzX290aGVyX2xhYmVsJyBwYXJhbWV0ZXIsIHByZXBlbmRlZCB3aXRoIGEgc3BhY2UgaWYgc2V0LCBvdGhlcndpc2UgZGVmYXVsdGluZyB0byBhbiBlbXB0eSBzdHJpbmcuDQokY2xhc3Nfb3RoZXJfbGFiZWwgPSBpc3NldCgkY2xhc3Nfb3RoZXJfbGFiZWwpID8gJyAnIC4gJGNsYXNzX290aGVyX2xhYmVsIDogJyc7DQoNCi8vIFRoZSAnbWFyZ2luJyBwYXJhbWV0ZXIsIGRlZmF1bHRpbmcgdG8gJ3VrLW1hcmdpbi1zbWFsbCcgaWYgbm90IHNldCBvciBpcyBudWxsLg0KJG1hcmdpbiA/Pz0gJ3VrLW1hcmdpbi1zbWFsbCc7', '', '', 1, 5, '', 31, ''), (103, 1, 'select', 'Select', '', 'PHNlbGVjdCBjbGFzcz0iPD9waHAgZWNobyAkY2xhc3MgLiAkY2xhc3Nfb3RoZXI7ID8+IiBpZD0iPD9waHAgZWNobyAkaWQ7ID8+IiBuYW1lPSI8P3BocCBlY2hvICRuYW1lOyA/PiI8P3BocCBlY2hvICRvbmtleWRvd247IGVjaG8gJG9uY2hhbmdlOyA/Pj4NCjw/cGhwIGlmICgkb3B0aW9ucyk6ID8+DQoJPD9waHAgZm9yZWFjaCAoJG9wdGlvbnMgYXMgJGtleSA9PiAkdmFsdWUpOiA/Pg0KCQk8P3BocCBpZiAoaXNfb2JqZWN0KCR2YWx1ZSkgJiYgaXNzZXQoJHZhbHVlLT5rZXkpICYmIGlzc2V0KCR2YWx1ZS0+dmFsdWUpKTogPz4NCgkJCTw/cGhwIGlmICgkZGVmYXVsdCA9PT0gJHZhbHVlLT5rZXkpOiA/Pg0KCQkJCTxvcHRpb24gdmFsdWU9Ijw/cGhwIGVjaG8gICR2YWx1ZS0+a2V5OyA/PiIgc2VsZWN0ZWQ+PD9waHAgZWNobyAkdmFsdWUtPnZhbHVlOyA/Pjwvb3B0aW9uPg0KCQkJPD9waHAgZWxzZTogPz4NCgkJCQk8b3B0aW9uIHZhbHVlPSI8P3BocCBlY2hvICAkdmFsdWUtPmtleTsgPz4iPjw/cGhwIGVjaG8gJHZhbHVlLT52YWx1ZTsgPz48L29wdGlvbj4NCgkJCTw/cGhwIGVuZGlmOyA/Pg0KCQk8P3BocCBlbHNlOiA/Pg0KCQkJPD9waHAgaWYgKCRkZWZhdWx0ID09PSAka2V5KTogPz4NCgkJCQk8b3B0aW9uIHZhbHVlPSI8P3BocCBlY2hvICRrZXk7ID8+IiBzZWxlY3RlZD48P3BocCBlY2hvICR2YWx1ZTsgPz48L29wdGlvbj4NCgkJCTw/cGhwIGVsc2U6ID8+DQoJCQkJPG9wdGlvbiB2YWx1ZT0iPD9waHAgZWNobyAka2V5OyA/PiI+PD9waHAgZWNobyAkdmFsdWU7ID8+PC9vcHRpb24+DQoJCQk8P3BocCBlbmRpZjsgPz4NCgkJPD9waHAgZW5kaWY7ID8+DQoJPD9waHAgZW5kZm9yZWFjaDsgPz4NCjw/cGhwIGVsc2U6ID8+DQoJPG9wdGlvbj48P3BocCBlY2hvIFRleHQ6Ol8oJ0VtcHR5Jyk7ID8+PC9vcHRpb24+DQo8P3BocCBlbmRpZjsgPz4NCjwvc2VsZWN0Pg==', 'Select', 'Ly8gRXh0cmFjdCBhbGwga2V5cyBmcm9tICRkaXNwbGF5RGF0YSBhcyBpbmRpdmlkdWFsIHZhcmlhYmxlcy4NCmV4dHJhY3QoJGRpc3BsYXlEYXRhKTsNCg0KLy8gQXNzaWduIGRlZmF1bHQgdmFsdWVzIGZvciB2YXJpYWJsZXMgdGhhdCBtaWdodCBub3QgYmUgcHJlc2VudCBpbiAkZGlzcGxheURhdGEuDQoNCi8vIFRoZSAnaWQnIHBhcmFtZXRlciwgZGVmYXVsdGluZyB0byBhbiBlbXB0eSBzdHJpbmcgaWYgbm90IHNldCBvciBpcyBudWxsLg0KJGlkID8/PSAnJzsNCg0KLy8gVGhlICduYW1lJyBwYXJhbWV0ZXIsIGRlZmF1bHRpbmcgdG8gJ2lkJyBpZiBub3Qgc2V0LiBBZGRpdGlvbmFsbHksIHJlcGxhY2UgaHlwaGVucyB3aXRoIHVuZGVyc2NvcmVzLg0KJG5hbWUgPz89ICRpZDsNCiRuYW1lID0gc3RyX3JlcGxhY2UoJy0nLCAnXycsICRuYW1lKTsNCg0KLy8gVGhlICdjbGFzcycgcGFyYW1ldGVyLCBkZWZhdWx0aW5nIHRvICd1ay1zZWxlY3QnIGlmIG5vdCBzZXQgb3IgaXMgbnVsbC4NCiRjbGFzcyA/Pz0gJ3VrLXNlbGVjdCc7DQoNCi8vIFRoZSAnY2xhc3Nfb3RoZXInIHBhcmFtZXRlciwgcHJlcGVuZGVkIHdpdGggYSBzcGFjZSBpZiBzZXQsIG90aGVyd2lzZSBkZWZhdWx0aW5nIHRvIGFuIGVtcHR5IHN0cmluZy4NCiRjbGFzc19vdGhlciA9IGlzc2V0KCRjbGFzc19vdGhlcikgPyAnICcgLiAkY2xhc3Nfb3RoZXIgOiAnJzsNCg0KLy8gVGhlICdvcHRpb25zJyBwYXJhbWV0ZXIsIHNldCBvbmx5IGlmIGl0IGV4aXN0cyBhbmQgaXMgYW4gYXJyYXksIG90aGVyd2lzZSBkZWZhdWx0cyB0byBgZmFsc2VgLg0KJG9wdGlvbnMgPSAoaXNzZXQoJG9wdGlvbnMpICYmIGlzX2FycmF5KCRvcHRpb25zKSkgPyAkb3B0aW9ucyA6IGZhbHNlOw0KDQovLyBUaGUgJ2RlZmF1bHQnIHBhcmFtZXRlciwgZGVmYXVsdGluZyB0byBhbiBlbXB0eSBzdHJpbmcgaWYgbm90IHNldCBvciBpcyBudWxsLg0KJGRlZmF1bHQgPz89ICcnOw0KDQovLyBUaGUgJ29uY2hhbmdlJyBhdHRyaWJ1dGUsIGFkZGVkIG9ubHkgaWYgc2V0LCBvdGhlcndpc2UgbGVmdCBhcyBhbiBlbXB0eSBzdHJpbmcuDQokb25jaGFuZ2UgPSBpc3NldCgkb25jaGFuZ2UpID8gJyBvbmNoYW5nZT0iJyAuICRvbmNoYW5nZSAuICciJyA6ICcnOw0KDQovLyBUaGUgJ29ua2V5ZG93bicgYXR0cmlidXRlLCBhZGRlZCBvbmx5IGlmIHNldCwgb3RoZXJ3aXNlIGxlZnQgYXMgYW4gZW1wdHkgc3RyaW5nLg0KJG9ua2V5ZG93biA9IGlzc2V0KCRvbmtleWRvd24pID8gJyBvbmtleWRvd249IicgLiAkb25rZXlkb3duIC4gJyInIDogJyc7', '', '', 1, 7, '', 32, ''), diff --git a/admin/sql/updates/mysql/4.0.3.sql b/admin/sql/updates/mysql/4.0.3.sql new file mode 100644 index 000000000..8b1378917 --- /dev/null +++ b/admin/sql/updates/mysql/4.0.3.sql @@ -0,0 +1 @@ + diff --git a/admin/src/Model/CompilerModel.php b/admin/src/Model/CompilerModel.php index ae2eed868..3a61b2e4c 100644 --- a/admin/src/Model/CompilerModel.php +++ b/admin/src/Model/CompilerModel.php @@ -114,9 +114,12 @@ class CompilerModel extends ListModel ]; /** - * A custom property for UIKit components. (not used unless you load v2) + * A custom property for UI Kit components. + * + * @var mixed Property for storing UI Kit component-related data or objects. + * @since 3.2.0 */ - protected $uikitComp; + protected $uikitComp = []; /** * Constructor diff --git a/admin/src/Model/Get_snippetsModel.php b/admin/src/Model/Get_snippetsModel.php index 66043b5c8..a45e46f99 100644 --- a/admin/src/Model/Get_snippetsModel.php +++ b/admin/src/Model/Get_snippetsModel.php @@ -112,9 +112,12 @@ class Get_snippetsModel extends ListModel ]; /** - * A custom property for UIKit components. (not used unless you load v2) + * A custom property for UI Kit components. + * + * @var mixed Property for storing UI Kit component-related data or objects. + * @since 3.2.0 */ - protected $uikitComp; + protected $uikitComp = []; /** * Constructor diff --git a/admin/src/Model/SearchModel.php b/admin/src/Model/SearchModel.php index a1ba8bde6..da2648c2e 100644 --- a/admin/src/Model/SearchModel.php +++ b/admin/src/Model/SearchModel.php @@ -125,10 +125,10 @@ class SearchModel extends ItemModel /** * A custom property for UI Kit components. * - * @var array|null Property for storing UI Kit component-related data or objects. + * @var mixed Property for storing UI Kit component-related data or objects. * @since 3.2.0 */ - protected ?array $uikitComp; + protected $uikitComp = []; /** * @var object item diff --git a/admin/src/View/Admin_custom_tabs/HtmlView.php b/admin/src/View/Admin_custom_tabs/HtmlView.php index 9c99ea922..08fcfdafe 100644 --- a/admin/src/View/Admin_custom_tabs/HtmlView.php +++ b/admin/src/View/Admin_custom_tabs/HtmlView.php @@ -35,6 +35,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Admin_fields/HtmlView.php b/admin/src/View/Admin_fields/HtmlView.php index d45c18885..97a4bde98 100644 --- a/admin/src/View/Admin_fields/HtmlView.php +++ b/admin/src/View/Admin_fields/HtmlView.php @@ -35,6 +35,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Admin_fields_conditions/HtmlView.php b/admin/src/View/Admin_fields_conditions/HtmlView.php index 8af6a7251..6b1e20634 100644 --- a/admin/src/View/Admin_fields_conditions/HtmlView.php +++ b/admin/src/View/Admin_fields_conditions/HtmlView.php @@ -35,6 +35,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Admin_fields_relations/HtmlView.php b/admin/src/View/Admin_fields_relations/HtmlView.php index bb8cc396b..e5606ac28 100644 --- a/admin/src/View/Admin_fields_relations/HtmlView.php +++ b/admin/src/View/Admin_fields_relations/HtmlView.php @@ -35,6 +35,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Admin_view/HtmlView.php b/admin/src/View/Admin_view/HtmlView.php index a56cb4393..c4040a4b1 100644 --- a/admin/src/View/Admin_view/HtmlView.php +++ b/admin/src/View/Admin_view/HtmlView.php @@ -35,6 +35,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Admin_views/HtmlView.php b/admin/src/View/Admin_views/HtmlView.php index 067d5e485..25ecac730 100644 --- a/admin/src/View/Admin_views/HtmlView.php +++ b/admin/src/View/Admin_views/HtmlView.php @@ -36,6 +36,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Admins_custom_tabs/HtmlView.php b/admin/src/View/Admins_custom_tabs/HtmlView.php index fa8432739..4e915fb92 100644 --- a/admin/src/View/Admins_custom_tabs/HtmlView.php +++ b/admin/src/View/Admins_custom_tabs/HtmlView.php @@ -36,6 +36,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Admins_fields/HtmlView.php b/admin/src/View/Admins_fields/HtmlView.php index e086a3b84..c1d91b50c 100644 --- a/admin/src/View/Admins_fields/HtmlView.php +++ b/admin/src/View/Admins_fields/HtmlView.php @@ -36,6 +36,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Admins_fields_conditions/HtmlView.php b/admin/src/View/Admins_fields_conditions/HtmlView.php index d280e1382..962001b44 100644 --- a/admin/src/View/Admins_fields_conditions/HtmlView.php +++ b/admin/src/View/Admins_fields_conditions/HtmlView.php @@ -36,6 +36,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Admins_fields_relations/HtmlView.php b/admin/src/View/Admins_fields_relations/HtmlView.php index fb18996a8..4d198e9b7 100644 --- a/admin/src/View/Admins_fields_relations/HtmlView.php +++ b/admin/src/View/Admins_fields_relations/HtmlView.php @@ -36,6 +36,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Class_extendings/HtmlView.php b/admin/src/View/Class_extendings/HtmlView.php index c2678cec0..0218fc483 100644 --- a/admin/src/View/Class_extendings/HtmlView.php +++ b/admin/src/View/Class_extendings/HtmlView.php @@ -36,6 +36,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Class_extends/HtmlView.php b/admin/src/View/Class_extends/HtmlView.php index 4f5293f94..b4cafd29c 100644 --- a/admin/src/View/Class_extends/HtmlView.php +++ b/admin/src/View/Class_extends/HtmlView.php @@ -35,6 +35,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Class_method/HtmlView.php b/admin/src/View/Class_method/HtmlView.php index 78d202499..18e5434d3 100644 --- a/admin/src/View/Class_method/HtmlView.php +++ b/admin/src/View/Class_method/HtmlView.php @@ -35,6 +35,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Class_methods/HtmlView.php b/admin/src/View/Class_methods/HtmlView.php index b91807775..dd513e80a 100644 --- a/admin/src/View/Class_methods/HtmlView.php +++ b/admin/src/View/Class_methods/HtmlView.php @@ -36,6 +36,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Class_properties/HtmlView.php b/admin/src/View/Class_properties/HtmlView.php index 88a8fdd0a..d58109116 100644 --- a/admin/src/View/Class_properties/HtmlView.php +++ b/admin/src/View/Class_properties/HtmlView.php @@ -36,6 +36,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Class_property/HtmlView.php b/admin/src/View/Class_property/HtmlView.php index 6feaa6bc6..594fd63ac 100644 --- a/admin/src/View/Class_property/HtmlView.php +++ b/admin/src/View/Class_property/HtmlView.php @@ -35,6 +35,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Compiler/HtmlView.php b/admin/src/View/Compiler/HtmlView.php index 6ccbec7c8..fe2d9ab67 100644 --- a/admin/src/View/Compiler/HtmlView.php +++ b/admin/src/View/Compiler/HtmlView.php @@ -37,6 +37,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** @@ -154,10 +155,10 @@ class HtmlView extends BaseHtmlView throw new \Exception(implode(PHP_EOL, $errors), 500); } - parent::display($tpl); - // Set the html view document stuff $this->_prepareDocument(); + + parent::display($tpl); } // These are subform layouts used in JCB diff --git a/admin/src/View/Component_admin_views/HtmlView.php b/admin/src/View/Component_admin_views/HtmlView.php index a0a440d88..7441ba035 100644 --- a/admin/src/View/Component_admin_views/HtmlView.php +++ b/admin/src/View/Component_admin_views/HtmlView.php @@ -35,6 +35,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Component_config/HtmlView.php b/admin/src/View/Component_config/HtmlView.php index 6ea3b6f34..38c093398 100644 --- a/admin/src/View/Component_config/HtmlView.php +++ b/admin/src/View/Component_config/HtmlView.php @@ -35,6 +35,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Component_custom_admin_menus/HtmlView.php b/admin/src/View/Component_custom_admin_menus/HtmlView.php index 4e7d00af3..8b0bad436 100644 --- a/admin/src/View/Component_custom_admin_menus/HtmlView.php +++ b/admin/src/View/Component_custom_admin_menus/HtmlView.php @@ -35,6 +35,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Component_custom_admin_views/HtmlView.php b/admin/src/View/Component_custom_admin_views/HtmlView.php index 083a95a69..738935533 100644 --- a/admin/src/View/Component_custom_admin_views/HtmlView.php +++ b/admin/src/View/Component_custom_admin_views/HtmlView.php @@ -35,6 +35,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Component_dashboard/HtmlView.php b/admin/src/View/Component_dashboard/HtmlView.php index 9cf7779d1..8d5b9ec8f 100644 --- a/admin/src/View/Component_dashboard/HtmlView.php +++ b/admin/src/View/Component_dashboard/HtmlView.php @@ -35,6 +35,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Component_files_folders/HtmlView.php b/admin/src/View/Component_files_folders/HtmlView.php index 469710cba..80dacbab8 100644 --- a/admin/src/View/Component_files_folders/HtmlView.php +++ b/admin/src/View/Component_files_folders/HtmlView.php @@ -35,6 +35,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Component_modules/HtmlView.php b/admin/src/View/Component_modules/HtmlView.php index 186544d5b..56d1c5705 100644 --- a/admin/src/View/Component_modules/HtmlView.php +++ b/admin/src/View/Component_modules/HtmlView.php @@ -35,6 +35,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Component_mysql_tweaks/HtmlView.php b/admin/src/View/Component_mysql_tweaks/HtmlView.php index fb0767553..79600596a 100644 --- a/admin/src/View/Component_mysql_tweaks/HtmlView.php +++ b/admin/src/View/Component_mysql_tweaks/HtmlView.php @@ -35,6 +35,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Component_placeholders/HtmlView.php b/admin/src/View/Component_placeholders/HtmlView.php index 3d69b6501..a331a9167 100644 --- a/admin/src/View/Component_placeholders/HtmlView.php +++ b/admin/src/View/Component_placeholders/HtmlView.php @@ -35,6 +35,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Component_plugins/HtmlView.php b/admin/src/View/Component_plugins/HtmlView.php index b288a9eac..5f98de3bf 100644 --- a/admin/src/View/Component_plugins/HtmlView.php +++ b/admin/src/View/Component_plugins/HtmlView.php @@ -35,6 +35,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Component_router/HtmlView.php b/admin/src/View/Component_router/HtmlView.php index f2397aa83..eeddfa5f0 100644 --- a/admin/src/View/Component_router/HtmlView.php +++ b/admin/src/View/Component_router/HtmlView.php @@ -35,6 +35,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Component_site_views/HtmlView.php b/admin/src/View/Component_site_views/HtmlView.php index 646b8f692..91c299f53 100644 --- a/admin/src/View/Component_site_views/HtmlView.php +++ b/admin/src/View/Component_site_views/HtmlView.php @@ -35,6 +35,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Component_updates/HtmlView.php b/admin/src/View/Component_updates/HtmlView.php index 864a9a317..87bb06b81 100644 --- a/admin/src/View/Component_updates/HtmlView.php +++ b/admin/src/View/Component_updates/HtmlView.php @@ -35,6 +35,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Componentbuilder/HtmlView.php b/admin/src/View/Componentbuilder/HtmlView.php index fe8755b3e..2b0dd8299 100644 --- a/admin/src/View/Componentbuilder/HtmlView.php +++ b/admin/src/View/Componentbuilder/HtmlView.php @@ -27,6 +27,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Components_admin_views/HtmlView.php b/admin/src/View/Components_admin_views/HtmlView.php index fbccc96d2..47e4ab420 100644 --- a/admin/src/View/Components_admin_views/HtmlView.php +++ b/admin/src/View/Components_admin_views/HtmlView.php @@ -36,6 +36,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Components_config/HtmlView.php b/admin/src/View/Components_config/HtmlView.php index eeecdd29b..fae90af54 100644 --- a/admin/src/View/Components_config/HtmlView.php +++ b/admin/src/View/Components_config/HtmlView.php @@ -36,6 +36,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Components_custom_admin_menus/HtmlView.php b/admin/src/View/Components_custom_admin_menus/HtmlView.php index 9cdd04454..8d64de903 100644 --- a/admin/src/View/Components_custom_admin_menus/HtmlView.php +++ b/admin/src/View/Components_custom_admin_menus/HtmlView.php @@ -36,6 +36,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Components_custom_admin_views/HtmlView.php b/admin/src/View/Components_custom_admin_views/HtmlView.php index 1072f3c2a..36da01d3c 100644 --- a/admin/src/View/Components_custom_admin_views/HtmlView.php +++ b/admin/src/View/Components_custom_admin_views/HtmlView.php @@ -36,6 +36,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Components_dashboard/HtmlView.php b/admin/src/View/Components_dashboard/HtmlView.php index ab4c6de40..60b977b4f 100644 --- a/admin/src/View/Components_dashboard/HtmlView.php +++ b/admin/src/View/Components_dashboard/HtmlView.php @@ -36,6 +36,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Components_files_folders/HtmlView.php b/admin/src/View/Components_files_folders/HtmlView.php index 99f17149a..edbddc6fc 100644 --- a/admin/src/View/Components_files_folders/HtmlView.php +++ b/admin/src/View/Components_files_folders/HtmlView.php @@ -36,6 +36,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Components_modules/HtmlView.php b/admin/src/View/Components_modules/HtmlView.php index de9a6339f..93a967b31 100644 --- a/admin/src/View/Components_modules/HtmlView.php +++ b/admin/src/View/Components_modules/HtmlView.php @@ -36,6 +36,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Components_mysql_tweaks/HtmlView.php b/admin/src/View/Components_mysql_tweaks/HtmlView.php index b322a2ec2..fc8988716 100644 --- a/admin/src/View/Components_mysql_tweaks/HtmlView.php +++ b/admin/src/View/Components_mysql_tweaks/HtmlView.php @@ -36,6 +36,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Components_placeholders/HtmlView.php b/admin/src/View/Components_placeholders/HtmlView.php index 0c1ac94d6..7b7005d45 100644 --- a/admin/src/View/Components_placeholders/HtmlView.php +++ b/admin/src/View/Components_placeholders/HtmlView.php @@ -36,6 +36,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Components_plugins/HtmlView.php b/admin/src/View/Components_plugins/HtmlView.php index ac9c1869a..a93ee703b 100644 --- a/admin/src/View/Components_plugins/HtmlView.php +++ b/admin/src/View/Components_plugins/HtmlView.php @@ -36,6 +36,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Components_routers/HtmlView.php b/admin/src/View/Components_routers/HtmlView.php index 5c4dfd2f6..adf29e2c1 100644 --- a/admin/src/View/Components_routers/HtmlView.php +++ b/admin/src/View/Components_routers/HtmlView.php @@ -36,6 +36,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Components_site_views/HtmlView.php b/admin/src/View/Components_site_views/HtmlView.php index b1fc81191..818b463c3 100644 --- a/admin/src/View/Components_site_views/HtmlView.php +++ b/admin/src/View/Components_site_views/HtmlView.php @@ -36,6 +36,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Components_updates/HtmlView.php b/admin/src/View/Components_updates/HtmlView.php index 88e85c071..a3307dc08 100644 --- a/admin/src/View/Components_updates/HtmlView.php +++ b/admin/src/View/Components_updates/HtmlView.php @@ -36,6 +36,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Custom_admin_view/HtmlView.php b/admin/src/View/Custom_admin_view/HtmlView.php index 3f8064d0c..e5d452901 100644 --- a/admin/src/View/Custom_admin_view/HtmlView.php +++ b/admin/src/View/Custom_admin_view/HtmlView.php @@ -35,6 +35,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Custom_admin_views/HtmlView.php b/admin/src/View/Custom_admin_views/HtmlView.php index 9d93aab9d..1833d86c1 100644 --- a/admin/src/View/Custom_admin_views/HtmlView.php +++ b/admin/src/View/Custom_admin_views/HtmlView.php @@ -36,6 +36,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Custom_code/HtmlView.php b/admin/src/View/Custom_code/HtmlView.php index 217c9bf8e..af1550cff 100644 --- a/admin/src/View/Custom_code/HtmlView.php +++ b/admin/src/View/Custom_code/HtmlView.php @@ -35,6 +35,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Custom_codes/HtmlView.php b/admin/src/View/Custom_codes/HtmlView.php index b539f74ee..12a47e56d 100644 --- a/admin/src/View/Custom_codes/HtmlView.php +++ b/admin/src/View/Custom_codes/HtmlView.php @@ -36,6 +36,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Dynamic_get/HtmlView.php b/admin/src/View/Dynamic_get/HtmlView.php index 8297748aa..53dfd3439 100644 --- a/admin/src/View/Dynamic_get/HtmlView.php +++ b/admin/src/View/Dynamic_get/HtmlView.php @@ -35,6 +35,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Dynamic_gets/HtmlView.php b/admin/src/View/Dynamic_gets/HtmlView.php index bde63e625..4a600c773 100644 --- a/admin/src/View/Dynamic_gets/HtmlView.php +++ b/admin/src/View/Dynamic_gets/HtmlView.php @@ -36,6 +36,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Field/HtmlView.php b/admin/src/View/Field/HtmlView.php index 4265a5ba3..53853f879 100644 --- a/admin/src/View/Field/HtmlView.php +++ b/admin/src/View/Field/HtmlView.php @@ -35,6 +35,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Fields/HtmlView.php b/admin/src/View/Fields/HtmlView.php index cf0c2daac..4285fc598 100644 --- a/admin/src/View/Fields/HtmlView.php +++ b/admin/src/View/Fields/HtmlView.php @@ -36,6 +36,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Fieldtype/HtmlView.php b/admin/src/View/Fieldtype/HtmlView.php index dd61c940b..d2c7e96bc 100644 --- a/admin/src/View/Fieldtype/HtmlView.php +++ b/admin/src/View/Fieldtype/HtmlView.php @@ -35,6 +35,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Fieldtypes/HtmlView.php b/admin/src/View/Fieldtypes/HtmlView.php index 025669bad..9472ebfdc 100644 --- a/admin/src/View/Fieldtypes/HtmlView.php +++ b/admin/src/View/Fieldtypes/HtmlView.php @@ -36,6 +36,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Get_snippets/HtmlView.php b/admin/src/View/Get_snippets/HtmlView.php index 8495fbfaa..6752358a3 100644 --- a/admin/src/View/Get_snippets/HtmlView.php +++ b/admin/src/View/Get_snippets/HtmlView.php @@ -35,6 +35,7 @@ use Joomla\CMS\Session\Session; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** @@ -105,10 +106,10 @@ class HtmlView extends BaseHtmlView throw new \Exception(implode(PHP_EOL, $errors), 500); } - parent::display($tpl); - // Set the html view document stuff $this->_prepareDocument(); + + parent::display($tpl); } /** diff --git a/admin/src/View/Help_document/HtmlView.php b/admin/src/View/Help_document/HtmlView.php index 0ee12f66a..618e65eee 100644 --- a/admin/src/View/Help_document/HtmlView.php +++ b/admin/src/View/Help_document/HtmlView.php @@ -35,6 +35,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Help_documents/HtmlView.php b/admin/src/View/Help_documents/HtmlView.php index 3e314c634..30589f43d 100644 --- a/admin/src/View/Help_documents/HtmlView.php +++ b/admin/src/View/Help_documents/HtmlView.php @@ -36,6 +36,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Joomla_component/HtmlView.php b/admin/src/View/Joomla_component/HtmlView.php index b2a7f956c..3143046e2 100644 --- a/admin/src/View/Joomla_component/HtmlView.php +++ b/admin/src/View/Joomla_component/HtmlView.php @@ -35,6 +35,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Joomla_components/HtmlView.php b/admin/src/View/Joomla_components/HtmlView.php index a5b3a55d9..07a8cf0b4 100644 --- a/admin/src/View/Joomla_components/HtmlView.php +++ b/admin/src/View/Joomla_components/HtmlView.php @@ -36,6 +36,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Joomla_module/HtmlView.php b/admin/src/View/Joomla_module/HtmlView.php index 9126b4d75..a6b61bfc6 100644 --- a/admin/src/View/Joomla_module/HtmlView.php +++ b/admin/src/View/Joomla_module/HtmlView.php @@ -35,6 +35,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Joomla_module_files_folders_urls/HtmlView.php b/admin/src/View/Joomla_module_files_folders_urls/HtmlView.php index 074dc9f63..8d91f2208 100644 --- a/admin/src/View/Joomla_module_files_folders_urls/HtmlView.php +++ b/admin/src/View/Joomla_module_files_folders_urls/HtmlView.php @@ -35,6 +35,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Joomla_module_updates/HtmlView.php b/admin/src/View/Joomla_module_updates/HtmlView.php index 80807be8d..9d597269a 100644 --- a/admin/src/View/Joomla_module_updates/HtmlView.php +++ b/admin/src/View/Joomla_module_updates/HtmlView.php @@ -35,6 +35,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Joomla_modules/HtmlView.php b/admin/src/View/Joomla_modules/HtmlView.php index 8f8937fbc..a8c1cf54a 100644 --- a/admin/src/View/Joomla_modules/HtmlView.php +++ b/admin/src/View/Joomla_modules/HtmlView.php @@ -36,6 +36,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Joomla_modules_files_folders_urls/HtmlView.php b/admin/src/View/Joomla_modules_files_folders_urls/HtmlView.php index f9eb664aa..963843168 100644 --- a/admin/src/View/Joomla_modules_files_folders_urls/HtmlView.php +++ b/admin/src/View/Joomla_modules_files_folders_urls/HtmlView.php @@ -36,6 +36,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Joomla_modules_updates/HtmlView.php b/admin/src/View/Joomla_modules_updates/HtmlView.php index 1e133cd30..e058a3158 100644 --- a/admin/src/View/Joomla_modules_updates/HtmlView.php +++ b/admin/src/View/Joomla_modules_updates/HtmlView.php @@ -36,6 +36,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Joomla_plugin/HtmlView.php b/admin/src/View/Joomla_plugin/HtmlView.php index d09cdb5f3..a9543b4f1 100644 --- a/admin/src/View/Joomla_plugin/HtmlView.php +++ b/admin/src/View/Joomla_plugin/HtmlView.php @@ -36,6 +36,7 @@ use VDM\Joomla\Utilities\ArrayHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Joomla_plugin_files_folders_urls/HtmlView.php b/admin/src/View/Joomla_plugin_files_folders_urls/HtmlView.php index 5709badca..c683f3bb2 100644 --- a/admin/src/View/Joomla_plugin_files_folders_urls/HtmlView.php +++ b/admin/src/View/Joomla_plugin_files_folders_urls/HtmlView.php @@ -35,6 +35,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Joomla_plugin_group/HtmlView.php b/admin/src/View/Joomla_plugin_group/HtmlView.php index d385e2b38..5aa717093 100644 --- a/admin/src/View/Joomla_plugin_group/HtmlView.php +++ b/admin/src/View/Joomla_plugin_group/HtmlView.php @@ -35,6 +35,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Joomla_plugin_groups/HtmlView.php b/admin/src/View/Joomla_plugin_groups/HtmlView.php index f762782e1..6ecaacfe3 100644 --- a/admin/src/View/Joomla_plugin_groups/HtmlView.php +++ b/admin/src/View/Joomla_plugin_groups/HtmlView.php @@ -36,6 +36,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Joomla_plugin_updates/HtmlView.php b/admin/src/View/Joomla_plugin_updates/HtmlView.php index 6da4db967..40b4e43d4 100644 --- a/admin/src/View/Joomla_plugin_updates/HtmlView.php +++ b/admin/src/View/Joomla_plugin_updates/HtmlView.php @@ -35,6 +35,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Joomla_plugins/HtmlView.php b/admin/src/View/Joomla_plugins/HtmlView.php index b32977932..400129bc8 100644 --- a/admin/src/View/Joomla_plugins/HtmlView.php +++ b/admin/src/View/Joomla_plugins/HtmlView.php @@ -36,6 +36,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Joomla_plugins_files_folders_urls/HtmlView.php b/admin/src/View/Joomla_plugins_files_folders_urls/HtmlView.php index 32b808b7a..8c4cff670 100644 --- a/admin/src/View/Joomla_plugins_files_folders_urls/HtmlView.php +++ b/admin/src/View/Joomla_plugins_files_folders_urls/HtmlView.php @@ -36,6 +36,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Joomla_plugins_updates/HtmlView.php b/admin/src/View/Joomla_plugins_updates/HtmlView.php index 3060d1a9d..2fd8c0089 100644 --- a/admin/src/View/Joomla_plugins_updates/HtmlView.php +++ b/admin/src/View/Joomla_plugins_updates/HtmlView.php @@ -36,6 +36,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Joomla_power/HtmlView.php b/admin/src/View/Joomla_power/HtmlView.php index 28e6c0319..17862df7c 100644 --- a/admin/src/View/Joomla_power/HtmlView.php +++ b/admin/src/View/Joomla_power/HtmlView.php @@ -35,6 +35,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Joomla_powers/HtmlView.php b/admin/src/View/Joomla_powers/HtmlView.php index 4f77a6754..a1b464027 100644 --- a/admin/src/View/Joomla_powers/HtmlView.php +++ b/admin/src/View/Joomla_powers/HtmlView.php @@ -36,6 +36,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Language/HtmlView.php b/admin/src/View/Language/HtmlView.php index 880ab7ab7..1571077e7 100644 --- a/admin/src/View/Language/HtmlView.php +++ b/admin/src/View/Language/HtmlView.php @@ -35,6 +35,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Language_translation/HtmlView.php b/admin/src/View/Language_translation/HtmlView.php index 45aad220a..f105991c3 100644 --- a/admin/src/View/Language_translation/HtmlView.php +++ b/admin/src/View/Language_translation/HtmlView.php @@ -35,6 +35,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Language_translations/HtmlView.php b/admin/src/View/Language_translations/HtmlView.php index f5581ea48..b189a7c39 100644 --- a/admin/src/View/Language_translations/HtmlView.php +++ b/admin/src/View/Language_translations/HtmlView.php @@ -36,6 +36,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Languages/HtmlView.php b/admin/src/View/Languages/HtmlView.php index 99dc48d33..4b1931f0d 100644 --- a/admin/src/View/Languages/HtmlView.php +++ b/admin/src/View/Languages/HtmlView.php @@ -36,6 +36,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Layout/HtmlView.php b/admin/src/View/Layout/HtmlView.php index 6016c8339..45ef83f64 100644 --- a/admin/src/View/Layout/HtmlView.php +++ b/admin/src/View/Layout/HtmlView.php @@ -35,6 +35,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Layouts/HtmlView.php b/admin/src/View/Layouts/HtmlView.php index 8f0a66d9f..7775fd2dd 100644 --- a/admin/src/View/Layouts/HtmlView.php +++ b/admin/src/View/Layouts/HtmlView.php @@ -36,6 +36,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Libraries/HtmlView.php b/admin/src/View/Libraries/HtmlView.php index ab964bf4a..ee9c9ac1e 100644 --- a/admin/src/View/Libraries/HtmlView.php +++ b/admin/src/View/Libraries/HtmlView.php @@ -36,6 +36,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Libraries_config/HtmlView.php b/admin/src/View/Libraries_config/HtmlView.php index 154c20a07..91a2824b7 100644 --- a/admin/src/View/Libraries_config/HtmlView.php +++ b/admin/src/View/Libraries_config/HtmlView.php @@ -36,6 +36,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Libraries_files_folders_urls/HtmlView.php b/admin/src/View/Libraries_files_folders_urls/HtmlView.php index 4f25ed4e2..238e1cdf7 100644 --- a/admin/src/View/Libraries_files_folders_urls/HtmlView.php +++ b/admin/src/View/Libraries_files_folders_urls/HtmlView.php @@ -36,6 +36,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Library/HtmlView.php b/admin/src/View/Library/HtmlView.php index 5271a5a3a..2b92be369 100644 --- a/admin/src/View/Library/HtmlView.php +++ b/admin/src/View/Library/HtmlView.php @@ -35,6 +35,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Library_config/HtmlView.php b/admin/src/View/Library_config/HtmlView.php index d05d3c8ec..5ae0d4c31 100644 --- a/admin/src/View/Library_config/HtmlView.php +++ b/admin/src/View/Library_config/HtmlView.php @@ -35,6 +35,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Library_files_folders_urls/HtmlView.php b/admin/src/View/Library_files_folders_urls/HtmlView.php index 5f2ed6671..fe0a1d098 100644 --- a/admin/src/View/Library_files_folders_urls/HtmlView.php +++ b/admin/src/View/Library_files_folders_urls/HtmlView.php @@ -35,6 +35,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Placeholder/HtmlView.php b/admin/src/View/Placeholder/HtmlView.php index aaa276b6e..09874423b 100644 --- a/admin/src/View/Placeholder/HtmlView.php +++ b/admin/src/View/Placeholder/HtmlView.php @@ -35,6 +35,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Placeholders/HtmlView.php b/admin/src/View/Placeholders/HtmlView.php index 4118347fe..5c1df2527 100644 --- a/admin/src/View/Placeholders/HtmlView.php +++ b/admin/src/View/Placeholders/HtmlView.php @@ -36,6 +36,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Power/HtmlView.php b/admin/src/View/Power/HtmlView.php index 331732f81..071251b1c 100644 --- a/admin/src/View/Power/HtmlView.php +++ b/admin/src/View/Power/HtmlView.php @@ -35,6 +35,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Powers/HtmlView.php b/admin/src/View/Powers/HtmlView.php index 0e270d045..cbc313423 100644 --- a/admin/src/View/Powers/HtmlView.php +++ b/admin/src/View/Powers/HtmlView.php @@ -36,6 +36,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Repositories/HtmlView.php b/admin/src/View/Repositories/HtmlView.php index bf5c6916e..89db0b615 100644 --- a/admin/src/View/Repositories/HtmlView.php +++ b/admin/src/View/Repositories/HtmlView.php @@ -36,6 +36,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Repository/HtmlView.php b/admin/src/View/Repository/HtmlView.php index fb3ccade4..33ab9dc17 100644 --- a/admin/src/View/Repository/HtmlView.php +++ b/admin/src/View/Repository/HtmlView.php @@ -35,6 +35,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Search/HtmlView.php b/admin/src/View/Search/HtmlView.php index e829b526f..4de45845f 100644 --- a/admin/src/View/Search/HtmlView.php +++ b/admin/src/View/Search/HtmlView.php @@ -37,6 +37,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** @@ -115,10 +116,10 @@ class HtmlView extends BaseHtmlView throw new \Exception(implode(PHP_EOL, $errors), 500); } - parent::display($tpl); - // Set the html view document stuff $this->_prepareDocument(); + + parent::display($tpl); } /** diff --git a/admin/src/View/Server/HtmlView.php b/admin/src/View/Server/HtmlView.php index bc9643855..fe1794776 100644 --- a/admin/src/View/Server/HtmlView.php +++ b/admin/src/View/Server/HtmlView.php @@ -35,6 +35,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Servers/HtmlView.php b/admin/src/View/Servers/HtmlView.php index 208d43357..f65632293 100644 --- a/admin/src/View/Servers/HtmlView.php +++ b/admin/src/View/Servers/HtmlView.php @@ -36,6 +36,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Site_view/HtmlView.php b/admin/src/View/Site_view/HtmlView.php index 45e547656..a3c9fe8c3 100644 --- a/admin/src/View/Site_view/HtmlView.php +++ b/admin/src/View/Site_view/HtmlView.php @@ -35,6 +35,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Site_views/HtmlView.php b/admin/src/View/Site_views/HtmlView.php index 9958c8ef7..903b3c023 100644 --- a/admin/src/View/Site_views/HtmlView.php +++ b/admin/src/View/Site_views/HtmlView.php @@ -36,6 +36,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Snippet/HtmlView.php b/admin/src/View/Snippet/HtmlView.php index 5116a29bb..647a270b6 100644 --- a/admin/src/View/Snippet/HtmlView.php +++ b/admin/src/View/Snippet/HtmlView.php @@ -35,6 +35,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Snippet_type/HtmlView.php b/admin/src/View/Snippet_type/HtmlView.php index 0c949f413..632e0ebc8 100644 --- a/admin/src/View/Snippet_type/HtmlView.php +++ b/admin/src/View/Snippet_type/HtmlView.php @@ -35,6 +35,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Snippet_types/HtmlView.php b/admin/src/View/Snippet_types/HtmlView.php index 6f22c04ad..a2b8ca7e5 100644 --- a/admin/src/View/Snippet_types/HtmlView.php +++ b/admin/src/View/Snippet_types/HtmlView.php @@ -36,6 +36,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Snippets/HtmlView.php b/admin/src/View/Snippets/HtmlView.php index 125009ffc..a054daee9 100644 --- a/admin/src/View/Snippets/HtmlView.php +++ b/admin/src/View/Snippets/HtmlView.php @@ -36,6 +36,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Template/HtmlView.php b/admin/src/View/Template/HtmlView.php index fdd58dbc9..5385bf0db 100644 --- a/admin/src/View/Template/HtmlView.php +++ b/admin/src/View/Template/HtmlView.php @@ -35,6 +35,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Templates/HtmlView.php b/admin/src/View/Templates/HtmlView.php index 828ff7533..8fb4cf4ae 100644 --- a/admin/src/View/Templates/HtmlView.php +++ b/admin/src/View/Templates/HtmlView.php @@ -36,6 +36,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Validation_rule/HtmlView.php b/admin/src/View/Validation_rule/HtmlView.php index 46b34a952..47713ebff 100644 --- a/admin/src/View/Validation_rule/HtmlView.php +++ b/admin/src/View/Validation_rule/HtmlView.php @@ -35,6 +35,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/admin/src/View/Validation_rules/HtmlView.php b/admin/src/View/Validation_rules/HtmlView.php index 6753bf6be..f014b8dba 100644 --- a/admin/src/View/Validation_rules/HtmlView.php +++ b/admin/src/View/Validation_rules/HtmlView.php @@ -36,6 +36,7 @@ use VDM\Joomla\Utilities\StringHelper; * * @since 1.6 */ +#[AllowDynamicProperties] class HtmlView extends BaseHtmlView { /** diff --git a/componentbuilder.xml b/componentbuilder.xml index 425858b28..a474e4a6c 100644 --- a/componentbuilder.xml +++ b/componentbuilder.xml @@ -1,15 +1,15 @@ COM_COMPONENTBUILDER - 20th September, 2024 + 29th September, 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 - 4.0.3 + 4.0.4-alpha1 Component Builder (v.4.0.3) +

Component Builder (v.4.0.4-alpha1)

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 1ab6f1fb5..dd34b44e6 100644 --- a/componentbuilder_update_server.xml +++ b/componentbuilder_update_server.xml @@ -89,4 +89,22 @@ https://dev.vdm.io + + Component Builder + Builds Complex Joomla Components + pkg_component_builder + package + site + 4.0.4-alpha1 + https://dev.vdm.io + + https://git.vdm.dev/api/v1/repos/joomla/pkg-component-builder/archive/v4.0.4-alpha1.zip + + + alpha + + Llewellyn van der Merwe + https://dev.vdm.io + + \ No newline at end of file diff --git a/libraries/vendor_jcb/VDM.Joomla.Gitea/src/Factory.php b/libraries/vendor_jcb/VDM.Joomla.Gitea/src/Factory.php index 1376a814d..4d8b09dc1 100644 --- a/libraries/vendor_jcb/VDM.Joomla.Gitea/src/Factory.php +++ b/libraries/vendor_jcb/VDM.Joomla.Gitea/src/Factory.php @@ -35,6 +35,14 @@ use VDM\Joomla\Abstraction\Factory as ExtendingFactory; */ abstract class Factory extends ExtendingFactory implements FactoryInterface { + /** + * Package Container + * + * @var Container|null + * @since 5.0.3 + **/ + protected static ?Container $container = null; + /** * Create a container object * diff --git a/libraries/vendor_jcb/VDM.Joomla.Openai/src/Factory.php b/libraries/vendor_jcb/VDM.Joomla.Openai/src/Factory.php index 203712e80..c8ee9f142 100644 --- a/libraries/vendor_jcb/VDM.Joomla.Openai/src/Factory.php +++ b/libraries/vendor_jcb/VDM.Joomla.Openai/src/Factory.php @@ -26,6 +26,14 @@ use VDM\Joomla\Abstraction\Factory as ExtendingFactory; */ abstract class Factory extends ExtendingFactory implements FactoryInterface { + /** + * Package Container + * + * @var Container|null + * @since 5.0.3 + **/ + protected static ?Container $container = null; + /** * Create a container object * diff --git a/libraries/vendor_jcb/VDM.Joomla/src/Abstraction/Factory.php b/libraries/vendor_jcb/VDM.Joomla/src/Abstraction/Factory.php index a3e8c3cbd..20f397db0 100644 --- a/libraries/vendor_jcb/VDM.Joomla/src/Abstraction/Factory.php +++ b/libraries/vendor_jcb/VDM.Joomla/src/Abstraction/Factory.php @@ -35,14 +35,6 @@ use VDM\Joomla\Interfaces\FactoryInterface; **/ abstract class Factory implements FactoryInterface { - /** - * Global Package Container - * - * @var Container|null - * @since 0.0.0 - **/ - protected static ?Container $container = null; - /** * Get any class from the package container * diff --git a/libraries/vendor_jcb/VDM.Joomla/src/Abstraction/Schema.php b/libraries/vendor_jcb/VDM.Joomla/src/Abstraction/Schema.php index 0ad261c6c..18e7e02ce 100644 --- a/libraries/vendor_jcb/VDM.Joomla/src/Abstraction/Schema.php +++ b/libraries/vendor_jcb/VDM.Joomla/src/Abstraction/Schema.php @@ -579,41 +579,57 @@ abstract class Schema implements SchemaInterface */ protected function isDataTypeChangeSignificant(string $currentType, string $expectedType): bool { - // Normalize both input types to lowercase for case-insensitive comparison - $currentType = strtolower($currentType); - $expectedType = strtolower($expectedType); + // Normalize both input types to lowercase and remove extra spaces for comparison + $currentType = strtolower(trim($currentType)); + $expectedType = strtolower(trim($expectedType)); - // Regex to extract the base data type and numeric parameters with named groups - $typePattern = '/^(?\w+)(\((?\d+(,\d+)?)\))?/'; + // Regex to extract the base data type and numeric parameters (size and precision) with named groups + $typePattern = '/^(?\w+)(\((?\s*\d+\s*(,\s*\d+\s*)?)\))?/'; // Match types and parameters preg_match($typePattern, $currentType, $currentMatches); preg_match($typePattern, $expectedType, $expectedMatches); - // Compare base types + // Compare base types (datatype without size/precision) if ($currentMatches['datatype'] !== $expectedMatches['datatype']) { return true; // Base types differ } - // Define types where size and other modifiers are irrelevant + // Define numeric types where display width is irrelevant but precision (for DECIMAL) matters $sizeIrrelevantTypes = [ - 'int', 'tinyint', 'smallint', 'mediumint', 'bigint', - 'float', 'double', 'decimal', 'numeric' // Numeric types where display width is irrelevant + 'int', 'tinyint', 'smallint', 'mediumint', 'bigint', + 'float', 'double' // Numeric types where display width is irrelevant ]; - // If the type is not in the size irrelevant list, compare full definitions - if (!in_array($currentMatches['datatype'], $sizeIrrelevantTypes)) + // Handle DECIMAL and NUMERIC types explicitly (precision and scale are relevant) + if (in_array($currentMatches['datatype'], ['decimal', 'numeric'])) { - return $currentType !== $expectedType; // Use full definition for types where size matters + // Extract precision and scale (if present) + if ($currentMatches['params'] !== $expectedMatches['params']) + { + return true; // Precision or scale has changed + } } - // For size irrelevant types, only compare base type, ignoring size and unsigned - $currentBaseType = preg_replace('/\(\d+(,\d+)?\)|unsigned/', '', $currentType); - $expectedBaseType = preg_replace('/\(\d+(,\d+)?\)|unsigned/', '', $expectedType); + // Check if the type is in the list of size-irrelevant types + if (in_array($currentMatches['datatype'], $sizeIrrelevantTypes)) + { + // Remove irrelevant parts like display width and "unsigned" for size-irrelevant types, including extra spaces + $currentBaseType = preg_replace('/\s*\(\s*\d+(\s*,\s*\d+)?\s*\)\s*|\s*unsigned\s*/', '', $currentType); + $expectedBaseType = preg_replace('/\s*\(\s*\d+(\s*,\s*\d+)?\s*\)\s*|\s*unsigned\s*/', '', $expectedType); - // Perform a final comparison for numeric types ignoring size - return $currentBaseType !== $expectedBaseType; + // Compare base types after normalization + return $currentBaseType !== $expectedBaseType; + } + + // For types where size is relevant (e.g., VARCHAR, CHAR, etc.), compare the full definitions + // Normalize size parameters by removing extra spaces around commas, e.g., "decimal(5 , 2)" -> "decimal(5,2)" + $normalizedCurrentType = preg_replace('/\s*,\s*/', ',', $currentType); + $normalizedExpectedType = preg_replace('/\s*,\s*/', ',', $expectedType); + + // Perform a full comparison for types where size matters + return $normalizedCurrentType !== $normalizedExpectedType; } /** @@ -624,7 +640,7 @@ abstract class Schema implements SchemaInterface * @param mixed $currentDefault Current default value. * @param mixed $newDefault The new default value to be set. * - * @return void + * @return bool True if update was successful, false if no update was needed. * @since 3.2.1 * @throws \Exception If there is an error updating column defaults. */ @@ -640,13 +656,38 @@ abstract class Schema implements SchemaInterface $updateTable = 'UPDATE ' . $this->db->quoteName($this->getTable($table)); $dbField = $this->db->quoteName($column); - // Update SQL to set new default on existing rows where the default is currently the old default - $sql = $updateTable . " SET $dbField = $sqlDefault WHERE $dbField IS NULL OR $dbField = ''"; + if (isset($this->columns[$column])) + { + $fieldType = strtoupper($this->columns[$column]->Type); - // Execute the update - $this->db->setQuery($sql); - return $this->db->execute(); - } catch (\Exception $e) { + // If the field is numeric, avoid comparing with empty string + if (strpos($fieldType, 'INT') !== false || + strpos($fieldType, 'FLOAT') !== false || + strpos($fieldType, 'DOUBLE') !== false || + strpos($fieldType, 'DECIMAL') !== false) + { + $whereCondition = "$dbField IS NULL OR $dbField = 0"; + } + else + { + // Default condition for non-numeric fields + $whereCondition = "$dbField IS NULL OR $dbField = ''"; + } + + // Update SQL to set new default on existing rows where the default is currently the old default + $sql = $updateTable . " SET $dbField = $sqlDefault WHERE $whereCondition"; + + // Execute the update + $this->db->setQuery($sql); + return $this->db->execute(); + } + else + { + throw new \Exception("Error: Column $column does not exist in table $table."); + } + } + catch (\Exception $e) + { throw new \Exception("Error: failed to update ($column) column defaults in $table table. " . $e->getMessage()); } } diff --git a/libraries/vendor_jcb/VDM.Joomla/src/Componentbuilder/Compiler/Factory.php b/libraries/vendor_jcb/VDM.Joomla/src/Componentbuilder/Compiler/Factory.php index eae8ca031..9184813d4 100644 --- a/libraries/vendor_jcb/VDM.Joomla/src/Componentbuilder/Compiler/Factory.php +++ b/libraries/vendor_jcb/VDM.Joomla/src/Componentbuilder/Compiler/Factory.php @@ -68,6 +68,14 @@ use VDM\Joomla\Abstraction\Factory as ExtendingFactory; */ abstract class Factory extends ExtendingFactory implements FactoryInterface { + /** + * Package Container + * + * @var Container|null + * @since 5.0.3 + **/ + protected static ?Container $container = null; + /** * Current Joomla Version Being Build * diff --git a/libraries/vendor_jcb/VDM.Joomla/src/Componentbuilder/Compiler/Helper/Interpretation.php b/libraries/vendor_jcb/VDM.Joomla/src/Componentbuilder/Compiler/Helper/Interpretation.php index 2f26d8a17..49acad481 100644 --- a/libraries/vendor_jcb/VDM.Joomla/src/Componentbuilder/Compiler/Helper/Interpretation.php +++ b/libraries/vendor_jcb/VDM.Joomla/src/Componentbuilder/Compiler/Helper/Interpretation.php @@ -4781,8 +4781,6 @@ class Interpretation extends Fields } $method .= PHP_EOL . Indent::_(2) . "}"; } - $method .= PHP_EOL . PHP_EOL . Indent::_(2) - . "parent::display(\$tpl);"; } return $method; diff --git a/libraries/vendor_jcb/VDM.Joomla/src/Componentbuilder/Fieldtype/Factory.php b/libraries/vendor_jcb/VDM.Joomla/src/Componentbuilder/Fieldtype/Factory.php index 249140f94..7d5a35e53 100644 --- a/libraries/vendor_jcb/VDM.Joomla/src/Componentbuilder/Fieldtype/Factory.php +++ b/libraries/vendor_jcb/VDM.Joomla/src/Componentbuilder/Fieldtype/Factory.php @@ -31,6 +31,14 @@ use VDM\Joomla\Abstraction\Factory as ExtendingFactory; */ abstract class Factory extends ExtendingFactory implements FactoryInterface { + /** + * Package Container + * + * @var Container|null + * @since 5.0.3 + **/ + protected static ?Container $container = null; + /** * Create a container object * diff --git a/libraries/vendor_jcb/VDM.Joomla/src/Componentbuilder/File/Factory.php b/libraries/vendor_jcb/VDM.Joomla/src/Componentbuilder/File/Factory.php index 85e7b436c..5769a6c49 100644 --- a/libraries/vendor_jcb/VDM.Joomla/src/Componentbuilder/File/Factory.php +++ b/libraries/vendor_jcb/VDM.Joomla/src/Componentbuilder/File/Factory.php @@ -29,6 +29,14 @@ use VDM\Joomla\Abstraction\Factory as ExtendingFactory; */ abstract class Factory extends ExtendingFactory implements FactoryInterface { + /** + * Package Container + * + * @var Container|null + * @since 5.0.3 + **/ + protected static ?Container $container = null; + /** * Create a container object * diff --git a/libraries/vendor_jcb/VDM.Joomla/src/Componentbuilder/JoomlaPower/Factory.php b/libraries/vendor_jcb/VDM.Joomla/src/Componentbuilder/JoomlaPower/Factory.php index fabd0f5e0..0ced36851 100644 --- a/libraries/vendor_jcb/VDM.Joomla/src/Componentbuilder/JoomlaPower/Factory.php +++ b/libraries/vendor_jcb/VDM.Joomla/src/Componentbuilder/JoomlaPower/Factory.php @@ -31,6 +31,14 @@ use VDM\Joomla\Abstraction\Factory as ExtendingFactory; */ abstract class Factory extends ExtendingFactory implements FactoryInterface { + /** + * Package Container + * + * @var Container|null + * @since 5.0.3 + **/ + protected static ?Container $container = null; + /** * Create a container object * diff --git a/libraries/vendor_jcb/VDM.Joomla/src/Componentbuilder/Package/Factory.php b/libraries/vendor_jcb/VDM.Joomla/src/Componentbuilder/Package/Factory.php index 58a3468ca..1a1f7dc43 100644 --- a/libraries/vendor_jcb/VDM.Joomla/src/Componentbuilder/Package/Factory.php +++ b/libraries/vendor_jcb/VDM.Joomla/src/Componentbuilder/Package/Factory.php @@ -28,6 +28,14 @@ use VDM\Joomla\Abstraction\Factory as ExtendingFactory; */ abstract class Factory extends ExtendingFactory implements FactoryInterface { + /** + * Package Container + * + * @var Container|null + * @since 5.0.3 + **/ + protected static ?Container $container = null; + /** * Create a container object * diff --git a/libraries/vendor_jcb/VDM.Joomla/src/Componentbuilder/Power/Factory.php b/libraries/vendor_jcb/VDM.Joomla/src/Componentbuilder/Power/Factory.php index c5b08cd7f..cea2a0533 100644 --- a/libraries/vendor_jcb/VDM.Joomla/src/Componentbuilder/Power/Factory.php +++ b/libraries/vendor_jcb/VDM.Joomla/src/Componentbuilder/Power/Factory.php @@ -32,6 +32,14 @@ use VDM\Joomla\Abstraction\Factory as ExtendingFactory; */ abstract class Factory extends ExtendingFactory implements FactoryInterface { + /** + * Package Container + * + * @var Container|null + * @since 5.0.3 + **/ + protected static ?Container $container = null; + /** * Create a container object * diff --git a/libraries/vendor_jcb/VDM.Joomla/src/Componentbuilder/Search/Factory.php b/libraries/vendor_jcb/VDM.Joomla/src/Componentbuilder/Search/Factory.php index 46223d162..5f14fea5b 100644 --- a/libraries/vendor_jcb/VDM.Joomla/src/Componentbuilder/Search/Factory.php +++ b/libraries/vendor_jcb/VDM.Joomla/src/Componentbuilder/Search/Factory.php @@ -28,6 +28,14 @@ use VDM\Joomla\Abstraction\Factory as ExtendingFactory; */ abstract class Factory extends ExtendingFactory implements FactoryInterface { + /** + * Package Container + * + * @var Container|null + * @since 5.0.3 + **/ + protected static ?Container $container = null; + /** * Create a container object * diff --git a/libraries/vendor_jcb/VDM.Joomla/src/Data/Factory.php b/libraries/vendor_jcb/VDM.Joomla/src/Data/Factory.php index 25bb3f807..68d1393a5 100644 --- a/libraries/vendor_jcb/VDM.Joomla/src/Data/Factory.php +++ b/libraries/vendor_jcb/VDM.Joomla/src/Data/Factory.php @@ -28,6 +28,14 @@ use VDM\Joomla\Abstraction\Factory as ExtendingFactory; */ abstract class Factory extends ExtendingFactory implements FactoryInterface { + /** + * Package Container + * + * @var Container|null + * @since 5.0.3 + **/ + protected static ?Container $container = null; + /** * Create a container object * diff --git a/libraries/vendor_jcb/VDM.Joomla/src/Data/MultiSubform.php b/libraries/vendor_jcb/VDM.Joomla/src/Data/MultiSubform.php index 4b801654e..d3551c678 100644 --- a/libraries/vendor_jcb/VDM.Joomla/src/Data/MultiSubform.php +++ b/libraries/vendor_jcb/VDM.Joomla/src/Data/MultiSubform.php @@ -130,6 +130,13 @@ final class MultiSubform implements MultiSubformInterface { $items = []; // will delete all existing linked items :( not ideal, but real } + else + { + // make sure the sub-subform:linkValue[data:guid] + // is set with the needed key if possible + // this ensures that new sub-subform data is correctly linked + $this->prepLinkValue($items, $setMap); + } // Save the core data if (!$this->setSubformData($items, $setMap['_core'])) @@ -515,6 +522,45 @@ final class MultiSubform implements MultiSubformInterface } return true; // All checks passed + } + + /** + * Prepare the linkValue needed by the sub-subform + * + * @param array $subform The subform data + * @param array $setMap Mapping data for processing subforms + * + * @return void + * @since 5.0.3 + */ + private function prepLinkValue(array &$subform, array $setMap): void + { + $code_table = null; + foreach ($setMap as $key => $map) + { + if ($key === '_core') + { + $code_table = $map['table'] ?? null; + continue; + } + + if (strpos($map['linkValue'], ':') !== false) + { + [$table, $field] = explode(':', $map['linkValue']); + if ($code_table !== null && + 'guid' === $field && + $table === $code_table) + { + foreach ($subform as &$row) + { + if (empty($row['guid'])) + { + $row['guid'] = $this->subform->table($table)->getGuid($field); + } + } + } + } + } } }