Stable release of v3.2.0-beta1

Move beta to main repo. Fix #1053 so that the right and left tabs display correctly in Joomla 4&5.
This commit is contained in:
Robot 2024-03-02 22:10:30 +02:00
parent 3c91a5cdbb
commit d1e1a56671
Signed by: Robot
GPG Key ID: 14DECD44E7E1BB95
1786 changed files with 73608 additions and 37437 deletions

View File

@ -1,3 +1,73 @@
# v3.2.0-beta1
- Move beta to main repo
- Fix #1053 so that the right and left tabs display correctly in Joomla 4&5
# v3.1.42-beta
- Fix #1055 to add the style and scripts to all views.
# v3.1.40-beta
- Fix #1052 so that tabs last opened is remembered and opened again on save, refresh or reopening of an item.
- Fix #1057 so that the datetime fields will be set correctly in mysql.
# v3.1.39
- Fix #1051 making sure the list view is lowercase.
# v3.1.38
- Fix #1046 so that the version restore function will work.
# v3.1.37
- Fix #1041 so that custom tabs are build correctly.
- Fix #1043 so that delete function in Joomla 4 and 5 will work.
- Fix #1045 so that plug-in Structure::setMainXmlFile method will except an object.
- Fix #1042 so that it will remove line breaks and new lines from other languages as well.
# v3.1.36
- Move the defined or die below use statements.
- Add the new router view
# v3.1.35
- Improve the Joomla 4 Templates.
- Fix #1033 the response class issue for the gitea classes.
- Remove the JRegistry class to resolve #1036, #1035
# v3.1.34
- Fix the AjaxController contructor class.
- Improved the getModel calls from the AxajController class.
# v3.1.33
- Fix #1026 by adding the correct layout to the filter views.
- Fix #1026 by adding the class to the filter views.
- Fix #1026 by adding a hint to the filters that are having multiple selection.
- Fix the directional bog where a field in the filters are also called direction.
- Fix the getModel helper method fot J4+.
# v3.1.32
- Fix #1026 by removing chosen everywhere.
- Resolve #1028 by adding in line helper toggle integration to all admin views.
- Remove the import and export buttons until the area is fixed.
- Add emptystate list template to all admin list views.
# v3.1.31
- Add joomla_version to custom code.
- Add Joomla 4 and 5 correct build files.
# v3.1.30
- Add namspace prefix to both global, and component override level.
- Add Joomla 4 and 5 build option
# v3.1.28
- Updates PHPSecLib.
@ -23,7 +93,7 @@
- Adds option to add additional templates to a module.
- Resolves #1002 by adding STRING instead of WORD.
- Ported the FOF encryption class into Powers. https://git.vdm.dev/joomla/fof
- Changed all CSS and JS to use `JHtml::_(` instead of `$this->document->` in compiler code.
- Changed all CSS and JS to use `Html::_(` instead of `$this->document->` in compiler code.
- Adds option to turn jQuery off if UIKIT 3 is added.
- Adds option to auto write injection boilerplate code in Powers area.
- Adds option to auto write service provider boilerplate code in the Powers area.

View File

@ -9,7 +9,7 @@ The Component Builder for [Joomla](https://extensions.joomla.org/extension/compo
Whether you're a seasoned [Joomla](https://extensions.joomla.org/extension/component-builder/) developer, or have just started, Component Builder will save you lots of time and money. A real must have!
You can install it quite easily and with no limitations. On [gitea](https://git.vdm.dev/joomla/Component-Builder/tags) is the latest release (3.1.28) with **ALL** its features and **ALL** concepts totally open-source and free!
You can install it quite easily and with no limitations. On [gitea](https://git.vdm.dev/joomla/Component-Builder/tags) is the latest release (3.2.0-beta1) with **ALL** its features and **ALL** concepts totally open-source and free!
> Watch Quick Build of a Hello World component in [JCB on Youtube](https://www.youtube.com/watch?v=IQfsLYIeblk&list=PLQRGFI8XZ_wtGvPQZWBfDzzlERLQgpMRE&index=45)
@ -144,14 +144,14 @@ TODO
+ *Author*: [Llewellyn van der Merwe](mailto:joomla@vdm.io)
+ *Name*: [Component Builder](https://git.vdm.dev/joomla/Component-Builder)
+ *First Build*: 30th April, 2015
+ *Last Build*: 24th October, 2023
+ *Version*: 3.1.28
+ *Last Build*: 2nd March, 2024
+ *Version*: 3.2.0-beta1
+ *Copyright*: Copyright (C) 2015 Vast Development Method. All rights reserved.
+ *License*: GNU General Public License version 2 or later; see LICENSE.txt
+ *Line count*: **635155**
+ *Field count*: **2047**
+ *File count*: **4731**
+ *Folder count*: **436**
+ *Line count*: **694660**
+ *Field count*: **2077**
+ *File count*: **5121**
+ *Folder count*: **455**
> This **component** was build with a [Joomla](https://extensions.joomla.org/extension/component-builder/) [Automated Component Builder](https://www.joomlacomponentbuilder.com).
> Developed by [Llewellyn van der Merwe](mailto:joomla@vdm.io)

View File

@ -9,7 +9,7 @@ The Component Builder for [Joomla](https://extensions.joomla.org/extension/compo
Whether you're a seasoned [Joomla](https://extensions.joomla.org/extension/component-builder/) developer, or have just started, Component Builder will save you lots of time and money. A real must have!
You can install it quite easily and with no limitations. On [gitea](https://git.vdm.dev/joomla/Component-Builder/tags) is the latest release (3.1.28) with **ALL** its features and **ALL** concepts totally open-source and free!
You can install it quite easily and with no limitations. On [gitea](https://git.vdm.dev/joomla/Component-Builder/tags) is the latest release (3.2.0-beta1) with **ALL** its features and **ALL** concepts totally open-source and free!
> Watch Quick Build of a Hello World component in [JCB on Youtube](https://www.youtube.com/watch?v=IQfsLYIeblk&list=PLQRGFI8XZ_wtGvPQZWBfDzzlERLQgpMRE&index=45)
@ -144,14 +144,14 @@ TODO
+ *Author*: [Llewellyn van der Merwe](mailto:joomla@vdm.io)
+ *Name*: [Component Builder](https://git.vdm.dev/joomla/Component-Builder)
+ *First Build*: 30th April, 2015
+ *Last Build*: 24th October, 2023
+ *Version*: 3.1.28
+ *Last Build*: 2nd March, 2024
+ *Version*: 3.2.0-beta1
+ *Copyright*: Copyright (C) 2015 Vast Development Method. All rights reserved.
+ *License*: GNU General Public License version 2 or later; see LICENSE.txt
+ *Line count*: **635155**
+ *Field count*: **2047**
+ *File count*: **4731**
+ *Folder count*: **436**
+ *Line count*: **694660**
+ *Field count*: **2077**
+ *File count*: **5121**
+ *Folder count*: **455**
> This **component** was build with a [Joomla](https://extensions.joomla.org/extension/component-builder/) [Automated Component Builder](https://www.joomlacomponentbuilder.com).
> Developed by [Llewellyn van der Merwe](mailto:joomla@vdm.io)

View File

@ -211,6 +211,16 @@
<action name="component_plugins.edit.own" title="COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_EDIT_OWN" description="COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_EDIT_OWN_DESC" />
<action name="component_plugins.edit.state" title="COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_EDIT_STATE" description="COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_EDIT_STATE_DESC" />
<action name="component_plugins.version" title="COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_EDIT_VERSION" description="COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_EDIT_VERSION_DESC" />
<action name="component_router.access" title="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_ACCESS" description="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_ACCESS_DESC" />
<action name="component_router.batch" title="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_BATCH_USE" description="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_BATCH_USE_DESC" />
<action name="component_router.create" title="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_CREATE" description="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_CREATE_DESC" />
<action name="component_router.delete" title="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_DELETE" description="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_DELETE_DESC" />
<action name="component_router.edit" title="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_EDIT" description="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_EDIT_DESC" />
<action name="component_router.edit.created_by" title="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_EDIT_CREATED_BY" description="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_EDIT_CREATED_BY_DESC" />
<action name="component_router.edit.created" title="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_EDIT_CREATED_DATE" description="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_EDIT_CREATED_DATE_DESC" />
<action name="component_router.edit.own" title="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_EDIT_OWN" description="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_EDIT_OWN_DESC" />
<action name="component_router.edit.state" title="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_EDIT_STATE" description="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_EDIT_STATE_DESC" />
<action name="component_router.version" title="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_EDIT_VERSION" description="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_EDIT_VERSION_DESC" />
<action name="component_site_views.access" title="COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_ACCESS" description="COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_ACCESS_DESC" />
<action name="component_site_views.batch" title="COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_BATCH_USE" description="COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_BATCH_USE_DESC" />
<action name="component_site_views.create" title="COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_CREATE" description="COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_CREATE_DESC" />
@ -899,6 +909,17 @@
<action name="component_custom_admin_menus.access" title="COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_MENUS_ACCESS" description="COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_MENUS_ACCESS_DESC" />
<action name="component_custom_admin_menus.version" title="COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_MENUS_EDIT_VERSION" description="COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_MENUS_EDIT_VERSION_DESC" />
</section>
<section name="component_router">
<action name="component_router.edit" title="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_EDIT" description="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_EDIT_DESC" />
<action name="component_router.edit.own" title="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_EDIT_OWN" description="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_EDIT_OWN_DESC" />
<action name="component_router.edit.state" title="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_EDIT_STATE" description="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_EDIT_STATE_DESC" />
<action name="component_router.edit.created_by" title="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_EDIT_CREATED_BY" description="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_EDIT_CREATED_BY_DESC" />
<action name="component_router.edit.created" title="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_EDIT_CREATED_DATE" description="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_EDIT_CREATED_DATE_DESC" />
<action name="component_router.create" title="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_CREATE" description="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_CREATE_DESC" />
<action name="component_router.delete" title="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_DELETE" description="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_DELETE_DESC" />
<action name="component_router.access" title="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_ACCESS" description="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_ACCESS_DESC" />
<action name="component_router.version" title="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_EDIT_VERSION" description="COM_COMPONENTBUILDER_COMPONENTS_ROUTERS_EDIT_VERSION_DESC" />
</section>
<section name="component_config">
<action name="component_config.edit" title="COM_COMPONENTBUILDER_COMPONENTS_CONFIG_EDIT" description="COM_COMPONENTBUILDER_COMPONENTS_CONFIG_EDIT_DESC" />
<action name="component_config.edit.own" title="COM_COMPONENTBUILDER_COMPONENTS_CONFIG_EDIT_OWN" description="COM_COMPONENTBUILDER_COMPONENTS_CONFIG_EDIT_OWN_DESC" />

View File

@ -0,0 +1,13 @@
/**
* @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
*/
/* CSS Document */

View File

@ -0,0 +1,13 @@
/**
* @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
*/
/* CSS Document */

View File

@ -11,153 +11,153 @@
/* CSS Document */
.dashboard-container {
margin-left: 10px;
margin-top: 10px;
width: 100%;
margin-left: 10px;
margin-top: 10px;
width: 100%;
}
.dashboard-container [class*="span"] {
display: block;
float: none;
margin-left: 0;
width: auto;
display: block;
float: none;
margin-left: 0;
width: auto;
}
.dashboard-container:before, .dashboard-container:after {
content: "";
display: table;
content: "";
display: table;
}
.dashboard-container:after {
clear: both;
clear: both;
}
.dashboard-container [class*="span"] {
box-sizing: border-box;
display: block;
float: left;
min-height: 145px;
min-width: 96px;
width: 100%;
box-sizing: border-box;
display: block;
float: left;
min-height: 145px;
min-width: 96px;
width: 100%;
}
.dashboard-container [class*="span"]:first-child {
margin-left: 0;
margin-left: 0;
}
.dashboard-wraper {
background: none repeat scroll 0 0 hsl(0, 0%, 93%);
border-radius: 5px;
float: left;
margin: 1%;
padding: 3px;
width: 17%;
min-height: 194px;
min-width: 96px;
background: none repeat scroll 0 0 hsl(0, 0%, 93%);
border-radius: 5px;
float: left;
margin: 1%;
padding: 3px;
width: 17%;
min-height: 194px;
min-width: 96px;
}
.dashboard-content a {
background: linear-gradient(to bottom, hsl(0, 0%, 100%) 0%, hsl(0, 0%, 96%) 47%, hsl(0, 0%, 93%) 100%) repeat scroll 0 0 hsla(0, 0%, 0%, 0);
border: 1px solid hsl(0, 0%, 85%);
border-radius: 4px;
box-shadow: 0 0 3px hsla(0, 0%, 0%, 0.1) inset;
color: hsl(0, 0%, 20%);
display: block;
min-height: 89px;
padding: 10px;
text-align: center;
text-decoration: none;
background: linear-gradient(to bottom, hsl(0, 0%, 100%) 0%, hsl(0, 0%, 96%) 47%, hsl(0, 0%, 93%) 100%) repeat scroll 0 0 hsla(0, 0%, 0%, 0);
border: 1px solid hsl(0, 0%, 85%);
border-radius: 4px;
box-shadow: 0 0 3px hsla(0, 0%, 0%, 0.1) inset;
color: hsl(0, 0%, 20%);
display: block;
min-height: 89px;
padding: 10px;
text-align: center;
text-decoration: none;
}
.dashboard-content a:hover {
background: linear-gradient(to bottom, hsl(0, 0%, 90%) 0%, hsl(0, 0%, 100%) 100%) repeat scroll 0 0 hsla(0, 0%, 0%, 0);
color: hsl(200, 100%, 30%);
text-decoration: none;
background: linear-gradient(to bottom, hsl(0, 0%, 90%) 0%, hsl(0, 0%, 100%) 100%) repeat scroll 0 0 hsla(0, 0%, 0%, 0);
color: hsl(200, 100%, 30%);
text-decoration: none;
}
.dashboard-title {
display: block;
padding-top: 5px;
display: block;
padding-top: 5px;
}
.dashboard-info {
background: linear-gradient(to bottom, hsl(0, 0%, 100%) 0%, hsl(0, 0%, 96%) 47%, hsl(0, 0%, 93%) 100%) repeat scroll 0 0 hsla(0, 0%, 0%, 0);
border: 1px solid hsl(0, 0%, 85%);
border-radius: 4px;
box-shadow: 0 0 3px hsla(0, 0%, 0%, 0.1) inset;
color: hsl(0, 0%, 20%);
display: block;
font-size: 12px;
padding: 10px;
text-align: center;
background: linear-gradient(to bottom, hsl(0, 0%, 100%) 0%, hsl(0, 0%, 96%) 47%, hsl(0, 0%, 93%) 100%) repeat scroll 0 0 hsla(0, 0%, 0%, 0);
border: 1px solid hsl(0, 0%, 85%);
border-radius: 4px;
box-shadow: 0 0 3px hsla(0, 0%, 0%, 0.1) inset;
color: hsl(0, 0%, 20%);
display: block;
font-size: 12px;
padding: 10px;
text-align: center;
}
.dashboard-info span {
display: block;
text-align: center;
display: block;
text-align: center;
}
.dashboard-info img {
margin: 0 auto;
margin: 0 auto;
}
.dashboard-table {
border-top: 1px solid hsl(0, 0%, 87%);
margin-top: 5px;
width: 100%;
border-top: 1px solid hsl(0, 0%, 87%);
margin-top: 5px;
width: 100%;
}
.dashboard-info h5 {
font-size: 11px;
font-weight: bold;
font-size: 11px;
font-weight: bold;
}
.dashboard-block {
background: linear-gradient(to bottom, hsl(0, 0%, 95%) 0%, hsl(0, 0%, 86%) 100%) repeat scroll 0 0 hsla(0, 0%, 0%, 0);
border: 1px solid hsl(0, 0%, 76%);
border-radius: 3px;
box-shadow: 0 1px 0 hsl(0, 0%, 98%) inset;
margin-bottom: 20px;
background: linear-gradient(to bottom, hsl(0, 0%, 95%) 0%, hsl(0, 0%, 86%) 100%) repeat scroll 0 0 hsla(0, 0%, 0%, 0);
border: 1px solid hsl(0, 0%, 76%);
border-radius: 3px;
box-shadow: 0 1px 0 hsl(0, 0%, 98%) inset;
margin-bottom: 20px;
}
.dashboard-block .dashboard-block-head {
background: linear-gradient(to bottom, hsl(0, 0%, 95%) 0%, hsl(0, 0%, 86%) 100%) repeat scroll 0 0 hsla(0, 0%, 0%, 0);
border-bottom: 1px solid hsl(0, 0%, 76%);
border-radius: 3px 3px 0 0;
box-shadow: 0 1px 0 hsl(0, 0%, 98%) inset, 0 0 3px hsl(0, 0%, 87%);
height: 40px;
position: relative;
background: linear-gradient(to bottom, hsl(0, 0%, 95%) 0%, hsl(0, 0%, 86%) 100%) repeat scroll 0 0 hsla(0, 0%, 0%, 0);
border-bottom: 1px solid hsl(0, 0%, 76%);
border-radius: 3px 3px 0 0;
box-shadow: 0 1px 0 hsl(0, 0%, 98%) inset, 0 0 3px hsl(0, 0%, 87%);
height: 40px;
position: relative;
}
.dashboard-block .dashboard-block-head h5 {
font-size: 12px;
margin: 0;
padding-left: 10px;
padding-top: 11px;
text-transform: uppercase;
font-size: 12px;
margin: 0;
padding-left: 10px;
padding-top: 11px;
text-transform: uppercase;
}
.dashboard-block .dashboard-block-content {
background: none repeat scroll 0 0 hsl(0, 0%, 93%);
border-radius: 0 0 3px 3px;
background: none repeat scroll 0 0 hsl(0, 0%, 93%);
border-radius: 0 0 3px 3px;
}
.dashboard-block .dashboard-block-box {
background: none repeat scroll 0 0 hsl(0, 0%, 100%);
border-top: 1px solid hsl(0, 0%, 82%);
box-shadow: 0 0 5px hsl(0, 0%, 87%) inset;
background: none repeat scroll 0 0 hsl(0, 0%, 100%);
border-top: 1px solid hsl(0, 0%, 82%);
box-shadow: 0 0 5px hsl(0, 0%, 87%) inset;
}
.dashboard-block .dashboard-block-content .dashboard-block-box {
margin-top: 0 !important;
margin-top: 0 !important;
}
.dashboard-block .dashboard-block-content .dashboard-block-box .dashboard-block-table {
margin-bottom: 0 !important;
margin-bottom: 0 !important;
}
.dashboard-block-table {
background-color: hsla(0, 0%, 0%, 0);
border-collapse: collapse;
border-spacing: 0;
margin-bottom: 20px;
max-width: 100%;
width: 100%;
background-color: hsla(0, 0%, 0%, 0);
border-collapse: collapse;
border-spacing: 0;
margin-bottom: 20px;
max-width: 100%;
width: 100%;
}
.dashboard-block-table th, .dashboard-block-table td {
border-top: 1px solid hsl(0, 0%, 87%);
line-height: 20px;
padding: 5px;
text-align: left;
vertical-align: middle;
border-top: 1px solid hsl(0, 0%, 87%);
line-height: 20px;
padding: 5px;
text-align: left;
vertical-align: middle;
}
.dashboard-badge {
background-color: hsl(0, 0%, 60%);
border-radius: 9px;
color: hsl(0, 0%, 100%);
font-size: 11.844px;
font-weight: bold;
line-height: 14px;
padding: 1px 9px 2px;
text-shadow: 0 -1px 0 hsla(0, 0%, 0%, 0.25);
vertical-align: baseline;
white-space: nowrap;
background-color: hsl(0, 0%, 60%);
border-radius: 9px;
color: hsl(0, 0%, 100%);
font-size: 11.844px;
font-weight: bold;
line-height: 14px;
padding: 1px 9px 2px;
text-shadow: 0 -1px 0 hsla(0, 0%, 0%, 0.25);
vertical-align: baseline;
white-space: nowrap;
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 64 KiB

After

Width:  |  Height:  |  Size: 65 KiB

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder
*
* @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder>
* @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
*/

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder
*
* @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder>
* @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
*/

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder
*
* @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder>
* @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
*/
@ -34,9 +34,9 @@ class ###Component###Controller###SViews### extends AdminController
/**
* Proxy for getModel.
* @since 2.5
* @since 2.5
*/
public function getModel($name = '###SView###', $prefix = '###Component###Model', $config = array())
public function getModel($name = '###SView###', $prefix = '###Component###Model', $config = [])
{
$model = parent::getModel($name, $prefix, array('ignore_request' => true));
@ -45,7 +45,7 @@ class ###Component###Controller###SViews### extends AdminController
public function dashboard()
{
$this->setRedirect(JRoute::_('index.php?option=com_###component###', false));
$this->setRedirect(Route::_('index.php?option=com_###component###', false));
return;
}###CUSTOM_ADMIN_CUSTOM_BUTTONS_CONTROLLER###
}

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder
*
* @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder>
* @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
*/
@ -52,18 +52,18 @@ class ###Component###Model###View### extends AdminModel
* @param string $prefix A prefix for the table class name. Optional.
* @param array $config Configuration array for model. Optional.
*
* @return JTable A database object
* @return Table A database object
*
* @since 1.6
*/
public function getTable($type = '###view###', $prefix = '###Component###Table', $config = array())
public function getTable($type = '###view###', $prefix = '###Component###Table', $config = [])
{
// add table path for when model gets used from other component
$this->addTablePath(JPATH_ADMINISTRATOR . '/components/com_###component###/tables');
// get instance of the table
return JTable::getInstance($type, $prefix, $config);
return Table::getInstance($type, $prefix, $config);
}###ADMIN_CUSTOM_BUTTONS_METHOD###
/**
* Method to get a single record.
*
@ -108,7 +108,7 @@ class ###Component###Model###View### extends AdminModel
*
* @since 1.6
*/
public function getForm($data = array(), $loadData = true, $options = array('control' => 'jform'))
public function getForm($data = [], $loadData = true, $options = array('control' => 'jform'))
{
// set load data option
$options['load_data'] = $loadData;###JMODELADMIN_GETFORM###
@ -117,13 +117,13 @@ class ###Component###Model###View### extends AdminModel
/**
* Method to get the script that have to be included on the form
*
* @return string script files
* @return string script files
*/
public function getScript()
{
return 'media/com_###component###/js/###view###.js';
}
/**
* Method to test whether a record can be deleted.
*
@ -149,24 +149,24 @@ class ###Component###Model###View### extends AdminModel
protected function canEditState($record)
{###JMODELADMIN_CANEDITSTATE###
}
/**
* Method override to check if you can edit an existing record.
*
* @param array $data An array of input data.
* @param string $key The name of the key for the primary key.
* @param array $data An array of input data.
* @param string $key The name of the key for the primary key.
*
* @return boolean
* @since 2.5
* @return boolean
* @since 2.5
*/
protected function allowEdit($data = array(), $key = 'id')
protected function allowEdit($data = [], $key = 'id')
{###JMODELADMIN_ALLOWEDIT###
}
/**
* Prepare and sanitise the table data prior to saving.
*
* @param JTable $table A JTable object.
* @param Table $table A Table object.
*
* @return void
*
@ -174,19 +174,19 @@ class ###Component###Model###View### extends AdminModel
*/
protected function prepareTable($table)
{###LICENSE_TABLE_LOCKED_CHECK###
$date = JFactory::getDate();
$user = JFactory::getUser();
$date = Factory::getDate();
$user = Factory::getUser();
if (isset($table->name))
{
$table->name = htmlspecialchars_decode($table->name, ENT_QUOTES);
}
if (isset($table->alias) && empty($table->alias))
{
$table->generateAlias();
}
if (empty($table->id))
{
$table->created = $date->toSql();
@ -198,7 +198,7 @@ class ###Component###Model###View### extends AdminModel
// Set ordering to the last item if not set
if (empty($table->ordering))
{
$db = JFactory::getDbo();
$db = Factory::getDbo();
$query = $db->getQuery(true)
->select('MAX(ordering)')
->from($db->quoteName('#__###component###_###view###'));
@ -213,7 +213,7 @@ class ###Component###Model###View### extends AdminModel
$table->modified = $date->toSql();
$table->modified_by = $user->id;
}
if (!empty($table->id))
{
// Increment the items version number.
@ -228,10 +228,10 @@ class ###Component###Model###View### extends AdminModel
*
* @since 1.6
*/
protected function loadFormData()
protected function loadFormData()
{
// Check the session for previously entered form data.
$data = JFactory::getApplication()->getUserState('com_###component###.edit.###view###.data', array());
$data = Factory::getApplication()->getUserState('com_###component###.edit.###view###.data', []);
if (empty($data))
{
@ -242,7 +242,7 @@ class ###Component###Model###View### extends AdminModel
return $data;
}###VALIDATIONFIX######UNIQUEFIELDS###
/**
* Method to delete one or more records.
*
@ -258,7 +258,7 @@ class ###Component###Model###View### extends AdminModel
{
return false;
}###JMODELADMIN_AFTER_DELETE###
return true;
}
@ -278,10 +278,10 @@ class ###Component###Model###View### extends AdminModel
{
return false;
}###JMODELADMIN_AFTER_PUBLISH###
return true;
}
}
/**
* Method to perform batch operations on an item or a set of items.
*
@ -307,30 +307,30 @@ class ###Component###Model###View### extends AdminModel
if (empty($pks))
{
$this->setError(JText::_('JGLOBAL_NO_ITEM_SELECTED'));
$this->setError(Text::_('JGLOBAL_NO_ITEM_SELECTED'));
return false;
}
$done = false;
// Set some needed variables.
$this->user = JFactory::getUser();
$this->table = $this->getTable();
$this->tableClassName = get_class($this->table);
$this->contentType = new JUcmType;
$this->type = $this->contentType->getTypeByTable($this->tableClassName);
$this->canDo = ###Component###Helper::getActions('###view###');
$this->batchSet = true;
$this->user = Factory::getUser();
$this->table = $this->getTable();
$this->tableClassName = get_class($this->table);
$this->contentType = new UCMType;
$this->type = $this->contentType->getTypeByTable($this->tableClassName);
$this->canDo = ###Component###Helper::getActions('###view###');
$this->batchSet = true;
if (!$this->canDo->get('core.batch'))
{
$this->setError(JText::_('JLIB_APPLICATION_ERROR_INSUFFICIENT_BATCH_INFORMATION'));
$this->setError(Text::_('JLIB_APPLICATION_ERROR_INSUFFICIENT_BATCH_INFORMATION'));
return false;
}
if ($this->type == false)
{
$type = new JUcmType;
$type = new UCMType;
$this->type = $type->getTypeByAlias($this->typeAlias);
}
@ -367,8 +367,7 @@ class ###Component###Model###View### extends AdminModel
if (!$done)
{
$this->setError(JText::_('JLIB_APPLICATION_ERROR_INSUFFICIENT_BATCH_INFORMATION'));
$this->setError(Text::_('JLIB_APPLICATION_ERROR_INSUFFICIENT_BATCH_INFORMATION'));
return false;
}
@ -377,7 +376,7 @@ class ###Component###Model###View### extends AdminModel
return true;
}###MODEL_BATCH_COPY######MODEL_BATCH_MOVE###
/**
* Method to save the form data.
*
@ -389,34 +388,34 @@ class ###Component###Model###View### extends AdminModel
*/
public function save($data)
{
$input = JFactory::getApplication()->input;
$filter = JFilterInput::getInstance();
$input = Factory::getApplication()->input;
$filter = InputFilter::getInstance();
// set the metadata to the Item Data
if (isset($data['metadata']) && isset($data['metadata']['author']))
{
$data['metadata']['author'] = $filter->clean($data['metadata']['author'], 'TRIM');
$metadata = new JRegistry;
$metadata = new Registry;
$metadata->loadArray($data['metadata']);
$data['metadata'] = (string) $metadata;
}###CHECKBOX_SAVE######METHOD_ITEM_SAVE###
// Set the Params Items to data
if (isset($data['params']) && is_array($data['params']))
{
$params = new JRegistry;
$params = new Registry;
$params->loadArray($data['params']);
$data['params'] = (string) $params;
}###TITLEALIASFIX###
if (parent::save($data))
{
return true;
}
return false;
}
/**
* Method to generate a unique value.
*
@ -429,7 +428,6 @@ class ###Component###Model###View### extends AdminModel
*/
protected function generateUnique($field,$value)
{
// set field value unique
$table = $this->getTable();

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder
*
* @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder>
* @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
*/
@ -52,18 +52,18 @@ class ###Component###Model###View### extends AdminModel
* @param string $prefix A prefix for the table class name. Optional.
* @param array $config Configuration array for model. Optional.
*
* @return JTable A database object
* @return Table A database object
*
* @since 1.6
*/
public function getTable($type = '###view###', $prefix = '###Component###Table', $config = array())
public function getTable($type = '###view###', $prefix = '###Component###Table', $config = [])
{
// add table path for when model gets used from other component
$this->addTablePath(JPATH_ADMINISTRATOR . '/components/com_###component###/tables');
// get instance of the table
return JTable::getInstance($type, $prefix, $config);
return Table::getInstance($type, $prefix, $config);
}###ADMIN_CUSTOM_BUTTONS_METHOD###
/**
* Method to get a single record.
*
@ -108,7 +108,7 @@ class ###Component###Model###View### extends AdminModel
*
* @since 1.6
*/
public function getForm($data = array(), $loadData = true, $options = array('control' => 'jform'))
public function getForm($data = [], $loadData = true, $options = array('control' => 'jform'))
{
// set load data option
$options['load_data'] = $loadData;###JMODELADMIN_GETFORM###
@ -117,13 +117,13 @@ class ###Component###Model###View### extends AdminModel
/**
* Method to get the script that have to be included on the form
*
* @return string script files
* @return string script files
*/
public function getScript()
{
return 'media/com_###component###/js/###view###.js';
}
/**
* Method to test whether a record can be deleted.
*
@ -149,24 +149,24 @@ class ###Component###Model###View### extends AdminModel
protected function canEditState($record)
{###JMODELADMIN_CANEDITSTATE###
}
/**
* Method override to check if you can edit an existing record.
*
* @param array $data An array of input data.
* @param string $key The name of the key for the primary key.
* @param array $data An array of input data.
* @param string $key The name of the key for the primary key.
*
* @return boolean
* @since 2.5
* @return boolean
* @since 2.5
*/
protected function allowEdit($data = array(), $key = 'id')
protected function allowEdit($data = [], $key = 'id')
{###JMODELADMIN_ALLOWEDIT###
}
/**
* Prepare and sanitise the table data prior to saving.
*
* @param JTable $table A JTable object.
* @param Table $table A Table object.
*
* @return void
*
@ -174,19 +174,19 @@ class ###Component###Model###View### extends AdminModel
*/
protected function prepareTable($table)
{###LICENSE_TABLE_LOCKED_CHECK###
$date = JFactory::getDate();
$user = JFactory::getUser();
$date = Factory::getDate();
$user = Factory::getUser();
if (isset($table->name))
{
$table->name = htmlspecialchars_decode($table->name, ENT_QUOTES);
}
if (isset($table->alias) && empty($table->alias))
{
$table->generateAlias();
}
if (empty($table->id))
{
$table->created = $date->toSql();
@ -198,7 +198,7 @@ class ###Component###Model###View### extends AdminModel
// Set ordering to the last item if not set
if (empty($table->ordering))
{
$db = JFactory::getDbo();
$db = Factory::getDbo();
$query = $db->getQuery(true)
->select('MAX(ordering)')
->from($db->quoteName('#__###component###_###view###'));
@ -213,7 +213,7 @@ class ###Component###Model###View### extends AdminModel
$table->modified = $date->toSql();
$table->modified_by = $user->id;
}
if (!empty($table->id))
{
// Increment the items version number.
@ -228,10 +228,10 @@ class ###Component###Model###View### extends AdminModel
*
* @since 1.6
*/
protected function loadFormData()
protected function loadFormData()
{
// Check the session for previously entered form data.
$data = JFactory::getApplication()->getUserState('com_###component###.edit.###view###.data', array());
$data = Factory::getApplication()->getUserState('com_###component###.edit.###view###.data', []);
if (empty($data))
{
@ -242,7 +242,7 @@ class ###Component###Model###View### extends AdminModel
return $data;
}###VALIDATIONFIX######UNIQUEFIELDS###
/**
* Method to delete one or more records.
*
@ -258,7 +258,7 @@ class ###Component###Model###View### extends AdminModel
{
return false;
}###JMODELADMIN_AFTER_DELETE###
return true;
}
@ -278,10 +278,10 @@ class ###Component###Model###View### extends AdminModel
{
return false;
}###JMODELADMIN_AFTER_PUBLISH###
return true;
}
}
/**
* Method to perform batch operations on an item or a set of items.
*
@ -307,30 +307,30 @@ class ###Component###Model###View### extends AdminModel
if (empty($pks))
{
$this->setError(JText::_('JGLOBAL_NO_ITEM_SELECTED'));
$this->setError(Text::_('JGLOBAL_NO_ITEM_SELECTED'));
return false;
}
$done = false;
// Set some needed variables.
$this->user = JFactory::getUser();
$this->table = $this->getTable();
$this->tableClassName = get_class($this->table);
$this->contentType = new JUcmType;
$this->type = $this->contentType->getTypeByTable($this->tableClassName);
$this->canDo = ###Component###Helper::getActions('###view###');
$this->batchSet = true;
$this->user = Factory::getUser();
$this->table = $this->getTable();
$this->tableClassName = get_class($this->table);
$this->contentType = new UCMType;
$this->type = $this->contentType->getTypeByTable($this->tableClassName);
$this->canDo = ###Component###Helper::getActions('###view###');
$this->batchSet = true;
if (!$this->canDo->get('core.batch'))
{
$this->setError(JText::_('JLIB_APPLICATION_ERROR_INSUFFICIENT_BATCH_INFORMATION'));
$this->setError(Text::_('JLIB_APPLICATION_ERROR_INSUFFICIENT_BATCH_INFORMATION'));
return false;
}
if ($this->type == false)
{
$type = new JUcmType;
$type = new UCMType;
$this->type = $type->getTypeByAlias($this->typeAlias);
}
@ -367,8 +367,7 @@ class ###Component###Model###View### extends AdminModel
if (!$done)
{
$this->setError(JText::_('JLIB_APPLICATION_ERROR_INSUFFICIENT_BATCH_INFORMATION'));
$this->setError(Text::_('JLIB_APPLICATION_ERROR_INSUFFICIENT_BATCH_INFORMATION'));
return false;
}
@ -377,7 +376,7 @@ class ###Component###Model###View### extends AdminModel
return true;
}###MODEL_BATCH_COPY######MODEL_BATCH_MOVE###
/**
* Method to save the form data.
*
@ -389,34 +388,34 @@ class ###Component###Model###View### extends AdminModel
*/
public function save($data)
{
$input = JFactory::getApplication()->input;
$filter = JFilterInput::getInstance();
$input = Factory::getApplication()->input;
$filter = InputFilter::getInstance();
// set the metadata to the Item Data
if (isset($data['metadata']) && isset($data['metadata']['author']))
{
$data['metadata']['author'] = $filter->clean($data['metadata']['author'], 'TRIM');
$metadata = new JRegistry;
$metadata = new Registry;
$metadata->loadArray($data['metadata']);
$data['metadata'] = (string) $metadata;
}###CHECKBOX_SAVE######METHOD_ITEM_SAVE###
// Set the Params Items to data
if (isset($data['params']) && is_array($data['params']))
{
$params = new JRegistry;
$params = new Registry;
$params->loadArray($data['params']);
$data['params'] = (string) $params;
}###TITLEALIASFIX###
if (parent::save($data))
{
return true;
}
return false;
}
/**
* Method to generate a unique value.
*
@ -427,9 +426,8 @@ class ###Component###Model###View### extends AdminModel
*
* @since 3.0
*/
protected function generateUnique($field,$value)
protected function generateUnique($field, $value)
{
// set field value unique
$table = $this->getTable();

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder
*
* @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder>
* @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
*/
@ -19,6 +19,8 @@ defined('_JEXEC') or die('Restricted access');
use Joomla\CMS\MVC\Controller\BaseController;
use Joomla\Utilities\ArrayHelper;
use Joomla\CMS\Language\Text;
use Joomla\CMS\Router\Route;
/**
* General Controller of ###Component### component
@ -34,7 +36,7 @@ class ###Component###Controller extends BaseController
*
* @since 3.0
*/
public function __construct($config = array())
public function __construct($config = [])
{
// set the default view
$config['default_view'] = '###DASHBOARDVIEW###';
@ -50,38 +52,38 @@ class ###Component###Controller extends BaseController
function display($cachable = false, $urlparams = false)
{
// set default view if not set
$view = $this->input->getCmd('view', '###DASHBOARDVIEW###');
$data = $this->getViewRelation($view);
$layout = $this->input->get('layout', null, 'WORD');
$id = $this->input->getInt('id');
$view = $this->input->getCmd('view', '###DASHBOARDVIEW###');
$data = $this->getViewRelation($view);
$layout = $this->input->get('layout', null, 'WORD');
$id = $this->input->getInt('id');
// Check for edit form.
if(###Component###Helper::checkArray($data))
if(Super___0a59c65c_9daf_4bc9_baf4_e063ff9e6a8a___Power::check($data))
{
if ($data['edit'] && $layout == 'edit' && !$this->checkEditId('com_###component###.edit.'.$data['view'], $id))
{
// Somehow the person just went to the form - we don't allow that.
$this->setError(JText::sprintf('JLIB_APPLICATION_ERROR_UNHELD_ID', $id));
$this->setError(Text::sprintf('JLIB_APPLICATION_ERROR_UNHELD_ID', $id));
$this->setMessage($this->getError(), 'error');
// check if item was opend from other then its own list view
$ref = $this->input->getCmd('ref', 0);
$refid = $this->input->getInt('refid', 0);
$ref = $this->input->getCmd('ref', 0);
$refid = $this->input->getInt('refid', 0);
// set redirect
if ($refid > 0 && ###Component###Helper::checkString($ref))
if ($refid > 0 && Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::check($ref))
{
// redirect to item of ref
$this->setRedirect(JRoute::_('index.php?option=com_###component###&view='.(string)$ref.'&layout=edit&id='.(int)$refid, false));
$this->setRedirect(Route::_('index.php?option=com_###component###&view='.(string)$ref.'&layout=edit&id='.(int)$refid, false));
}
elseif (###Component###Helper::checkString($ref))
elseif (Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::check($ref))
{
// redirect to ref
$this->setRedirect(JRoute::_('index.php?option=com_###component###&view='.(string)$ref, false));
$this->setRedirect(Route::_('index.php?option=com_###component###&view='.(string)$ref, false));
}
else
{
// normal redirect back to the list view
$this->setRedirect(JRoute::_('index.php?option=com_###component###&view='.$data['views'], false));
$this->setRedirect(Route::_('index.php?option=com_###component###&view='.$data['views'], false));
}
return false;
@ -94,7 +96,7 @@ class ###Component###Controller extends BaseController
protected function getViewRelation($view)
{
// check the we have a value
if (###Component###Helper::checkString($view))
if (Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::check($view))
{
// the view relationships
$views = array(###VIEWARRAY###

View File

@ -3,8 +3,8 @@
* @package Joomla.Component.Builder
*
* @created 30th April, 2015
* @author Llewellyn van der Merwe <http://www.joomlacomponentbuilder.com>
* @github Joomla Component Builder <https://github.com/vdm-io/Joomla-Component-Builder>
* @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
*/
@ -17,7 +17,9 @@ defined('_JEXEC') or die('Restricted access');
// No direct access to this file
defined('_JEXEC') or die('Restricted access');
use Joomla\CMS\Factory;
use Joomla\CMS\MVC\Controller\BaseController;
use Joomla\CMS\Session\Session;
use Joomla\Utilities\ArrayHelper;
/**
@ -29,9 +31,9 @@ class ###Component###ControllerAjax extends BaseController
{
parent::__construct($config);
// make sure all json stuff are set
JFactory::getDocument()->setMimeEncoding( 'application/json' );
Factory::getDocument()->setMimeEncoding( 'application/json' );
// get the application
$app = JFactory::getApplication();
$app = Factory::getApplication();
$app->setHeader('Content-Disposition','attachment;filename="getajax.json"');
$app->setHeader('Access-Control-Allow-Origin', '*');
// load the tasks ###REGISTER_AJAX_TASK###
@ -40,16 +42,16 @@ class ###Component###ControllerAjax extends BaseController
public function ajax()
{
// get the user for later use
$user = JFactory::getUser();
$user = Factory::getUser();
// get the input values
$jinput = JFactory::getApplication()->input;