Updates marked JS package. Adds more events to the compiler. Fix gh-841 database issue (IF NOT EXISTS). Update Agerix banner link. Adds more clone options.

This commit is contained in:
Llewellyn van der Merwe 2022-01-15 19:52:09 +02:00
parent 9373b29bff
commit e5d599d5a5
Signed by: Llewellyn
GPG Key ID: EFC0C720A240551C
36 changed files with 510 additions and 67 deletions

View File

@ -12,7 +12,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 [github](https://github.com/vdm-io/Joomla-Component-Builder/releases) is the latest release (2.12.14) with **ALL** its features and **ALL** concepts totally open-source and free!
You can install it quite easily and with no limitations. On [github](https://github.com/vdm-io/Joomla-Component-Builder/releases) is the latest release (2.12.15) 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)
@ -143,13 +143,13 @@ TODO
+ *Author*: [Llewellyn van der Merwe](mailto:llewellyn@joomlacomponentbuilder.com)
+ *Name*: [Component Builder](https://github.com/vdm-io/Joomla-Component-Builder)
+ *First Build*: 30th April, 2015
+ *Last Build*: 21st December, 2021
+ *Version*: 2.12.14
+ *Last Build*: 15th January, 2022
+ *Version*: 2.12.15
+ *Copyright*: Copyright (C) 2015 Vast Development Method. All rights reserved.
+ *License*: GNU General Public License version 2 or later; see LICENSE.txt
+ *Line count*: **285607**
+ *Field count*: **1562**
+ *File count*: **1824**
+ *Line count*: **286035**
+ *Field count*: **1572**
+ *File count*: **1829**
+ *Folder count*: **256**
> This **component** was build with a [Joomla](https://extensions.joomla.org/extension/component-builder/) [Automated Component Builder](http://joomlacomponentbuilder.com).

View File

@ -12,7 +12,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 [github](https://github.com/vdm-io/Joomla-Component-Builder/releases) is the latest release (2.12.14) with **ALL** its features and **ALL** concepts totally open-source and free!
You can install it quite easily and with no limitations. On [github](https://github.com/vdm-io/Joomla-Component-Builder/releases) is the latest release (2.12.15) 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)
@ -143,13 +143,13 @@ TODO
+ *Author*: [Llewellyn van der Merwe](mailto:llewellyn@joomlacomponentbuilder.com)
+ *Name*: [Component Builder](https://github.com/vdm-io/Joomla-Component-Builder)
+ *First Build*: 30th April, 2015
+ *Last Build*: 21st December, 2021
+ *Version*: 2.12.14
+ *Last Build*: 15th January, 2022
+ *Version*: 2.12.15
+ *Copyright*: Copyright (C) 2015 Vast Development Method. All rights reserved.
+ *License*: GNU General Public License version 2 or later; see LICENSE.txt
+ *Line count*: **285607**
+ *Field count*: **1562**
+ *File count*: **1824**
+ *Line count*: **286035**
+ *Field count*: **1572**
+ *File count*: **1829**
+ *Folder count*: **256**
> This **component** was build with a [Joomla](https://extensions.joomla.org/extension/component-builder/) [Automated Component Builder](http://joomlacomponentbuilder.com).

File diff suppressed because one or more lines are too long

View File

@ -4703,6 +4703,11 @@ class Get
'type' => 'php');
foreach ($results as $_nr => &$result)
{
// Trigger Event: jcb_ce_onBeforeModelDynamicGetData
$this->triggerEvent(
'jcb_ce_onBeforeModelDynamicGetData',
array(&$this->componentContext, &$result, &$result->id, &$view_code, &$context)
);
// set GUI mapper id
$guiMapper['id'] = (int) $result->id;
// add calculations if set
@ -5213,6 +5218,11 @@ class Get
{
$result->plugin_events = '';
}
// Trigger Event: jcb_ce_onAfterModelDynamicGetData
$this->triggerEvent(
'jcb_ce_onAfterModelDynamicGetData',
array(&$this->componentContext, &$result, &$result->id, &$view_code, &$context)
);
}
return $results;

View File

@ -10263,7 +10263,7 @@ class Interpretation extends Fields
$db = '';
foreach ($this->queryBuilder as $view => $fields)
{
// build the uninstall array
// build the uninstallation array
$this->uninstallBuilder[] = "DROP TABLE IF EXISTS `#__"
. $component . "_" . $view . "`;";
@ -10355,10 +10355,17 @@ class Interpretation extends Fields
)
&& in_array($data['ID'], $this->addSQL['field'][$view]))
{
// to soon....
//$this->updateSQLBuilder["ALTERTABLE`#__" . $component
//. "_" . $view . "`ADDCOLUMNIFNOTEXISTS`" . $field . "`"]
// = "ALTER TABLE `#__" . $component . "_" . $view
// . "` ADD COLUMN IF NOT EXISTS `" . $field . "` " . $data['type']
// . $lenght . " " . $default . " AFTER `" . $last_name
// . "`;";
$this->updateSQLBuilder["ALTERTABLE`#__" . $component
. "_" . $view . "`ADDCOLUMNIFNOTEXISTS`" . $field . "`"]
. "_" . $view . "`ADD`" . $field . "`"]
= "ALTER TABLE `#__" . $component . "_" . $view
. "` ADD COLUMN IF NOT EXISTS `" . $field . "` " . $data['type']
. "` ADD `" . $field . "` " . $data['type']
. $lenght . " " . $default . " AFTER `" . $last_name
. "`;";
}
@ -10409,55 +10416,55 @@ class Interpretation extends Fields
{
$db_ .= PHP_EOL . $this->_t(1) . "`params` text NULL,";
}
// check if default field was over written
// check if default field was overwritten
if (!isset($this->fieldsNames[$view]['published']))
{
$db_ .= PHP_EOL . $this->_t(1)
. "`published` TINYINT(3) NOT NULL DEFAULT 1,";
}
// check if default field was over written
// check if default field was overwritten
if (!isset($this->fieldsNames[$view]['created_by']))
{
$db_ .= PHP_EOL . $this->_t(1)
. "`created_by` INT(10) unsigned NOT NULL DEFAULT 0,";
}
// check if default field was over written
// check if default field was overwritten
if (!isset($this->fieldsNames[$view]['modified_by']))
{
$db_ .= PHP_EOL . $this->_t(1)
. "`modified_by` INT(10) unsigned NOT NULL DEFAULT 0,";
}
// check if default field was over written
// check if default field was overwritten
if (!isset($this->fieldsNames[$view]['created']))
{
$db_ .= PHP_EOL . $this->_t(1)
. "`created` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',";
}
// check if default field was over written
// check if default field was overwritten
if (!isset($this->fieldsNames[$view]['modified']))
{
$db_ .= PHP_EOL . $this->_t(1)
. "`modified` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',";
}
// check if default field was over written
// check if default field was overwritten
if (!isset($this->fieldsNames[$view]['checked_out']))
{
$db_ .= PHP_EOL . $this->_t(1)
. "`checked_out` int(11) unsigned NOT NULL DEFAULT 0,";
}
// check if default field was over written
// check if default field was overwritten
if (!isset($this->fieldsNames[$view]['checked_out_time']))
{
$db_ .= PHP_EOL . $this->_t(1)
. "`checked_out_time` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',";
}
// check if default field was over written
// check if default field was overwritten
if (!isset($this->fieldsNames[$view]['version']))
{
$db_ .= PHP_EOL . $this->_t(1)
. "`version` INT(10) unsigned NOT NULL DEFAULT 1,";
}
// check if default field was over written
// check if default field was overwritten
if (!isset($this->fieldsNames[$view]['hits']))
{
$db_ .= PHP_EOL . $this->_t(1)

View File

@ -2061,7 +2061,7 @@ abstract class ComponentbuilderHelper
'hash' => '84478dfa0cd880395815e0ee026812a4',
'html' => '<a href="https://vdm.bz/jcb-sponsor-vdm" target="_blank" title="VDM a JCB sponsor | Because community matters..."><img class="jcb-sponsor-banner" alt="VDM a JCB sponsor | Because community matters..." src="[[[ROOT-URL]]]administrator/components/com_componentbuilder/assets/images/banner/vdm_jcb_sponsor_728_90.gif" width="728" height="90" border="0" /></a>'),
array(
'url' => 'https://allmycms.com/images/banners/agerix/agerix-loves-jcb-728-90.gif',
'url' => 'https://cms-experts.org/images/banners/agerix/agerix-loves-jcb-728-90.gif',
'hash' => 'b24c0726aa809cdcc04bcffe7e1e1529',
'html' => '<a href="https://vdm.bz/jcb-sponsor-agerix" target="_blank" title="Agerix a JCB sponsor | Because community matters..."><img class="jcb-sponsor-banner" alt="Agerix a JCB sponsor | Because community matters..." src="[[[ROOT-URL]]]administrator/components/com_componentbuilder/assets/images/banner/agerix-loves-jcb-728-90.gif" width="728" height="90" border="0" /></a>')
),

View File

@ -2813,6 +2813,8 @@ COM_COMPONENTBUILDER_COMPONENT_CUSTOM_ADMIN_VIEWS_YOUTUBE="Youtube"
COM_COMPONENTBUILDER_COMPONENT_CUSTOM_ADMIN_VIEWS_ZOOM_IN="Zoom In"
COM_COMPONENTBUILDER_COMPONENT_CUSTOM_ADMIN_VIEWS_ZOOM_OUT="Zoom Out"
COM_COMPONENTBUILDER_COMPONENT_DASHBOARD="Component Dashboard"
COM_COMPONENTBUILDER_COMPONENT_DASHBOARD_CLONE="Clone"
COM_COMPONENTBUILDER_COMPONENT_DASHBOARD_CLONE_ME_LABEL="Clone"
COM_COMPONENTBUILDER_COMPONENT_DASHBOARD_CREATED_BY_DESC="The user that created this Component Dashboard."
COM_COMPONENTBUILDER_COMPONENT_DASHBOARD_CREATED_BY_LABEL="Created By"
COM_COMPONENTBUILDER_COMPONENT_DASHBOARD_CREATED_DATE_DESC="The date this Component Dashboard was created."
@ -2843,6 +2845,8 @@ COM_COMPONENTBUILDER_COMPONENT_DASHBOARD_NAME_HINT="Name Here"
COM_COMPONENTBUILDER_COMPONENT_DASHBOARD_NAME_LABEL="Name"
COM_COMPONENTBUILDER_COMPONENT_DASHBOARD_NAME_MESSAGE="Error! Please add name here."
COM_COMPONENTBUILDER_COMPONENT_DASHBOARD_NEW="A New Component Dashboard"
COM_COMPONENTBUILDER_COMPONENT_DASHBOARD_NOTE_HOW_TO_CLONE_DESCRIPTION="There has often been the case that we have two or more components_dashboard that should be exactly the same. Just selecting that component_dashboard and clicking save, will overwrite this component_dashboard with that selected component_dashboard data."
COM_COMPONENTBUILDER_COMPONENT_DASHBOARD_NOTE_HOW_TO_CLONE_LABEL="How to clone another component_dashboard's values into this one."
COM_COMPONENTBUILDER_COMPONENT_DASHBOARD_NOTE_PHP_DASHBOARD_NOTE_DESCRIPTION="Adding custom PHP method to the dashboard model<br />use the <b>public function getMethodName()</b> to insure the data is set to the view,<br />Note the convention <b>public function get...()</b> replace the ... with the unique method name."
COM_COMPONENTBUILDER_COMPONENT_DASHBOARD_ORDERING_LABEL="Ordering"
COM_COMPONENTBUILDER_COMPONENT_DASHBOARD_PERMISSION="Permissions"
@ -2865,6 +2869,8 @@ COM_COMPONENTBUILDER_COMPONENT_FILES_FOLDERS_ADDFOLDERS_DESCRIPTION="Add custom
COM_COMPONENTBUILDER_COMPONENT_FILES_FOLDERS_ADDFOLDERS_LABEL="Folder (custom folder)"
COM_COMPONENTBUILDER_COMPONENT_FILES_FOLDERS_ADVANCE="Advance"
COM_COMPONENTBUILDER_COMPONENT_FILES_FOLDERS_BASIC="Basic"
COM_COMPONENTBUILDER_COMPONENT_FILES_FOLDERS_CLONE="Clone"
COM_COMPONENTBUILDER_COMPONENT_FILES_FOLDERS_CLONE_ME_LABEL="Clone"
COM_COMPONENTBUILDER_COMPONENT_FILES_FOLDERS_CREATED_BY_DESC="The user that created this Component Files & Folders."
COM_COMPONENTBUILDER_COMPONENT_FILES_FOLDERS_CREATED_BY_LABEL="Created By"
COM_COMPONENTBUILDER_COMPONENT_FILES_FOLDERS_CREATED_DATE_DESC="The date this Component Files & Folders was created."
@ -2938,6 +2944,8 @@ If you are in the installation application:<br />
JPATH_BASE == JPATH_INSTALLATION.<br />
JPATH_ROOT is the root path for the Joomla install and does not depend upon any application.</p>"
COM_COMPONENTBUILDER_COMPONENT_FILES_FOLDERS_NOTE_CONSTANT_PATHS_LABEL="Constant Paths"
COM_COMPONENTBUILDER_COMPONENT_FILES_FOLDERS_NOTE_HOW_TO_CLONE_DESCRIPTION="There has often been the case that we have two or more components_files_folders that should be exactly the same. Just selecting that component_files_folders and clicking save, will overwrite this component_files_folders with that selected component_files_folders data."
COM_COMPONENTBUILDER_COMPONENT_FILES_FOLDERS_NOTE_HOW_TO_CLONE_LABEL="How to clone another component_files_folders's values into this one."
COM_COMPONENTBUILDER_COMPONENT_FILES_FOLDERS_NOTNEW_DESCRIPTION="Should file be updated."
COM_COMPONENTBUILDER_COMPONENT_FILES_FOLDERS_NOTNEW_LABEL="Update"
COM_COMPONENTBUILDER_COMPONENT_FILES_FOLDERS_ORDERING_LABEL="Ordering"
@ -2956,6 +2964,8 @@ COM_COMPONENTBUILDER_COMPONENT_GLOBAL_SETTINGS="Component Global Settings"
COM_COMPONENTBUILDER_COMPONENT_MODULES="Component Modules"
COM_COMPONENTBUILDER_COMPONENT_MODULES_ADDJOOMLA_MODULES_DESCRIPTION="Setup the Joomla modules for this component."
COM_COMPONENTBUILDER_COMPONENT_MODULES_ADDJOOMLA_MODULES_LABEL="Joomla Modules"
COM_COMPONENTBUILDER_COMPONENT_MODULES_CLONE="Clone"
COM_COMPONENTBUILDER_COMPONENT_MODULES_CLONE_ME_LABEL="Clone"
COM_COMPONENTBUILDER_COMPONENT_MODULES_COMPILE_AMP_EXPORT="Compile &amp; Export"
COM_COMPONENTBUILDER_COMPONENT_MODULES_COMPILE_ONLY="Compile (only)"
COM_COMPONENTBUILDER_COMPONENT_MODULES_CREATED_BY_DESC="The user that created this Component Modules."
@ -2976,6 +2986,8 @@ COM_COMPONENTBUILDER_COMPONENT_MODULES_MODULE="Module"
COM_COMPONENTBUILDER_COMPONENT_MODULES_MODULES="Modules"
COM_COMPONENTBUILDER_COMPONENT_MODULES_MODULE_LABEL="Modules"
COM_COMPONENTBUILDER_COMPONENT_MODULES_NEW="A New Component Modules"
COM_COMPONENTBUILDER_COMPONENT_MODULES_NOTE_HOW_TO_CLONE_DESCRIPTION="There has often been the case that we have two or more components_modules that should be exactly the same. Just selecting that component_modules and clicking save, will overwrite this component_modules with that selected component_modules data."
COM_COMPONENTBUILDER_COMPONENT_MODULES_NOTE_HOW_TO_CLONE_LABEL="How to clone another component_modules's values into this one."
COM_COMPONENTBUILDER_COMPONENT_MODULES_NOTE_ON_JOOMLA_MODULES_DESCRIPTION="Do not add the same Joomla modules twice it will not work."
COM_COMPONENTBUILDER_COMPONENT_MODULES_NOTE_ON_JOOMLA_MODULES_LABEL="Setting Joomla Modules"
COM_COMPONENTBUILDER_COMPONENT_MODULES_ORDERING_LABEL="Ordering"
@ -3034,6 +3046,8 @@ COM_COMPONENTBUILDER_COMPONENT_MYSQL_TWEAKS_YES_INCLUDE_BASED_ON_OPTIONS="Yes in
COM_COMPONENTBUILDER_COMPONENT_PLACEHOLDERS="Component Placeholders"
COM_COMPONENTBUILDER_COMPONENT_PLACEHOLDERS_ADDPLACEHOLDERS_DESCRIPTION="Set dnamic placeholders for this component."
COM_COMPONENTBUILDER_COMPONENT_PLACEHOLDERS_ADDPLACEHOLDERS_LABEL="Placeholders"
COM_COMPONENTBUILDER_COMPONENT_PLACEHOLDERS_CLONE="Clone"
COM_COMPONENTBUILDER_COMPONENT_PLACEHOLDERS_CLONE_ME_LABEL="Clone"
COM_COMPONENTBUILDER_COMPONENT_PLACEHOLDERS_CREATED_BY_DESC="The user that created this Component Placeholders."
COM_COMPONENTBUILDER_COMPONENT_PLACEHOLDERS_CREATED_BY_LABEL="Created By"
COM_COMPONENTBUILDER_COMPONENT_PLACEHOLDERS_CREATED_DATE_DESC="The date this Component Placeholders was created."
@ -3049,6 +3063,8 @@ COM_COMPONENTBUILDER_COMPONENT_PLACEHOLDERS_MODIFIED_BY_LABEL="Modified By"
COM_COMPONENTBUILDER_COMPONENT_PLACEHOLDERS_MODIFIED_DATE_DESC="The date this Component Placeholders was modified."
COM_COMPONENTBUILDER_COMPONENT_PLACEHOLDERS_MODIFIED_DATE_LABEL="Modified Date"
COM_COMPONENTBUILDER_COMPONENT_PLACEHOLDERS_NEW="A New Component Placeholders"
COM_COMPONENTBUILDER_COMPONENT_PLACEHOLDERS_NOTE_HOW_TO_CLONE_DESCRIPTION="There has often been the case that we have two or more components_placeholders that should be exactly the same. Just selecting that component_placeholders and clicking save, will overwrite this component_placeholders with that selected component_placeholders data."
COM_COMPONENTBUILDER_COMPONENT_PLACEHOLDERS_NOTE_HOW_TO_CLONE_LABEL="How to clone another component_placeholders's values into this one."
COM_COMPONENTBUILDER_COMPONENT_PLACEHOLDERS_ORDERING_LABEL="Ordering"
COM_COMPONENTBUILDER_COMPONENT_PLACEHOLDERS_PERMISSION="Permissions"
COM_COMPONENTBUILDER_COMPONENT_PLACEHOLDERS_PUBLISHING="Publishing"
@ -3067,6 +3083,8 @@ COM_COMPONENTBUILDER_COMPONENT_PLACEHOLDERS_VERSION_LABEL="Version"
COM_COMPONENTBUILDER_COMPONENT_PLUGINS="Component Plugins"
COM_COMPONENTBUILDER_COMPONENT_PLUGINS_ADDJOOMLA_PLUGINS_DESCRIPTION="Setup the Joomla plugins for this component."
COM_COMPONENTBUILDER_COMPONENT_PLUGINS_ADDJOOMLA_PLUGINS_LABEL="Joomla Plugins"
COM_COMPONENTBUILDER_COMPONENT_PLUGINS_CLONE="Clone"
COM_COMPONENTBUILDER_COMPONENT_PLUGINS_CLONE_ME_LABEL="Clone"
COM_COMPONENTBUILDER_COMPONENT_PLUGINS_COMPILE_AMP_EXPORT="Compile &amp; Export"
COM_COMPONENTBUILDER_COMPONENT_PLUGINS_COMPILE_ONLY="Compile (only)"
COM_COMPONENTBUILDER_COMPONENT_PLUGINS_CREATED_BY_DESC="The user that created this Component Plugins."
@ -3084,6 +3102,8 @@ COM_COMPONENTBUILDER_COMPONENT_PLUGINS_MODIFIED_BY_LABEL="Modified By"
COM_COMPONENTBUILDER_COMPONENT_PLUGINS_MODIFIED_DATE_DESC="The date this Component Plugins was modified."
COM_COMPONENTBUILDER_COMPONENT_PLUGINS_MODIFIED_DATE_LABEL="Modified Date"
COM_COMPONENTBUILDER_COMPONENT_PLUGINS_NEW="A New Component Plugins"
COM_COMPONENTBUILDER_COMPONENT_PLUGINS_NOTE_HOW_TO_CLONE_DESCRIPTION="There has often been the case that we have two or more components_plugins that should be exactly the same. Just selecting that component_plugins and clicking save, will overwrite this component_plugins with that selected component_plugins data."
COM_COMPONENTBUILDER_COMPONENT_PLUGINS_NOTE_HOW_TO_CLONE_LABEL="How to clone another component_plugins's values into this one."
COM_COMPONENTBUILDER_COMPONENT_PLUGINS_NOTE_ON_JOOMLA_PLUGINS_DESCRIPTION="Do not add the same Joomla plugins twice it will not work."
COM_COMPONENTBUILDER_COMPONENT_PLUGINS_NOTE_ON_JOOMLA_PLUGINS_LABEL="Setting Joomla Plugins"
COM_COMPONENTBUILDER_COMPONENT_PLUGINS_ORDERING_LABEL="Ordering"

View File

@ -0,0 +1,44 @@
<?php
/**
* @package Joomla.Component.Builder
*
* @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com>
* @gitea Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @github Joomla Component Builder <https://github.com/vdm-io/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');
// get the form
$form = $displayData->getForm();
// get the layout fields override method name (from layout path/ID)
$layout_path_array = explode('.', $this->getLayoutId());
// Since we cannot pass the layout and tab names as parameters to the model method
// this name combination of tab and layout in the method name is the only work around
// seeing that JCB uses those two values (tab_name & layout_name) as the layout file name.
// example of layout name: details_left.php
// example of method name: getFields_details_left()
$fields_tab_layout = 'fields_' . $layout_path_array[1];
// get the fields
$fields = $displayData->get($fields_tab_layout) ?: array(
'note_how_to_clone',
'clone_me'
);
$hiddenFields = $displayData->get('hidden_fields') ?: array();
?>
<?php if ($fields && count((array) $fields)) :?>
<?php foreach($fields as $field): ?>
<?php if (in_array($field, $hiddenFields)) : ?>
<?php $form->setFieldAttribute($field, 'type', 'hidden'); ?>
<?php endif; ?>
<?php echo $form->renderField($field, null, null, array('class' => 'control-wrapper-' . $field)); ?>
<?php endforeach; ?>
<?php endif; ?>

View File

@ -28,8 +28,8 @@ $fields_tab_layout = 'fields_' . $layout_path_array[1];
// get the fields
$fields = $displayData->get($fields_tab_layout) ?: array(
'note_php_dashboard_note',
'php_dashboard_methods',
'dashboard_tab'
'dashboard_tab',
'php_dashboard_methods'
);
$hiddenFields = $displayData->get('hidden_fields') ?: array();

View File

@ -0,0 +1,44 @@
<?php
/**
* @package Joomla.Component.Builder
*
* @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com>
* @gitea Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @github Joomla Component Builder <https://github.com/vdm-io/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');
// get the form
$form = $displayData->getForm();
// get the layout fields override method name (from layout path/ID)
$layout_path_array = explode('.', $this->getLayoutId());
// Since we cannot pass the layout and tab names as parameters to the model method
// this name combination of tab and layout in the method name is the only work around
// seeing that JCB uses those two values (tab_name & layout_name) as the layout file name.
// example of layout name: details_left.php
// example of method name: getFields_details_left()
$fields_tab_layout = 'fields_' . $layout_path_array[1];
// get the fields
$fields = $displayData->get($fields_tab_layout) ?: array(
'note_how_to_clone',
'clone_me'
);
$hiddenFields = $displayData->get('hidden_fields') ?: array();
?>
<?php if ($fields && count((array) $fields)) :?>
<?php foreach($fields as $field): ?>
<?php if (in_array($field, $hiddenFields)) : ?>
<?php $form->setFieldAttribute($field, 'type', 'hidden'); ?>
<?php endif; ?>
<?php echo $form->renderField($field, null, null, array('class' => 'control-wrapper-' . $field)); ?>
<?php endforeach; ?>
<?php endif; ?>

View File

@ -0,0 +1,44 @@
<?php
/**
* @package Joomla.Component.Builder
*
* @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com>
* @gitea Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @github Joomla Component Builder <https://github.com/vdm-io/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');
// get the form
$form = $displayData->getForm();
// get the layout fields override method name (from layout path/ID)
$layout_path_array = explode('.', $this->getLayoutId());
// Since we cannot pass the layout and tab names as parameters to the model method
// this name combination of tab and layout in the method name is the only work around
// seeing that JCB uses those two values (tab_name & layout_name) as the layout file name.
// example of layout name: details_left.php
// example of method name: getFields_details_left()
$fields_tab_layout = 'fields_' . $layout_path_array[1];
// get the fields
$fields = $displayData->get($fields_tab_layout) ?: array(
'note_how_to_clone',
'clone_me'
);
$hiddenFields = $displayData->get('hidden_fields') ?: array();
?>
<?php if ($fields && count((array) $fields)) :?>
<?php foreach($fields as $field): ?>
<?php if (in_array($field, $hiddenFields)) : ?>
<?php $form->setFieldAttribute($field, 'type', 'hidden'); ?>
<?php endif; ?>
<?php echo $form->renderField($field, null, null, array('class' => 'control-wrapper-' . $field)); ?>
<?php endforeach; ?>
<?php endif; ?>

View File

@ -0,0 +1,44 @@
<?php
/**
* @package Joomla.Component.Builder
*
* @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com>
* @gitea Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @github Joomla Component Builder <https://github.com/vdm-io/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');
// get the form
$form = $displayData->getForm();
// get the layout fields override method name (from layout path/ID)
$layout_path_array = explode('.', $this->getLayoutId());
// Since we cannot pass the layout and tab names as parameters to the model method
// this name combination of tab and layout in the method name is the only work around
// seeing that JCB uses those two values (tab_name & layout_name) as the layout file name.
// example of layout name: details_left.php
// example of method name: getFields_details_left()
$fields_tab_layout = 'fields_' . $layout_path_array[1];
// get the fields
$fields = $displayData->get($fields_tab_layout) ?: array(
'note_how_to_clone',
'clone_me'
);
$hiddenFields = $displayData->get('hidden_fields') ?: array();
?>
<?php if ($fields && count((array) $fields)) :?>
<?php foreach($fields as $field): ?>
<?php if (in_array($field, $hiddenFields)) : ?>
<?php $form->setFieldAttribute($field, 'type', 'hidden'); ?>
<?php endif; ?>
<?php echo $form->renderField($field, null, null, array('class' => 'control-wrapper-' . $field)); ?>
<?php endforeach; ?>
<?php endif; ?>

View File

@ -0,0 +1,44 @@
<?php
/**
* @package Joomla.Component.Builder
*
* @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com>
* @gitea Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
* @github Joomla Component Builder <https://github.com/vdm-io/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');
// get the form
$form = $displayData->getForm();
// get the layout fields override method name (from layout path/ID)
$layout_path_array = explode('.', $this->getLayoutId());
// Since we cannot pass the layout and tab names as parameters to the model method
// this name combination of tab and layout in the method name is the only work around
// seeing that JCB uses those two values (tab_name & layout_name) as the layout file name.
// example of layout name: details_left.php
// example of method name: getFields_details_left()
$fields_tab_layout = 'fields_' . $layout_path_array[1];
// get the fields
$fields = $displayData->get($fields_tab_layout) ?: array(
'note_how_to_clone',
'clone_me'
);
$hiddenFields = $displayData->get('hidden_fields') ?: array();
?>
<?php if ($fields && count((array) $fields)) :?>
<?php foreach($fields as $field): ?>
<?php if (in_array($field, $hiddenFields)) : ?>
<?php $form->setFieldAttribute($field, 'type', 'hidden'); ?>
<?php endif; ?>
<?php echo $form->renderField($field, null, null, array('class' => 'control-wrapper-' . $field)); ?>
<?php endforeach; ?>
<?php endif; ?>

View File

@ -31,12 +31,18 @@ class ComponentbuilderModelComponent_dashboard extends JModelAdmin
'dashboard' => array(
'fullwidth' => array(
'note_php_dashboard_note',
'php_dashboard_methods',
'dashboard_tab'
'dashboard_tab',
'php_dashboard_methods'
),
'above' => array(
'joomla_component'
)
),
'clone' => array(
'left' => array(
'note_how_to_clone',
'clone_me'
)
)
);
@ -927,6 +933,19 @@ class ComponentbuilderModelComponent_dashboard extends JModelAdmin
$data['metadata'] = (string) $metadata;
}
// check if we have a clone moment
if (isset($data['clone_me']) && $data['clone_me'] > 0)
{
// get the following data from clone_me (component_dashboard)
$keys = array('php_dashboard_methods','dashboard_tab','params');
foreach ($keys as $key)
{
$data[$key] = ComponentbuilderHelper::getVar('component_dashboard', $data['clone_me'], 'joomla_component', $key);
}
}
// Set the dashboard_tab items to data.
if (isset($data['dashboard_tab']) && is_array($data['dashboard_tab']))
{

View File

@ -39,6 +39,12 @@ class ComponentbuilderModelComponent_files_folders extends JModelAdmin
'joomla_component'
)
),
'clone' => array(
'left' => array(
'note_how_to_clone',
'clone_me'
)
),
'advance' => array(
'fullwidth' => array(
'note_add_files_fullpath',
@ -872,6 +878,19 @@ class ComponentbuilderModelComponent_files_folders extends JModelAdmin
$data['metadata'] = (string) $metadata;
}
// check if we have a clone moment
if (isset($data['clone_me']) && $data['clone_me'] > 0)
{
// get the following data from clone_me (component_files_folders)
$keys = array('addfiles','addfolders','addfilesfullpath','addfoldersfullpath');
foreach ($keys as $key)
{
$data[$key] = ComponentbuilderHelper::getVar('component_files_folders', $data['clone_me'], 'joomla_component', $key);
}
}
// Set the addfoldersfullpath items to data.
if (isset($data['addfoldersfullpath']) && is_array($data['addfoldersfullpath']))
{

View File

@ -36,6 +36,12 @@ class ComponentbuilderModelComponent_modules extends JModelAdmin
'above' => array(
'joomla_component'
)
),
'clone' => array(
'left' => array(
'note_how_to_clone',
'clone_me'
)
)
);
@ -805,6 +811,15 @@ class ComponentbuilderModelComponent_modules extends JModelAdmin
$data['metadata'] = (string) $metadata;
}
// check if we have a clone moment
if (isset($data['clone_me']) && $data['clone_me'] > 0)
{
// get addjoomla_modules data from clone_me (component_modules)
$data['addjoomla_modules'] = ComponentbuilderHelper::getVar('component_modules', $data['clone_me'], 'joomla_component', 'addjoomla_modules');
}
// Set the addjoomla_modules items to data.
if (isset($data['addjoomla_modules']) && is_array($data['addjoomla_modules']))
{

View File

@ -35,6 +35,12 @@ class ComponentbuilderModelComponent_placeholders extends JModelAdmin
'above' => array(
'joomla_component'
)
),
'clone' => array(
'left' => array(
'note_how_to_clone',
'clone_me'
)
)
);
@ -804,6 +810,15 @@ class ComponentbuilderModelComponent_placeholders extends JModelAdmin
$data['metadata'] = (string) $metadata;
}
// check if we have a clone moment
if (isset($data['clone_me']) && $data['clone_me'] > 0)
{
// get addplaceholders data from clone_me (component_placeholders)
$data['addplaceholders'] = ComponentbuilderHelper::getVar('component_placeholders', $data['clone_me'], 'joomla_component', 'addplaceholders');
}
// Set the addplaceholders items to data.
if (isset($data['addplaceholders']) && is_array($data['addplaceholders']))
{

View File

@ -36,6 +36,12 @@ class ComponentbuilderModelComponent_plugins extends JModelAdmin
'above' => array(
'joomla_component'
)
),
'clone' => array(
'left' => array(
'note_how_to_clone',
'clone_me'
)
)
);
@ -805,6 +811,15 @@ class ComponentbuilderModelComponent_plugins extends JModelAdmin
$data['metadata'] = (string) $metadata;
}
// check if we have a clone moment
if (isset($data['clone_me']) && $data['clone_me'] > 0)
{
// get addjoomla_plugins data from clone_me (component_plugins)
$data['addjoomla_plugins'] = ComponentbuilderHelper::getVar('component_plugins', $data['clone_me'], 'joomla_component', 'addjoomla_plugins');
}
// Set the addjoomla_plugins items to data.
if (isset($data['addjoomla_plugins']) && is_array($data['addjoomla_plugins']))
{

View File

@ -105,19 +105,19 @@
readonly="true"
button="false"
/>
<!-- Php_dashboard_methods Field. Type: Textarea. (joomla) -->
<!-- Clone_me Field. Type: Joomlacomponent. (custom) -->
<field
type="textarea"
name="php_dashboard_methods"
label="COM_COMPONENTBUILDER_COMPONENT_DASHBOARD_PHP_DASHBOARD_METHODS_LABEL"
rows="17"
cols="5"
description="COM_COMPONENTBUILDER_COMPONENT_DASHBOARD_PHP_DASHBOARD_METHODS_DESCRIPTION"
class="text_area span12"
filter="raw"
hint="COM_COMPONENTBUILDER_COMPONENT_DASHBOARD_PHP_DASHBOARD_METHODS_HINT"
type="joomlacomponent"
name="clone_me"
label="COM_COMPONENTBUILDER_COMPONENT_DASHBOARD_CLONE_ME_LABEL"
class="list_class"
multiple="false"
default="0"
required="false"
button="false"
/>
<!-- Note_how_to_clone Field. Type: Note. A None Database Field. (joomla) -->
<field type="note" name="note_how_to_clone" label="COM_COMPONENTBUILDER_COMPONENT_DASHBOARD_NOTE_HOW_TO_CLONE_LABEL" description="COM_COMPONENTBUILDER_COMPONENT_DASHBOARD_NOTE_HOW_TO_CLONE_DESCRIPTION" heading="h4" class="alert alert-info note_how_to_clone" />
<!-- Dashboard_tab Field. Type: Subform. (joomla) -->
<field
type="subform"
@ -174,6 +174,19 @@
/>
</form>
</field>
<!-- Php_dashboard_methods Field. Type: Textarea. (joomla) -->
<field
type="textarea"
name="php_dashboard_methods"
label="COM_COMPONENTBUILDER_COMPONENT_DASHBOARD_PHP_DASHBOARD_METHODS_LABEL"
rows="17"
cols="5"
description="COM_COMPONENTBUILDER_COMPONENT_DASHBOARD_PHP_DASHBOARD_METHODS_DESCRIPTION"
class="text_area span12"
filter="raw"
hint="COM_COMPONENTBUILDER_COMPONENT_DASHBOARD_PHP_DASHBOARD_METHODS_HINT"
required="false"
/>
<!-- Note_php_dashboard_note Field. Type: Note. A None Database Field. (joomla) -->
<field type="note" name="note_php_dashboard_note" description="COM_COMPONENTBUILDER_COMPONENT_DASHBOARD_NOTE_PHP_DASHBOARD_NOTE_DESCRIPTION" class="note_php_dashboard_note" />
</fieldset>

View File

@ -105,6 +105,19 @@
readonly="true"
button="false"
/>
<!-- Clone_me Field. Type: Joomlacomponent. (custom) -->
<field
type="joomlacomponent"
name="clone_me"
label="COM_COMPONENTBUILDER_COMPONENT_FILES_FOLDERS_CLONE_ME_LABEL"
class="list_class"
multiple="false"
default="0"
required="false"
button="false"
/>
<!-- Note_how_to_clone Field. Type: Note. A None Database Field. (joomla) -->
<field type="note" name="note_how_to_clone" label="COM_COMPONENTBUILDER_COMPONENT_FILES_FOLDERS_NOTE_HOW_TO_CLONE_LABEL" description="COM_COMPONENTBUILDER_COMPONENT_FILES_FOLDERS_NOTE_HOW_TO_CLONE_DESCRIPTION" heading="h4" class="alert alert-info note_how_to_clone" />
<!-- Note_constant_paths Field. Type: Note. A None Database Field. (joomla) -->
<field type="note" name="note_constant_paths" label="COM_COMPONENTBUILDER_COMPONENT_FILES_FOLDERS_NOTE_CONSTANT_PATHS_LABEL" description="COM_COMPONENTBUILDER_COMPONENT_FILES_FOLDERS_NOTE_CONSTANT_PATHS_DESCRIPTION" heading="h4" class="alert alert-info note_constant_paths" />
<!-- Addfoldersfullpath Field. Type: Subform. (joomla) -->

View File

@ -105,6 +105,19 @@
readonly="true"
button="false"
/>
<!-- Clone_me Field. Type: Joomlacomponent. (custom) -->
<field
type="joomlacomponent"
name="clone_me"
label="COM_COMPONENTBUILDER_COMPONENT_MODULES_CLONE_ME_LABEL"
class="list_class"
multiple="false"
default="0"
required="false"
button="false"
/>
<!-- Note_how_to_clone Field. Type: Note. A None Database Field. (joomla) -->
<field type="note" name="note_how_to_clone" label="COM_COMPONENTBUILDER_COMPONENT_MODULES_NOTE_HOW_TO_CLONE_LABEL" description="COM_COMPONENTBUILDER_COMPONENT_MODULES_NOTE_HOW_TO_CLONE_DESCRIPTION" heading="h4" class="alert alert-info note_how_to_clone" />
<!-- Addjoomla_modules Field. Type: Subform. (joomla) -->
<field
type="subform"

View File

@ -105,6 +105,19 @@
readonly="true"
button="false"
/>
<!-- Clone_me Field. Type: Joomlacomponent. (custom) -->
<field
type="joomlacomponent"
name="clone_me"
label="COM_COMPONENTBUILDER_COMPONENT_PLACEHOLDERS_CLONE_ME_LABEL"
class="list_class"
multiple="false"
default="0"
required="false"
button="false"
/>
<!-- Note_how_to_clone Field. Type: Note. A None Database Field. (joomla) -->
<field type="note" name="note_how_to_clone" label="COM_COMPONENTBUILDER_COMPONENT_PLACEHOLDERS_NOTE_HOW_TO_CLONE_LABEL" description="COM_COMPONENTBUILDER_COMPONENT_PLACEHOLDERS_NOTE_HOW_TO_CLONE_DESCRIPTION" heading="h4" class="alert alert-info note_how_to_clone" />
<!-- Addplaceholders Field. Type: Subform. (joomla) -->
<field
type="subform"

View File

@ -105,6 +105,19 @@
readonly="true"
button="false"
/>
<!-- Clone_me Field. Type: Joomlacomponent. (custom) -->
<field
type="joomlacomponent"
name="clone_me"
label="COM_COMPONENTBUILDER_COMPONENT_PLUGINS_CLONE_ME_LABEL"
class="list_class"
multiple="false"
default="0"
required="false"
button="false"
/>
<!-- Note_how_to_clone Field. Type: Note. A None Database Field. (joomla) -->
<field type="note" name="note_how_to_clone" label="COM_COMPONENTBUILDER_COMPONENT_PLUGINS_NOTE_HOW_TO_CLONE_LABEL" description="COM_COMPONENTBUILDER_COMPONENT_PLUGINS_NOTE_HOW_TO_CLONE_DESCRIPTION" heading="h4" class="alert alert-info note_how_to_clone" />
<!-- Addjoomla_plugins Field. Type: Subform. (joomla) -->
<field
type="subform"

View File

@ -658,7 +658,7 @@
buttons="add,remove,move"
description="COM_COMPONENTBUILDER_JOOMLA_MODULE_FIELDS_DESCRIPTION"
icon="list"
max="50"
max="100"
nested_depth="1">
<form hidden="true" name="list_fields_modal" repeat="true">
<!-- Field Field. Type: Fields. (custom) -->

View File

@ -537,7 +537,7 @@
buttons="add,remove,move"
description="COM_COMPONENTBUILDER_JOOMLA_PLUGIN_FIELDS_DESCRIPTION"
icon="list"
max="50"
max="100"
nested_depth="1">
<form hidden="true" name="list_fields_modal" repeat="true">
<!-- Field Field. Type: Fields. (custom) -->

View File

@ -112,7 +112,7 @@ class ComponentbuilderModelJoomla_plugins extends JModelList
// extract the boilerplate class comment
$class['comment'] = ComponentbuilderHelper::extractBoilerplateClassComment($fooClass, $classExtends, 'plugins');
// set the extension type
$class['target_type'] = 'plugins';
$class['extension_type'] = 'plugins';
// store the class
$this->storePluginBoilerplate($tables['e'], $models['e'], $class, $app);
// work around

View File

@ -59,6 +59,14 @@ $componentParams = $this->params; // will be removed just use $this->params inst
</div>
<?php echo JHtml::_('bootstrap.endTab'); ?>
<?php echo JHtml::_('bootstrap.addTab', 'component_dashboardTab', 'clone', JText::_('COM_COMPONENTBUILDER_COMPONENT_DASHBOARD_CLONE', true)); ?>
<div class="row-fluid form-horizontal-desktop">
<div class="span12">
<?php echo JLayoutHelper::render('component_dashboard.clone_left', $this); ?>
</div>
</div>
<?php echo JHtml::_('bootstrap.endTab'); ?>
<?php $this->ignore_fieldsets = array('details','metadata','vdmmetadata','accesscontrol'); ?>
<?php $this->tab_name = 'component_dashboardTab'; ?>
<?php echo JLayoutHelper::render('joomla.edit.params', $this); ?>

View File

@ -69,6 +69,14 @@ $componentParams = $this->params; // will be removed just use $this->params inst
</div>
<?php echo JHtml::_('bootstrap.endTab'); ?>
<?php echo JHtml::_('bootstrap.addTab', 'component_files_foldersTab', 'clone', JText::_('COM_COMPONENTBUILDER_COMPONENT_FILES_FOLDERS_CLONE', true)); ?>
<div class="row-fluid form-horizontal-desktop">
<div class="span12">
<?php echo JLayoutHelper::render('component_files_folders.clone_left', $this); ?>
</div>
</div>
<?php echo JHtml::_('bootstrap.endTab'); ?>
<?php $this->ignore_fieldsets = array('details','metadata','vdmmetadata','accesscontrol'); ?>
<?php $this->tab_name = 'component_files_foldersTab'; ?>
<?php echo JLayoutHelper::render('joomla.edit.params', $this); ?>

View File

@ -59,6 +59,14 @@ $componentParams = $this->params; // will be removed just use $this->params inst
</div>
<?php echo JHtml::_('bootstrap.endTab'); ?>
<?php echo JHtml::_('bootstrap.addTab', 'component_modulesTab', 'clone', JText::_('COM_COMPONENTBUILDER_COMPONENT_MODULES_CLONE', true)); ?>
<div class="row-fluid form-horizontal-desktop">
<div class="span12">
<?php echo JLayoutHelper::render('component_modules.clone_left', $this); ?>
</div>
</div>
<?php echo JHtml::_('bootstrap.endTab'); ?>
<?php $this->ignore_fieldsets = array('details','metadata','vdmmetadata','accesscontrol'); ?>
<?php $this->tab_name = 'component_modulesTab'; ?>
<?php echo JLayoutHelper::render('joomla.edit.params', $this); ?>

View File

@ -59,6 +59,14 @@ $componentParams = $this->params; // will be removed just use $this->params inst
</div>
<?php echo JHtml::_('bootstrap.endTab'); ?>
<?php echo JHtml::_('bootstrap.addTab', 'component_placeholdersTab', 'clone', JText::_('COM_COMPONENTBUILDER_COMPONENT_PLACEHOLDERS_CLONE', true)); ?>
<div class="row-fluid form-horizontal-desktop">
<div class="span12">
<?php echo JLayoutHelper::render('component_placeholders.clone_left', $this); ?>
</div>
</div>
<?php echo JHtml::_('bootstrap.endTab'); ?>
<?php $this->ignore_fieldsets = array('details','metadata','vdmmetadata','accesscontrol'); ?>
<?php $this->tab_name = 'component_placeholdersTab'; ?>
<?php echo JLayoutHelper::render('joomla.edit.params', $this); ?>

View File

@ -59,6 +59,14 @@ $componentParams = $this->params; // will be removed just use $this->params inst
</div>
<?php echo JHtml::_('bootstrap.endTab'); ?>
<?php echo JHtml::_('bootstrap.addTab', 'component_pluginsTab', 'clone', JText::_('COM_COMPONENTBUILDER_COMPONENT_PLUGINS_CLONE', true)); ?>
<div class="row-fluid form-horizontal-desktop">
<div class="span12">
<?php echo JLayoutHelper::render('component_plugins.clone_left', $this); ?>
</div>
</div>
<?php echo JHtml::_('bootstrap.endTab'); ?>
<?php $this->ignore_fieldsets = array('details','metadata','vdmmetadata','accesscontrol'); ?>
<?php $this->tab_name = 'component_pluginsTab'; ?>
<?php echo JLayoutHelper::render('joomla.edit.params', $this); ?>

View File

@ -1,15 +1,15 @@
<?xml version="1.0" encoding="utf-8"?>
<extension type="component" version="4" method="upgrade">
<name>COM_COMPONENTBUILDER</name>
<creationDate>21st December, 2021</creationDate>
<creationDate>15th January, 2022</creationDate>
<author>Llewellyn van der Merwe</author>
<authorEmail>llewellyn@joomlacomponentbuilder.com</authorEmail>
<authorUrl>http://www.joomlacomponentbuilder.com</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>2.12.14</version>
<version>2.12.15</version>
<description><![CDATA[
<h1>Component Builder (v.2.12.14)</h1>
<h1>Component Builder (v.2.12.15)</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

@ -1041,10 +1041,10 @@
<description>Builds Complex Joomla Components</description>
<element>com_componentbuilder</element>
<type>component</type>
<version>2.12.14</version>
<version>2.12.15</version>
<infourl title="Component Builder!">http://www.joomlacomponentbuilder.com</infourl>
<downloads>
<downloadurl type="full" format="zip">https://github.com/vdm-io/Joomla-Component-Builder/releases/download/v2.12.14/JCB_v2.12.14.zip</downloadurl>
<downloadurl type="full" format="zip">https://github.com/vdm-io/Joomla-Component-Builder/releases/download/v2.12.15/JCB_v2.12.15.zip</downloadurl>
</downloads>
<tags>
<tag>stable</tag>

File diff suppressed because one or more lines are too long

View File

@ -6450,7 +6450,7 @@ class com_componentbuilderInstallerScript
$component_dashboard->table = '{"special": {"dbtable": "#__componentbuilder_component_dashboard","key": "id","type": "Component_dashboard","prefix": "componentbuilderTable","config": "array()"},"common": {"dbtable": "#__ucm_content","key": "ucm_id","type": "Corecontent","prefix": "JTable","config": "array()"}}';
$component_dashboard->field_mappings = '{"common": {"core_content_item_id": "id","core_title": "joomla_component","core_state": "published","core_alias": "null","core_created_time": "created","core_modified_time": "modified","core_body": "null","core_hits": "hits","core_publish_up": "null","core_publish_down": "null","core_access": "access","core_params": "params","core_featured": "null","core_metadata": "null","core_language": "null","core_images": "null","core_urls": "null","core_version": "version","core_ordering": "ordering","core_metakey": "null","core_metadesc": "null","core_catid": "null","core_xreference": "null","asset_id": "asset_id"},"special": {"joomla_component":"joomla_component","php_dashboard_methods":"php_dashboard_methods"}}';
$component_dashboard->router = 'ComponentbuilderHelperRoute::getComponent_dashboardRoute';
$component_dashboard->content_history_options = '{"formFile": "administrator/components/com_componentbuilder/models/forms/component_dashboard.xml","hideFields": ["asset_id","checked_out","checked_out_time","version"],"ignoreChanges": ["modified_by","modified","checked_out","checked_out_time","version","hits"],"convertToInt": ["published","ordering","joomla_component"],"displayLookup": [{"sourceColumn": "created_by","targetTable": "#__users","targetColumn": "id","displayColumn": "name"},{"sourceColumn": "access","targetTable": "#__viewlevels","targetColumn": "id","displayColumn": "title"},{"sourceColumn": "modified_by","targetTable": "#__users","targetColumn": "id","displayColumn": "name"},{"sourceColumn": "joomla_component","targetTable": "#__componentbuilder_joomla_component","targetColumn": "id","displayColumn": "system_name"}]}';
$component_dashboard->content_history_options = '{"formFile": "administrator/components/com_componentbuilder/models/forms/component_dashboard.xml","hideFields": ["asset_id","checked_out","checked_out_time","version"],"ignoreChanges": ["modified_by","modified","checked_out","checked_out_time","version","hits"],"convertToInt": ["published","ordering","joomla_component"],"displayLookup": [{"sourceColumn": "created_by","targetTable": "#__users","targetColumn": "id","displayColumn": "name"},{"sourceColumn": "access","targetTable": "#__viewlevels","targetColumn": "id","displayColumn": "title"},{"sourceColumn": "modified_by","targetTable": "#__users","targetColumn": "id","displayColumn": "name"},{"sourceColumn": "joomla_component","targetTable": "#__componentbuilder_joomla_component","targetColumn": "id","displayColumn": "system_name"},{"sourceColumn": "clone_me","targetTable": "#__componentbuilder_joomla_component","targetColumn": "id","displayColumn": "system_name"}]}';
// Set the object into the content types table.
$component_dashboard_Inserted = $db->insertObject('#__content_types', $component_dashboard);
@ -6462,7 +6462,7 @@ class com_componentbuilderInstallerScript
$component_files_folders->table = '{"special": {"dbtable": "#__componentbuilder_component_files_folders","key": "id","type": "Component_files_folders","prefix": "componentbuilderTable","config": "array()"},"common": {"dbtable": "#__ucm_content","key": "ucm_id","type": "Corecontent","prefix": "JTable","config": "array()"}}';
$component_files_folders->field_mappings = '{"common": {"core_content_item_id": "id","core_title": "joomla_component","core_state": "published","core_alias": "null","core_created_time": "created","core_modified_time": "modified","core_body": "null","core_hits": "hits","core_publish_up": "null","core_publish_down": "null","core_access": "access","core_params": "params","core_featured": "null","core_metadata": "null","core_language": "null","core_images": "null","core_urls": "null","core_version": "version","core_ordering": "ordering","core_metakey": "null","core_metadesc": "null","core_catid": "null","core_xreference": "null","asset_id": "asset_id"},"special": {"joomla_component":"joomla_component"}}';
$component_files_folders->router = 'ComponentbuilderHelperRoute::getComponent_files_foldersRoute';
$component_files_folders->content_history_options = '{"formFile": "administrator/components/com_componentbuilder/models/forms/component_files_folders.xml","hideFields": ["asset_id","checked_out","checked_out_time","version"],"ignoreChanges": ["modified_by","modified","checked_out","checked_out_time","version","hits"],"convertToInt": ["published","ordering","joomla_component"],"displayLookup": [{"sourceColumn": "created_by","targetTable": "#__users","targetColumn": "id","displayColumn": "name"},{"sourceColumn": "access","targetTable": "#__viewlevels","targetColumn": "id","displayColumn": "title"},{"sourceColumn": "modified_by","targetTable": "#__users","targetColumn": "id","displayColumn": "name"},{"sourceColumn": "joomla_component","targetTable": "#__componentbuilder_joomla_component","targetColumn": "id","displayColumn": "system_name"}]}';
$component_files_folders->content_history_options = '{"formFile": "administrator/components/com_componentbuilder/models/forms/component_files_folders.xml","hideFields": ["asset_id","checked_out","checked_out_time","version"],"ignoreChanges": ["modified_by","modified","checked_out","checked_out_time","version","hits"],"convertToInt": ["published","ordering","joomla_component"],"displayLookup": [{"sourceColumn": "created_by","targetTable": "#__users","targetColumn": "id","displayColumn": "name"},{"sourceColumn": "access","targetTable": "#__viewlevels","targetColumn": "id","displayColumn": "title"},{"sourceColumn": "modified_by","targetTable": "#__users","targetColumn": "id","displayColumn": "name"},{"sourceColumn": "joomla_component","targetTable": "#__componentbuilder_joomla_component","targetColumn": "id","displayColumn": "system_name"},{"sourceColumn": "clone_me","targetTable": "#__componentbuilder_joomla_component","targetColumn": "id","displayColumn": "system_name"}]}';
// Set the object into the content types table.
$component_files_folders_Inserted = $db->insertObject('#__content_types', $component_files_folders);
@ -6474,7 +6474,7 @@ class com_componentbuilderInstallerScript
$component_placeholders->table = '{"special": {"dbtable": "#__componentbuilder_component_placeholders","key": "id","type": "Component_placeholders","prefix": "componentbuilderTable","config": "array()"},"common": {"dbtable": "#__ucm_content","key": "ucm_id","type": "Corecontent","prefix": "JTable","config": "array()"}}';
$component_placeholders->field_mappings = '{"common": {"core_content_item_id": "id","core_title": "joomla_component","core_state": "published","core_alias": "null","core_created_time": "created","core_modified_time": "modified","core_body": "null","core_hits": "hits","core_publish_up": "null","core_publish_down": "null","core_access": "access","core_params": "params","core_featured": "null","core_metadata": "null","core_language": "null","core_images": "null","core_urls": "null","core_version": "version","core_ordering": "ordering","core_metakey": "null","core_metadesc": "null","core_catid": "null","core_xreference": "null","asset_id": "asset_id"},"special": {"joomla_component":"joomla_component"}}';
$component_placeholders->router = 'ComponentbuilderHelperRoute::getComponent_placeholdersRoute';
$component_placeholders->content_history_options = '{"formFile": "administrator/components/com_componentbuilder/models/forms/component_placeholders.xml","hideFields": ["asset_id","checked_out","checked_out_time","version"],"ignoreChanges": ["modified_by","modified","checked_out","checked_out_time","version","hits"],"convertToInt": ["published","ordering","joomla_component"],"displayLookup": [{"sourceColumn": "created_by","targetTable": "#__users","targetColumn": "id","displayColumn": "name"},{"sourceColumn": "access","targetTable": "#__viewlevels","targetColumn": "id","displayColumn": "title"},{"sourceColumn": "modified_by","targetTable": "#__users","targetColumn": "id","displayColumn": "name"},{"sourceColumn": "joomla_component","targetTable": "#__componentbuilder_joomla_component","targetColumn": "id","displayColumn": "system_name"}]}';
$component_placeholders->content_history_options = '{"formFile": "administrator/components/com_componentbuilder/models/forms/component_placeholders.xml","hideFields": ["asset_id","checked_out","checked_out_time","version"],"ignoreChanges": ["modified_by","modified","checked_out","checked_out_time","version","hits"],"convertToInt": ["published","ordering","joomla_component"],"displayLookup": [{"sourceColumn": "created_by","targetTable": "#__users","targetColumn": "id","displayColumn": "name"},{"sourceColumn": "access","targetTable": "#__viewlevels","targetColumn": "id","displayColumn": "title"},{"sourceColumn": "modified_by","targetTable": "#__users","targetColumn": "id","displayColumn": "name"},{"sourceColumn": "joomla_component","targetTable": "#__componentbuilder_joomla_component","targetColumn": "id","displayColumn": "system_name"},{"sourceColumn": "clone_me","targetTable": "#__componentbuilder_joomla_component","targetColumn": "id","displayColumn": "system_name"}]}';
// Set the object into the content types table.
$component_placeholders_Inserted = $db->insertObject('#__content_types', $component_placeholders);
@ -6486,7 +6486,7 @@ class com_componentbuilderInstallerScript
$component_plugins->table = '{"special": {"dbtable": "#__componentbuilder_component_plugins","key": "id","type": "Component_plugins","prefix": "componentbuilderTable","config": "array()"},"common": {"dbtable": "#__ucm_content","key": "ucm_id","type": "Corecontent","prefix": "JTable","config": "array()"}}';
$component_plugins->field_mappings = '{"common": {"core_content_item_id": "id","core_title": "joomla_component","core_state": "published","core_alias": "null","core_created_time": "created","core_modified_time": "modified","core_body": "null","core_hits": "hits","core_publish_up": "null","core_publish_down": "null","core_access": "access","core_params": "params","core_featured": "null","core_metadata": "null","core_language": "null","core_images": "null","core_urls": "null","core_version": "version","core_ordering": "ordering","core_metakey": "null","core_metadesc": "null","core_catid": "null","core_xreference": "null","asset_id": "asset_id"},"special": {"joomla_component":"joomla_component"}}';
$component_plugins->router = 'ComponentbuilderHelperRoute::getComponent_pluginsRoute';
$component_plugins->content_history_options = '{"formFile": "administrator/components/com_componentbuilder/models/forms/component_plugins.xml","hideFields": ["asset_id","checked_out","checked_out_time","version"],"ignoreChanges": ["modified_by","modified","checked_out","checked_out_time","version","hits"],"convertToInt": ["published","ordering","joomla_component"],"displayLookup": [{"sourceColumn": "created_by","targetTable": "#__users","targetColumn": "id","displayColumn": "name"},{"sourceColumn": "access","targetTable": "#__viewlevels","targetColumn": "id","displayColumn": "title"},{"sourceColumn": "modified_by","targetTable": "#__users","targetColumn": "id","displayColumn": "name"},{"sourceColumn": "joomla_component","targetTable": "#__componentbuilder_joomla_component","targetColumn": "id","displayColumn": "system_name"}]}';
$component_plugins->content_history_options = '{"formFile": "administrator/components/com_componentbuilder/models/forms/component_plugins.xml","hideFields": ["asset_id","checked_out","checked_out_time","version"],"ignoreChanges": ["modified_by","modified","checked_out","checked_out_time","version","hits"],"convertToInt": ["published","ordering","joomla_component"],"displayLookup": [{"sourceColumn": "created_by","targetTable": "#__users","targetColumn": "id","displayColumn": "name"},{"sourceColumn": "access","targetTable": "#__viewlevels","targetColumn": "id","displayColumn": "title"},{"sourceColumn": "modified_by","targetTable": "#__users","targetColumn": "id","displayColumn": "name"},{"sourceColumn": "joomla_component","targetTable": "#__componentbuilder_joomla_component","targetColumn": "id","displayColumn": "system_name"},{"sourceColumn": "clone_me","targetTable": "#__componentbuilder_joomla_component","targetColumn": "id","displayColumn": "system_name"}]}';
// Set the object into the content types table.
$component_plugins_Inserted = $db->insertObject('#__content_types', $component_plugins);
@ -6498,7 +6498,7 @@ class com_componentbuilderInstallerScript
$component_modules->table = '{"special": {"dbtable": "#__componentbuilder_component_modules","key": "id","type": "Component_modules","prefix": "componentbuilderTable","config": "array()"},"common": {"dbtable": "#__ucm_content","key": "ucm_id","type": "Corecontent","prefix": "JTable","config": "array()"}}';
$component_modules->field_mappings = '{"common": {"core_content_item_id": "id","core_title": "joomla_component","core_state": "published","core_alias": "null","core_created_time": "created","core_modified_time": "modified","core_body": "null","core_hits": "hits","core_publish_up": "null","core_publish_down": "null","core_access": "access","core_params": "params","core_featured": "null","core_metadata": "null","core_language": "null","core_images": "null","core_urls": "null","core_version": "version","core_ordering": "ordering","core_metakey": "null","core_metadesc": "null","core_catid": "null","core_xreference": "null","asset_id": "asset_id"},"special": {"joomla_component":"joomla_component"}}';
$component_modules->router = 'ComponentbuilderHelperRoute::getComponent_modulesRoute';
$component_modules->content_history_options = '{"formFile": "administrator/components/com_componentbuilder/models/forms/component_modules.xml","hideFields": ["asset_id","checked_out","checked_out_time","version"],"ignoreChanges": ["modified_by","modified","checked_out","checked_out_time","version","hits"],"convertToInt": ["published","ordering","joomla_component"],"displayLookup": [{"sourceColumn": "created_by","targetTable": "#__users","targetColumn": "id","displayColumn": "name"},{"sourceColumn": "access","targetTable": "#__viewlevels","targetColumn": "id","displayColumn": "title"},{"sourceColumn": "modified_by","targetTable": "#__users","targetColumn": "id","displayColumn": "name"},{"sourceColumn": "joomla_component","targetTable": "#__componentbuilder_joomla_component","targetColumn": "id","displayColumn": "system_name"}]}';
$component_modules->content_history_options = '{"formFile": "administrator/components/com_componentbuilder/models/forms/component_modules.xml","hideFields": ["asset_id","checked_out","checked_out_time","version"],"ignoreChanges": ["modified_by","modified","checked_out","checked_out_time","version","hits"],"convertToInt": ["published","ordering","joomla_component"],"displayLookup": [{"sourceColumn": "created_by","targetTable": "#__users","targetColumn": "id","displayColumn": "name"},{"sourceColumn": "access","targetTable": "#__viewlevels","targetColumn": "id","displayColumn": "title"},{"sourceColumn": "modified_by","targetTable": "#__users","targetColumn": "id","displayColumn": "name"},{"sourceColumn": "joomla_component","targetTable": "#__componentbuilder_joomla_component","targetColumn": "id","displayColumn": "system_name"},{"sourceColumn": "clone_me","targetTable": "#__componentbuilder_joomla_component","targetColumn": "id","displayColumn": "system_name"}]}';
// Set the object into the content types table.
$component_modules_Inserted = $db->insertObject('#__content_types', $component_modules);
@ -8486,7 +8486,7 @@ class com_componentbuilderInstallerScript
$component_dashboard->table = '{"special": {"dbtable": "#__componentbuilder_component_dashboard","key": "id","type": "Component_dashboard","prefix": "componentbuilderTable","config": "array()"},"common": {"dbtable": "#__ucm_content","key": "ucm_id","type": "Corecontent","prefix": "JTable","config": "array()"}}';
$component_dashboard->field_mappings = '{"common": {"core_content_item_id": "id","core_title": "joomla_component","core_state": "published","core_alias": "null","core_created_time": "created","core_modified_time": "modified","core_body": "null","core_hits": "hits","core_publish_up": "null","core_publish_down": "null","core_access": "access","core_params": "params","core_featured": "null","core_metadata": "null","core_language": "null","core_images": "null","core_urls": "null","core_version": "version","core_ordering": "ordering","core_metakey": "null","core_metadesc": "null","core_catid": "null","core_xreference": "null","asset_id": "asset_id"},"special": {"joomla_component":"joomla_component","php_dashboard_methods":"php_dashboard_methods"}}';
$component_dashboard->router = 'ComponentbuilderHelperRoute::getComponent_dashboardRoute';
$component_dashboard->content_history_options = '{"formFile": "administrator/components/com_componentbuilder/models/forms/component_dashboard.xml","hideFields": ["asset_id","checked_out","checked_out_time","version"],"ignoreChanges": ["modified_by","modified","checked_out","checked_out_time","version","hits"],"convertToInt": ["published","ordering","joomla_component"],"displayLookup": [{"sourceColumn": "created_by","targetTable": "#__users","targetColumn": "id","displayColumn": "name"},{"sourceColumn": "access","targetTable": "#__viewlevels","targetColumn": "id","displayColumn": "title"},{"sourceColumn": "modified_by","targetTable": "#__users","targetColumn": "id","displayColumn": "name"},{"sourceColumn": "joomla_component","targetTable": "#__componentbuilder_joomla_component","targetColumn": "id","displayColumn": "system_name"}]}';
$component_dashboard->content_history_options = '{"formFile": "administrator/components/com_componentbuilder/models/forms/component_dashboard.xml","hideFields": ["asset_id","checked_out","checked_out_time","version"],"ignoreChanges": ["modified_by","modified","checked_out","checked_out_time","version","hits"],"convertToInt": ["published","ordering","joomla_component"],"displayLookup": [{"sourceColumn": "created_by","targetTable": "#__users","targetColumn": "id","displayColumn": "name"},{"sourceColumn": "access","targetTable": "#__viewlevels","targetColumn": "id","displayColumn": "title"},{"sourceColumn": "modified_by","targetTable": "#__users","targetColumn": "id","displayColumn": "name"},{"sourceColumn": "joomla_component","targetTable": "#__componentbuilder_joomla_component","targetColumn": "id","displayColumn": "system_name"},{"sourceColumn": "clone_me","targetTable": "#__componentbuilder_joomla_component","targetColumn": "id","displayColumn": "system_name"}]}';
// Check if component_dashboard type is already in content_type DB.
$component_dashboard_id = null;
@ -8515,7 +8515,7 @@ class com_componentbuilderInstallerScript
$component_files_folders->table = '{"special": {"dbtable": "#__componentbuilder_component_files_folders","key": "id","type": "Component_files_folders","prefix": "componentbuilderTable","config": "array()"},"common": {"dbtable": "#__ucm_content","key": "ucm_id","type": "Corecontent","prefix": "JTable","config": "array()"}}';
$component_files_folders->field_mappings = '{"common": {"core_content_item_id": "id","core_title": "joomla_component","core_state": "published","core_alias": "null","core_created_time": "created","core_modified_time": "modified","core_body": "null","core_hits": "hits","core_publish_up": "null","core_publish_down": "null","core_access": "access","core_params": "params","core_featured": "null","core_metadata": "null","core_language": "null","core_images": "null","core_urls": "null","core_version": "version","core_ordering": "ordering","core_metakey": "null","core_metadesc": "null","core_catid": "null","core_xreference": "null","asset_id": "asset_id"},"special": {"joomla_component":"joomla_component"}}';
$component_files_folders->router = 'ComponentbuilderHelperRoute::getComponent_files_foldersRoute';
$component_files_folders->content_history_options = '{"formFile": "administrator/components/com_componentbuilder/models/forms/component_files_folders.xml","hideFields": ["asset_id","checked_out","checked_out_time","version"],"ignoreChanges": ["modified_by","modified","checked_out","checked_out_time","version","hits"],"convertToInt": ["published","ordering","joomla_component"],"displayLookup": [{"sourceColumn": "created_by","targetTable": "#__users","targetColumn": "id","displayColumn": "name"},{"sourceColumn": "access","targetTable": "#__viewlevels","targetColumn": "id","displayColumn": "title"},{"sourceColumn": "modified_by","targetTable": "#__users","targetColumn": "id","displayColumn": "name"},{"sourceColumn": "joomla_component","targetTable": "#__componentbuilder_joomla_component","targetColumn": "id","displayColumn": "system_name"}]}';
$component_files_folders->content_history_options = '{"formFile": "administrator/components/com_componentbuilder/models/forms/component_files_folders.xml","hideFields": ["asset_id","checked_out","checked_out_time","version"],"ignoreChanges": ["modified_by","modified","checked_out","checked_out_time","version","hits"],"convertToInt": ["published","ordering","joomla_component"],"displayLookup": [{"sourceColumn": "created_by","targetTable": "#__users","targetColumn": "id","displayColumn": "name"},{"sourceColumn": "access","targetTable": "#__viewlevels","targetColumn": "id","displayColumn": "title"},{"sourceColumn": "modified_by","targetTable": "#__users","targetColumn": "id","displayColumn": "name"},{"sourceColumn": "joomla_component","targetTable": "#__componentbuilder_joomla_component","targetColumn": "id","displayColumn": "system_name"},{"sourceColumn": "clone_me","targetTable": "#__componentbuilder_joomla_component","targetColumn": "id","displayColumn": "system_name"}]}';
// Check if component_files_folders type is already in content_type DB.
$component_files_folders_id = null;
@ -8544,7 +8544,7 @@ class com_componentbuilderInstallerScript
$component_placeholders->table = '{"special": {"dbtable": "#__componentbuilder_component_placeholders","key": "id","type": "Component_placeholders","prefix": "componentbuilderTable","config": "array()"},"common": {"dbtable": "#__ucm_content","key": "ucm_id","type": "Corecontent","prefix": "JTable","config": "array()"}}';
$component_placeholders->field_mappings = '{"common": {"core_content_item_id": "id","core_title": "joomla_component","core_state": "published","core_alias": "null","core_created_time": "created","core_modified_time": "modified","core_body": "null","core_hits": "hits","core_publish_up": "null","core_publish_down": "null","core_access": "access","core_params": "params","core_featured": "null","core_metadata": "null","core_language": "null","core_images": "null","core_urls": "null","core_version": "version","core_ordering": "ordering","core_metakey": "null","core_metadesc": "null","core_catid": "null","core_xreference": "null","asset_id": "asset_id"},"special": {"joomla_component":"joomla_component"}}';
$component_placeholders->router = 'ComponentbuilderHelperRoute::getComponent_placeholdersRoute';
$component_placeholders->content_history_options = '{"formFile": "administrator/components/com_componentbuilder/models/forms/component_placeholders.xml","hideFields": ["asset_id","checked_out","checked_out_time","version"],"ignoreChanges": ["modified_by","modified","checked_out","checked_out_time","version","hits"],"convertToInt": ["published","ordering","joomla_component"],"displayLookup": [{"sourceColumn": "created_by","targetTable": "#__users","targetColumn": "id","displayColumn": "name"},{"sourceColumn": "access","targetTable": "#__viewlevels","targetColumn": "id","displayColumn": "title"},{"sourceColumn": "modified_by","targetTable": "#__users","targetColumn": "id","displayColumn": "name"},{"sourceColumn": "joomla_component","targetTable": "#__componentbuilder_joomla_component","targetColumn": "id","displayColumn": "system_name"}]}';
$component_placeholders->content_history_options = '{"formFile": "administrator/components/com_componentbuilder/models/forms/component_placeholders.xml","hideFields": ["asset_id","checked_out","checked_out_time","version"],"ignoreChanges": ["modified_by","modified","checked_out","checked_out_time","version","hits"],"convertToInt": ["published","ordering","joomla_component"],"displayLookup": [{"sourceColumn": "created_by","targetTable": "#__users","targetColumn": "id","displayColumn": "name"},{"sourceColumn": "access","targetTable": "#__viewlevels","targetColumn": "id","displayColumn": "title"},{"sourceColumn": "modified_by","targetTable": "#__users","targetColumn": "id","displayColumn": "name"},{"sourceColumn": "joomla_component","targetTable": "#__componentbuilder_joomla_component","targetColumn": "id","displayColumn": "system_name"},{"sourceColumn": "clone_me","targetTable": "#__componentbuilder_joomla_component","targetColumn": "id","displayColumn": "system_name"}]}';
// Check if component_placeholders type is already in content_type DB.
$component_placeholders_id = null;
@ -8573,7 +8573,7 @@ class com_componentbuilderInstallerScript
$component_plugins->table = '{"special": {"dbtable": "#__componentbuilder_component_plugins","key": "id","type": "Component_plugins","prefix": "componentbuilderTable","config": "array()"},"common": {"dbtable": "#__ucm_content","key": "ucm_id","type": "Corecontent","prefix": "JTable","config": "array()"}}';
$component_plugins->field_mappings = '{"common": {"core_content_item_id": "id","core_title": "joomla_component","core_state": "published","core_alias": "null","core_created_time": "created","core_modified_time": "modified","core_body": "null","core_hits": "hits","core_publish_up": "null","core_publish_down": "null","core_access": "access","core_params": "params","core_featured": "null","core_metadata": "null","core_language": "null","core_images": "null","core_urls": "null","core_version": "version","core_ordering": "ordering","core_metakey": "null","core_metadesc": "null","core_catid": "null","core_xreference": "null","asset_id": "asset_id"},"special": {"joomla_component":"joomla_component"}}';
$component_plugins->router = 'ComponentbuilderHelperRoute::getComponent_pluginsRoute';
$component_plugins->content_history_options = '{"formFile": "administrator/components/com_componentbuilder/models/forms/component_plugins.xml","hideFields": ["asset_id","checked_out","checked_out_time","version"],"ignoreChanges": ["modified_by","modified","checked_out","checked_out_time","version","hits"],"convertToInt": ["published","ordering","joomla_component"],"displayLookup": [{"sourceColumn": "created_by","targetTable": "#__users","targetColumn": "id","displayColumn": "name"},{"sourceColumn": "access","targetTable": "#__viewlevels","targetColumn": "id","displayColumn": "title"},{"sourceColumn": "modified_by","targetTable": "#__users","targetColumn": "id","displayColumn": "name"},{"sourceColumn": "joomla_component","targetTable": "#__componentbuilder_joomla_component","targetColumn": "id","displayColumn": "system_name"}]}';
$component_plugins->content_history_options = '{"formFile": "administrator/components/com_componentbuilder/models/forms/component_plugins.xml","hideFields": ["asset_id","checked_out","checked_out_time","version"],"ignoreChanges": ["modified_by","modified","checked_out","checked_out_time","version","hits"],"convertToInt": ["published","ordering","joomla_component"],"displayLookup": [{"sourceColumn": "created_by","targetTable": "#__users","targetColumn": "id","displayColumn": "name"},{"sourceColumn": "access","targetTable": "#__viewlevels","targetColumn": "id","displayColumn": "title"},{"sourceColumn": "modified_by","targetTable": "#__users","targetColumn": "id","displayColumn": "name"},{"sourceColumn": "joomla_component","targetTable": "#__componentbuilder_joomla_component","targetColumn": "id","displayColumn": "system_name"},{"sourceColumn": "clone_me","targetTable": "#__componentbuilder_joomla_component","targetColumn": "id","displayColumn": "system_name"}]}';
// Check if component_plugins type is already in content_type DB.
$component_plugins_id = null;
@ -8602,7 +8602,7 @@ class com_componentbuilderInstallerScript
$component_modules->table = '{"special": {"dbtable": "#__componentbuilder_component_modules","key": "id","type": "Component_modules","prefix": "componentbuilderTable","config": "array()"},"common": {"dbtable": "#__ucm_content","key": "ucm_id","type": "Corecontent","prefix": "JTable","config": "array()"}}';
$component_modules->field_mappings = '{"common": {"core_content_item_id": "id","core_title": "joomla_component","core_state": "published","core_alias": "null","core_created_time": "created","core_modified_time": "modified","core_body": "null","core_hits": "hits","core_publish_up": "null","core_publish_down": "null","core_access": "access","core_params": "params","core_featured": "null","core_metadata": "null","core_language": "null","core_images": "null","core_urls": "null","core_version": "version","core_ordering": "ordering","core_metakey": "null","core_metadesc": "null","core_catid": "null","core_xreference": "null","asset_id": "asset_id"},"special": {"joomla_component":"joomla_component"}}';
$component_modules->router = 'ComponentbuilderHelperRoute::getComponent_modulesRoute';
$component_modules->content_history_options = '{"formFile": "administrator/components/com_componentbuilder/models/forms/component_modules.xml","hideFields": ["asset_id","checked_out","checked_out_time","version"],"ignoreChanges": ["modified_by","modified","checked_out","checked_out_time","version","hits"],"convertToInt": ["published","ordering","joomla_component"],"displayLookup": [{"sourceColumn": "created_by","targetTable": "#__users","targetColumn": "id","displayColumn": "name"},{"sourceColumn": "access","targetTable": "#__viewlevels","targetColumn": "id","displayColumn": "title"},{"sourceColumn": "modified_by","targetTable": "#__users","targetColumn": "id","displayColumn": "name"},{"sourceColumn": "joomla_component","targetTable": "#__componentbuilder_joomla_component","targetColumn": "id","displayColumn": "system_name"}]}';
$component_modules->content_history_options = '{"formFile": "administrator/components/com_componentbuilder/models/forms/component_modules.xml","hideFields": ["asset_id","checked_out","checked_out_time","version"],"ignoreChanges": ["modified_by","modified","checked_out","checked_out_time","version","hits"],"convertToInt": ["published","ordering","joomla_component"],"displayLookup": [{"sourceColumn": "created_by","targetTable": "#__users","targetColumn": "id","displayColumn": "name"},{"sourceColumn": "access","targetTable": "#__viewlevels","targetColumn": "id","displayColumn": "title"},{"sourceColumn": "modified_by","targetTable": "#__users","targetColumn": "id","displayColumn": "name"},{"sourceColumn": "joomla_component","targetTable": "#__componentbuilder_joomla_component","targetColumn": "id","displayColumn": "system_name"},{"sourceColumn": "clone_me","targetTable": "#__componentbuilder_joomla_component","targetColumn": "id","displayColumn": "system_name"}]}';
// Check if component_modules type is already in content_type DB.
$component_modules_id = null;
@ -9254,7 +9254,7 @@ class com_componentbuilderInstallerScript
echo '<a target="_blank" href="http://www.joomlacomponentbuilder.com" title="Component Builder">
<img src="components/com_componentbuilder/assets/images/vdm-component.jpg"/>
</a>
<h3>Upgrade to Version 2.12.14 Was Successful! Let us know if anything is not working as expected.</h3>';
<h3>Upgrade to Version 2.12.15 Was Successful! Let us know if anything is not working as expected.</h3>';
// Set db if not set already.
if (!isset($db))

View File

@ -2058,7 +2058,7 @@ abstract class ComponentbuilderHelper
'hash' => '84478dfa0cd880395815e0ee026812a4',
'html' => '<a href="https://vdm.bz/jcb-sponsor-vdm" target="_blank" title="VDM a JCB sponsor | Because community matters..."><img class="jcb-sponsor-banner" alt="VDM a JCB sponsor | Because community matters..." src="[[[ROOT-URL]]]administrator/components/com_componentbuilder/assets/images/banner/vdm_jcb_sponsor_728_90.gif" width="728" height="90" border="0" /></a>'),
array(
'url' => 'https://allmycms.com/images/banners/agerix/agerix-loves-jcb-728-90.gif',
'url' => 'https://cms-experts.org/images/banners/agerix/agerix-loves-jcb-728-90.gif',
'hash' => 'b24c0726aa809cdcc04bcffe7e1e1529',
'html' => '<a href="https://vdm.bz/jcb-sponsor-agerix" target="_blank" title="Agerix a JCB sponsor | Because community matters..."><img class="jcb-sponsor-banner" alt="Agerix a JCB sponsor | Because community matters..." src="[[[ROOT-URL]]]administrator/components/com_componentbuilder/assets/images/banner/agerix-loves-jcb-728-90.gif" width="728" height="90" border="0" /></a>')
),