Release of v4.0.1-alpha1

Fix auto build from SQL in Joomla 4.
This commit is contained in:
Robot 2024-05-13 12:22:56 +02:00
parent a1c04bde51
commit e6a2d4a404
Signed by: Robot
GPG Key ID: 14DECD44E7E1BB95
9 changed files with 99 additions and 14 deletions

View File

@ -1,3 +1,7 @@
# v4.0.1-alpha1
- Fix auto build from SQL in Joomla 4.
# v4.0.0
- Fix the plug-in installer script builder bug #1067

View File

@ -3210,7 +3210,7 @@ class Com_ComponentbuilderInstallerScript implements InstallerScriptInterface
echo '<div style="background-color: #fff;" class="alert alert-info"><a target="_blank" href="https://dev.vdm.io" title="Component Builder">
<img src="components/com_componentbuilder/assets/images/vdm-component.jpg"/>
</a>
<h3>Upgrade to Version 4.0.0 Was Successful! Let us know if anything is not working as expected.</h3></div>';
<h3>Upgrade to Version 4.0.1-alpha1 Was Successful! Let us know if anything is not working as expected.</h3></div>';
// Add/Update component in the action logs extensions table.
$this->setActionLogsExtensions();

View File

@ -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.0) 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.1-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*: 10th May, 2024
+ *Version*: 4.0.0
+ *Last Build*: 13th May, 2024
+ *Version*: 4.0.1-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*: **746165**
+ *Line count*: **746250**
+ *Field count*: **2097**
+ *File count*: **5286**
+ *File count*: **5287**
+ *Folder count*: **528**
> This **component** was build with a [Joomla](https://extensions.joomla.org/extension/component-builder/) [Automated Component Builder](https://www.joomlacomponentbuilder.com).

View File

@ -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.0) 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.1-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*: 10th May, 2024
+ *Version*: 4.0.0
+ *Last Build*: 13th May, 2024
+ *Version*: 4.0.1-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*: **746165**
+ *Line count*: **746250**
+ *Field count*: **2097**
+ *File count*: **5286**
+ *File count*: **5287**
+ *Folder count*: **528**
> This **component** was build with a [Joomla](https://extensions.joomla.org/extension/component-builder/) [Automated Component Builder](https://www.joomlacomponentbuilder.com).

View File

@ -0,0 +1 @@

View File

@ -1,15 +1,15 @@
<?xml version="1.0" encoding="utf-8"?>
<extension type="component" version="4.0" method="upgrade">
<name>COM_COMPONENTBUILDER</name>
<creationDate>10th May, 2024</creationDate>
<creationDate>13th May, 2024</creationDate>
<author>Llewellyn van der Merwe</author>
<authorEmail>joomla@vdm.io</authorEmail>
<authorUrl>https://dev.vdm.io</authorUrl>
<copyright>Copyright (C) 2015 Vast Development Method. All rights reserved.</copyright>
<license>GNU General Public License version 2 or later; see LICENSE.txt</license>
<version>4.0.0</version>
<version>4.0.1-alpha1</version>
<description><![CDATA[
<h1>Component Builder (v.4.0.0)</h1>
<h1>Component Builder (v.4.0.1-alpha1)</h1>
<div style="clear: both;"></div>
<p>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.

View File

@ -35,4 +35,22 @@
<maintainerurl>https://dev.vdm.io</maintainerurl>
<targetplatform name="joomla" version="4\.[01234]"/>
</update>
<update>
<name>Component Builder</name>
<description>Builds Complex Joomla Components</description>
<element>pkg_component_builder</element>
<type>package</type>
<client>site</client>
<version>4.0.1-alpha1</version>
<infourl title="Component Builder!">https://dev.vdm.io</infourl>
<downloads>
<downloadurl type="full" format="zip">https://git.vdm.dev/api/v1/repos/joomla/pkg-component-builder/archive/v4.0.1-alpha1.zip</downloadurl>
</downloads>
<tags>
<tag>alpha</tag>
</tags>
<maintainer>Llewellyn van der Merwe</maintainer>
<maintainerurl>https://dev.vdm.io</maintainerurl>
<targetplatform name="joomla" version="4\.[01234]"/>
</update>
</updates>

View File

@ -109,6 +109,49 @@ class Builder extends Mapping
$object->created = $this->today;
$object->created_by = $this->user->id;
$object->published = 1;
// empty values for sql sake
$object->addlinked_views = '';
$object->addtables = '';
$object->addtabs = '';
$object->ajax_input = '';
$object->css_view = '';
$object->css_views = '';
$object->custom_button = '';
$object->html_import_view = '';
$object->javascript_view_file = '';
$object->javascript_view_footer = '';
$object->javascript_views_file = '';
$object->javascript_views_footer = '';
$object->php_after_cancel = '';
$object->php_after_delete = '';
$object->php_after_publish = '';
$object->php_ajaxmethod = '';
$object->php_allowadd = '';
$object->php_allowedit = '';
$object->php_batchcopy = '';
$object->php_batchmove = '';
$object->php_before_cancel = '';
$object->php_before_delete = '';
$object->php_before_publish = '';
$object->php_before_save = '';
$object->php_controller = '';
$object->php_controller_list = '';
$object->php_document = '';
$object->php_getform = '';
$object->php_getitem = '';
$object->php_getitems = '';
$object->php_getitems_after_all = '';
$object->php_getlistquery = '';
$object->php_import = '';
$object->php_import_display = '';
$object->php_import_ext = '';
$object->php_import_headers = '';
$object->php_import_save = '';
$object->php_import_setdata = '';
$object->php_model = '';
$object->php_model_list = '';
$object->php_postsavehook = '';
$object->php_save = '';
// add to data base
if ($this->db->insertObject('#__componentbuilder_admin_view', $object))
{
@ -202,6 +245,15 @@ class Builder extends Mapping
$object->published = 1;
$object->store = 0;
$object->xml = $this->setFieldXML($field, $fieldType);
// empty values for sql sake
$object->css_view = '';
$object->css_views = '';
$object->initiator_on_get_model = '';
$object->initiator_on_save_model = '';
$object->on_get_model_field = '';
$object->on_save_model_field = '';
$object->javascript_view_footer = '';
$object->javascript_views_footer = '';
// add to data base
if ($this->db->insertObject('#__componentbuilder_field', $object))
{

View File

@ -246,6 +246,16 @@ class Mapping
// get table name
$tableName = GetHelper::between($sql, "'#__", "'");
}
elseif (strpos($sql, "CREATE TABLE `") !== false)
{
// get table name
$tableName = GetHelper::between($sql, "CREATE TABLE `", "`");
}
elseif (strpos($sql, "CREATE TABLE IF NOT EXISTS `") !== false)
{
// get table name
$tableName = GetHelper::between($sql, "CREATE TABLE IF NOT EXISTS `", "`");
}
// if it still was not found
if (!isset($tableName) || !StringHelper::check($tableName))