Compare commits

..

24 Commits
5.x ... 4.x

Author SHA1 Message Date
80635f5eaa
Update 2024-05-16 16:11:47 +02:00
32700b0864
Update 2024-05-13 12:28:24 +02:00
7db70b412d
Update 2024-05-10 18:38:57 +02:00
0408ebd81a
Update 2024-05-06 07:49:36 +02:00
f23b3e0aef
Update 2024-05-03 07:56:00 +02:00
9772def17a
Update 2024-05-03 07:18:43 +02:00
50dd424d3b
Update 2024-04-30 19:19:51 +02:00
72f7a7dbf1
Update 2024-04-30 10:47:52 +02:00
bd899c6801
Update 2024-04-27 15:57:25 +02:00
18ddf08727
Update 2024-04-24 21:36:51 +02:00
f50acc3ca1
Update 2024-04-22 01:12:47 +02:00
5176f5b91d
Update 2024-04-16 20:09:07 +02:00
f9f321cb26
Update 2024-04-09 13:55:24 +02:00
479acd4ec9
Update 2024-04-07 11:59:48 +02:00
48df338454
Update 2024-04-06 23:35:16 +02:00
6f40b38256
Update 2024-03-26 22:37:07 +02:00
4a84b85e23
Update 2024-03-20 15:39:09 +02:00
18d3f8dbf3
Update 2024-03-20 14:25:43 +02:00
6bbffc7f86
Update 2024-03-15 12:18:04 +02:00
e67ffac9bc
Update 2024-03-12 12:55:43 +02:00
7882a87f78
Update 2024-03-11 18:25:52 +02:00
1b1558a5ad
Update - v4.0.0-alpha1 2024-03-11 17:06:17 +02:00
3ec335de71
Update - v4.0.0-alpha1 2024-03-11 16:20:03 +02:00
deda91278b
Update 2024-03-09 21:50:57 +02:00
23 changed files with 200 additions and 59 deletions

View File

@ -1,51 +1,51 @@
# Component Builder Package (v5.0.1-alpha2) # Component Builder Package (v4.0.1-alpha2)
The Joomla Component Builder Package that bundles JCB Component and all the plugins and features available into one package for easy install and update of your JCB system for Joomla 5. The Joomla Component Builder Package that bundles JCB Component and all the plugins and features available into one package for easy install and update of your JCB system for Joomla 4.
## Details ## Details
- Packager: [Vast Development Method](https://dev.vdm.io/) - Packager: [Vast Development Method](https://dev.vdm.io/)
- Author: [Llewellyn van der Merwe](https://io.vdm.dev/) - Author: [Llewellyn van der Merwe](https://io.vdm.dev/)
- Creation Date: May 2024 - Creation Date: May 2024
- Max Joomla Version: J5.1 - Max Joomla Version: J4.4
- Minimum Joomla Version: J5.0 - Minimum Joomla Version: J4.3
## Extensions ## Extensions
- [joomla/Component-Builder](https://git.vdm.dev/joomla/Component-Builder) [5.x](https://git.vdm.dev/joomla/Component-Builder/archive/5.x.zip) - [joomla/Component-Builder](https://git.vdm.dev/joomla/Component-Builder) [4.x](https://git.vdm.dev/joomla/Component-Builder/archive/4.x.zip)
> 5.x > 4.x
- [joomla/plg_content_componentbuilderadminheaderstabs](https://git.vdm.dev/joomla/plg_content_componentbuilderadminheaderstabs) [5.x](https://git.vdm.dev/joomla/plg_content_componentbuilderadminheaderstabs/archive/5.x.zip) - [joomla/plg_content_componentbuilderadminheaderstabs](https://git.vdm.dev/joomla/plg_content_componentbuilderadminheaderstabs) [4.x](https://git.vdm.dev/joomla/plg_content_componentbuilderadminheaderstabs/archive/4.x.zip)
> 5.x > 4.x
- [joomla/plg_content_componentbuildercomponentdashboardheaderstabs](https://git.vdm.dev/joomla/plg_content_componentbuildercomponentdashboardheaderstabs) [5.x](https://git.vdm.dev/joomla/plg_content_componentbuildercomponentdashboardheaderstabs/archive/5.x.zip) - [joomla/plg_content_componentbuildercomponentdashboardheaderstabs](https://git.vdm.dev/joomla/plg_content_componentbuildercomponentdashboardheaderstabs) [4.x](https://git.vdm.dev/joomla/plg_content_componentbuildercomponentdashboardheaderstabs/archive/4.x.zip)
> 5.x > 4.x
- [joomla/plg_content_componentbuildercomponentheaderstabs](https://git.vdm.dev/joomla/plg_content_componentbuildercomponentheaderstabs) [5.x](https://git.vdm.dev/joomla/plg_content_componentbuildercomponentheaderstabs/archive/5.x.zip) - [joomla/plg_content_componentbuildercomponentheaderstabs](https://git.vdm.dev/joomla/plg_content_componentbuildercomponentheaderstabs) [4.x](https://git.vdm.dev/joomla/plg_content_componentbuildercomponentheaderstabs/archive/4.x.zip)
> 5.x > 4.x
- [joomla/plg_content_componentbuildercustomadminheaderstabs](https://git.vdm.dev/joomla/plg_content_componentbuildercustomadminheaderstabs) [5.x](https://git.vdm.dev/joomla/plg_content_componentbuildercustomadminheaderstabs/archive/5.x.zip) - [joomla/plg_content_componentbuildercustomadminheaderstabs](https://git.vdm.dev/joomla/plg_content_componentbuildercustomadminheaderstabs) [4.x](https://git.vdm.dev/joomla/plg_content_componentbuildercustomadminheaderstabs/archive/4.x.zip)
> 5.x > 4.x
- [joomla/plg_content_componentbuilderfieldorderingtabs](https://git.vdm.dev/joomla/plg_content_componentbuilderfieldorderingtabs) [5.x](https://git.vdm.dev/joomla/plg_content_componentbuilderfieldorderingtabs/archive/5.x.zip) - [joomla/plg_content_componentbuilderfieldorderingtabs](https://git.vdm.dev/joomla/plg_content_componentbuilderfieldorderingtabs) [4.x](https://git.vdm.dev/joomla/plg_content_componentbuilderfieldorderingtabs/archive/4.x.zip)
> 5.x > 4.x
- [joomla/plg_content_componentbuilderlanguagetabs](https://git.vdm.dev/joomla/plg_content_componentbuilderlanguagetabs) [5.x](https://git.vdm.dev/joomla/plg_content_componentbuilderlanguagetabs/archive/5.x.zip) - [joomla/plg_content_componentbuilderlanguagetabs](https://git.vdm.dev/joomla/plg_content_componentbuilderlanguagetabs) [4.x](https://git.vdm.dev/joomla/plg_content_componentbuilderlanguagetabs/archive/4.x.zip)
> 5.x > 4.x
- [joomla/plg_content_componentbuilderprivacytabs](https://git.vdm.dev/joomla/plg_content_componentbuilderprivacytabs) [5.x](https://git.vdm.dev/joomla/plg_content_componentbuilderprivacytabs/archive/5.x.zip) - [joomla/plg_content_componentbuilderprivacytabs](https://git.vdm.dev/joomla/plg_content_componentbuilderprivacytabs) [4.x](https://git.vdm.dev/joomla/plg_content_componentbuilderprivacytabs/archive/4.x.zip)
> 5.x > 4.x
- [joomla/plg_content_componentbuildersiteheaderstabs](https://git.vdm.dev/joomla/plg_content_componentbuildersiteheaderstabs) [5.x](https://git.vdm.dev/joomla/plg_content_componentbuildersiteheaderstabs/archive/5.x.zip) - [joomla/plg_content_componentbuildersiteheaderstabs](https://git.vdm.dev/joomla/plg_content_componentbuildersiteheaderstabs) [4.x](https://git.vdm.dev/joomla/plg_content_componentbuildersiteheaderstabs/archive/4.x.zip)
> 5.x > 4.x
- [joomla/plg_content_componentbuilderdynamicgetheaderstabs](https://git.vdm.dev/joomla/plg_content_componentbuilderdynamicgetheaderstabs) [5.x](https://git.vdm.dev/joomla/plg_content_componentbuilderdynamicgetheaderstabs/archive/5.x.zip) - [joomla/plg_content_componentbuilderdynamicgetheaderstabs](https://git.vdm.dev/joomla/plg_content_componentbuilderdynamicgetheaderstabs) [4.x](https://git.vdm.dev/joomla/plg_content_componentbuilderdynamicgetheaderstabs/archive/4.x.zip)
> 5.x > 4.x
- [joomla/plg_extension_componentbuilderactionlogcompiler](https://git.vdm.dev/joomla/plg_extension_componentbuilderactionlogcompiler) [5.x](https://git.vdm.dev/joomla/plg_extension_componentbuilderactionlogcompiler/archive/5.x.zip) - [joomla/plg_extension_componentbuilderactionlogcompiler](https://git.vdm.dev/joomla/plg_extension_componentbuilderactionlogcompiler) [4.x](https://git.vdm.dev/joomla/plg_extension_componentbuilderactionlogcompiler/archive/4.x.zip)
> 5.x > 4.x
- [joomla/plg_extension_componentbuilderexportcompiler](https://git.vdm.dev/joomla/plg_extension_componentbuilderexportcompiler) [5.x](https://git.vdm.dev/joomla/plg_extension_componentbuilderexportcompiler/archive/5.x.zip) - [joomla/plg_extension_componentbuilderexportcompiler](https://git.vdm.dev/joomla/plg_extension_componentbuilderexportcompiler) [4.x](https://git.vdm.dev/joomla/plg_extension_componentbuilderexportcompiler/archive/4.x.zip)
> 5.x > 4.x
- [joomla/plg_extension_componentbuilderfieldorderingcompiler](https://git.vdm.dev/joomla/plg_extension_componentbuilderfieldorderingcompiler) [5.x](https://git.vdm.dev/joomla/plg_extension_componentbuilderfieldorderingcompiler/archive/5.x.zip) - [joomla/plg_extension_componentbuilderfieldorderingcompiler](https://git.vdm.dev/joomla/plg_extension_componentbuilderfieldorderingcompiler) [4.x](https://git.vdm.dev/joomla/plg_extension_componentbuilderfieldorderingcompiler/archive/4.x.zip)
> 5.x > 4.x
- [joomla/plg_extension_componentbuilderheaderscompiler](https://git.vdm.dev/joomla/plg_extension_componentbuilderheaderscompiler) [5.x](https://git.vdm.dev/joomla/plg_extension_componentbuilderheaderscompiler/archive/5.x.zip) - [joomla/plg_extension_componentbuilderheaderscompiler](https://git.vdm.dev/joomla/plg_extension_componentbuilderheaderscompiler) [4.x](https://git.vdm.dev/joomla/plg_extension_componentbuilderheaderscompiler/archive/4.x.zip)
> 5.x > 4.x
- [joomla/plg_extension_componentbuilderlanguagepackaging](https://git.vdm.dev/joomla/plg_extension_componentbuilderlanguagepackaging) [5.x](https://git.vdm.dev/joomla/plg_extension_componentbuilderlanguagepackaging/archive/5.x.zip) - [joomla/plg_extension_componentbuilderlanguagepackaging](https://git.vdm.dev/joomla/plg_extension_componentbuilderlanguagepackaging) [4.x](https://git.vdm.dev/joomla/plg_extension_componentbuilderlanguagepackaging/archive/4.x.zip)
> 5.x > 4.x
- [joomla/plg_extension_componentbuilderpowersautoloadercompiler](https://git.vdm.dev/joomla/plg_extension_componentbuilderpowersautoloadercompiler) [5.x](https://git.vdm.dev/joomla/plg_extension_componentbuilderpowersautoloadercompiler/archive/5.x.zip) - [joomla/plg_extension_componentbuilderpowersautoloadercompiler](https://git.vdm.dev/joomla/plg_extension_componentbuilderpowersautoloadercompiler) [4.x](https://git.vdm.dev/joomla/plg_extension_componentbuilderpowersautoloadercompiler/archive/4.x.zip)
> 5.x > 4.x
- [joomla/plg_extension_componentbuilderprivacycompiler](https://git.vdm.dev/joomla/plg_extension_componentbuilderprivacycompiler) [5.x](https://git.vdm.dev/joomla/plg_extension_componentbuilderprivacycompiler/archive/5.x.zip) - [joomla/plg_extension_componentbuilderprivacycompiler](https://git.vdm.dev/joomla/plg_extension_componentbuilderprivacycompiler) [4.x](https://git.vdm.dev/joomla/plg_extension_componentbuilderprivacycompiler/archive/4.x.zip)
> 5.x > 4.x
### Copyright (2015) ### Copyright (2015)
> Copyright (C) 2015 Llewellyn van der Merwe. All rights reserved. > Copyright (C) 2015 Llewellyn van der Merwe. All rights reserved.

View File

@ -0,0 +1,141 @@
<?php
/**
* @package Joomla.Component.Builder
*
* @created 30th April, 2015
* @author Llewellyn van der Merwe <https://dev.vdm.io>
* @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt
*/
// No direct access to this file
defined('_JEXEC') or die('Restricted access');
use Joomla\CMS\Factory;
/**
* Script File of Componentbuilder Package
*/
class pkg_component_builderInstallerScript
{
/**
* Called after any type of action
*
* @return boolean True on success
*/
public function postflight($type, $parent)
{
// enable the JCB plugins
$this->enableJCBPlugins();
// only run these if we have an update
if ('update' == $type)
{
// update the update server location
$this->updateServerLocation();
}
}
/**
* Update server location
*
* @return void
*/
protected function updateServerLocation()
{
$location = "https://git.vdm.dev/joomla/Component-Builder/raw/branch/4.x/componentbuilder_update_server.xml";
$elements = ['pkg_component_builder', 'com_componentbuilder'];
// Get the Package Update Site Details
foreach ($elements as $element)
{
if (($sites = $this->getUpdateSites($element)) !== null)
{
foreach ($sites as $site)
{
if ($site->location !== $location)
{
// Update the update site location
$site->location = $location;
Factory::getDbo()->updateObject('#__update_sites', $site, 'update_site_id');
}
}
}
}
}
/**
* Get Update Sites
*
* @return array|null
*/
protected function getUpdateSites(string $element): ?array
{
// Get The Database object
$db = Factory::getDbo();
// Get the Package Update Site Details
$query = $db->getQuery(true);
$query->select($db->quoteName(array('s.location', 's.update_site_id')));
$query->from($db->quoteName('#__update_sites', 's'));
$query->join('LEFT', $db->quoteName('#__update_sites_extensions', 'u') . ' ON ' . $db->quoteName('s.update_site_id') . ' = ' . $db->quoteName('u.update_site_id'));
$query->join('LEFT', $db->quoteName('#__extensions', 'e') . ' ON ' . $db->quoteName('u.extension_id') . ' = ' . $db->quoteName('e.extension_id'));
$query->where($db->quoteName('e.element') . ' = ' . $db->quote($element));
$db->setQuery($query);
$db->execute();
if ($db->getNumRows())
{
return $db->loadObjectList();
}
return null;
}
/**
* Enable all JCB Plugins
*
* @return void
*/
protected function enableJCBPlugins()
{
// Get The Database object
$db = Factory::getDbo();
// enable all JCB plugins Always!
$plugins = [
'componentbuilderadminheaderstabs',
'componentbuildercomponentdashboardheaderstabs',
'componentbuildercomponentheaderstabs',
'componentbuildercustomadminheaderstabs',
'componentbuilderlanguagetabs',
'componentbuildersiteheaderstabs',
'componentbuilderdynamicgetheaderstabs',
'componentbuilderprivacytabs',
'componentbuilderfieldorderingtabs',
'componentbuilderactionlogcompiler',
'componentbuilderexportcompiler',
'componentbuilderfieldorderingcompiler',
'componentbuilderheaderscompiler',
'componentbuilderlanguagepackaging',
'componentbuilderpowersautoloadercompiler',
'componentbuilderprivacycompiler'
];
// Create a new query object.
$query = $db->getQuery(true);
// we must update the enabled field
$fields = [
$db->quoteName('enabled') . ' = 1'
];
// Conditions for which records should be updated.
$conditions = [
$db->quoteName('element') . ' IN (' . implode(',', array_map([$db, 'quote'], $plugins)) . ')'
];
// load the update query
$query->update($db->quoteName('#__extensions'))->set($fields)->where($conditions);
// Reset the query using our newly populated query object.
$db->setQuery($query);
$db->execute();
}
}

View File

@ -1,8 +1,8 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<extension version="5.0" type="package" method="upgrade"> <extension version="4.3" type="package" method="upgrade">
<name>PKG_COMPONENT_BUILDER</name> <name>PKG_COMPONENT_BUILDER</name>
<packagename>component_builder</packagename> <packagename>component_builder</packagename>
<version>5.0.1-alpha2</version> <version>4.0.1-alpha2</version>
<creationDate>May 2024</creationDate> <creationDate>May 2024</creationDate>
<author>Llewellyn van der Merwe</author> <author>Llewellyn van der Merwe</author>
<authorEmail>joomla@vdm.io</authorEmail> <authorEmail>joomla@vdm.io</authorEmail>
@ -12,32 +12,32 @@
<license>GNU General Public License version 2; see LICENSE</license> <license>GNU General Public License version 2; see LICENSE</license>
<packager>Vast Development Method</packager> <packager>Vast Development Method</packager>
<packagerurl>https://dev.vdm.io/</packagerurl> <packagerurl>https://dev.vdm.io/</packagerurl>
<description>The Joomla Component Builder Package that bundles JCB Component and all the plugins and features available into one package for easy install and update of your JCB system for Joomla 5.</description> <description>The Joomla Component Builder Package that bundles JCB Component and all the plugins and features available into one package for easy install and update of your JCB system for Joomla 4.</description>
<scriptfile>install_component_builder.php</scriptfile> <scriptfile>install_component_builder.php</scriptfile>
<updateservers> <updateservers>
<server type="extension" name="Component Builder Package - Updates" element="pkg_component_builder">https://git.vdm.dev/joomla/Component-Builder/raw/branch/5.x/componentbuilder_update_server.xml</server> <server type="extension" name="Component Builder Package - Updates" element="pkg_component_builder">https://git.vdm.dev/joomla/Component-Builder/raw/branch/4.x/componentbuilder_update_server.xml</server>
</updateservers> </updateservers>
<languages folder="languages"> <languages folder="languages">
<language tag="en-GB">en-GB/en-GB.pkg_component_builder.sys.ini</language> <language tag="en-GB">en-GB/en-GB.pkg_component_builder.sys.ini</language>
<language tag="en-GB">en-GB/en-GB.pkg_component_builder.ini</language> <language tag="en-GB">en-GB/en-GB.pkg_component_builder.ini</language>
</languages> </languages>
<files folder="src"> <files folder="src">
<file type="component" id="com_componentbuilder">joomla__Component-Builder__5.x.zip</file> <file type="component" id="com_componentbuilder">joomla__Component-Builder__4.x.zip</file>
<file type="plugin" id="ComponentBuilderAdminHeadersTabs" group="content">joomla__plg_content_componentbuilderadminheaderstabs__5.x.zip</file> <file type="plugin" id="ComponentBuilderAdminHeadersTabs" group="content">joomla__plg_content_componentbuilderadminheaderstabs__4.x.zip</file>
<file type="plugin" id="ComponentBuilderComponentDashboardHeadersTabs" group="content">joomla__plg_content_componentbuildercomponentdashboardheaderstabs__5.x.zip</file> <file type="plugin" id="ComponentBuilderComponentDashboardHeadersTabs" group="content">joomla__plg_content_componentbuildercomponentdashboardheaderstabs__4.x.zip</file>
<file type="plugin" id="ComponentBuilderComponentHeadersTabs" group="content">joomla__plg_content_componentbuildercomponentheaderstabs__5.x.zip</file> <file type="plugin" id="ComponentBuilderComponentHeadersTabs" group="content">joomla__plg_content_componentbuildercomponentheaderstabs__4.x.zip</file>
<file type="plugin" id="ComponentBuilderCustomAdminHeadersTabs" group="content">joomla__plg_content_componentbuildercustomadminheaderstabs__5.x.zip</file> <file type="plugin" id="ComponentBuilderCustomAdminHeadersTabs" group="content">joomla__plg_content_componentbuildercustomadminheaderstabs__4.x.zip</file>
<file type="plugin" id="ComponentBuilderFieldOrderingTabs" group="content">joomla__plg_content_componentbuilderfieldorderingtabs__5.x.zip</file> <file type="plugin" id="ComponentBuilderFieldOrderingTabs" group="content">joomla__plg_content_componentbuilderfieldorderingtabs__4.x.zip</file>
<file type="plugin" id="ComponentBuilderLanguageTabs" group="content">joomla__plg_content_componentbuilderlanguagetabs__5.x.zip</file> <file type="plugin" id="ComponentBuilderLanguageTabs" group="content">joomla__plg_content_componentbuilderlanguagetabs__4.x.zip</file>
<file type="plugin" id="ComponentBuilderPrivacyTabs" group="content">joomla__plg_content_componentbuilderprivacytabs__5.x.zip</file> <file type="plugin" id="ComponentBuilderPrivacyTabs" group="content">joomla__plg_content_componentbuilderprivacytabs__4.x.zip</file>
<file type="plugin" id="ComponentBuilderSiteHeadersTabs" group="content">joomla__plg_content_componentbuildersiteheaderstabs__5.x.zip</file> <file type="plugin" id="ComponentBuilderSiteHeadersTabs" group="content">joomla__plg_content_componentbuildersiteheaderstabs__4.x.zip</file>
<file type="plugin" id="ComponentBuilderDynamicgetHeadersTabs" group="content">joomla__plg_content_componentbuilderdynamicgetheaderstabs__5.x.zip</file> <file type="plugin" id="ComponentBuilderDynamicgetHeadersTabs" group="content">joomla__plg_content_componentbuilderdynamicgetheaderstabs__4.x.zip</file>
<file type="plugin" id="ComponentBuilderActionLogCompiler" group="extension">joomla__plg_extension_componentbuilderactionlogcompiler__5.x.zip</file> <file type="plugin" id="ComponentBuilderActionLogCompiler" group="extension">joomla__plg_extension_componentbuilderactionlogcompiler__4.x.zip</file>
<file type="plugin" id="ComponentBuilderExportCompiler" group="extension">joomla__plg_extension_componentbuilderexportcompiler__5.x.zip</file> <file type="plugin" id="ComponentBuilderExportCompiler" group="extension">joomla__plg_extension_componentbuilderexportcompiler__4.x.zip</file>
<file type="plugin" id="ComponentBuilderFieldOrderingCompiler" group="extension">joomla__plg_extension_componentbuilderfieldorderingcompiler__5.x.zip</file> <file type="plugin" id="ComponentBuilderFieldOrderingCompiler" group="extension">joomla__plg_extension_componentbuilderfieldorderingcompiler__4.x.zip</file>
<file type="plugin" id="ComponentBuilderHeadersCompiler" group="extension">joomla__plg_extension_componentbuilderheaderscompiler__5.x.zip</file> <file type="plugin" id="ComponentBuilderHeadersCompiler" group="extension">joomla__plg_extension_componentbuilderheaderscompiler__4.x.zip</file>
<file type="plugin" id="ComponentBuilderLanguagePackaging" group="extension">joomla__plg_extension_componentbuilderlanguagepackaging__5.x.zip</file> <file type="plugin" id="ComponentBuilderLanguagePackaging" group="extension">joomla__plg_extension_componentbuilderlanguagepackaging__4.x.zip</file>
<file type="plugin" id="ComponentBuilderPowersAutoloaderCompiler" group="extension">joomla__plg_extension_componentbuilderpowersautoloadercompiler__5.x.zip</file> <file type="plugin" id="ComponentBuilderPowersAutoloaderCompiler" group="extension">joomla__plg_extension_componentbuilderpowersautoloadercompiler__4.x.zip</file>
<file type="plugin" id="ComponentBuilderPrivacyCompiler" group="extension">joomla__plg_extension_componentbuilderprivacycompiler__5.x.zip</file> <file type="plugin" id="ComponentBuilderPrivacyCompiler" group="extension">joomla__plg_extension_componentbuilderprivacycompiler__4.x.zip</file>
</files> </files>
</extension> </extension>