From 3a27038164216663d37dd428c482aba52f9cac6b Mon Sep 17 00:00:00 2001 From: Llewellyn van der Merwe Date: Wed, 14 Aug 2019 13:45:49 +0200 Subject: [PATCH] Stable release v2.10.0 --- README.md | 8 +- admin/README.txt | 8 +- .../en-GB/en-GB.com_componentbuilder.ini | 4 +- admin/models/admin_view.php | 162 +++++++++--------- admin/models/ajax.php | 8 +- componentbuilder.xml | 6 +- componentbuilder_update_server.xml | 14 +- script.php | 2 +- 8 files changed, 110 insertions(+), 102 deletions(-) diff --git a/README.md b/README.md index 29745c3e4..b2a1ea926 100644 --- a/README.md +++ b/README.md @@ -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 safe 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.9.36) 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.10.0) 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) @@ -146,11 +146,11 @@ 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*: 13th August, 2019 -+ *Version*: 2.9.36 ++ *Last Build*: 14th August, 2019 ++ *Version*: 2.10.0 + *Copyright*: Copyright (C) 2015 - 2019 Vast Development Method. All rights reserved. + *License*: GNU General Public License version 2 or later; see LICENSE.txt -+ *Line count*: **246440** ++ *Line count*: **246448** + *Field count*: **1319** + *File count*: **1595** + *Folder count*: **244** diff --git a/admin/README.txt b/admin/README.txt index 29745c3e4..b2a1ea926 100644 --- a/admin/README.txt +++ b/admin/README.txt @@ -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 safe 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.9.36) 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.10.0) 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) @@ -146,11 +146,11 @@ 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*: 13th August, 2019 -+ *Version*: 2.9.36 ++ *Last Build*: 14th August, 2019 ++ *Version*: 2.10.0 + *Copyright*: Copyright (C) 2015 - 2019 Vast Development Method. All rights reserved. + *License*: GNU General Public License version 2 or later; see LICENSE.txt -+ *Line count*: **246440** ++ *Line count*: **246448** + *Field count*: **1319** + *File count*: **1595** + *Folder count*: **244** diff --git a/admin/language/en-GB/en-GB.com_componentbuilder.ini b/admin/language/en-GB/en-GB.com_componentbuilder.ini index 85911efec..0c0f74f62 100644 --- a/admin/language/en-GB/en-GB.com_componentbuilder.ini +++ b/admin/language/en-GB/en-GB.com_componentbuilder.ini @@ -7082,6 +7082,8 @@ COM_COMPONENTBUILDER_NO_S_HAVE_BEEN_LINKED_TO_THIS_VIEW_SOON_AS_THIS_IS_DONE_IT_ COM_COMPONENTBUILDER_NO_TYPE="No Type" COM_COMPONENTBUILDER_NO_VALIDATION_RULES_FOUND="No validation rules found." COM_COMPONENTBUILDER_OFFICIAL_VDM_PACKAGES="Official VDM Packages" +COM_COMPONENTBUILDER_ONLY_IN_ADMIN_LIST_VIEW="Only in Admin List View" +COM_COMPONENTBUILDER_ONLY_IN_LINKED_LIST_VIEWS="Only in Linked List Views" COM_COMPONENTBUILDER_ONLY_ONE_COMPONENT_CAN_BE_CLONED_AT_A_TIME_PLEASE_SELECT_ONE_AND_TRY_AGAIN="Only one component can be cloned at a time, please select one and try again!" COM_COMPONENTBUILDER_ONLY_SZIP_FILE_WAS_REMOVED_THE_FROM_TMP_FOLDER_DURING_INSTALLATION="Only (%s.zip) file was removed the from tmp folder during installation!" COM_COMPONENTBUILDER_ONLY_USE_THE_BNONE_DBB_OPTION_IF_YOU_ARE_PLANNING_ON_TARGETING_THIS_FIELD_WITH_JAVASCRIPTCUSTOM_PHP_TO_MOVE_ITS_VALUE_INTO_ANOTHER_FIELD_THAT_DOES_GET_SAVED_TO_THE_DATABASE="Only use the None DB option if you are planning on targeting this field with JavaScript/Custom PHP to move its value into another field that does get saved to the database." @@ -7415,7 +7417,7 @@ COM_COMPONENTBUILDER_SHOULD_THIS_FIELD_BE_ESCAPED_IN_THE_LIST_VIEW="Should this COM_COMPONENTBUILDER_SHOULD_WE_BE_SHOWING_MORE_ELABORATE_INFORMATION_DURING_IMPORT="Should we be showing more elaborate information during import." COM_COMPONENTBUILDER_SHOULD_WE_FORCE_THE_UPDATE_OF_ALL_LOCAL_DATA_EVEN_IF_IT_IS_NEWER_THEN_THE_DATA_BEING_IMPORTED="Should we force the update of all local data, even if it is newer then the data being imported." COM_COMPONENTBUILDER_SHOULD_WE_MERGE_THE_COMPONENTS_WITH_SIMILAR_LOCAL_COMPONENTS_MERGING_THE_COMPONENTS_USE_TO_BE_THE_DEFAULT_BEHAVIOUR_BUT_NOW_YOU_CAN_IMPORT_THE_COMPONENTS_AND_FORCE_IT_NOT_TO_MERGE_THE_FOLLOWING_AREAS_VALIDATION_RULE_FIELDTYPE_SNIPPET_LANGUAGE_LANGUAGE_TRANSLATION_JOOMLA_PLUGIN_GROUP_CLASS_EXTENDS_CLASS_PROPERTY_CLASS_METHOD_BMUST_AND_WILL_STILLB_MERGE_EVEN_OF_YOUR_SELECTION_IS_BNOB_BECAUSE_OF_THE_SINGULAR_NATURE_OF_THOSE_AREAS="Should we merge the component/s with similar local component/s. Merging the component/s use to be the default behaviour, but now you can import the component/s and force it not to merge. The following areas (validation_rule, fieldtype, snippet, language, language_translation, joomla_plugin_group, class_extends, class_property, class_method) must and will still merge even of your selection is No, because of the singular nature of those areas." -COM_COMPONENTBUILDER_SHOW_IN_LIST_VIEW="Show in list view" +COM_COMPONENTBUILDER_SHOW_IN_ALL_LIST_VIEWS="Show in All List Views" COM_COMPONENTBUILDER_SHOW_ONLY="Show Only" COM_COMPONENTBUILDER_SHOW_TOGGLE="Show Toggle" COM_COMPONENTBUILDER_SINCE_THE_OWNER_DETAILS_ARE_DISPLAYED_DURING_BIMPORT_PROCESSB_BEFORE_ADDING_THE_KEY_THIS_WAY_IF_THE_USERDEV_BDOES_NOTB_HAVE_THE_KEY_THEY_CAN_SEE_BWHERE_TO_GET_ITB="Since the owner details are displayed during import process before adding the key, this way if the user/dev does not have the key they can see where to get it." diff --git a/admin/models/admin_view.php b/admin/models/admin_view.php index 6b0d9ed2c..cd22a3bdd 100644 --- a/admin/models/admin_view.php +++ b/admin/models/admin_view.php @@ -540,82 +540,82 @@ class ComponentbuilderModelAdmin_view extends JModelAdmin $item->ajax_input = $ajax_input->toArray(); } - if (empty($item->id)) - { - $id = 0; - } - else - { - $id = $item->id; - } - // set the id and view name to session - if ($vdm = ComponentbuilderHelper::get('admin_view__'.$id)) - { - $this->vastDevMod = $vdm; - } - else - { - // set the vast development method key - $this->vastDevMod = ComponentbuilderHelper::randomkey(50); - ComponentbuilderHelper::set($this->vastDevMod, 'admin_view__'.$id); - ComponentbuilderHelper::set('admin_view__'.$id, $this->vastDevMod); - // set a return value if found - $jinput = JFactory::getApplication()->input; - $return = $jinput->get('return', null, 'base64'); - ComponentbuilderHelper::set($this->vastDevMod . '__return', $return); - } - - // update the fields - $objectUpdate = new stdClass(); - $objectUpdate->id = (int) $item->id; - // repeatable values to check - $arrayChecker = array( - 'addlinked_views' => 'adminview', - 'ajax_input' => 'value_name', - 'custom_button' => 'name', - 'addpermissions' => 'action', - 'addtables' => 'table', - 'addtabs' => 'name' - ); - foreach ($arrayChecker as $_value => $checker) - { - // check what type of array we have here (should be subform... but just in case) - // This could happen due to huge data sets - if (isset($item->{$_value}) && isset($item->{$_value}[$checker])) - { - $bucket = array(); - foreach($item->{$_value} as $option => $values) - { - foreach($values as $nr => $value) - { - $bucket[$_value.$nr][$option] = $value; - } - } - $item->{$_value} = $bucket; - $objectUpdate->{$_value} = json_encode($bucket); - } - } - // be sure to update the table if we found repeatable fields that are still not converted - if (count((array) $objectUpdate) > 1) - { - $this->_db->updateObject('#__componentbuilder_admin_view', $objectUpdate, 'id'); - } - - // update the mysql_table_engine defaults - if (isset($item->mysql_table_engine) && is_numeric($item->mysql_table_engine)) - { - $item->mysql_table_engine = 'MyISAM'; - } - // update the mysql_table_charset defaults - if (isset($item->mysql_table_charset) && is_numeric($item->mysql_table_charset)) - { - $item->mysql_table_charset = 'utf8'; - } - // update the mysql_table_collate defaults - if (isset($item->mysql_table_collate) && is_numeric($item->mysql_table_collate)) - { - $item->mysql_table_collate = 'utf8_general_ci'; - } + if (empty($item->id)) + { + $id = 0; + } + else + { + $id = $item->id; + } + // set the id and view name to session + if ($vdm = ComponentbuilderHelper::get('admin_view__'.$id)) + { + $this->vastDevMod = $vdm; + } + else + { + // set the vast development method key + $this->vastDevMod = ComponentbuilderHelper::randomkey(50); + ComponentbuilderHelper::set($this->vastDevMod, 'admin_view__'.$id); + ComponentbuilderHelper::set('admin_view__'.$id, $this->vastDevMod); + // set a return value if found + $jinput = JFactory::getApplication()->input; + $return = $jinput->get('return', null, 'base64'); + ComponentbuilderHelper::set($this->vastDevMod . '__return', $return); + } + + // update the fields + $objectUpdate = new stdClass(); + $objectUpdate->id = (int) $item->id; + // repeatable values to check + $arrayChecker = array( + 'addlinked_views' => 'adminview', + 'ajax_input' => 'value_name', + 'custom_button' => 'name', + 'addpermissions' => 'action', + 'addtables' => 'table', + 'addtabs' => 'name' + ); + foreach ($arrayChecker as $_value => $checker) + { + // check what type of array we have here (should be subform... but just in case) + // This could happen due to huge data sets + if (isset($item->{$_value}) && isset($item->{$_value}[$checker])) + { + $bucket = array(); + foreach($item->{$_value} as $option => $values) + { + foreach($values as $nr => $value) + { + $bucket[$_value.$nr][$option] = $value; + } + } + $item->{$_value} = $bucket; + $objectUpdate->{$_value} = json_encode($bucket); + } + } + // be sure to update the table if we found repeatable fields that are still not converted + if (count((array) $objectUpdate) > 1) + { + $this->_db->updateObject('#__componentbuilder_admin_view', $objectUpdate, 'id'); + } + + // update the mysql_table_engine defaults + if (isset($item->mysql_table_engine) && is_numeric($item->mysql_table_engine)) + { + $item->mysql_table_engine = 'MyISAM'; + } + // update the mysql_table_charset defaults + if (isset($item->mysql_table_charset) && is_numeric($item->mysql_table_charset)) + { + $item->mysql_table_charset = 'utf8'; + } + // update the mysql_table_collate defaults + if (isset($item->mysql_table_collate) && is_numeric($item->mysql_table_collate)) + { + $item->mysql_table_collate = 'utf8_general_ci'; + } if (!empty($item->id)) @@ -1414,11 +1414,11 @@ class ComponentbuilderModelAdmin_view extends JModelAdmin $data['metadata'] = (string) $metadata; } - // if system name is empty create a system name from the name_single - if (empty($data['system_name']) || !ComponentbuilderHelper::checkString($data['system_name'])) - { - $data['system_name'] = $data['name_single']; - } + // if system name is empty create a system name from the name_single + if (empty($data['system_name']) || !ComponentbuilderHelper::checkString($data['system_name'])) + { + $data['system_name'] = $data['name_single']; + } // Set the addtables items to data. diff --git a/admin/models/ajax.php b/admin/models/ajax.php index 55b7fc60f..00e8ac331 100644 --- a/admin/models/ajax.php +++ b/admin/models/ajax.php @@ -1051,11 +1051,17 @@ class ComponentbuilderModelAjax extends JModelList switch ($value) { case 1: - return JText::_('COM_COMPONENTBUILDER_SHOW_IN_LIST_VIEW'); + return JText::_('COM_COMPONENTBUILDER_SHOW_IN_ALL_LIST_VIEWS'); break; case 2: return JText::_('COM_COMPONENTBUILDER_NONE_DB'); break; + case 3: + return JText::_('COM_COMPONENTBUILDER_ONLY_IN_ADMIN_LIST_VIEW'); + break; + case 4: + return JText::_('COM_COMPONENTBUILDER_ONLY_IN_LINKED_LIST_VIEWS'); + break; default: return JText::_('COM_COMPONENTBUILDER_DEFAULT'); break; diff --git a/componentbuilder.xml b/componentbuilder.xml index 085d25681..afb03b075 100644 --- a/componentbuilder.xml +++ b/componentbuilder.xml @@ -1,15 +1,15 @@ COM_COMPONENTBUILDER - 13th August, 2019 + 14th August, 2019 Llewellyn van der Merwe llewellyn@joomlacomponentbuilder.com http://www.joomlacomponentbuilder.com Copyright (C) 2015 - 2019 Vast Development Method. All rights reserved. GNU General Public License version 2 or later; see LICENSE.txt - 2.9.36 + 2.10.0 Component Builder (v.2.9.36) +

Component Builder (v.2.10.0)

The Component Builder for [Joomla](https://extensions.joomla.org/extension/component-builder/) is highly advanced tool that is truly able to build extremely complex components in a fraction of the time. diff --git a/componentbuilder_update_server.xml b/componentbuilder_update_server.xml index a33f87c56..91f1ddcc8 100644 --- a/componentbuilder_update_server.xml +++ b/componentbuilder_update_server.xml @@ -721,7 +721,7 @@ 2.9.31 http://www.joomlacomponentbuilder.com - https://github.com/vdm-io/Joomla-Component-Builder/releases/download/v2.9.36/JCB_v2.9.36.zip + https://github.com/vdm-io/Joomla-Component-Builder/releases/download/v2.10.0/JCB_v2.10.0.zip stable @@ -738,7 +738,7 @@ 2.9.32 http://www.joomlacomponentbuilder.com - https://github.com/vdm-io/Joomla-Component-Builder/releases/download/v2.9.36/JCB_v2.9.36.zip + https://github.com/vdm-io/Joomla-Component-Builder/releases/download/v2.10.0/JCB_v2.10.0.zip stable @@ -755,7 +755,7 @@ 2.9.33 http://www.joomlacomponentbuilder.com - https://github.com/vdm-io/Joomla-Component-Builder/releases/download/v2.9.36/JCB_v2.9.36.zip + https://github.com/vdm-io/Joomla-Component-Builder/releases/download/v2.10.0/JCB_v2.10.0.zip stable @@ -772,7 +772,7 @@ 2.9.34 http://www.joomlacomponentbuilder.com - https://github.com/vdm-io/Joomla-Component-Builder/releases/download/v2.9.36/JCB_v2.9.36.zip + https://github.com/vdm-io/Joomla-Component-Builder/releases/download/v2.10.0/JCB_v2.10.0.zip stable @@ -789,7 +789,7 @@ 2.9.35 http://www.joomlacomponentbuilder.com - https://github.com/vdm-io/Joomla-Component-Builder/releases/download/v2.9.36/JCB_v2.9.36.zip + https://github.com/vdm-io/Joomla-Component-Builder/releases/download/v2.10.0/JCB_v2.10.0.zip stable @@ -803,10 +803,10 @@ Builds Complex Joomla Components com_componentbuilder component - 2.9.36 + 2.10.0 http://www.joomlacomponentbuilder.com - https://github.com/vdm-io/Joomla-Component-Builder/releases/download/v2.9.36/JCB_v2.9.36.zip + https://github.com/vdm-io/Joomla-Component-Builder/releases/download/v2.10.0/JCB_v2.10.0.zip stable diff --git a/script.php b/script.php index d4bfed224..7ad39a522 100644 --- a/script.php +++ b/script.php @@ -6454,7 +6454,7 @@ class com_componentbuilderInstallerScript echo ' -

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

'; +

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

'; } return true; }