Compare commits

...

29 Commits

Author SHA1 Message Date
d66fd2a83b Stable Release 2.11.7 2020-10-29 15:49:04 +02:00
54e4f96edf Added the needed changes to the core compiler to manage dynamic headers per/controller via pro-member-plugin. gh-548 2020-10-26 22:30:51 +02:00
2ea64446af Added the needed changes to the core compiler to manage dynamic headers per/model via pro-member-plugin. gh-548 2020-10-21 05:10:19 +02:00
3d5ff09969 Added more placeholder options for the pagination area in site views. gh-578 2020-10-11 05:26:51 +02:00
8190e72902 Resolved gh-600 so that the SQL set in the Admin view will exported with the JCB package. 2020-10-11 04:02:00 +02:00
8a87d8977a Resolved gh-603 to make sure the code has HTML placholder style, in round trip development. 2020-10-07 00:54:33 +02:00
ac86c8c56b Update the user updater helper method to all password change, since Joomla changed the user save method in the user class. 2020-09-18 07:18:04 +02:00
2fa1d15939 Resolved gh-596 so that the language strings needed for publishing failure is also added. 2020-09-15 19:15:36 +02:00
dd3aaddf62 added the database update scripts for the new changes. 2020-09-15 19:02:49 +02:00
68769604dd Resolved gh-598 to allow empty prefix as default. 2020-09-15 18:59:20 +02:00
d062e03a04 Added the overide option to the linked admin views. Added the option to remove line breaks in all langguage strings. Increased the field size to MEDIUMTEXT for the default input in joomla_module custom_admin_view and site_view. 2020-08-19 02:54:09 +02:00
Michael Richey
c32baff933 Update e_Interpretation.php 2020-08-13 09:02:14 -05:00
Michael Richey
3c5928caa9 Update e_Interpretation.php
When field default is DATETIME or CURRENT_TIMESTAMP, the SQL is constructed out of order.  The default gets inserted before the NULL/NOT NULL string.  One line fix - YAY!
2020-08-13 08:53:57 -05:00
861347318d Fixed the Categories link on the dashboard to follow the new single list view naming convention. 2020-08-13 03:03:56 +02:00
3ca4c3c3d6 Fixed gh-583 spelling mistake in JError::raiseWaring(..) 2020-08-08 17:06:42 +02:00
3fa87a2ccc Added the SAFEHTML filter to the copyright textarea of the Joomla components. 2020-08-08 15:29:51 +02:00
98f1821914 Added the option to exclude language strings from JCB package exports. 2020-07-28 06:14:49 +02:00
53f0abc0e2 Added the security policy. 2020-07-26 18:35:19 +02:00
05da68f1ae Resolved gh-576 to allow empty filter options. 2020-07-26 18:21:08 +02:00
6bb23fc6ee Improved the export feature to allow bulk custom overide, and dynamic behaviour towards larger sets. Added function name to custom buttons as a class for CSS styling. 2020-07-24 06:11:38 +02:00
27de9a83a5 Removed the fallback for empty description on title field.Improved the createUser method to allow custom methodd registerUser to create a user. Fixed the empty not_required field issue. 2020-07-18 21:36:05 +02:00
3a5681ce43 Added option to dynamicly set the sub-form layout from global options. Fixed bug in compiler that caused index warning. 2020-07-13 04:52:06 +02:00
25afc31e7f fixed greateUser logic to use the admin and site creation modes in correct way. Fixed language import issue that cause header mismatching. Added the option to add header values to the custom-custom fields. 2020-07-11 03:35:13 +02:00
a394638aff Fixed gh-570 to add the correct custom field placeholder type, which is PHP and not HTML. 2020-07-07 21:42:43 +02:00
354565d96a Major improment to user helper methods. Fixed custom field building options to allow options to be set. Fixed gh-569 to use correct paths in module custom fields and rules. Imporved the fancy date helper methods. Added the new Text::_() languange string search for language strings. Add the option to add header custom code to custom fields. 2020-07-07 17:13:04 +02:00
e86ab88f5c Fixed gh-571 compiler path errors. 2020-06-25 21:22:30 +02:00
90f48bd5fa Updated paypal donation link in readme note. 2020-06-02 00:49:30 +02:00
70635ff6f0 Added notice to the compiler where it detects mismatching category view target names. Added the update script for categories in JCB. Made adjustments all across JCB to act according to gh-561 implementation. 2020-05-30 20:49:13 +02:00
f2b2228dd7 Fixed gh-565 by removing the old PHPExcel_IOFactory and adding the new. Updated the subform layout for verious subforms in JCB for beter display. Change the helper category naming conventions for better integration with Joomla fields. gh-561 2020-05-29 03:01:07 +02:00
240 changed files with 5058 additions and 2568 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 safe you lots of time and money. A real must have! 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.11.2) 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.11.7) 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) > 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:llewellyn@joomlacomponentbuilder.com) + *Author*: [Llewellyn van der Merwe](mailto:llewellyn@joomlacomponentbuilder.com)
+ *Name*: [Component Builder](https://github.com/vdm-io/Joomla-Component-Builder) + *Name*: [Component Builder](https://github.com/vdm-io/Joomla-Component-Builder)
+ *First Build*: 30th April, 2015 + *First Build*: 30th April, 2015
+ *Last Build*: 25th May, 2020 + *Last Build*: 29th October, 2020
+ *Version*: 2.11.2 + *Version*: 2.11.7
+ *Copyright*: Copyright (C) 2015 - 2020 Vast Development Method. All rights reserved. + *Copyright*: Copyright (C) 2015 - 2020 Vast Development Method. All rights reserved.
+ *License*: GNU General Public License version 2 or later; see LICENSE.txt + *License*: GNU General Public License version 2 or later; see LICENSE.txt
+ *Line count*: **282168** + *Line count*: **283847**
+ *Field count*: **1522** + *Field count*: **1536**
+ *File count*: **1783** + *File count*: **1799**
+ *Folder count*: **295** + *Folder count*: **304**
> This **component** was build with a [Joomla](https://extensions.joomla.org/extension/component-builder/) [Automated Component Builder](http://joomlacomponentbuilder.com). > This **component** was build with a [Joomla](https://extensions.joomla.org/extension/component-builder/) [Automated Component Builder](http://joomlacomponentbuilder.com).
> Developed by [Llewellyn van der Merwe](mailto:llewellyn@joomlacomponentbuilder.com) > Developed by [Llewellyn van der Merwe](mailto:llewellyn@joomlacomponentbuilder.com)

7
SECURITY.md Normal file
View File

@@ -0,0 +1,7 @@
# Security Policy
## Reporting a Vulnerability
Report all security issues on the JCB website, and not on GitHub.
### [joomlacomponentbuilder.com/report-security-issues](http://joomlacomponentbuilder.com/report-security-issues)

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 safe you lots of time and money. A real must have! 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.11.2) 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.11.7) 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) > 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:llewellyn@joomlacomponentbuilder.com) + *Author*: [Llewellyn van der Merwe](mailto:llewellyn@joomlacomponentbuilder.com)
+ *Name*: [Component Builder](https://github.com/vdm-io/Joomla-Component-Builder) + *Name*: [Component Builder](https://github.com/vdm-io/Joomla-Component-Builder)
+ *First Build*: 30th April, 2015 + *First Build*: 30th April, 2015
+ *Last Build*: 25th May, 2020 + *Last Build*: 29th October, 2020
+ *Version*: 2.11.2 + *Version*: 2.11.7
+ *Copyright*: Copyright (C) 2015 - 2020 Vast Development Method. All rights reserved. + *Copyright*: Copyright (C) 2015 - 2020 Vast Development Method. All rights reserved.
+ *License*: GNU General Public License version 2 or later; see LICENSE.txt + *License*: GNU General Public License version 2 or later; see LICENSE.txt
+ *Line count*: **282168** + *Line count*: **283847**
+ *Field count*: **1522** + *Field count*: **1536**
+ *File count*: **1783** + *File count*: **1799**
+ *Folder count*: **295** + *Folder count*: **304**
> This **component** was build with a [Joomla](https://extensions.joomla.org/extension/component-builder/) [Automated Component Builder](http://joomlacomponentbuilder.com). > This **component** was build with a [Joomla](https://extensions.joomla.org/extension/component-builder/) [Automated Component Builder](http://joomlacomponentbuilder.com).
> Developed by [Llewellyn van der Merwe](mailto:llewellyn@joomlacomponentbuilder.com) > Developed by [Llewellyn van der Merwe](mailto:llewellyn@joomlacomponentbuilder.com)

View File

@@ -51,8 +51,8 @@ class ###Component###Model###Component### extends JModelList
$viewName = $name; $viewName = $name;
$alt = $name; $alt = $name;
$url = $url; $url = $url;
$image = $name.'.'.$type; $image = $name . '.' . $type;
$name = 'COM_###COMPONENT###_DASHBOARD_'.###Component###Helper::safeString($name,'U'); $name = 'COM_###COMPONENT###_DASHBOARD_' . ###Component###Helper::safeString($name,'U');
} }
} }
// internal views // internal views
@@ -74,17 +74,27 @@ class ###Component###Model###Component### extends JModelList
switch($action) switch($action)
{ {
case 'add': case 'add':
$url = 'index.php?option=com_###component###&view='.$name.'&layout=edit'; $url = 'index.php?option=com_###component###&view=' . $name . '&layout=edit';
$image = $name.'_'.$action.'.'.$type; $image = $name . '_' . $action. '.' . $type;
$alt = $name.' '.$action; $alt = $name . ' ' . $action;
$name = 'COM_###COMPONENT###_DASHBOARD_'.###Component###Helper::safeString($name,'U').'_ADD'; $name = 'COM_###COMPONENT###_DASHBOARD_'.###Component###Helper::safeString($name,'U').'_ADD';
$add = true; $add = true;
break; break;
default: default:
$url = 'index.php?option=com_categories&view=categories&extension=com_###component###.'.$name; // check for new convention (more stable)
$image = $name.'_'.$action.'.'.$type; if (strpos($action, '_qpo0O0oqp_') !== false)
$alt = $name.' '.$action; {
$name = 'COM_###COMPONENT###_DASHBOARD_'.###Component###Helper::safeString($name,'U').'_'.###Component###Helper::safeString($action,'U'); list($action, $extension) = (array) explode('_qpo0O0oqp_', $action);
$extension = str_replace('_po0O0oq_', '.', $extension);
}
else
{
$extension = 'com_###component###.' . $name;
}
$url = 'index.php?option=com_categories&view=categories&extension=' . $extension;
$image = $name . '_' . $action . '.' . $type;
$alt = $viewName . ' ' . $action;
$name = 'COM_###COMPONENT###_DASHBOARD_' . ###Component###Helper::safeString($name,'U') . '_' . ###Component###Helper::safeString($action,'U');
break; break;
} }
} }
@@ -92,9 +102,9 @@ class ###Component###Model###Component### extends JModelList
{ {
$viewName = $name; $viewName = $name;
$alt = $name; $alt = $name;
$url = 'index.php?option=com_###component###&view='.$name; $url = 'index.php?option=com_###component###&view=' . $name;
$image = $name.'.'.$type; $image = $name . '.' . $type;
$name = 'COM_###COMPONENT###_DASHBOARD_'.###Component###Helper::safeString($name,'U'); $name = 'COM_###COMPONENT###_DASHBOARD_' . ###Component###Helper::safeString($name,'U');
$hover = false; $hover = false;
} }
} }
@@ -102,8 +112,8 @@ class ###Component###Model###Component### extends JModelList
{ {
$viewName = $view; $viewName = $view;
$alt = $view; $alt = $view;
$url = 'index.php?option=com_###component###&view='.$view; $url = 'index.php?option=com_###component###&view=' . $view;
$image = $view.'.png'; $image = $view . '.png';
$name = ucwords($view).'<br /><br />'; $name = ucwords($view).'<br /><br />';
$hover = false; $hover = false;
} }
@@ -115,7 +125,7 @@ class ###Component###Model###Component### extends JModelList
$dashboard_list = false; $dashboard_list = false;
$accessTo = ''; $accessTo = '';
$accessAdd = ''; $accessAdd = '';
// acces checking start // access checking start
$accessCreate = (isset($viewAccess[$viewName.'.create'])) ? ###Component###Helper::checkString($viewAccess[$viewName.'.create']):false; $accessCreate = (isset($viewAccess[$viewName.'.create'])) ? ###Component###Helper::checkString($viewAccess[$viewName.'.create']):false;
$accessAccess = (isset($viewAccess[$viewName.'.access'])) ? ###Component###Helper::checkString($viewAccess[$viewName.'.access']):false; $accessAccess = (isset($viewAccess[$viewName.'.access'])) ? ###Component###Helper::checkString($viewAccess[$viewName.'.access']):false;
// set main controllers // set main controllers
@@ -130,7 +140,7 @@ class ###Component###Model###Component### extends JModelList
{ {
$accessAdd = 'core.create'; $accessAdd = 'core.create';
} }
// check if acces to view is set // check if access to view is set
if ($accessAccess) if ($accessAccess)
{ {
$accessTo = $viewAccess[$viewName.'.access']; $accessTo = $viewAccess[$viewName.'.access'];

View File

@@ -18,6 +18,7 @@ defined('_JEXEC') or die('Restricted access');
defined('_JEXEC') or die('Restricted access'); defined('_JEXEC') or die('Restricted access');
use Joomla\CMS\Language\Language; use Joomla\CMS\Language\Language;
use Joomla\Registry\Registry;
use Joomla\String\StringHelper; use Joomla\String\StringHelper;
use Joomla\Utilities\ArrayHelper;###ADMIN_HELPER_CLASS_HEADER### use Joomla\Utilities\ArrayHelper;###ADMIN_HELPER_CLASS_HEADER###

View File

@@ -20,7 +20,7 @@ defined('_JEXEC') or die('Restricted access');
/** /**
* ###Component### ###View### Component Category Tree * ###Component### ###View### Component Category Tree
*/ */
class ###Component######Views###Categories extends JCategories class ###Component######View###Categories extends JCategories
{ {
/** /**
* Class constructor * Class constructor
@@ -31,7 +31,7 @@ class ###Component######Views###Categories extends JCategories
public function __construct($options = array()) public function __construct($options = array())
{ {
$options['table'] = '#__###component###_###view###'; $options['table'] = '#__###component###_###view###';
$options['extension'] = 'com_###component###.###views###'; $options['extension'] = 'com_###component###.###view###';
parent::__construct($options); parent::__construct($options);
} }

View File

@@ -18,6 +18,7 @@ defined('_JEXEC') or die('Restricted access');
defined('_JEXEC') or die('Restricted access'); defined('_JEXEC') or die('Restricted access');
use Joomla\CMS\Language\Language; use Joomla\CMS\Language\Language;
use Joomla\Registry\Registry;
use Joomla\String\StringHelper; use Joomla\String\StringHelper;
use Joomla\Utilities\ArrayHelper;###SITE_HELPER_CLASS_HEADER### use Joomla\Utilities\ArrayHelper;###SITE_HELPER_CLASS_HEADER###

View File

@@ -17,7 +17,7 @@ defined('_JEXEC') or die('Restricted access');
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access'); defined('_JEXEC') or die('Restricted access');
use Joomla\Utilities\ArrayHelper; ###ADMIN_VIEWS_CONTROLLER_HEADER###
/** /**
* ###Views### Controller * ###Views### Controller

View File

@@ -17,7 +17,7 @@ defined('_JEXEC') or die('Restricted access');
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access'); defined('_JEXEC') or die('Restricted access');
use Joomla\Utilities\ArrayHelper; ###CUSTOM_ADMIN_VIEWS_CONTROLLER_HEADER###
/** /**
* ###SViews### Controller * ###SViews### Controller

View File

@@ -17,7 +17,7 @@ defined('_JEXEC') or die('Restricted access');
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access'); defined('_JEXEC') or die('Restricted access');
use Joomla\Utilities\ArrayHelper; ###ADMIN_VIEW_CONTROLLER_HEADER###
/** /**
* ###View### Controller * ###View### Controller

View File

@@ -17,7 +17,7 @@ defined('_JEXEC') or die('Restricted access');
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access'); defined('_JEXEC') or die('Restricted access');
use Joomla\Utilities\ArrayHelper; ###SITE_VIEW_CONTROLLER_HEADER###
/** /**
* ###Component### ###SView### Controller * ###Component### ###SView### Controller

View File

@@ -17,7 +17,7 @@ defined('_JEXEC') or die('Restricted access');
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access'); defined('_JEXEC') or die('Restricted access');
use Joomla\Utilities\ArrayHelper; ###SITE_ADMIN_VIEW_CONTROLLER_HEADER###
/** /**
* ###View### Controller * ###View### Controller

View File

@@ -17,7 +17,7 @@ defined('_JEXEC') or die('Restricted access');
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access'); defined('_JEXEC') or die('Restricted access');
use Joomla\Utilities\ArrayHelper; ###CUSTOM_ADMIN_VIEW_CONTROLLER_HEADER###
/** /**
* ###Component### ###SView### Controller * ###Component### ###SView### Controller

View File

@@ -17,9 +17,7 @@ defined('_JEXEC') or die('Restricted access');
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access'); defined('_JEXEC') or die('Restricted access');
// import the ###JFORM_extends### field type ###JFORM_TYPE_HEADER###
jimport('joomla.form.helper');
JFormHelper::loadFieldClass('###JFORM_extends###');
/** /**
* ###Type### Form Field class for the ###Component### component * ###Type### Form Field class for the ###Component### component

View File

@@ -17,9 +17,7 @@ defined('_JEXEC') or die('Restricted access');
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access'); defined('_JEXEC') or die('Restricted access');
use Joomla\Registry\Registry; ###ADMIN_VIEW_MODEL_HEADER###
use Joomla\String\StringHelper;
use Joomla\Utilities\ArrayHelper;
/** /**
* ###Component### ###View### Model * ###Component### ###View### Model

View File

@@ -17,9 +17,7 @@ defined('_JEXEC') or die('Restricted access');
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access'); defined('_JEXEC') or die('Restricted access');
use Joomla\Registry\Registry; ###SITE_ADMIN_VIEW_MODEL_HEADER###
use Joomla\String\StringHelper;
use Joomla\Utilities\ArrayHelper;
/** /**
* ###Component### ###View### Model * ###Component### ###View### Model

View File

@@ -17,7 +17,7 @@ defined('_JEXEC') or die('Restricted access');
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access'); defined('_JEXEC') or die('Restricted access');
use Joomla\Utilities\ArrayHelper; ###CUSTOM_ADMIN_VIEW_MODEL_HEADER###
/** /**
* ###Component### ###SView### Model * ###Component### ###SView### Model
@@ -108,13 +108,13 @@ class ###Component###Model###SView### extends JModelItem
{ {
try try
{###CUSTOM_ADMIN_GET_ITEM### {###CUSTOM_ADMIN_GET_ITEM###
} }
catch (Exception $e) catch (Exception $e)
{ {
if ($e->getCode() == 404) if ($e->getCode() == 404)
{ {
// Need to go thru the error handler to allow Redirect to work. // Need to go thru the error handler to allow Redirect to work.
JError::raiseWaring(404, $e->getMessage()); JError::raiseWarning(404, $e->getMessage());
} }
else else
{ {

View File

@@ -17,7 +17,7 @@ defined('_JEXEC') or die('Restricted access');
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access'); defined('_JEXEC') or die('Restricted access');
use Joomla\Utilities\ArrayHelper; ###SITE_VIEW_MODEL_HEADER###
/** /**
* ###Component### ###SView### Model * ###Component### ###SView### Model
@@ -107,7 +107,7 @@ class ###Component###Model###SView### extends JModelItem
if ($e->getCode() == 404) if ($e->getCode() == 404)
{ {
// Need to go thru the error handler to allow Redirect to work. // Need to go thru the error handler to allow Redirect to work.
JError::raiseWaring(404, $e->getMessage()); JError::raiseWarning(404, $e->getMessage());
} }
else else
{ {

View File

@@ -17,7 +17,7 @@ defined('_JEXEC') or die('Restricted access');
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access'); defined('_JEXEC') or die('Restricted access');
use Joomla\Utilities\ArrayHelper; ###ADMIN_VIEWS_MODEL_HEADER###
/** /**
* ###Views### Model * ###Views### Model

View File

@@ -17,7 +17,7 @@ defined('_JEXEC') or die('Restricted access');
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access'); defined('_JEXEC') or die('Restricted access');
use Joomla\Utilities\ArrayHelper; ###CUSTOM_ADMIN_VIEWS_MODEL_HEADER###
/** /**
* ###Component### Model for ###SViews### * ###Component### Model for ###SViews###

View File

@@ -17,7 +17,7 @@ defined('_JEXEC') or die('Restricted access');
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access'); defined('_JEXEC') or die('Restricted access');
use Joomla\Utilities\ArrayHelper; ###SITE_VIEWS_MODEL_HEADER###
/** /**
* ###Component### Model for ###SViews### * ###Component### Model for ###SViews###

View File

@@ -24,9 +24,10 @@ JHtml::_('formbehavior.chosen', 'select');
JHtml::_('behavior.keepalive'); JHtml::_('behavior.keepalive');
JHtml::_('behavior.tabstate'); JHtml::_('behavior.tabstate');
JHtml::_('behavior.calendar'); JHtml::_('behavior.calendar');
$componentParams = $this->params; // will be removed just use $this->params instead
?> ?>
<div class="###component###-###view###">
<?php echo $this->toolbar->render(); ?> <?php echo $this->toolbar->render(); ?>
<form action="<?php echo JRoute::_('index.php?option=com_###component###&layout=edit&id='. (int) $this->item->id . $this->referral); ?>" method="post" name="adminForm" id="adminForm" class="form-validate" enctype="multipart/form-data"> <form action="<?php echo JRoute::_('index.php?option=com_###component###&layout=edit&id='. (int) $this->item->id . $this->referral); ?>" method="post" name="adminForm" id="adminForm" class="form-validate" enctype="multipart/form-data">
###EDITBODY### ###EDITBODY###
</form>###EDITBODYSCRIPT### </form>
</div>###EDITBODYSCRIPT###

View File

@@ -0,0 +1,20 @@
<?php
/**
* @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>
* @copyright Copyright (C) 2015 - 2018 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');
?>
###BOM###
// No direct access to this file
defined('JPATH_BASE') or die('Restricted access');###ADMIN_LAYOUT_CODE###
?>###ADMIN_LAYOUT_BODY###

View File

@@ -376,6 +376,11 @@
"rename": "JFormRule", "rename": "JFormRule",
"type": "rule" "type": "rule"
}, },
"layout_admin.php": {
"path": "c0mp0n3nt/admin/layouts",
"rename": "layout_admin",
"type": "layout"
},
"layoutitems.php": { "layoutitems.php": {
"path": "c0mp0n3nt/admin/layouts/VIEW", "path": "c0mp0n3nt/admin/layouts/VIEW",
"rename": "layoutitems", "rename": "layoutitems",

View File

@@ -47,6 +47,71 @@
/> />
<field type="spacer" name="spacerHistory" hr="true" /> <field type="spacer" name="spacerHistory" hr="true" />
<!-- Subform_layouts Field. Type: Subform. (joomla) -->
<field
type="subform"
name="subform_layouts"
label="COM_COMPONENTBUILDER_CONFIG_SUBFORM_LAYOUTS_LABEL"
layout="joomla.form.field.subform.repeatable-table"
multiple="true"
buttons="add,remove,move"
description="COM_COMPONENTBUILDER_CONFIG_SUBFORM_LAYOUTS_DESCRIPTION"
icon="list"
max="9"
min="1">
<form hidden="true" name="list_subform_layouts_modal" repeat="true">
<!-- View_field Field. Type: List. (joomla) -->
<field
type="list"
name="view_field"
label="COM_COMPONENTBUILDER_CONFIG_VIEW_FIELD_LABEL"
class="list_class"
multiple="false"
filter="CMD"
required="true"
default="default">
<!-- Option Set. -->
<option value="default">
COM_COMPONENTBUILDER_CONFIG_DEFAULT</option>
<option value="admin_custom_tabs.tabs">
COM_COMPONENTBUILDER_CONFIG_ADMIN_CUSTOM_TABS_TABS</option>
<option value="admin_fields.addfields">
COM_COMPONENTBUILDER_CONFIG_ADMIN_FIELDS_ADDFIELDS</option>
<option value="admin_fields_conditions.addconditions">
COM_COMPONENTBUILDER_CONFIG_ADMIN_FIELDS_CONDITIONS_ADDCONDITIONS</option>
<option value="admin_fields_relations.addrelations">
COM_COMPONENTBUILDER_CONFIG_ADMIN_FIELDS_RELATIONS_ADDRELATIONS</option>
<option value="component_admin_views.addadmin_views">
COM_COMPONENTBUILDER_CONFIG_COMPONENT_ADMIN_VIEWS_ADDADMIN_VIEWS</option>
<option value="component_custom_admin_views.addcustom_admin_views">
COM_COMPONENTBUILDER_CONFIG_COMPONENT_CUSTOM_ADMIN_VIEWS_ADDCUSTOM_ADMIN_VIEWS</option>
<option value="component_site_views.addsite_views">
COM_COMPONENTBUILDER_CONFIG_COMPONENT_SITE_VIEWS_ADDSITE_VIEWS</option>
<option value="dynamic_get.join_db_table">
COM_COMPONENTBUILDER_CONFIG_DYNAMIC_GET_JOIN_DB_TABLE</option>
<option value="dynamic_get.join_view_table">
COM_COMPONENTBUILDER_CONFIG_DYNAMIC_GET_JOIN_VIEW_TABLE</option>
</field>
<!-- Layout Field. Type: List. (joomla) -->
<field
type="list"
name="layout"
label="COM_COMPONENTBUILDER_CONFIG_LAYOUT_LABEL"
class="list_class"
multiple="false"
filter="CMD"
required="true"
default="joomla.form.field.subform.repeatable-table">
<!-- Option Set. -->
<option value="joomla.form.field.subform.repeatable-table">
COM_COMPONENTBUILDER_CONFIG_REPEATABLETABLE_JOOMLA</option>
<option value="joomla.form.field.subform.repeatable">
COM_COMPONENTBUILDER_CONFIG_REPEATABLE_JOOMLA</option>
<option value="repeatablejcb">
COM_COMPONENTBUILDER_CONFIG_REPEATABLE_UIKIT</option>
</field>
</form>
</field>
<!-- Editor Field. Type: Plugins. (joomla) --> <!-- Editor Field. Type: Plugins. (joomla) -->
<field <field
type="plugins" type="plugins"
@@ -140,7 +205,7 @@
label="COM_COMPONENTBUILDER_CONFIG_MENU_PREFIX_LABEL" label="COM_COMPONENTBUILDER_CONFIG_MENU_PREFIX_LABEL"
size="30" size="30"
maxlength="30" maxlength="30"
default="&amp;#187;" default=""
description="COM_COMPONENTBUILDER_CONFIG_MENU_PREFIX_DESCRIPTION" description="COM_COMPONENTBUILDER_CONFIG_MENU_PREFIX_DESCRIPTION"
class="text_area" class="text_area"
filter="SAFEHTML" filter="SAFEHTML"
@@ -246,6 +311,20 @@
max="100" max="100"
step="10" step="10"
/> />
<!-- Export_language_strings Field. Type: Radio. (joomla) -->
<field
type="radio"
name="export_language_strings"
label="COM_COMPONENTBUILDER_CONFIG_EXPORT_LANGUAGE_STRINGS_LABEL"
description="COM_COMPONENTBUILDER_CONFIG_EXPORT_LANGUAGE_STRINGS_DESCRIPTION"
class="btn-group btn-group-yesno"
default="1">
<!-- Option Set. -->
<option value="1">
COM_COMPONENTBUILDER_CONFIG_YES</option>
<option value="0">
COM_COMPONENTBUILDER_CONFIG_NO</option>
</field>
<!-- Spacer_hr_six Field. Type: Spacer. A None Database Field. (joomla) --> <!-- Spacer_hr_six Field. Type: Spacer. A None Database Field. (joomla) -->
<field type="spacer" name="spacer_hr_six" hr="true" class="spacer_hr_six" /> <field type="spacer" name="spacer_hr_six" hr="true" class="spacer_hr_six" />
<!-- Compiler_field_builder_type Field. Type: List. (joomla) --> <!-- Compiler_field_builder_type Field. Type: List. (joomla) -->

View File

@@ -111,7 +111,7 @@ class Compiler extends Infusion
// Trigger Event: jcb_ce_onBeforeUpdateFiles // Trigger Event: jcb_ce_onBeforeUpdateFiles
$this->triggerEvent( $this->triggerEvent(
'jcb_ce_onBeforeUpdateFiles', 'jcb_ce_onBeforeUpdateFiles',
array(&$this->componentContext, $this) array(&$this->componentContext, &$this)
); );
// now update the files // now update the files
if (!$this->updateFiles()) if (!$this->updateFiles())
@@ -121,7 +121,7 @@ class Compiler extends Infusion
// Trigger Event: jcb_ce_onBeforeGetCustomCode // Trigger Event: jcb_ce_onBeforeGetCustomCode
$this->triggerEvent( $this->triggerEvent(
'jcb_ce_onBeforeGetCustomCode', 'jcb_ce_onBeforeGetCustomCode',
array(&$this->componentContext, $this) array(&$this->componentContext, &$this)
); );
// now insert into the new files // now insert into the new files
if ($this->getCustomCode()) if ($this->getCustomCode())
@@ -129,7 +129,7 @@ class Compiler extends Infusion
// Trigger Event: jcb_ce_onBeforeAddCustomCode // Trigger Event: jcb_ce_onBeforeAddCustomCode
$this->triggerEvent( $this->triggerEvent(
'jcb_ce_onBeforeAddCustomCode', 'jcb_ce_onBeforeAddCustomCode',
array(&$this->componentContext, $this) array(&$this->componentContext, &$this)
); );
$this->addCustomCode(); $this->addCustomCode();
@@ -137,7 +137,7 @@ class Compiler extends Infusion
// Trigger Event: jcb_ce_onBeforeSetLangFileData // Trigger Event: jcb_ce_onBeforeSetLangFileData
$this->triggerEvent( $this->triggerEvent(
'jcb_ce_onBeforeSetLangFileData', 'jcb_ce_onBeforeSetLangFileData',
array(&$this->componentContext, $this) array(&$this->componentContext, &$this)
); );
// set the lang data now // set the lang data now
$this->setLangFileData(); $this->setLangFileData();

View File

@@ -102,6 +102,13 @@ class Get
*/ */
public $addPlaceholders = false; public $addPlaceholders = false;
/**
* Switch to remove line breaks from language strings
*
* @var bool
*/
public $removeLineBreaks = false;
/** /**
* The placeholders for custom code keys * The placeholders for custom code keys
* *
@@ -322,8 +329,8 @@ class Get
= array( = array(
'Joomla' . '.JText._(', 'Joomla' . '.JText._(',
'JText:' . ':script(', 'JText:' . ':script(',
'JText:' . ':_(', 'Text:' . ':_(', // namespace and J version will be found
'JText:' . ':sprintf(', 'Text:' . ':sprintf(', // namespace and J version will be found
'JustTEXT:' . ':_(' 'JustTEXT:' . ':_('
); );
@@ -814,6 +821,8 @@ class Get
{ {
if (isset($config) && count($config)) if (isset($config) && count($config))
{ {
// we do not yet have this set as an option
$config['remove_line_breaks'] = 2; // 2 is global (use the components value)
// load application // load application
$this->app = JFactory::getApplication(); $this->app = JFactory::getApplication();
// Set the params // Set the params
@@ -835,7 +844,7 @@ class Get
} }
} }
// Trigger Event: jcb_ce_onBeforeGet // Trigger Event: jcb_ce_onBeforeGet
$this->triggerEvent('jcb_ce_onBeforeGet', array(&$config, $this)); $this->triggerEvent('jcb_ce_onBeforeGet', array(&$config, &$this));
// set the Joomla version // set the Joomla version
$this->joomlaVersion = $config['version']; $this->joomlaVersion = $config['version'];
// set the minfy switch of the JavaScript // set the minfy switch of the JavaScript
@@ -891,6 +900,14 @@ class Get
// set component context // set component context
$this->componentContext = $this->componentCodeName . '.' $this->componentContext = $this->componentCodeName . '.'
. $this->componentID; . $this->componentID;
// set if language strings line breaks should be removed
$global = ((int) ComponentbuilderHelper::getVar(
'joomla_component', $this->componentID, 'id',
'remove_line_breaks'
) == 1) ? true : false;
$this->removeLineBreaks = ((int) $config['remove_line_breaks'] == 0)
? false
: (((int) $config['remove_line_breaks'] == 1) ? true : $global);
// set if placeholders should be added to customcode // set if placeholders should be added to customcode
$global = ((int) ComponentbuilderHelper::getVar( $global = ((int) ComponentbuilderHelper::getVar(
'joomla_component', $this->componentID, 'id', 'joomla_component', $this->componentID, 'id',
@@ -923,14 +940,14 @@ class Get
// Trigger Event: jcb_ce_onBeforeGetComponentData // Trigger Event: jcb_ce_onBeforeGetComponentData
$this->triggerEvent( $this->triggerEvent(
'jcb_ce_onBeforeGetComponentData', 'jcb_ce_onBeforeGetComponentData',
array(&$this->componentContext, $this) array(&$this->componentContext, &$this)
); );
// get the component data // get the component data
$this->componentData = $this->getComponentData(); $this->componentData = $this->getComponentData();
// Trigger Event: jcb_ce_onAfterGetComponentData // Trigger Event: jcb_ce_onAfterGetComponentData
$this->triggerEvent( $this->triggerEvent(
'jcb_ce_onAfterGetComponentData', 'jcb_ce_onAfterGetComponentData',
array(&$this->componentContext, $this) array(&$this->componentContext, &$this)
); );
// make sure we have a version // make sure we have a version
if (strpos($this->componentData->component_version, '.') if (strpos($this->componentData->component_version, '.')
@@ -969,7 +986,7 @@ class Get
// Trigger Event: jcb_ce_onBeforeGet // Trigger Event: jcb_ce_onBeforeGet
$this->triggerEvent( $this->triggerEvent(
'jcb_ce_onAfterGet', array(&$this->componentContext, $this) 'jcb_ce_onAfterGet', array(&$this->componentContext, &$this)
); );
return true; return true;
@@ -1201,7 +1218,7 @@ class Get
array(&$this->componentContext, &$component) array(&$this->componentContext, &$component)
); );
// set upater // set updater
$updater = array( $updater = array(
'unique' => array( 'unique' => array(
'addadmin_views' => array('table' => 'component_admin_views', 'addadmin_views' => array('table' => 'component_admin_views',
@@ -1281,7 +1298,8 @@ class Get
); );
// set the add targets // set the add targets
$addArrayF = array('files' => 'files', 'folders' => 'folders', $addArrayF = array('files' => 'files',
'folders' => 'folders',
'filesfullpath' => 'files', 'filesfullpath' => 'files',
'foldersfullpath' => 'folders'); 'foldersfullpath' => 'folders');
foreach ($addArrayF as $addTarget => $targetHere) foreach ($addArrayF as $addTarget => $targetHere)
@@ -1413,6 +1431,8 @@ class Get
? json_decode($component->addadmin_views, true) : null; ? json_decode($component->addadmin_views, true) : null;
if (ComponentbuilderHelper::checkArray($component->addadmin_views)) if (ComponentbuilderHelper::checkArray($component->addadmin_views))
{ {
$this->lang = 'admin';
$this->target = 'admin';
// sort the views according to order // sort the views according to order
usort( usort(
$component->addadmin_views, function ($a, $b) { $component->addadmin_views, function ($a, $b) {
@@ -2056,14 +2076,31 @@ class Get
)) ))
{ {
$this->langContent[$target][$this->langPrefix . '_' . $language] $this->langContent[$target][$this->langPrefix . '_' . $language]
= trim($string); = $this->fixLangString($string);
} }
elseif (!isset($this->langContent[$target][$language])) elseif (!isset($this->langContent[$target][$language]))
{ {
$this->langContent[$target][$language] = trim($string); $this->langContent[$target][$language] = $this->fixLangString($string);
} }
} }
/**
* We need to remove all text breaks from all language strings
*
* @param string $string The language string
*
* @return string
*
*/
public function fixLangString(&$string)
{
if ($this->removeLineBreaks)
{
return trim(str_replace(array(PHP_EOL, "\r", "\n"), '', $string));
}
return trim($string);
}
/** /**
* Get all Admin View Data * Get all Admin View Data
* *
@@ -2923,6 +2960,10 @@ class Get
false, false,
$guiMapper $guiMapper
); );
// check if we have template or layouts to load
$this->setTemplateAndLayoutData($view->{$scripter}, $name_single);
unset($view->{$scripter}); unset($view->{$scripter});
} }
} }
@@ -2953,6 +2994,9 @@ class Get
), ),
$guiMapper $guiMapper
); );
// check if we have template or layouts to load
$this->setTemplateAndLayoutData($view->{$button_code_field}, $name_single);
} }
} }
// set the button array // set the button array
@@ -2982,6 +3026,12 @@ class Get
{ {
// update GUI mapper field // update GUI mapper field
$guiMapper['field'] = $importScripter; $guiMapper['field'] = $importScripter;
$guiMapper['type'] = 'php';
// Make sure html gets HTML comment for placeholder
if ('html_import_view' === $importScripter)
{
$guiMapper['type'] = 'html';
}
$this->setCustomScriptBuilder( $this->setCustomScriptBuilder(
$view->$importScripter, $view->$importScripter,
$importScripter, $importScripter,
@@ -3002,7 +3052,6 @@ class Get
} }
} }
} }
// add_Ajax for this view // add_Ajax for this view
if (isset($view->add_php_ajax) && $view->add_php_ajax == 1) if (isset($view->add_php_ajax) && $view->add_php_ajax == 1)
{ {
@@ -3036,6 +3085,8 @@ class Get
} }
if (ComponentbuilderHelper::checkString($view->php_ajaxmethod)) if (ComponentbuilderHelper::checkString($view->php_ajaxmethod))
{ {
// make sure we are still in PHP
$guiMapper['type'] = 'php';
// update GUI mapper field // update GUI mapper field
$guiMapper['field'] = 'php_ajaxmethod'; $guiMapper['field'] = 'php_ajaxmethod';
$this->setCustomScriptBuilder( $this->setCustomScriptBuilder(
@@ -3045,6 +3096,7 @@ class Get
$name_single, $name_single,
$guiMapper $guiMapper
); );
if ($addAjaxSite) if ($addAjaxSite)
{ {
$this->setCustomScriptBuilder( $this->setCustomScriptBuilder(
@@ -4027,7 +4079,7 @@ class Get
{ {
$field['permission'] = array($field['permission']); $field['permission'] = array($field['permission']);
} }
// set unigue name keeper // set unique name keeper
if ($listViewName) if ($listViewName)
{ {
$this->setUniqueNameCounter( $this->setUniqueNameCounter(
@@ -4165,7 +4217,7 @@ class Get
); );
// set the name of the field // set the name of the field
$name = ComponentbuilderHelper::safeFieldName($field['settings']->name); $name = ComponentbuilderHelper::safeFieldName($field['settings']->name);
// check that we have the poperties // check that we have the properties
if (ComponentbuilderHelper::checkArray($field['settings']->properties)) if (ComponentbuilderHelper::checkArray($field['settings']->properties))
{ {
foreach ($field['settings']->properties as $property) foreach ($field['settings']->properties as $property)
@@ -4988,6 +5040,8 @@ class Get
{ {
$script = $this->setGuiCodePlaceholder($script, $config); $script = $this->setGuiCodePlaceholder($script, $config);
} }
// add base64 locking option of a string
$script = $this->setBase64LOCK($script);
// load the script // load the script
if ($first && $second && $third) if ($first && $second && $third)
{ {
@@ -8716,6 +8770,8 @@ class Get
'php_method'); 'php_method');
$addScriptTypes = array('install', 'update', $addScriptTypes = array('install', 'update',
'uninstall'); 'uninstall');
// the next are php placeholders
$guiMapper['type'] = 'php';
foreach ($addScriptMethods as $scriptMethod) foreach ($addScriptMethods as $scriptMethod)
{ {
foreach ($addScriptTypes as $scriptType) foreach ($addScriptTypes as $scriptType)
@@ -9851,7 +9907,7 @@ class Get
*/ */
protected function customCodeFactory(&$paths, &$today) protected function customCodeFactory(&$paths, &$today)
{ {
// we must first store the current woking directory // we must first store the current working directory
$joomla = getcwd(); $joomla = getcwd();
$counter = array(1 => 0, 2 => 0); $counter = array(1 => 0, 2 => 0);
// file types to get // file types to get
@@ -10337,6 +10393,35 @@ class Get
} }
} }
/**
* Lock a string with bsae64 (basic)
*
* @param string $string The code string
*
* @return string
*
*/
protected function setBase64LOCK($script)
{
if (strpos($script, 'LOCKBASE64((((') !== false)
{
// get the strings
$values = ComponentbuilderHelper::getAllBetween($script, 'LOCKBASE64((((', '))))');
$locker = array();
// convert them
foreach($values as $value)
{
$locker['LOCKBASE64((((' . $value . '))))'] = "base64_decode( preg_replace('/\s+/', ''," .
PHP_EOL . $this->_t(2) . "'" .
wordwrap(base64_encode($value), 64, PHP_EOL . $this->_t(2), true) .
"'))";
}
// update the script
return $this->setPlaceholders($script, $locker);
}
return $script;
}
/** /**
* Set the JCB GUI code placeholder * Set the JCB GUI code placeholder
* *

View File

@@ -2556,7 +2556,8 @@ class Structure extends Get
public function moveFieldsRules($field, $path) public function moveFieldsRules($field, $path)
{ {
// check if we have a subform or repeatable field // check if we have a subform or repeatable field
if ($field['type_name'] === 'subform' || $field['type_name'] === 'repeatable') if ($field['type_name'] === 'subform'
|| $field['type_name'] === 'repeatable')
{ {
// since we could have a custom field or rule inside // since we could have a custom field or rule inside
$this->moveMultiFieldsRules($field, $path); $this->moveMultiFieldsRules($field, $path);
@@ -2624,7 +2625,7 @@ class Structure extends Get
* move the fields and Rules of multi fields * move the fields and Rules of multi fields
* *
* @param array $multi_field The field data * @param array $multi_field The field data
* @param string $path The path to move to * @param string $path The path to move to
* *
* @return void * @return void
* *
@@ -2632,13 +2633,19 @@ class Structure extends Get
protected function moveMultiFieldsRules($multi_field, $path) protected function moveMultiFieldsRules($multi_field, $path)
{ {
// get the fields ids // get the fields ids
$ids = array_map( 'trim', explode(',', ComponentbuilderHelper::getBetween($multi_field['settings']->xml, 'fields="', '"'))); $ids = array_map(
'trim', explode(
',', ComponentbuilderHelper::getBetween(
$multi_field['settings']->xml, 'fields="', '"'
)
)
);
if (ComponentbuilderHelper::checkArray($ids)) if (ComponentbuilderHelper::checkArray($ids))
{ {
foreach ($ids as $id) foreach ($ids as $id)
{ {
// setup the field // setup the field
$field = array(); $field = array();
$field['field'] = $id; $field['field'] = $id;
$this->setFieldDetails($field); $this->setFieldDetails($field);
// move field and rules if needed // move field and rules if needed
@@ -2835,10 +2842,24 @@ class Structure extends Get
{ {
$path = $details->path; $path = $details->path;
} }
$zipPath = str_replace('c0mp0n3nt/', '', $path); // make sure we have component to replace
$path = str_replace( if (strpos($path, 'c0mp0n3nt') !== false)
'c0mp0n3nt/', $this->componentPath . '/', $path {
); $zipPath = str_replace('c0mp0n3nt/', '', $path);
$path = str_replace(
'c0mp0n3nt/', $this->componentPath . '/', $path
);
}
else
{
$this->app->enqueueMessage(
JText::sprintf(
'<hr /><h3>c0mp0n3nt issue found</h3><p>The path (%s) could not be used.</p>',
$path
), 'Error'
);
continue;
}
// setup the folder // setup the folder
if (!JFolder::exists($path)) if (!JFolder::exists($path))
@@ -2878,7 +2899,7 @@ class Structure extends Get
// move the file to its place // move the file to its place
JFile::copy( JFile::copy(
$this->templatePath . '/' . $item, $this->templatePath . '/' . $item,
$path . '/' . $new, '', true $path . '/' . $new
); );
// count the file created // count the file created
$this->fileCount++; $this->fileCount++;
@@ -2934,9 +2955,10 @@ class Structure extends Get
'rename' => 1); 'rename' => 1);
$this->componentData->folders[] = $importView; $this->componentData->folders[] = $importView;
// move the phpspreadsheet Folder (TODO we must move this to a library package) // move the phpspreadsheet Folder (TODO we must move this to a library package)
$PHPExcel = array('folderpath' => 'JPATH_LIBRARIES/phpspreadsheet/vendor', $PHPExcel
'path' => '/libraries/phpspreadsheet/', = array('folderpath' => 'JPATH_LIBRARIES/phpspreadsheet/vendor',
'rename' => 0); 'path' => '/libraries/phpspreadsheet/',
'rename' => 0);
$this->componentData->folders[] = $PHPExcel; $this->componentData->folders[] = $PHPExcel;
} }
if (2 == $this->uikit || 1 == $this->uikit) if (2 == $this->uikit || 1 == $this->uikit)

View File

@@ -484,6 +484,14 @@ class Fields extends Structure
$this->lang, $langViews . '_N_ITEMS_UNPUBLISHED_1', $this->lang, $langViews . '_N_ITEMS_UNPUBLISHED_1',
"%s " . $view['settings']->name_single . " unpublished." "%s " . $view['settings']->name_single . " unpublished."
); );
$this->setLangContent(
$this->lang, $langViews . '_N_ITEMS_FAILED_PUBLISHING',
"%s " . $view['settings']->name_list . " failed publishing."
);
$this->setLangContent(
$this->lang, $langViews . '_N_ITEMS_FAILED_PUBLISHING_1',
"%s " . $view['settings']->name_single . " failed publishing."
);
$this->setLangContent( $this->setLangContent(
$this->lang, $langViews . '_BATCH_OPTIONS', $this->lang, $langViews . '_BATCH_OPTIONS',
"Batch process the selected " . $view['settings']->name_list "Batch process the selected " . $view['settings']->name_list
@@ -2322,12 +2330,14 @@ class Fields extends Structure
elseif ($setType === 'custom') elseif ($setType === 'custom')
{ {
// now add to the field set // now add to the field set
$field .= PHP_EOL . $this->_t(2) . $taber . "<!--" . $this->setLine( $field .= PHP_EOL . $this->_t(2) . $taber . "<!--"
. $this->setLine(
__LINE__ __LINE__
) . " " . ucfirst($name) . " Field. Type: " ) . " " . ucfirst($name) . " Field. Type: "
. ComponentbuilderHelper::safeString($typeName, 'F') . ComponentbuilderHelper::safeString($typeName, 'F')
. ". (custom) -->"; . ". (custom) -->";
$field .= PHP_EOL . $this->_t(2) . $taber . "<field"; $field .= PHP_EOL . $this->_t(2) . $taber . "<field";
$optionSet = '';
foreach ($fieldAttributes as $property => $value) foreach ($fieldAttributes as $property => $value)
{ {
if ($property != 'option') if ($property != 'option')
@@ -2335,8 +2345,274 @@ class Fields extends Structure
$field .= PHP_EOL . $this->_t(2) . $taber . $this->_t(1) $field .= PHP_EOL . $this->_t(2) . $taber . $this->_t(1)
. $property . '="' . $value . '"'; . $property . '="' . $value . '"';
} }
elseif ($property === 'option')
{
$optionSet = '';
if (strtolower($typeName) === 'groupedlist'
&& strpos(
$value, ','
) !== false
&& strpos($value, '@@') !== false)
{
// reset the group temp arrays
$groups_ = array();
$grouped_ = array('group' => array(),
'option' => array());
$order_ = array();
// mulitpal options
$options = explode(',', $value);
foreach ($options as $option)
{
if (strpos($option, '@@') !== false)
{
// set the group label
$valueKeyArray = explode('@@', $option);
if (count((array) $valueKeyArray) == 2)
{
$langValue = $langView . '_'
. ComponentbuilderHelper::safeFieldName(
$valueKeyArray[0], true
);
// add to lang array
$this->setLangContent(
$this->lang, $langValue,
$valueKeyArray[0]
);
// now add group label
$groups_[$valueKeyArray[1]] = PHP_EOL
. $this->_t(1) . $taber . $this->_t(2)
. '<group label="' . $langValue . '">';
// set order
$order_['group' . $valueKeyArray[1]]
= $valueKeyArray[1];
}
}
elseif (strpos($option, '|') !== false)
{
// has other value then text
$valueKeyArray = explode('|', $option);
if (count((array) $valueKeyArray) == 3)
{
$langValue = $langView . '_'
. ComponentbuilderHelper::safeFieldName(
$valueKeyArray[1], true
);
// add to lang array
$this->setLangContent(
$this->lang, $langValue,
$valueKeyArray[1]
);
// now add to option set
$grouped_['group'][$valueKeyArray[2]][]
= PHP_EOL . $this->_t(1) . $taber
. $this->_t(3) . '<option value="'
. $valueKeyArray[0] . '">' . PHP_EOL
. $this->_t(1) . $taber . $this->_t(4)
. $langValue . '</option>';
$optionArray[$valueKeyArray[0]]
= $langValue;
// set order
$order_['group' . $valueKeyArray[2]]
= $valueKeyArray[2];
}
else
{
$langValue = $langView . '_'
. ComponentbuilderHelper::safeFieldName(
$valueKeyArray[1], true
);
// add to lang array
$this->setLangContent(
$this->lang, $langValue,
$valueKeyArray[1]
);
// now add to option set
$grouped_['option'][$valueKeyArray[0]]
= PHP_EOL . $this->_t(1) . $taber
. $this->_t(2) . '<option value="'
. $valueKeyArray[0] . '">' . PHP_EOL
. $this->_t(1) . $taber . $this->_t(3)
. $langValue . '</option>';
$optionArray[$valueKeyArray[0]]
= $langValue;
// set order
$order_['option' . $valueKeyArray[0]]
= $valueKeyArray[0];
}
}
else
{
// text is also the value
$langValue = $langView . '_'
. ComponentbuilderHelper::safeFieldName(
$option, true
);
// add to lang array
$this->setLangContent(
$this->lang, $langValue, $option
);
// now add to option set
$grouped_['option'][$option] = PHP_EOL
. $this->_t(1) . $taber . $this->_t(2)
. '<option value="' . $option . '">'
. PHP_EOL . $this->_t(1) . $taber
. $this->_t(3) . $langValue . '</option>';
$optionArray[$option] = $langValue;
// set order
$order_['option' . $option] = $option;
}
}
// now build the groups
foreach ($order_ as $pointer_ => $_id)
{
// load the default key
$key_ = 'group';
if (strpos($pointer_, 'option') !== false)
{
// load the option field
$key_ = 'option';
}
// check if this is a group loader
if ('group' === $key_ && isset($groups_[$_id])
&& isset($grouped_[$key_][$_id])
&& ComponentbuilderHelper::checkArray(
$grouped_[$key_][$_id]
))
{
// set group label
$optionSet .= $groups_[$_id];
foreach ($grouped_[$key_][$_id] as $option_)
{
$optionSet .= $option_;
}
unset($groups_[$_id]);
unset($grouped_[$key_][$_id]);
// close the group
$optionSet .= PHP_EOL . $this->_t(1) . $taber
. $this->_t(2) . '</group>';
}
elseif (isset($grouped_[$key_][$_id])
&& ComponentbuilderHelper::checkString(
$grouped_[$key_][$_id]
))
{
$optionSet .= $grouped_[$key_][$_id];
}
}
}
elseif (strpos($value, ',') !== false)
{
// mulitpal options
$options = explode(',', $value);
foreach ($options as $option)
{
if (strpos($option, '|') !== false)
{
// has other value then text
list($v, $t) = explode('|', $option);
$langValue = $langView . '_'
. ComponentbuilderHelper::safeFieldName(
$t, true
);
// add to lang array
$this->setLangContent(
$this->lang, $langValue, $t
);
// now add to option set
$optionSet .= PHP_EOL . $this->_t(1)
. $taber . $this->_t(2) . '<option value="'
. $v . '">' . PHP_EOL . $this->_t(1)
. $taber . $this->_t(3) . $langValue
. '</option>';
$optionArray[$v] = $langValue;
}
else
{
// text is also the value
$langValue = $langView . '_'
. ComponentbuilderHelper::safeFieldName(
$option, true
);
// add to lang array
$this->setLangContent(
$this->lang, $langValue, $option
);
// now add to option set
$optionSet .= PHP_EOL . $this->_t(2)
. $taber . $this->_t(1) . '<option value="'
. $option . '">' . PHP_EOL . $this->_t(2)
. $taber . $this->_t(2) . $langValue
. '</option>';
$optionArray[$option] = $langValue;
}
}
}
else
{
// one option
if (strpos($value, '|') !== false)
{
// has other value then text
list($v, $t) = explode('|', $value);
$langValue = $langView . '_'
. ComponentbuilderHelper::safeFieldName(
$t, true
);
// add to lang array
$this->setLangContent($this->lang, $langValue, $t);
// now add to option set
$optionSet .= PHP_EOL . $this->_t(2) . $taber
. $this->_t(1) . '<option value="' . $v . '">'
. PHP_EOL . $this->_t(2) . $taber . $this->_t(2)
. $langValue . '</option>';
$optionArray[$v] = $langValue;
}
else
{
// text is also the value
$langValue = $langView . '_'
. ComponentbuilderHelper::safeFieldName(
$value, true
);
// add to lang array
$this->setLangContent(
$this->lang, $langValue, $value
);
// now add to option set
$optionSet .= PHP_EOL . $this->_t(2)
. $taber . $this->_t(1) . '<option value="'
. $value . '">' . PHP_EOL . $this->_t(2)
. $taber . $this->_t(2) . $langValue
. '</option>';
$optionArray[$value] = $langValue;
}
}
}
}
// if options were found
if (ComponentbuilderHelper::checkString($optionSet))
{
$field .= '>';
$field .= PHP_EOL . $this->_t(3) . $taber . "<!--"
. $this->setLine(__LINE__) . " Option Set. -->";
$field .= $optionSet;
$field .= PHP_EOL . $this->_t(2) . $taber . "</field>";
}
// if no options found and must have a list of options
elseif (ComponentbuilderHelper::fieldCheck($typeName, 'list'))
{
$optionArray = false;
$field .= PHP_EOL . $this->_t(2) . $taber . "/>";
$field .= PHP_EOL . $this->_t(2) . $taber . "<!--"
. $this->setLine(__LINE__)
. " No Manual Options Were Added In Field Settings. -->"
. PHP_EOL;
}
else
{
$optionArray = false;
$field .= PHP_EOL . $this->_t(2) . $taber . "/>";
} }
$field .= PHP_EOL . $this->_t(2) . $taber . "/>";
// incase the field is in the config and has not been set // incase the field is in the config and has not been set
if ('config' === $view_name_single && 'configs' === $view_name_list if ('config' === $view_name_single && 'configs' === $view_name_list
|| (strpos($view_name_single, 'P|uG!n') !== false || (strpos($view_name_single, 'P|uG!n') !== false
@@ -3083,6 +3359,244 @@ class Fields extends Structure
{ {
$field->fieldXML->addAttribute($property, $value); $field->fieldXML->addAttribute($property, $value);
} }
elseif ($property === 'option')
{
ComponentbuilderHelper::xmlComment(
$field->fieldXML,
$this->setLine(__LINE__) . " Option Set."
);
if (strtolower($typeName) === 'groupedlist'
&& strpos(
$value, ','
) !== false
&& strpos($value, '@@') !== false)
{
// reset the group temp arrays
$groups_ = array();
$grouped_ = array('group' => array(),
'option' => array());
$order_ = array();
// mulitpal options
$options = explode(',', $value);
foreach ($options as $option)
{
if (strpos($option, '@@') !== false)
{
// set the group label
$valueKeyArray = explode('@@', $option);
if (count((array) $valueKeyArray) == 2)
{
$langValue = $langView . '_'
. ComponentbuilderHelper::safeFieldName(
$valueKeyArray[0], true
);
// add to lang array
$this->setLangContent(
$this->lang, $langValue,
$valueKeyArray[0]
);
// now add group label
$groups_[$valueKeyArray[1]] = $langValue;
// set order
$order_['group' . $valueKeyArray[1]]
= $valueKeyArray[1];
}
}
elseif (strpos($option, '|') !== false)
{
// has other value then text
$valueKeyArray = explode('|', $option);
if (count((array) $valueKeyArray) == 3)
{
$langValue = $langView . '_'
. ComponentbuilderHelper::safeFieldName(
$valueKeyArray[1], true
);
// add to lang array
$this->setLangContent(
$this->lang, $langValue,
$valueKeyArray[1]
);
// now add to option set
$grouped_['group'][$valueKeyArray[2]][]
= array('value' => $valueKeyArray[0],
'text' => $langValue);
$optionArray[$valueKeyArray[0]]
= $langValue;
// set order
$order_['group' . $valueKeyArray[2]]
= $valueKeyArray[2];
}
else
{
$langValue = $langView . '_'
. ComponentbuilderHelper::safeFieldName(
$valueKeyArray[1], true
);
// add to lang array
$this->setLangContent(
$this->lang, $langValue,
$valueKeyArray[1]
);
// now add to option set
$grouped_['option'][$valueKeyArray[0]]
= array('value' => $valueKeyArray[0],
'text' => $langValue);
$optionArray[$valueKeyArray[0]]
= $langValue;
// set order
$order_['option' . $valueKeyArray[0]]
= $valueKeyArray[0];
}
}
else
{
// text is also the value
$langValue = $langView . '_'
. ComponentbuilderHelper::safeFieldName(
$option, true
);
// add to lang array
$this->setLangContent(
$this->lang, $langValue, $option
);
// now add to option set
$grouped_['option'][$option]
= array('value' => $option,
'text' => $langValue);
$optionArray[$option] = $langValue;
// set order
$order_['option' . $option] = $option;
}
}
// now build the groups
foreach ($order_ as $pointer_ => $_id)
{
// load the default key
$key_ = 'group';
if (strpos($pointer_, 'option') !== false)
{
// load the option field
$key_ = 'option';
}
// check if this is a group loader
if ('group' === $key_ && isset($groups_[$_id])
&& isset($grouped_[$key_][$_id])
&& ComponentbuilderHelper::checkArray(
$grouped_[$key_][$_id]
))
{
// set group label
$groupXML = $field->fieldXML->addChild('group');
$groupXML->addAttribute(
'label', $groups_[$_id]
);
foreach ($grouped_[$key_][$_id] as $option_)
{
$groupOptionXML = $groupXML->addChild(
'option'
);
$groupOptionXML->addAttribute(
'value', $option_['value']
);
$groupOptionXML[] = $option_['text'];
}
unset($groups_[$_id]);
unset($grouped_[$key_][$_id]);
}
elseif (isset($grouped_[$key_][$_id])
&& ComponentbuilderHelper::checkString(
$grouped_[$key_][$_id]
))
{
$optionXML = $field->fieldXML->addChild(
'option'
);
$optionXML->addAttribute(
'value', $grouped_[$key_][$_id]['value']
);
$optionXML[] = $grouped_[$key_][$_id]['text'];
}
}
}
elseif (strpos($value, ',') !== false)
{
// mulitpal options
$options = explode(',', $value);
foreach ($options as $option)
{
$optionXML = $field->fieldXML->addChild('option');
if (strpos($option, '|') !== false)
{
// has other value then text
list($v, $t) = explode('|', $option);
$langValue = $langView . '_'
. ComponentbuilderHelper::safeFieldName(
$t, true
);
// add to lang array
$this->setLangContent(
$this->lang, $langValue, $t
);
// now add to option set
$optionXML->addAttribute('value', $v);
$optionArray[$v] = $langValue;
}
else
{
// text is also the value
$langValue = $langView . '_'
. ComponentbuilderHelper::safeFieldName(
$option, true
);
// add to lang array
$this->setLangContent(
$this->lang, $langValue, $option
);
// now add to option set
$optionXML->addAttribute('value', $option);
$optionArray[$option] = $langValue;
}
$optionXML[] = $langValue;
}
}
else
{
// one option
$optionXML = $field->fieldXML->addChild('option');
if (strpos($value, '|') !== false)
{
// has other value then text
list($v, $t) = explode('|', $value);
$langValue = $langView . '_'
. ComponentbuilderHelper::safeFieldName(
$t, true
);
// add to lang array
$this->setLangContent($this->lang, $langValue, $t);
// now add to option set
$optionXML->addAttribute('value', $v);
$optionArray[$v] = $langValue;
}
else
{
// text is also the value
$langValue = $langView . '_'
. ComponentbuilderHelper::safeFieldName(
$value, true
);
// add to lang array
$this->setLangContent(
$this->lang, $langValue, $value
);
// now add to option set
$optionXML->addAttribute('value', $value);
$optionArray[$value] = $langValue;
}
$optionXML[] = $langValue;
}
}
} }
// incase the field is in the config and has not been set (or is part of a plugin or module) // incase the field is in the config and has not been set (or is part of a plugin or module)
if (('config' === $view_name_single if (('config' === $view_name_single
@@ -3636,10 +4150,6 @@ class Fields extends Structure
{ {
$xmlValue = 'JGLOBAL_TITLE'; $xmlValue = 'JGLOBAL_TITLE';
} }
elseif ($property['name'] === 'description')
{
$xmlValue = 'JFIELD_TITLE_DESC';
}
} }
// only load value if found or is mandatory // only load value if found or is mandatory
if (ComponentbuilderHelper::checkString($xmlValue) if (ComponentbuilderHelper::checkString($xmlValue)
@@ -3689,7 +4199,7 @@ class Fields extends Structure
= '8qvZHoyuFYQqpj0YQbc6F3o5DhBlmS-_-a8pmCZfOVSfANjkmV5LG8pCdAY2JNYu6cB'; = '8qvZHoyuFYQqpj0YQbc6F3o5DhBlmS-_-a8pmCZfOVSfANjkmV5LG8pCdAY2JNYu6cB';
foreach ($phpTracker as $searchKey => $phpKey) foreach ($phpTracker as $searchKey => $phpKey)
{ {
// we must search for more code in the xml just incase // we must search for more code in the xml just encase
foreach (range(2, 30) as $phpLine) foreach (range(2, 30) as $phpLine)
{ {
$get_ = $searchKey . '_' . $phpLine; $get_ = $searchKey . '_' . $phpLine;
@@ -3937,7 +4447,7 @@ class Fields extends Structure
} }
else else
{ {
// set lang (just incase) // set lang (just in case)
$listLangName = $langView . '_' $listLangName = $langView . '_'
. ComponentbuilderHelper::safeFieldName($name, true); . ComponentbuilderHelper::safeFieldName($name, true);
// add to lang array // add to lang array
@@ -4112,7 +4622,7 @@ class Fields extends Structure
{ {
$this->setScriptMediaSwitch[$typeName] = $typeName; $this->setScriptMediaSwitch[$typeName] = $typeName;
} }
// setup gategory for this view // setup category for this view
if ($dbSwitch && $typeName === 'category') if ($dbSwitch && $typeName === 'category')
{ {
if (isset($this->catOtherName[$view_name_list]) if (isset($this->catOtherName[$view_name_list])
@@ -4134,13 +4644,41 @@ class Fields extends Structure
$field['settings']->xml, 'extension="', '"' $field['settings']->xml, 'extension="', '"'
), $this->placeholders ), $this->placeholders
); );
// if they left out the extention for some reason // if they left out the extension for some reason
if (!ComponentbuilderHelper::checkString($_extension)) if (!ComponentbuilderHelper::checkString($_extension))
{ {
$_extension = 'com_' . $this->componentCodeName . '.' $_extension = 'com_' . $this->componentCodeName . '.'
. $otherView; . $otherView;
} }
// load the category builder // check the context (does our target match)
if (strpos($_extension, '.') !== false)
{
$target_view = trim(explode('.', $_extension)[1]);
// from my understanding the target extension view and the otherView must align
// so I will here check that it does, and if not raise an error message to fix this
if ($target_view !== $otherView)
{
$target_extension = trim(explode('.', $_extension)[0]);
$correction = $target_extension . '.' . $otherView;
$this->app->enqueueMessage(
JText::sprintf(
'<hr /><h3>Category targeting view mismatch</h3>
<p>The <a href="index.php?option=com_componentbuilder&view=fields&task=field.edit&id=%s" target="_blank" title="open field">
category field</a> in <b>(%s) admin view</b> has a mismatching target view.
<br />To correct the mismatch, the <b>extension</b> value <code>%s</code> in the <a href="index.php?option=com_componentbuilder&view=fields&task=field.edit&id=%s" target="_blank" title="open category field">
field</a> must be changed to <code>%s</code>
for <a href="https://github.com/vdm-io/Joomla-Component-Builder/issues/561" target="_blank" title="view issue on gitHub">
best category integration with Joomla</a>.
<br /><b>Please watch <a href="https://youtu.be/R4WQgcu6Xns" target="_blank" title="very important info on the topic">
this tutorial</a> before proceeding!!!</b>,
<a href="https://gist.github.com/Llewellynvdm/e053dc39ae3b2bf769c76a3e62c75b95" target="_blank" title="first watch the tutorial to understand how to use this code">code fix</a></p>',
$field['field'], $view_name_single, $_extension,
$field['field'], $correction
), 'Error'
);
}
}
// load the category builder - TODO must move all to single view
$this->categoryBuilder[$view_name_list] = array('code' => $name, $this->categoryBuilder[$view_name_list] = array('code' => $name,
'name' => $listLangName, 'name' => $listLangName,
'extension' => $_extension); 'extension' => $_extension);
@@ -4345,15 +4883,15 @@ class Fields extends Structure
&& $typeName != 'repeatable' && $typeName != 'repeatable'
&& $typeName != 'subform')) && $typeName != 'subform'))
{ {
$this->filterBuilder[$view_name_list][] = array('type' => $typeName, $this->filterBuilder[$view_name_list][] = array('type' => $typeName,
'code' => $name, 'code' => $name,
'lang' => $listLangName, 'lang' => $listLangName,
'database' => $view_name_single, 'database' => $view_name_single,
'function' => ComponentbuilderHelper::safeString( 'function' => ComponentbuilderHelper::safeString(
$name, 'F' $name, 'F'
), ),
'custom' => $custom, 'custom' => $custom,
'options' => $options); 'options' => $options);
} }
// build the layout // build the layout
@@ -4418,21 +4956,27 @@ class Fields extends Structure
); );
// set the [[[PLACEHOLDER]]] options // set the [[[PLACEHOLDER]]] options
$replace = array( $replace = array(
$this->bbb . 'JPREFIX' . $this->ddd => $jprefix, $this->bbb . 'JPREFIX' . $this->ddd => $jprefix,
$this->bbb . 'TABLE' $this->bbb . 'TABLE'
. $this->ddd => $data['custom']['table'], . $this->ddd => (isset($data['custom']['table']))
? $data['custom']['table'] : '',
$this->bbb . 'ID' $this->bbb . 'ID'
. $this->ddd => $data['custom']['id'], . $this->ddd => (isset($data['custom']['id']))
? $data['custom']['id'] : '',
$this->bbb . 'TEXT' $this->bbb . 'TEXT'
. $this->ddd => $data['custom']['text'], . $this->ddd => (isset($data['custom']['text']))
$this->bbb . 'CODE_TEXT' . $this->ddd => $data['code'] . '_' ? $data['custom']['text'] : '',
. $data['custom']['text'], $this->bbb . 'CODE_TEXT'
$this->bbb . 'CODE' . $this->ddd => $data['code'], . $this->ddd => (isset($data['code'], $data['custom']['text']))
$this->bbb . 'view_type' . $this->ddd => $view_name_single ? $data['code'] . '_' . $data['custom']['text'] : '',
$this->bbb . 'CODE' . $this->ddd => (isset($data['code']))
? $data['code'] : '',
$this->bbb . 'view_type' . $this->ddd => $view_name_single
. '_' . $data['type'], . '_' . $data['type'],
$this->bbb . 'type' . $this->ddd => $data['type'], $this->bbb . 'type' . $this->ddd => (isset($data['type']))
? $data['type'] : '',
$this->bbb . 'com_component' $this->bbb . 'com_component'
. $this->ddd => (isset($data['custom']['component']) . $this->ddd => (isset($data['custom']['component'])
&& ComponentbuilderHelper::checkString( && ComponentbuilderHelper::checkString(
$data['custom']['component'] $data['custom']['component']
)) ? ComponentbuilderHelper::safeString( )) ? ComponentbuilderHelper::safeString(
@@ -4440,19 +4984,19 @@ class Fields extends Structure
) : 'com_' . $this->componentCodeName, ) : 'com_' . $this->componentCodeName,
// set the generic values // set the generic values
$this->bbb . 'component' $this->bbb . 'component'
. $this->ddd => $this->componentCodeName, . $this->ddd => $this->componentCodeName,
$this->bbb . 'Component' $this->bbb . 'Component'
. $this->ddd => $this->fileContentStatic[$this->hhh . $this->ddd => $this->fileContentStatic[$this->hhh
. 'Component' . $this->hhh], . 'Component' . $this->hhh],
$this->bbb . 'view' $this->bbb . 'view'
. $this->ddd => (isset($data['custom']['view']) . $this->ddd => (isset($data['custom']['view'])
&& ComponentbuilderHelper::checkString( && ComponentbuilderHelper::checkString(
$data['custom']['view'] $data['custom']['view']
)) ? ComponentbuilderHelper::safeString( )) ? ComponentbuilderHelper::safeString(
$data['custom']['view'] $data['custom']['view']
) : $view_name_single, ) : $view_name_single,
$this->bbb . 'views' $this->bbb . 'views'
. $this->ddd => (isset($data['custom']['views']) . $this->ddd => (isset($data['custom']['views'])
&& ComponentbuilderHelper::checkString( && ComponentbuilderHelper::checkString(
$data['custom']['views'] $data['custom']['views']
)) ? ComponentbuilderHelper::safeString( )) ? ComponentbuilderHelper::safeString(
@@ -4520,12 +5064,22 @@ class Fields extends Structure
$this->buildDynamique( $this->buildDynamique(
$target, 'fieldcustom', $data['custom']['type'] $target, 'fieldcustom', $data['custom']['type']
); );
// get the extends name
$JFORM_extends = ComponentbuilderHelper::safeString(
$data['custom']['extends']
);
// JFORM_TYPE_HEADER <<<DYNAMIC>>>
$add_default_header = true;
$this->fileContentDynamic['customfield_'
. $data['type']][$this->hhh . 'JFORM_TYPE_HEADER' . $this->hhh]
= "//" . $this->setLine(
__LINE__
) . " Import the " . $JFORM_extends
. " field type classes needed";
// JFORM_extens <<<DYNAMIC>>> // JFORM_extens <<<DYNAMIC>>>
$this->fileContentDynamic['customfield_' $this->fileContentDynamic['customfield_'
. $data['type']][$this->hhh . 'JFORM_extends' . $this->hhh] . $data['type']][$this->hhh . 'JFORM_extends' . $this->hhh]
= ComponentbuilderHelper::safeString( = $JFORM_extends;
$data['custom']['extends']
);
// JFORM_EXTENDS <<<DYNAMIC>>> // JFORM_EXTENDS <<<DYNAMIC>>>
$this->fileContentDynamic['customfield_' $this->fileContentDynamic['customfield_'
. $data['type']][$this->hhh . 'JFORM_EXTENDS' . $this->hhh] . $data['type']][$this->hhh . 'JFORM_EXTENDS' . $this->hhh]
@@ -4543,7 +5097,7 @@ class Fields extends Structure
{ {
// reset the php bucket // reset the php bucket
$phpBucket = ''; $phpBucket = '';
// only set if avaliable // only set if available
if (isset($data['custom']['php' . $x]) if (isset($data['custom']['php' . $x])
&& ComponentbuilderHelper::checkArray( && ComponentbuilderHelper::checkArray(
$data['custom']['php' . $x] $data['custom']['php' . $x]
@@ -4558,15 +5112,56 @@ class Fields extends Structure
); );
} }
} }
// JFORM_TYPE_PHP <<<DYNAMIC>>> // check if this is header text
$this->fileContentDynamic['customfield_' if ('HEADER' === $x)
. $data['type']][$this->hhh . 'JFORM_TYPE_PHP' {
. $this->hhh] $this->fileContentDynamic['customfield_'
.= PHP_EOL . $this->setPlaceholders( . $data['type']][$this->hhh . 'JFORM_TYPE_HEADER'
$phpBucket, $replace . $this->hhh]
); .= PHP_EOL . $this->setPlaceholders(
$phpBucket, $replace
);
// stop default headers from loading
$add_default_header = false;
}
else
{
// JFORM_TYPE_PHP <<<DYNAMIC>>>
$this->fileContentDynamic['customfield_'
. $data['type']][$this->hhh . 'JFORM_TYPE_PHP'
. $this->hhh]
.= PHP_EOL . $this->setPlaceholders(
$phpBucket, $replace
);
}
} }
} }
// check if we should add default header
if ($add_default_header)
{
$this->fileContentDynamic['customfield_'
. $data['type']][$this->hhh . 'JFORM_TYPE_HEADER'
. $this->hhh]
.= PHP_EOL . "jimport('joomla.form.helper');";
$this->fileContentDynamic['customfield_'
. $data['type']][$this->hhh . 'JFORM_TYPE_HEADER'
. $this->hhh]
.= PHP_EOL . "JFormHelper::loadFieldClass('"
. $JFORM_extends . "');";
}
// check the the JFormHelper::loadFieldClass(..) was set
elseif (strpos(
$this->fileContentDynamic['customfield_'
. $data['type']][$this->hhh . 'JFORM_TYPE_HEADER'
. $this->hhh], 'JFormHelper::loadFieldClass('
) === false)
{
$this->fileContentDynamic['customfield_'
. $data['type']][$this->hhh . 'JFORM_TYPE_HEADER'
. $this->hhh]
.= PHP_EOL . "JFormHelper::loadFieldClass('"
. $JFORM_extends . "');";
}
} }
else else
{ {

File diff suppressed because it is too large Load Diff

View File

@@ -614,6 +614,18 @@ class Infusion extends Interpretation
$viewName_single, $view $viewName_single, $view
); );
} }
// SITE_VIEW_CONTROLLER_HEADER <<<DYNAMIC>>> add the header details for the model
$this->fileContentDynamic[$viewName_single][$this->hhh
. 'SITE_ADMIN_VIEW_CONTROLLER_HEADER' . $this->hhh]
= $this->setClassHeaders(
'site.admin.view.controller', $viewName_single
);
// SITE_ADMIN_VIEW_MODEL_HEADER <<<DYNAMIC>>> add the header details for the model
$this->fileContentDynamic[$viewName_single][$this->hhh
. 'SITE_ADMIN_VIEW_MODEL_HEADER' . $this->hhh]
= $this->setClassHeaders(
'site.admin.view.model', $viewName_single
);
} }
// TABLAYOUTFIELDSARRAY <<<DYNAMIC>>> add the tab layout fields array to the model // TABLAYOUTFIELDSARRAY <<<DYNAMIC>>> add the tab layout fields array to the model
@@ -621,6 +633,19 @@ class Infusion extends Interpretation
. 'TABLAYOUTFIELDSARRAY' . $this->hhh] . 'TABLAYOUTFIELDSARRAY' . $this->hhh]
= $this->getTabLayoutFieldsArray($viewName_single); = $this->getTabLayoutFieldsArray($viewName_single);
// ADMIN_VIEW_CONTROLLER_HEADER <<<DYNAMIC>>> add the header details for the model
$this->fileContentDynamic[$viewName_single][$this->hhh
. 'ADMIN_VIEW_CONTROLLER_HEADER' . $this->hhh]
= $this->setClassHeaders(
'admin.view.controller', $viewName_single
);
// ADMIN_VIEW_MODEL_HEADER <<<DYNAMIC>>> add the header details for the model
$this->fileContentDynamic[$viewName_single][$this->hhh
. 'ADMIN_VIEW_MODEL_HEADER' . $this->hhh]
= $this->setClassHeaders(
'admin.view.model', $viewName_single
);
// Trigger Event: jcb_ce_onAfterBuildAdminEditViewContent // Trigger Event: jcb_ce_onAfterBuildAdminEditViewContent
$this->triggerEvent( $this->triggerEvent(
'jcb_ce_onAfterBuildAdminEditViewContent', 'jcb_ce_onAfterBuildAdminEditViewContent',
@@ -896,6 +921,19 @@ class Infusion extends Interpretation
= ''; = '';
} }
// ADMIN_VIEWS_CONTROLLER_HEADER <<<DYNAMIC>>> add the header details for the model
$this->fileContentDynamic[$viewName_list][$this->hhh
. 'ADMIN_VIEWS_CONTROLLER_HEADER' . $this->hhh]
= $this->setClassHeaders(
'admin.views.controller', $viewName_list
);
// ADMIN_VIEWS_MODEL_HEADER <<<DYNAMIC>>> add the header details for the model
$this->fileContentDynamic[$viewName_list][$this->hhh
. 'ADMIN_VIEWS_MODEL_HEADER' . $this->hhh]
= $this->setClassHeaders(
'admin.views.model', $viewName_list
);
// Trigger Event: jcb_ce_onAfterBuildAdminListViewContent // Trigger Event: jcb_ce_onAfterBuildAdminListViewContent
$this->triggerEvent( $this->triggerEvent(
'jcb_ce_onAfterBuildAdminListViewContent', 'jcb_ce_onAfterBuildAdminListViewContent',
@@ -1077,6 +1115,9 @@ class Infusion extends Interpretation
); );
} }
// setup the layouts
$this->setCustomViewLayouts();
// ADMIN_HELPER_CLASS_HEADER // ADMIN_HELPER_CLASS_HEADER
$this->fileContentStatic[$this->hhh . 'ADMIN_HELPER_CLASS_HEADER' $this->fileContentStatic[$this->hhh . 'ADMIN_HELPER_CLASS_HEADER'
. $this->hhh] . $this->hhh]
@@ -1186,7 +1227,8 @@ class Infusion extends Interpretation
{ {
// HIDEMAINMENU <<<DYNAMIC>>> // HIDEMAINMENU <<<DYNAMIC>>>
$this->fileContentDynamic[$view['settings']->code][$this->hhh $this->fileContentDynamic[$view['settings']->code][$this->hhh
. 'HIDEMAINMENU' . $this->hhh] = ''; . 'HIDEMAINMENU' . $this->hhh]
= '';
} }
else else
{ {
@@ -1319,6 +1361,38 @@ class Infusion extends Interpretation
$view['settings']->main_get->gettype, 2 $view['settings']->main_get->gettype, 2
); );
// set headers based on the main get type
if ($view['settings']->main_get->gettype == 1)
{
// CUSTOM_ADMIN_VIEW_CONTROLLER_HEADER <<<DYNAMIC>>> add the header details for the model
$this->fileContentDynamic[$view['settings']->code][$this->hhh
. 'CUSTOM_ADMIN_VIEW_CONTROLLER_HEADER' . $this->hhh]
= $this->setClassHeaders(
'custom.admin.view.controller', $view['settings']->code
);
// CUSTOM_ADMIN_VIEW_MODEL_HEADER <<<DYNAMIC>>> add the header details for the model
$this->fileContentDynamic[$view['settings']->code][$this->hhh
. 'CUSTOM_ADMIN_VIEW_MODEL_HEADER' . $this->hhh]
= $this->setClassHeaders(
'custom.admin.view.model', $view['settings']->code
);
}
elseif ($view['settings']->main_get->gettype == 2)
{
// CUSTOM_ADMIN_VIEWS_CONTROLLER_HEADER <<<DYNAMIC>>> add the header details for the model
$this->fileContentDynamic[$view['settings']->code][$this->hhh
. 'CUSTOM_ADMIN_VIEWS_CONTROLLER_HEADER' . $this->hhh]
= $this->setClassHeaders(
'custom.admin.views.controller', $view['settings']->code
);
// CUSTOM_ADMIN_VIEWS_MODEL_HEADER <<<DYNAMIC>>> add the header details for the model
$this->fileContentDynamic[$view['settings']->code][$this->hhh
. 'CUSTOM_ADMIN_VIEWS_MODEL_HEADER' . $this->hhh]
= $this->setClassHeaders(
'custom.admin.views.model', $view['settings']->code
);
}
// Trigger Event: jcb_ce_onAfterBuildCustomAdminViewContent // Trigger Event: jcb_ce_onAfterBuildCustomAdminViewContent
$this->triggerEvent( $this->triggerEvent(
'jcb_ce_onAfterBuildCustomAdminViewContent', 'jcb_ce_onAfterBuildCustomAdminViewContent',
@@ -1750,6 +1824,52 @@ class Infusion extends Interpretation
$view['settings']->main_get->gettype, 2 $view['settings']->main_get->gettype, 2
); );
// set headers based on the main get type
if ($view['settings']->main_get->gettype == 1)
{
// insure the controller headers are added
if (ComponentbuilderHelper::checkString(
$view['settings']->php_controller
)
&& $view['settings']->php_controller != '//')
{
// SITE_VIEW_CONTROLLER_HEADER <<<DYNAMIC>>> add the header details for the model
$this->fileContentDynamic[$view['settings']->code][$this->hhh
. 'SITE_VIEW_CONTROLLER_HEADER' . $this->hhh]
= $this->setClassHeaders(
'site.view.controller', $view['settings']->code
);
}
// SITE_VIEW_MODEL_HEADER <<<DYNAMIC>>> add the header details for the model
$this->fileContentDynamic[$view['settings']->code][$this->hhh
. 'SITE_VIEW_MODEL_HEADER' . $this->hhh]
= $this->setClassHeaders(
'site.view.model', $view['settings']->code
);
}
elseif ($view['settings']->main_get->gettype == 2)
{
// insure the controller headers are added
if (ComponentbuilderHelper::checkString(
$view['settings']->php_controller
)
&& $view['settings']->php_controller != '//')
{
// SITE_VIEW_CONTROLLER_HEADER <<<DYNAMIC>>> add the header details for the model
$this->fileContentDynamic[$view['settings']->code][$this->hhh
. 'SITE_VIEW_CONTROLLER_HEADER' . $this->hhh]
= $this->setClassHeaders(
'site.views.controller', $view['settings']->code
);
}
// SITE_VIEWS_MODEL_HEADER <<<DYNAMIC>>> add the header details for the model
$this->fileContentDynamic[$view['settings']->code][$this->hhh
. 'SITE_VIEWS_MODEL_HEADER' . $this->hhh]
= $this->setClassHeaders(
'site.views.model', $view['settings']->code
);
}
// Trigger Event: jcb_ce_onAfterBuildSiteViewContent // Trigger Event: jcb_ce_onAfterBuildSiteViewContent
$this->triggerEvent( $this->triggerEvent(
'jcb_ce_onAfterBuildSiteViewContent', 'jcb_ce_onAfterBuildSiteViewContent',
@@ -1760,6 +1880,7 @@ class Infusion extends Interpretation
&$this->placeholders, &$this->hhh) &$this->placeholders, &$this->hhh)
); );
} }
// setup the layouts // setup the layouts
$this->setCustomViewLayouts(); $this->setCustomViewLayouts();
} }
@@ -1930,7 +2051,7 @@ class Infusion extends Interpretation
// Trigger Event: jcb_ce_onBeforeInfuseModuleData // Trigger Event: jcb_ce_onBeforeInfuseModuleData
$this->triggerEvent( $this->triggerEvent(
'jcb_ce_onBeforeInfuseModuleData', 'jcb_ce_onBeforeInfuseModuleData',
array(&$this->componentContext, &$module, $this) array(&$this->componentContext, &$module, &$this)
); );
$this->target = $module->key; $this->target = $module->key;
$this->lang = $module->key; $this->lang = $module->key;
@@ -1994,7 +2115,7 @@ class Infusion extends Interpretation
// Trigger Event: jcb_ce_onAfterInfuseModuleData // Trigger Event: jcb_ce_onAfterInfuseModuleData
$this->triggerEvent( $this->triggerEvent(
'jcb_ce_onAfterInfuseModuleData', 'jcb_ce_onAfterInfuseModuleData',
array(&$this->componentContext, &$module, $this) array(&$this->componentContext, &$module, &$this)
); );
} }
} }
@@ -2009,7 +2130,7 @@ class Infusion extends Interpretation
// Trigger Event: jcb_ce_onBeforeInfusePluginData // Trigger Event: jcb_ce_onBeforeInfusePluginData
$this->triggerEvent( $this->triggerEvent(
'jcb_ce_onBeforeInfusePluginData', 'jcb_ce_onBeforeInfusePluginData',
array(&$this->componentContext, &$plugin, $this) array(&$this->componentContext, &$plugin, &$this)
); );
$this->target = $plugin->key; $this->target = $plugin->key;
$this->lang = $plugin->key; $this->lang = $plugin->key;
@@ -2056,7 +2177,7 @@ class Infusion extends Interpretation
// Trigger Event: jcb_ce_onAfterInfusePluginData // Trigger Event: jcb_ce_onAfterInfusePluginData
$this->triggerEvent( $this->triggerEvent(
'jcb_ce_onAfterInfusePluginData', 'jcb_ce_onAfterInfusePluginData',
array(&$this->componentContext, &$plugin, $this) array(&$this->componentContext, &$plugin, &$this)
); );
} }
} }

View File

@@ -13,6 +13,7 @@
defined('_JEXEC') or die('Restricted access'); defined('_JEXEC') or die('Restricted access');
use Joomla\CMS\Language\Language; use Joomla\CMS\Language\Language;
use Joomla\Registry\Registry;
use Joomla\String\StringHelper; use Joomla\String\StringHelper;
use Joomla\Utilities\ArrayHelper; use Joomla\Utilities\ArrayHelper;
use PhpOffice\PhpSpreadsheet\IOFactory; use PhpOffice\PhpSpreadsheet\IOFactory;
@@ -56,7 +57,7 @@ abstract class ComponentbuilderHelper
/** /**
* Array of php fields Allowed (16) * Array of php fields Allowed (16)
**/ **/
public static $phpFieldArray = array('', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'x'); public static $phpFieldArray = array('', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'x', 'HEADER');
/** /**
* The global params * The global params
@@ -2964,7 +2965,15 @@ abstract class ComponentbuilderHelper
$script['setdata'][] = self::_t(3) . "\$jinput = JFactory::getApplication()->input;"; $script['setdata'][] = self::_t(3) . "\$jinput = JFactory::getApplication()->input;";
$script['setdata'][] = self::_t(3) . "foreach(\$target_headers as \$header)"; $script['setdata'][] = self::_t(3) . "foreach(\$target_headers as \$header)";
$script['setdata'][] = self::_t(3) . "{"; $script['setdata'][] = self::_t(3) . "{";
$script['setdata'][] = self::_t(4) . "\$data['target_headers'][\$header] = \$jinput->getString(\$header, null);"; $script['setdata'][] = self::_t(4) . "if ((\$column = \$jinput->getString(\$header, false)) !== false ||";
$script['setdata'][] = self::_t(5) . "(\$column = \$jinput->getString(strtolower(\$header), false)) !== false)";
$script['setdata'][] = self::_t(4) . "{";
$script['setdata'][] = self::_t(5) . "\$data['target_headers'][\$header] = \$column;";
$script['setdata'][] = self::_t(4) . "}";
$script['setdata'][] = self::_t(4) . "else";
$script['setdata'][] = self::_t(4) . "{";
$script['setdata'][] = self::_t(5) . "\$data['target_headers'][\$header] = null;";
$script['setdata'][] = self::_t(4) . "}";
$script['setdata'][] = self::_t(3) . "}"; $script['setdata'][] = self::_t(3) . "}";
$script['setdata'][] = self::_t(3) . "// set the data"; $script['setdata'][] = self::_t(3) . "// set the data";
$script['setdata'][] = self::_t(3) . "if(isset(\$package['dir']))"; $script['setdata'][] = self::_t(3) . "if(isset(\$package['dir']))";
@@ -5534,14 +5543,61 @@ abstract class ComponentbuilderHelper
* *
*/ */
public static function getEditURL(&$item, $view, $views, $ref = '', $component = 'com_componentbuilder', $jRoute = true) public static function getEditURL(&$item, $view, $views, $ref = '', $component = 'com_componentbuilder', $jRoute = true)
{
// build record
$record = new stdClass();
// check if user can edit
if (self::canEditItem($record, $item, $view, $views, $component))
{
// set the edit link
if ($jRoute)
{
return JRoute::_("index.php?option=" . $component . "&view=" . $views . "&task=" . $view . ".edit&id=" . $record->id . $ref);
}
return "index.php?option=" . $component . "&view=" . $views . "&task=" . $view . ".edit&id=" . $record->id . $ref;
}
return false;
}
/**
* Can Edit (either any, or own)
*
* @param int $item The item to edit
* @param string $view The type of item to edit
* @param string $views The list view controller name
* @param string $component The component these views belong to
*
* @return bool if user can edit returns true els
*
*/
public static function allowEdit(&$item, $view, $views, $component = 'com_componentbuilder')
{
// build record
$record = new stdClass();
return self::canEditItem($record, $item, $view, $views, $component);
}
/**
* Can Edit (either any, or own)
*
* @param int $item The item to edit
* @param string $view The type of item to edit
* @param string $views The list view controller name
* @param string $component The component these views belong to
*
* @return bool if user can edit returns true els
*
*/
protected static function canEditItem(&$record, &$item, $view, $views, $component = 'com_componentbuilder')
{ {
// make sure the user has access to view // make sure the user has access to view
if (!JFactory::getUser()->authorise($view. '.access', $component)) if (!JFactory::getUser()->authorise($view. '.access', $component))
{ {
return false; return false;
} }
// build record // we start with false.
$record = new stdClass(); $can_edit = false;
// check that we have the ID // check that we have the ID
if (self::checkObject($item) && isset($item->id)) if (self::checkObject($item) && isset($item->id))
{ {
@@ -5571,25 +5627,14 @@ abstract class ComponentbuilderHelper
// get user action permission to edit // get user action permission to edit
$action = self::getActions($view, $record, $views, 'edit', str_replace('com_', '', $component)); $action = self::getActions($view, $record, $views, 'edit', str_replace('com_', '', $component));
// check if the view permission is set // check if the view permission is set
if (($edit = $action->get($view . '.edit', 'none-set')) === 'none-set') if (($can_edit = $action->get($view . '.edit', 'none-set')) === 'none-set')
{ {
// fall back on the core permission then // fall back on the core permission then (this can be an issue)
$edit = $action->get('core.edit', 'none-set'); $can_edit = ($action->get('core.edit', false) || $action->get('core.edit.own', false));
}
// can edit
if ($edit)
{
// set the edit link
if ($jRoute)
{
return JRoute::_("index.php?option=" . $component . "&view=" . $views . "&task=" . $view . ".edit&id=" . $record->id . $ref);
}
return "index.php?option=" . $component . "&view=" . $views . "&task=" . $view . ".edit&id=" . $record->id . $ref;
} }
} }
return false; return $can_edit;
} }
/** /**
* set subform type table * set subform type table
@@ -5632,9 +5677,9 @@ abstract class ComponentbuilderHelper
/** /**
* Change to nice fancy date * Change to nice fancy date
*/ */
public static function fancyDate($date) public static function fancyDate($date, $check_stamp = true)
{ {
if (!self::isValidTimeStamp($date)) if ($check_stamp && !self::isValidTimeStamp($date))
{ {
$date = strtotime($date); $date = strtotime($date);
} }
@@ -5644,9 +5689,9 @@ abstract class ComponentbuilderHelper
/** /**
* get date based in period past * get date based in period past
*/ */
public static function fancyDynamicDate($date) public static function fancyDynamicDate($date, $check_stamp = true)
{ {
if (!self::isValidTimeStamp($date)) if ($check_stamp && !self::isValidTimeStamp($date))
{ {
$date = strtotime($date); $date = strtotime($date);
} }
@@ -5670,9 +5715,9 @@ abstract class ComponentbuilderHelper
/** /**
* Change to nice fancy day time and date * Change to nice fancy day time and date
*/ */
public static function fancyDayTimeDate($time) public static function fancyDayTimeDate($time, $check_stamp = true)
{ {
if (!self::isValidTimeStamp($time)) if ($check_stamp && !self::isValidTimeStamp($time))
{ {
$time = strtotime($time); $time = strtotime($time);
} }
@@ -5682,9 +5727,9 @@ abstract class ComponentbuilderHelper
/** /**
* Change to nice fancy time and date * Change to nice fancy time and date
*/ */
public static function fancyDateTime($time) public static function fancyDateTime($time, $check_stamp = true)
{ {
if (!self::isValidTimeStamp($time)) if ($check_stamp && !self::isValidTimeStamp($time))
{ {
$time = strtotime($time); $time = strtotime($time);
} }
@@ -5694,9 +5739,9 @@ abstract class ComponentbuilderHelper
/** /**
* Change to nice hour:minutes time * Change to nice hour:minutes time
*/ */
public static function fancyTime($time) public static function fancyTime($time, $check_stamp = true)
{ {
if (!self::isValidTimeStamp($time)) if ($check_stamp && !self::isValidTimeStamp($time))
{ {
$time = strtotime($time); $time = strtotime($time);
} }
@@ -5706,9 +5751,9 @@ abstract class ComponentbuilderHelper
/** /**
* set the date day as Sunday through Saturday * set the date day as Sunday through Saturday
*/ */
public static function setDayName($date) public static function setDayName($date, $check_stamp = true)
{ {
if (!self::isValidTimeStamp($date)) if ($check_stamp && !self::isValidTimeStamp($date))
{ {
$date = strtotime($date); $date = strtotime($date);
} }
@@ -5718,9 +5763,9 @@ abstract class ComponentbuilderHelper
/** /**
* set the date month as January through December * set the date month as January through December
*/ */
public static function setMonthName($date) public static function setMonthName($date, $check_stamp = true)
{ {
if (!self::isValidTimeStamp($date)) if ($check_stamp && !self::isValidTimeStamp($date))
{ {
$date = strtotime($date); $date = strtotime($date);
} }
@@ -5730,9 +5775,9 @@ abstract class ComponentbuilderHelper
/** /**
* set the date day as 1st * set the date day as 1st
*/ */
public static function setDay($date) public static function setDay($date, $check_stamp = true)
{ {
if (!self::isValidTimeStamp($date)) if ($check_stamp && !self::isValidTimeStamp($date))
{ {
$date = strtotime($date); $date = strtotime($date);
} }
@@ -5742,9 +5787,9 @@ abstract class ComponentbuilderHelper
/** /**
* set the date month as 5 * set the date month as 5
*/ */
public static function setMonth($date) public static function setMonth($date, $check_stamp = true)
{ {
if (!self::isValidTimeStamp($date)) if ($check_stamp && !self::isValidTimeStamp($date))
{ {
$date = strtotime($date); $date = strtotime($date);
} }
@@ -5754,9 +5799,9 @@ abstract class ComponentbuilderHelper
/** /**
* set the date year as 2004 (for charts) * set the date year as 2004 (for charts)
*/ */
public static function setYear($date) public static function setYear($date, $check_stamp = true)
{ {
if (!self::isValidTimeStamp($date)) if ($check_stamp && !self::isValidTimeStamp($date))
{ {
$date = strtotime($date); $date = strtotime($date);
} }
@@ -5766,9 +5811,9 @@ abstract class ComponentbuilderHelper
/** /**
* set the date as 2004/05 (for charts) * set the date as 2004/05 (for charts)
*/ */
public static function setYearMonth($date, $spacer = '/') public static function setYearMonth($date, $spacer = '/', $check_stamp = true)
{ {
if (!self::isValidTimeStamp($date)) if ($check_stamp && !self::isValidTimeStamp($date))
{ {
$date = strtotime($date); $date = strtotime($date);
} }
@@ -5778,15 +5823,27 @@ abstract class ComponentbuilderHelper
/** /**
* set the date as 2004/05/03 (for charts) * set the date as 2004/05/03 (for charts)
*/ */
public static function setYearMonthDay($date, $spacer = '/') public static function setYearMonthDay($date, $spacer = '/', $check_stamp = true)
{ {
if (!self::isValidTimeStamp($date)) if ($check_stamp && !self::isValidTimeStamp($date))
{ {
$date = strtotime($date); $date = strtotime($date);
} }
return date('Y' . $spacer . 'm' . $spacer . 'd', $date); return date('Y' . $spacer . 'm' . $spacer . 'd', $date);
} }
/**
* set the date as 03/05/2004
*/
public static function setDayMonthYear($date, $spacer = '/', $check_stamp = true)
{
if ($check_stamp && !self::isValidTimeStamp($date))
{
$date = strtotime($date);
}
return date('d' . $spacer . 'm' . $spacer . 'Y', $date);
}
/** /**
* Check if string is a valid time stamp * Check if string is a valid time stamp
*/ */
@@ -5797,6 +5854,57 @@ abstract class ComponentbuilderHelper
&& ($timestamp >= ~PHP_INT_MAX); && ($timestamp >= ~PHP_INT_MAX);
} }
/**
* Check if string is a valid date
* https://www.php.net/manual/en/function.checkdate.php#113205
*/
public static function isValidateDate($date, $format = 'Y-m-d H:i:s')
{
$d = DateTime::createFromFormat($format, $date);
return $d && $d->format($format) == $date;
}
/**
* The subform layouts
**/
protected static $subformLayouts = false;
/**
* get the subform layout
*
* @input string The view name
* @input string The string name
*
* @returns string on success
**/
public static function getSubformLayout($view, $field, $default = 'repeatablejcb')
{
// get global values
if (self::$subformLayouts === false)
{
self::$subformLayouts = JComponentHelper::getParams('com_componentbuilder')->get('subform_layouts', false);
}
// check what we found (else) return default
if (self::checkObject(self::$subformLayouts))
{
// looking for
$target = $view . '.' . $field;
foreach (self::$subformLayouts as $subform)
{
if ($target === $subform->view_field)
{
return $subform->layout;
}
elseif ('default' === $subform->view_field)
{
$default = $subform->layout;
}
}
}
return $default;
}
/** /**
* Load the Composer Vendors * Load the Composer Vendors
@@ -6033,12 +6141,12 @@ abstract class ComponentbuilderHelper
if ($user->authorise('field.access', 'com_componentbuilder') && $user->authorise('field.submenu', 'com_componentbuilder')) if ($user->authorise('field.access', 'com_componentbuilder') && $user->authorise('field.submenu', 'com_componentbuilder'))
{ {
JHtmlSidebar::addEntry(JText::_('COM_COMPONENTBUILDER_SUBMENU_FIELDS'), 'index.php?option=com_componentbuilder&view=fields', $submenu === 'fields'); JHtmlSidebar::addEntry(JText::_('COM_COMPONENTBUILDER_SUBMENU_FIELDS'), 'index.php?option=com_componentbuilder&view=fields', $submenu === 'fields');
JHtmlSidebar::addEntry(JText::_('COM_COMPONENTBUILDER_FIELD_FIELDS_CATEGORIES'), 'index.php?option=com_categories&view=categories&extension=com_componentbuilder.fields', $submenu === 'categories.fields'); JHtmlSidebar::addEntry(JText::_('COM_COMPONENTBUILDER_FIELD_FIELDS_CATEGORIES'), 'index.php?option=com_categories&view=categories&extension=com_componentbuilder.field', $submenu === 'categories.field');
} }
if ($user->authorise('fieldtype.access', 'com_componentbuilder') && $user->authorise('fieldtype.submenu', 'com_componentbuilder')) if ($user->authorise('fieldtype.access', 'com_componentbuilder') && $user->authorise('fieldtype.submenu', 'com_componentbuilder'))
{ {
JHtmlSidebar::addEntry(JText::_('COM_COMPONENTBUILDER_SUBMENU_FIELDTYPES'), 'index.php?option=com_componentbuilder&view=fieldtypes', $submenu === 'fieldtypes'); JHtmlSidebar::addEntry(JText::_('COM_COMPONENTBUILDER_SUBMENU_FIELDTYPES'), 'index.php?option=com_componentbuilder&view=fieldtypes', $submenu === 'fieldtypes');
JHtmlSidebar::addEntry(JText::_('COM_COMPONENTBUILDER_FIELDTYPE_FIELDTYPES_CATEGORIES'), 'index.php?option=com_categories&view=categories&extension=com_componentbuilder.fieldtypes', $submenu === 'categories.fieldtypes'); JHtmlSidebar::addEntry(JText::_('COM_COMPONENTBUILDER_FIELDTYPE_FIELDTYPES_CATEGORIES'), 'index.php?option=com_categories&view=categories&extension=com_componentbuilder.fieldtype', $submenu === 'categories.fieldtype');
} }
if ($user->authorise('language_translation.access', 'com_componentbuilder') && $user->authorise('language_translation.submenu', 'com_componentbuilder')) if ($user->authorise('language_translation.access', 'com_componentbuilder') && $user->authorise('language_translation.submenu', 'com_componentbuilder'))
{ {
@@ -6201,6 +6309,8 @@ abstract class ComponentbuilderHelper
->setLastModifiedBy($modified) ->setLastModifiedBy($modified)
->setTitle($title) ->setTitle($title)
->setSubject($subjectTab); ->setSubject($subjectTab);
// The file type
$file_type = 'Xls';
// set description // set description
if ($description) if ($description)
{ {
@@ -6240,21 +6350,46 @@ abstract class ComponentbuilderHelper
)); ));
// Add some data // Add some data
if (self::checkArray($rows)) if (($size = self::checkArray($rows)) !== false)
{ {
$i = 1; $i = 1;
foreach ($rows as $array){
// Based on data size we adapt the behaviour.
$xls_mode = 1;
if ($size > 3000)
{
$xls_mode = 3;
$file_type = 'Csv';
}
elseif ($size > 2000)
{
$xls_mode = 2;
}
// Set active sheet and get it.
$active_sheet = $spreadsheet->setActiveSheetIndex(0);
foreach ($rows as $array)
{
$a = 'A'; $a = 'A';
foreach ($array as $value){ foreach ($array as $value)
$spreadsheet->setActiveSheetIndex(0)->setCellValue($a.$i, $value); {
if ($i == 1){ $active_sheet->setCellValue($a.$i, $value);
$spreadsheet->getActiveSheet()->getColumnDimension($a)->setAutoSize(true); if ($xls_mode != 3)
$spreadsheet->getActiveSheet()->getStyle($a.$i)->applyFromArray($headerStyles); {
$spreadsheet->getActiveSheet()->getStyle($a.$i)->getAlignment()->setHorizontal(PhpOffice\PhpSpreadsheet\Style\Alignment::HORIZONTAL_CENTER); if ($i == 1)
} elseif ($a === 'A'){ {
$spreadsheet->getActiveSheet()->getStyle($a.$i)->applyFromArray($sideStyles); $active_sheet->getColumnDimension($a)->setAutoSize(true);
} else { $active_sheet->getStyle($a.$i)->applyFromArray($headerStyles);
$spreadsheet->getActiveSheet()->getStyle($a.$i)->applyFromArray($normalStyles); $active_sheet->getStyle($a.$i)->getAlignment()->setHorizontal(PhpOffice\PhpSpreadsheet\Style\Alignment::HORIZONTAL_CENTER);
}
elseif ($a === 'A')
{
$active_sheet->getStyle($a.$i)->applyFromArray($sideStyles);
}
elseif ($xls_mode == 1)
{
$active_sheet->getStyle($a.$i)->applyFromArray($normalStyles);
}
} }
$a++; $a++;
} }
@@ -6274,7 +6409,7 @@ abstract class ComponentbuilderHelper
// Redirect output to a client's web browser (Excel5) // Redirect output to a client's web browser (Excel5)
header('Content-Type: application/vnd.ms-excel'); header('Content-Type: application/vnd.ms-excel');
header('Content-Disposition: attachment;filename="'.$fileName.'.xls"'); header('Content-Disposition: attachment;filename="' . $fileName . '.' . strtolower($file_type) .'"');
header('Cache-Control: max-age=0'); header('Cache-Control: max-age=0');
// If you're serving to IE 9, then the following may be needed // If you're serving to IE 9, then the following may be needed
header('Cache-Control: max-age=1'); header('Cache-Control: max-age=1');
@@ -6285,7 +6420,7 @@ abstract class ComponentbuilderHelper
header ('Cache-Control: cache, must-revalidate'); // HTTP/1.1 header ('Cache-Control: cache, must-revalidate'); // HTTP/1.1
header ('Pragma: public'); // HTTP/1.0 header ('Pragma: public'); // HTTP/1.0
$writer = IOFactory::createWriter($spreadsheet, 'Xls'); $writer = IOFactory::createWriter($spreadsheet, $file_type);
$writer->save('php://output'); $writer->save('php://output');
jexit(); jexit();
} }

View File

@@ -7,6 +7,7 @@ COM_COMPONENTBUILDER_ACCESS="Access"
COM_COMPONENTBUILDER_ACCESS_BULK_TOOLS="Access Bulk Tools" COM_COMPONENTBUILDER_ACCESS_BULK_TOOLS="Access Bulk Tools"
COM_COMPONENTBUILDER_ACCESS_DENIED="Access denied!" COM_COMPONENTBUILDER_ACCESS_DENIED="Access denied!"
COM_COMPONENTBUILDER_ACTIVE_ONLY_FOUR_TEXT_FIELD="Active (only 4 text_field)" COM_COMPONENTBUILDER_ACTIVE_ONLY_FOUR_TEXT_FIELD="Active (only 4 text_field)"
COM_COMPONENTBUILDER_ADD="Add"
COM_COMPONENTBUILDER_ADD_ACCESS="Add Access" COM_COMPONENTBUILDER_ADD_ACCESS="Add Access"
COM_COMPONENTBUILDER_ADD_CORRESPONDING_LINE_NUMBERS_TO_THE_DYNAMIC_COMMENTS_SO_TO_SEE_WHERE_IN_THE_COMPILER_THE_LINES_OF_CODE_WAS_BUILD_THIS_WILL_HELP_IF_YOU_NEED_TO_GET_MORE_TECHNICAL_WITH_AN_ISSUE_ON_GITHUB_OR_EVEN_FOR_YOUR_OWN_DEBUGGING="Add corresponding line numbers to the dynamic comments, so to see where in the compiler the lines of code was build. This will help if you need to get more technical with an issue on github, or even for your own debugging." COM_COMPONENTBUILDER_ADD_CORRESPONDING_LINE_NUMBERS_TO_THE_DYNAMIC_COMMENTS_SO_TO_SEE_WHERE_IN_THE_COMPILER_THE_LINES_OF_CODE_WAS_BUILD_THIS_WILL_HELP_IF_YOU_NEED_TO_GET_MORE_TECHNICAL_WITH_AN_ISSUE_ON_GITHUB_OR_EVEN_FOR_YOUR_OWN_DEBUGGING="Add corresponding line numbers to the dynamic comments, so to see where in the compiler the lines of code was build. This will help if you need to get more technical with an issue on github, or even for your own debugging."
COM_COMPONENTBUILDER_ADD_CUSTOM_CODE_PLACEHOLDERS="Add Custom Code Placeholders" COM_COMPONENTBUILDER_ADD_CUSTOM_CODE_PLACEHOLDERS="Add Custom Code Placeholders"
@@ -46,6 +47,8 @@ COM_COMPONENTBUILDER_ADMINS_CUSTOM_TABS_N_ITEMS_CHECKED_IN_1="%d Admin Custom Ta
COM_COMPONENTBUILDER_ADMINS_CUSTOM_TABS_N_ITEMS_CHECKED_IN_MORE="%d Admins Custom Tabs successfully checked in." COM_COMPONENTBUILDER_ADMINS_CUSTOM_TABS_N_ITEMS_CHECKED_IN_MORE="%d Admins Custom Tabs successfully checked in."
COM_COMPONENTBUILDER_ADMINS_CUSTOM_TABS_N_ITEMS_DELETED="%s Admins Custom Tabs deleted." COM_COMPONENTBUILDER_ADMINS_CUSTOM_TABS_N_ITEMS_DELETED="%s Admins Custom Tabs deleted."
COM_COMPONENTBUILDER_ADMINS_CUSTOM_TABS_N_ITEMS_DELETED_1="%s Admin Custom Tabs deleted." COM_COMPONENTBUILDER_ADMINS_CUSTOM_TABS_N_ITEMS_DELETED_1="%s Admin Custom Tabs deleted."
COM_COMPONENTBUILDER_ADMINS_CUSTOM_TABS_N_ITEMS_FAILED_PUBLISHING="%s Admins Custom Tabs failed publishing."
COM_COMPONENTBUILDER_ADMINS_CUSTOM_TABS_N_ITEMS_FAILED_PUBLISHING_1="%s Admin Custom Tabs failed publishing."
COM_COMPONENTBUILDER_ADMINS_CUSTOM_TABS_N_ITEMS_FEATURED="%s Admins Custom Tabs featured." COM_COMPONENTBUILDER_ADMINS_CUSTOM_TABS_N_ITEMS_FEATURED="%s Admins Custom Tabs featured."
COM_COMPONENTBUILDER_ADMINS_CUSTOM_TABS_N_ITEMS_FEATURED_1="%s Admin Custom Tabs featured." COM_COMPONENTBUILDER_ADMINS_CUSTOM_TABS_N_ITEMS_FEATURED_1="%s Admin Custom Tabs featured."
COM_COMPONENTBUILDER_ADMINS_CUSTOM_TABS_N_ITEMS_PUBLISHED="%s Admins Custom Tabs published." COM_COMPONENTBUILDER_ADMINS_CUSTOM_TABS_N_ITEMS_PUBLISHED="%s Admins Custom Tabs published."
@@ -93,6 +96,8 @@ COM_COMPONENTBUILDER_ADMINS_FIELDS_CONDITIONS_N_ITEMS_CHECKED_IN_1="%d Admin Fie
COM_COMPONENTBUILDER_ADMINS_FIELDS_CONDITIONS_N_ITEMS_CHECKED_IN_MORE="%d Admins Fields Conditions successfully checked in." COM_COMPONENTBUILDER_ADMINS_FIELDS_CONDITIONS_N_ITEMS_CHECKED_IN_MORE="%d Admins Fields Conditions successfully checked in."
COM_COMPONENTBUILDER_ADMINS_FIELDS_CONDITIONS_N_ITEMS_DELETED="%s Admins Fields Conditions deleted." COM_COMPONENTBUILDER_ADMINS_FIELDS_CONDITIONS_N_ITEMS_DELETED="%s Admins Fields Conditions deleted."
COM_COMPONENTBUILDER_ADMINS_FIELDS_CONDITIONS_N_ITEMS_DELETED_1="%s Admin Fields Conditions deleted." COM_COMPONENTBUILDER_ADMINS_FIELDS_CONDITIONS_N_ITEMS_DELETED_1="%s Admin Fields Conditions deleted."
COM_COMPONENTBUILDER_ADMINS_FIELDS_CONDITIONS_N_ITEMS_FAILED_PUBLISHING="%s Admins Fields Conditions failed publishing."
COM_COMPONENTBUILDER_ADMINS_FIELDS_CONDITIONS_N_ITEMS_FAILED_PUBLISHING_1="%s Admin Fields Conditions failed publishing."
COM_COMPONENTBUILDER_ADMINS_FIELDS_CONDITIONS_N_ITEMS_FEATURED="%s Admins Fields Conditions featured." COM_COMPONENTBUILDER_ADMINS_FIELDS_CONDITIONS_N_ITEMS_FEATURED="%s Admins Fields Conditions featured."
COM_COMPONENTBUILDER_ADMINS_FIELDS_CONDITIONS_N_ITEMS_FEATURED_1="%s Admin Fields Conditions featured." COM_COMPONENTBUILDER_ADMINS_FIELDS_CONDITIONS_N_ITEMS_FEATURED_1="%s Admin Fields Conditions featured."
COM_COMPONENTBUILDER_ADMINS_FIELDS_CONDITIONS_N_ITEMS_PUBLISHED="%s Admins Fields Conditions published." COM_COMPONENTBUILDER_ADMINS_FIELDS_CONDITIONS_N_ITEMS_PUBLISHED="%s Admins Fields Conditions published."
@@ -126,6 +131,8 @@ COM_COMPONENTBUILDER_ADMINS_FIELDS_N_ITEMS_CHECKED_IN_1="%d Admin Fields success
COM_COMPONENTBUILDER_ADMINS_FIELDS_N_ITEMS_CHECKED_IN_MORE="%d Admins Fields successfully checked in." COM_COMPONENTBUILDER_ADMINS_FIELDS_N_ITEMS_CHECKED_IN_MORE="%d Admins Fields successfully checked in."
COM_COMPONENTBUILDER_ADMINS_FIELDS_N_ITEMS_DELETED="%s Admins Fields deleted." COM_COMPONENTBUILDER_ADMINS_FIELDS_N_ITEMS_DELETED="%s Admins Fields deleted."
COM_COMPONENTBUILDER_ADMINS_FIELDS_N_ITEMS_DELETED_1="%s Admin Fields deleted." COM_COMPONENTBUILDER_ADMINS_FIELDS_N_ITEMS_DELETED_1="%s Admin Fields deleted."
COM_COMPONENTBUILDER_ADMINS_FIELDS_N_ITEMS_FAILED_PUBLISHING="%s Admins Fields failed publishing."
COM_COMPONENTBUILDER_ADMINS_FIELDS_N_ITEMS_FAILED_PUBLISHING_1="%s Admin Fields failed publishing."
COM_COMPONENTBUILDER_ADMINS_FIELDS_N_ITEMS_FEATURED="%s Admins Fields featured." COM_COMPONENTBUILDER_ADMINS_FIELDS_N_ITEMS_FEATURED="%s Admins Fields featured."
COM_COMPONENTBUILDER_ADMINS_FIELDS_N_ITEMS_FEATURED_1="%s Admin Fields featured." COM_COMPONENTBUILDER_ADMINS_FIELDS_N_ITEMS_FEATURED_1="%s Admin Fields featured."
COM_COMPONENTBUILDER_ADMINS_FIELDS_N_ITEMS_PUBLISHED="%s Admins Fields published." COM_COMPONENTBUILDER_ADMINS_FIELDS_N_ITEMS_PUBLISHED="%s Admins Fields published."
@@ -166,6 +173,8 @@ COM_COMPONENTBUILDER_ADMINS_FIELDS_RELATIONS_N_ITEMS_CHECKED_IN_1="%d Admin Fiel
COM_COMPONENTBUILDER_ADMINS_FIELDS_RELATIONS_N_ITEMS_CHECKED_IN_MORE="%d Admins Fields Relations successfully checked in." COM_COMPONENTBUILDER_ADMINS_FIELDS_RELATIONS_N_ITEMS_CHECKED_IN_MORE="%d Admins Fields Relations successfully checked in."
COM_COMPONENTBUILDER_ADMINS_FIELDS_RELATIONS_N_ITEMS_DELETED="%s Admins Fields Relations deleted." COM_COMPONENTBUILDER_ADMINS_FIELDS_RELATIONS_N_ITEMS_DELETED="%s Admins Fields Relations deleted."
COM_COMPONENTBUILDER_ADMINS_FIELDS_RELATIONS_N_ITEMS_DELETED_1="%s Admin Fields Relations deleted." COM_COMPONENTBUILDER_ADMINS_FIELDS_RELATIONS_N_ITEMS_DELETED_1="%s Admin Fields Relations deleted."
COM_COMPONENTBUILDER_ADMINS_FIELDS_RELATIONS_N_ITEMS_FAILED_PUBLISHING="%s Admins Fields Relations failed publishing."
COM_COMPONENTBUILDER_ADMINS_FIELDS_RELATIONS_N_ITEMS_FAILED_PUBLISHING_1="%s Admin Fields Relations failed publishing."
COM_COMPONENTBUILDER_ADMINS_FIELDS_RELATIONS_N_ITEMS_FEATURED="%s Admins Fields Relations featured." COM_COMPONENTBUILDER_ADMINS_FIELDS_RELATIONS_N_ITEMS_FEATURED="%s Admins Fields Relations featured."
COM_COMPONENTBUILDER_ADMINS_FIELDS_RELATIONS_N_ITEMS_FEATURED_1="%s Admin Fields Relations featured." COM_COMPONENTBUILDER_ADMINS_FIELDS_RELATIONS_N_ITEMS_FEATURED_1="%s Admin Fields Relations featured."
COM_COMPONENTBUILDER_ADMINS_FIELDS_RELATIONS_N_ITEMS_PUBLISHED="%s Admins Fields Relations published." COM_COMPONENTBUILDER_ADMINS_FIELDS_RELATIONS_N_ITEMS_PUBLISHED="%s Admins Fields Relations published."
@@ -441,6 +450,8 @@ COM_COMPONENTBUILDER_ADMIN_VIEWS_N_ITEMS_CHECKED_IN_1="%d Admin View successfull
COM_COMPONENTBUILDER_ADMIN_VIEWS_N_ITEMS_CHECKED_IN_MORE="%d Admin Views successfully checked in." COM_COMPONENTBUILDER_ADMIN_VIEWS_N_ITEMS_CHECKED_IN_MORE="%d Admin Views successfully checked in."
COM_COMPONENTBUILDER_ADMIN_VIEWS_N_ITEMS_DELETED="%s Admin Views deleted." COM_COMPONENTBUILDER_ADMIN_VIEWS_N_ITEMS_DELETED="%s Admin Views deleted."
COM_COMPONENTBUILDER_ADMIN_VIEWS_N_ITEMS_DELETED_1="%s Admin View deleted." COM_COMPONENTBUILDER_ADMIN_VIEWS_N_ITEMS_DELETED_1="%s Admin View deleted."
COM_COMPONENTBUILDER_ADMIN_VIEWS_N_ITEMS_FAILED_PUBLISHING="%s Admin Views failed publishing."
COM_COMPONENTBUILDER_ADMIN_VIEWS_N_ITEMS_FAILED_PUBLISHING_1="%s Admin View failed publishing."
COM_COMPONENTBUILDER_ADMIN_VIEWS_N_ITEMS_FEATURED="%s Admin Views featured." COM_COMPONENTBUILDER_ADMIN_VIEWS_N_ITEMS_FEATURED="%s Admin Views featured."
COM_COMPONENTBUILDER_ADMIN_VIEWS_N_ITEMS_FEATURED_1="%s Admin View featured." COM_COMPONENTBUILDER_ADMIN_VIEWS_N_ITEMS_FEATURED_1="%s Admin View featured."
COM_COMPONENTBUILDER_ADMIN_VIEWS_N_ITEMS_PUBLISHED="%s Admin Views published." COM_COMPONENTBUILDER_ADMIN_VIEWS_N_ITEMS_PUBLISHED="%s Admin Views published."
@@ -1467,6 +1478,8 @@ COM_COMPONENTBUILDER_CLASS_EXTENDINGS_N_ITEMS_CHECKED_IN_1="%d Class Extends suc
COM_COMPONENTBUILDER_CLASS_EXTENDINGS_N_ITEMS_CHECKED_IN_MORE="%d Class Extendings successfully checked in." COM_COMPONENTBUILDER_CLASS_EXTENDINGS_N_ITEMS_CHECKED_IN_MORE="%d Class Extendings successfully checked in."
COM_COMPONENTBUILDER_CLASS_EXTENDINGS_N_ITEMS_DELETED="%s Class Extendings deleted." COM_COMPONENTBUILDER_CLASS_EXTENDINGS_N_ITEMS_DELETED="%s Class Extendings deleted."
COM_COMPONENTBUILDER_CLASS_EXTENDINGS_N_ITEMS_DELETED_1="%s Class Extends deleted." COM_COMPONENTBUILDER_CLASS_EXTENDINGS_N_ITEMS_DELETED_1="%s Class Extends deleted."
COM_COMPONENTBUILDER_CLASS_EXTENDINGS_N_ITEMS_FAILED_PUBLISHING="%s Class Extendings failed publishing."
COM_COMPONENTBUILDER_CLASS_EXTENDINGS_N_ITEMS_FAILED_PUBLISHING_1="%s Class Extends failed publishing."
COM_COMPONENTBUILDER_CLASS_EXTENDINGS_N_ITEMS_FEATURED="%s Class Extendings featured." COM_COMPONENTBUILDER_CLASS_EXTENDINGS_N_ITEMS_FEATURED="%s Class Extendings featured."
COM_COMPONENTBUILDER_CLASS_EXTENDINGS_N_ITEMS_FEATURED_1="%s Class Extends featured." COM_COMPONENTBUILDER_CLASS_EXTENDINGS_N_ITEMS_FEATURED_1="%s Class Extends featured."
COM_COMPONENTBUILDER_CLASS_EXTENDINGS_N_ITEMS_PUBLISHED="%s Class Extendings published." COM_COMPONENTBUILDER_CLASS_EXTENDINGS_N_ITEMS_PUBLISHED="%s Class Extendings published."
@@ -1498,8 +1511,8 @@ COM_COMPONENTBUILDER_CLASS_EXTENDS_EXTENSION_TYPE="Extension Type"
COM_COMPONENTBUILDER_CLASS_EXTENDS_EXTENSION_TYPE_DESCRIPTION="Extension type this class_extends belongs to." COM_COMPONENTBUILDER_CLASS_EXTENDS_EXTENSION_TYPE_DESCRIPTION="Extension type this class_extends belongs to."
COM_COMPONENTBUILDER_CLASS_EXTENDS_EXTENSION_TYPE_LABEL="Extension Type" COM_COMPONENTBUILDER_CLASS_EXTENDS_EXTENSION_TYPE_LABEL="Extension Type"
COM_COMPONENTBUILDER_CLASS_EXTENDS_HEAD="Head" COM_COMPONENTBUILDER_CLASS_EXTENDS_HEAD="Head"
COM_COMPONENTBUILDER_CLASS_EXTENDS_HEAD_DESCRIPTION="The class head, where JLoader, namespace and use is added, so that class being extended will work." COM_COMPONENTBUILDER_CLASS_EXTENDS_HEAD_DESCRIPTION="The class header to add any header values can be added."
COM_COMPONENTBUILDER_CLASS_EXTENDS_HEAD_LABEL="Class Head" COM_COMPONENTBUILDER_CLASS_EXTENDS_HEAD_LABEL="Class Header"
COM_COMPONENTBUILDER_CLASS_EXTENDS_ID="Id" COM_COMPONENTBUILDER_CLASS_EXTENDS_ID="Id"
COM_COMPONENTBUILDER_CLASS_EXTENDS_MODIFIED_BY_DESC="The last user that modified this Class Extends." COM_COMPONENTBUILDER_CLASS_EXTENDS_MODIFIED_BY_DESC="The last user that modified this Class Extends."
COM_COMPONENTBUILDER_CLASS_EXTENDS_MODIFIED_BY_LABEL="Modified By" COM_COMPONENTBUILDER_CLASS_EXTENDS_MODIFIED_BY_LABEL="Modified By"
@@ -1556,6 +1569,8 @@ COM_COMPONENTBUILDER_CLASS_METHODS_N_ITEMS_CHECKED_IN_1="%d Class Method success
COM_COMPONENTBUILDER_CLASS_METHODS_N_ITEMS_CHECKED_IN_MORE="%d Class Methods successfully checked in." COM_COMPONENTBUILDER_CLASS_METHODS_N_ITEMS_CHECKED_IN_MORE="%d Class Methods successfully checked in."
COM_COMPONENTBUILDER_CLASS_METHODS_N_ITEMS_DELETED="%s Class Methods deleted." COM_COMPONENTBUILDER_CLASS_METHODS_N_ITEMS_DELETED="%s Class Methods deleted."
COM_COMPONENTBUILDER_CLASS_METHODS_N_ITEMS_DELETED_1="%s Class Method deleted." COM_COMPONENTBUILDER_CLASS_METHODS_N_ITEMS_DELETED_1="%s Class Method deleted."
COM_COMPONENTBUILDER_CLASS_METHODS_N_ITEMS_FAILED_PUBLISHING="%s Class Methods failed publishing."
COM_COMPONENTBUILDER_CLASS_METHODS_N_ITEMS_FAILED_PUBLISHING_1="%s Class Method failed publishing."
COM_COMPONENTBUILDER_CLASS_METHODS_N_ITEMS_FEATURED="%s Class Methods featured." COM_COMPONENTBUILDER_CLASS_METHODS_N_ITEMS_FEATURED="%s Class Methods featured."
COM_COMPONENTBUILDER_CLASS_METHODS_N_ITEMS_FEATURED_1="%s Class Method featured." COM_COMPONENTBUILDER_CLASS_METHODS_N_ITEMS_FEATURED_1="%s Class Method featured."
COM_COMPONENTBUILDER_CLASS_METHODS_N_ITEMS_PUBLISHED="%s Class Methods published." COM_COMPONENTBUILDER_CLASS_METHODS_N_ITEMS_PUBLISHED="%s Class Methods published."
@@ -1660,6 +1675,8 @@ COM_COMPONENTBUILDER_CLASS_PROPERTIES_N_ITEMS_CHECKED_IN_1="%d Class Property su
COM_COMPONENTBUILDER_CLASS_PROPERTIES_N_ITEMS_CHECKED_IN_MORE="%d Class Properties successfully checked in." COM_COMPONENTBUILDER_CLASS_PROPERTIES_N_ITEMS_CHECKED_IN_MORE="%d Class Properties successfully checked in."
COM_COMPONENTBUILDER_CLASS_PROPERTIES_N_ITEMS_DELETED="%s Class Properties deleted." COM_COMPONENTBUILDER_CLASS_PROPERTIES_N_ITEMS_DELETED="%s Class Properties deleted."
COM_COMPONENTBUILDER_CLASS_PROPERTIES_N_ITEMS_DELETED_1="%s Class Property deleted." COM_COMPONENTBUILDER_CLASS_PROPERTIES_N_ITEMS_DELETED_1="%s Class Property deleted."
COM_COMPONENTBUILDER_CLASS_PROPERTIES_N_ITEMS_FAILED_PUBLISHING="%s Class Properties failed publishing."
COM_COMPONENTBUILDER_CLASS_PROPERTIES_N_ITEMS_FAILED_PUBLISHING_1="%s Class Property failed publishing."
COM_COMPONENTBUILDER_CLASS_PROPERTIES_N_ITEMS_FEATURED="%s Class Properties featured." COM_COMPONENTBUILDER_CLASS_PROPERTIES_N_ITEMS_FEATURED="%s Class Properties featured."
COM_COMPONENTBUILDER_CLASS_PROPERTIES_N_ITEMS_FEATURED_1="%s Class Property featured." COM_COMPONENTBUILDER_CLASS_PROPERTIES_N_ITEMS_FEATURED_1="%s Class Property featured."
COM_COMPONENTBUILDER_CLASS_PROPERTIES_N_ITEMS_PUBLISHED="%s Class Properties published." COM_COMPONENTBUILDER_CLASS_PROPERTIES_N_ITEMS_PUBLISHED="%s Class Properties published."
@@ -1785,6 +1802,8 @@ COM_COMPONENTBUILDER_COMPONENTS_ADMIN_VIEWS_N_ITEMS_CHECKED_IN_1="%d Component A
COM_COMPONENTBUILDER_COMPONENTS_ADMIN_VIEWS_N_ITEMS_CHECKED_IN_MORE="%d Components Admin Views successfully checked in." COM_COMPONENTBUILDER_COMPONENTS_ADMIN_VIEWS_N_ITEMS_CHECKED_IN_MORE="%d Components Admin Views successfully checked in."
COM_COMPONENTBUILDER_COMPONENTS_ADMIN_VIEWS_N_ITEMS_DELETED="%s Components Admin Views deleted." COM_COMPONENTBUILDER_COMPONENTS_ADMIN_VIEWS_N_ITEMS_DELETED="%s Components Admin Views deleted."
COM_COMPONENTBUILDER_COMPONENTS_ADMIN_VIEWS_N_ITEMS_DELETED_1="%s Component Admin Views deleted." COM_COMPONENTBUILDER_COMPONENTS_ADMIN_VIEWS_N_ITEMS_DELETED_1="%s Component Admin Views deleted."
COM_COMPONENTBUILDER_COMPONENTS_ADMIN_VIEWS_N_ITEMS_FAILED_PUBLISHING="%s Components Admin Views failed publishing."
COM_COMPONENTBUILDER_COMPONENTS_ADMIN_VIEWS_N_ITEMS_FAILED_PUBLISHING_1="%s Component Admin Views failed publishing."
COM_COMPONENTBUILDER_COMPONENTS_ADMIN_VIEWS_N_ITEMS_FEATURED="%s Components Admin Views featured." COM_COMPONENTBUILDER_COMPONENTS_ADMIN_VIEWS_N_ITEMS_FEATURED="%s Components Admin Views featured."
COM_COMPONENTBUILDER_COMPONENTS_ADMIN_VIEWS_N_ITEMS_FEATURED_1="%s Component Admin Views featured." COM_COMPONENTBUILDER_COMPONENTS_ADMIN_VIEWS_N_ITEMS_FEATURED_1="%s Component Admin Views featured."
COM_COMPONENTBUILDER_COMPONENTS_ADMIN_VIEWS_N_ITEMS_PUBLISHED="%s Components Admin Views published." COM_COMPONENTBUILDER_COMPONENTS_ADMIN_VIEWS_N_ITEMS_PUBLISHED="%s Components Admin Views published."
@@ -1825,6 +1844,8 @@ COM_COMPONENTBUILDER_COMPONENTS_CONFIG_N_ITEMS_CHECKED_IN_1="%d Component Config
COM_COMPONENTBUILDER_COMPONENTS_CONFIG_N_ITEMS_CHECKED_IN_MORE="%d Components Config successfully checked in." COM_COMPONENTBUILDER_COMPONENTS_CONFIG_N_ITEMS_CHECKED_IN_MORE="%d Components Config successfully checked in."
COM_COMPONENTBUILDER_COMPONENTS_CONFIG_N_ITEMS_DELETED="%s Components Config deleted." COM_COMPONENTBUILDER_COMPONENTS_CONFIG_N_ITEMS_DELETED="%s Components Config deleted."
COM_COMPONENTBUILDER_COMPONENTS_CONFIG_N_ITEMS_DELETED_1="%s Component Config deleted." COM_COMPONENTBUILDER_COMPONENTS_CONFIG_N_ITEMS_DELETED_1="%s Component Config deleted."
COM_COMPONENTBUILDER_COMPONENTS_CONFIG_N_ITEMS_FAILED_PUBLISHING="%s Components Config failed publishing."
COM_COMPONENTBUILDER_COMPONENTS_CONFIG_N_ITEMS_FAILED_PUBLISHING_1="%s Component Config failed publishing."
COM_COMPONENTBUILDER_COMPONENTS_CONFIG_N_ITEMS_FEATURED="%s Components Config featured." COM_COMPONENTBUILDER_COMPONENTS_CONFIG_N_ITEMS_FEATURED="%s Components Config featured."
COM_COMPONENTBUILDER_COMPONENTS_CONFIG_N_ITEMS_FEATURED_1="%s Component Config featured." COM_COMPONENTBUILDER_COMPONENTS_CONFIG_N_ITEMS_FEATURED_1="%s Component Config featured."
COM_COMPONENTBUILDER_COMPONENTS_CONFIG_N_ITEMS_PUBLISHED="%s Components Config published." COM_COMPONENTBUILDER_COMPONENTS_CONFIG_N_ITEMS_PUBLISHED="%s Components Config published."
@@ -1865,6 +1886,8 @@ COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_MENUS_N_ITEMS_CHECKED_IN_1="%d Comp
COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_MENUS_N_ITEMS_CHECKED_IN_MORE="%d Components Custom Admin Menus successfully checked in." COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_MENUS_N_ITEMS_CHECKED_IN_MORE="%d Components Custom Admin Menus successfully checked in."
COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_MENUS_N_ITEMS_DELETED="%s Components Custom Admin Menus deleted." COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_MENUS_N_ITEMS_DELETED="%s Components Custom Admin Menus deleted."
COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_MENUS_N_ITEMS_DELETED_1="%s Component Custom Admin Menus deleted." COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_MENUS_N_ITEMS_DELETED_1="%s Component Custom Admin Menus deleted."
COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_MENUS_N_ITEMS_FAILED_PUBLISHING="%s Components Custom Admin Menus failed publishing."
COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_MENUS_N_ITEMS_FAILED_PUBLISHING_1="%s Component Custom Admin Menus failed publishing."
COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_MENUS_N_ITEMS_FEATURED="%s Components Custom Admin Menus featured." COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_MENUS_N_ITEMS_FEATURED="%s Components Custom Admin Menus featured."
COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_MENUS_N_ITEMS_FEATURED_1="%s Component Custom Admin Menus featured." COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_MENUS_N_ITEMS_FEATURED_1="%s Component Custom Admin Menus featured."
COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_MENUS_N_ITEMS_PUBLISHED="%s Components Custom Admin Menus published." COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_MENUS_N_ITEMS_PUBLISHED="%s Components Custom Admin Menus published."
@@ -1905,6 +1928,8 @@ COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_VIEWS_N_ITEMS_CHECKED_IN_1="%d Comp
COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_VIEWS_N_ITEMS_CHECKED_IN_MORE="%d Components Custom Admin Views successfully checked in." COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_VIEWS_N_ITEMS_CHECKED_IN_MORE="%d Components Custom Admin Views successfully checked in."
COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_VIEWS_N_ITEMS_DELETED="%s Components Custom Admin Views deleted." COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_VIEWS_N_ITEMS_DELETED="%s Components Custom Admin Views deleted."
COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_VIEWS_N_ITEMS_DELETED_1="%s Component Custom Admin Views deleted." COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_VIEWS_N_ITEMS_DELETED_1="%s Component Custom Admin Views deleted."
COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_VIEWS_N_ITEMS_FAILED_PUBLISHING="%s Components Custom Admin Views failed publishing."
COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_VIEWS_N_ITEMS_FAILED_PUBLISHING_1="%s Component Custom Admin Views failed publishing."
COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_VIEWS_N_ITEMS_FEATURED="%s Components Custom Admin Views featured." COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_VIEWS_N_ITEMS_FEATURED="%s Components Custom Admin Views featured."
COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_VIEWS_N_ITEMS_FEATURED_1="%s Component Custom Admin Views featured." COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_VIEWS_N_ITEMS_FEATURED_1="%s Component Custom Admin Views featured."
COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_VIEWS_N_ITEMS_PUBLISHED="%s Components Custom Admin Views published." COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_VIEWS_N_ITEMS_PUBLISHED="%s Components Custom Admin Views published."
@@ -1945,6 +1970,8 @@ COM_COMPONENTBUILDER_COMPONENTS_DASHBOARD_N_ITEMS_CHECKED_IN_1="%d Component Das
COM_COMPONENTBUILDER_COMPONENTS_DASHBOARD_N_ITEMS_CHECKED_IN_MORE="%d Components Dashboard successfully checked in." COM_COMPONENTBUILDER_COMPONENTS_DASHBOARD_N_ITEMS_CHECKED_IN_MORE="%d Components Dashboard successfully checked in."
COM_COMPONENTBUILDER_COMPONENTS_DASHBOARD_N_ITEMS_DELETED="%s Components Dashboard deleted." COM_COMPONENTBUILDER_COMPONENTS_DASHBOARD_N_ITEMS_DELETED="%s Components Dashboard deleted."
COM_COMPONENTBUILDER_COMPONENTS_DASHBOARD_N_ITEMS_DELETED_1="%s Component Dashboard deleted." COM_COMPONENTBUILDER_COMPONENTS_DASHBOARD_N_ITEMS_DELETED_1="%s Component Dashboard deleted."
COM_COMPONENTBUILDER_COMPONENTS_DASHBOARD_N_ITEMS_FAILED_PUBLISHING="%s Components Dashboard failed publishing."
COM_COMPONENTBUILDER_COMPONENTS_DASHBOARD_N_ITEMS_FAILED_PUBLISHING_1="%s Component Dashboard failed publishing."
COM_COMPONENTBUILDER_COMPONENTS_DASHBOARD_N_ITEMS_FEATURED="%s Components Dashboard featured." COM_COMPONENTBUILDER_COMPONENTS_DASHBOARD_N_ITEMS_FEATURED="%s Components Dashboard featured."
COM_COMPONENTBUILDER_COMPONENTS_DASHBOARD_N_ITEMS_FEATURED_1="%s Component Dashboard featured." COM_COMPONENTBUILDER_COMPONENTS_DASHBOARD_N_ITEMS_FEATURED_1="%s Component Dashboard featured."
COM_COMPONENTBUILDER_COMPONENTS_DASHBOARD_N_ITEMS_PUBLISHED="%s Components Dashboard published." COM_COMPONENTBUILDER_COMPONENTS_DASHBOARD_N_ITEMS_PUBLISHED="%s Components Dashboard published."
@@ -1985,6 +2012,8 @@ COM_COMPONENTBUILDER_COMPONENTS_FILES_FOLDERS_N_ITEMS_CHECKED_IN_1="%d Component
COM_COMPONENTBUILDER_COMPONENTS_FILES_FOLDERS_N_ITEMS_CHECKED_IN_MORE="%d Components Files & Folders successfully checked in." COM_COMPONENTBUILDER_COMPONENTS_FILES_FOLDERS_N_ITEMS_CHECKED_IN_MORE="%d Components Files & Folders successfully checked in."
COM_COMPONENTBUILDER_COMPONENTS_FILES_FOLDERS_N_ITEMS_DELETED="%s Components Files & Folders deleted." COM_COMPONENTBUILDER_COMPONENTS_FILES_FOLDERS_N_ITEMS_DELETED="%s Components Files & Folders deleted."
COM_COMPONENTBUILDER_COMPONENTS_FILES_FOLDERS_N_ITEMS_DELETED_1="%s Component Files & Folders deleted." COM_COMPONENTBUILDER_COMPONENTS_FILES_FOLDERS_N_ITEMS_DELETED_1="%s Component Files & Folders deleted."
COM_COMPONENTBUILDER_COMPONENTS_FILES_FOLDERS_N_ITEMS_FAILED_PUBLISHING="%s Components Files & Folders failed publishing."
COM_COMPONENTBUILDER_COMPONENTS_FILES_FOLDERS_N_ITEMS_FAILED_PUBLISHING_1="%s Component Files & Folders failed publishing."
COM_COMPONENTBUILDER_COMPONENTS_FILES_FOLDERS_N_ITEMS_FEATURED="%s Components Files & Folders featured." COM_COMPONENTBUILDER_COMPONENTS_FILES_FOLDERS_N_ITEMS_FEATURED="%s Components Files & Folders featured."
COM_COMPONENTBUILDER_COMPONENTS_FILES_FOLDERS_N_ITEMS_FEATURED_1="%s Component Files & Folders featured." COM_COMPONENTBUILDER_COMPONENTS_FILES_FOLDERS_N_ITEMS_FEATURED_1="%s Component Files & Folders featured."
COM_COMPONENTBUILDER_COMPONENTS_FILES_FOLDERS_N_ITEMS_PUBLISHED="%s Components Files & Folders published." COM_COMPONENTBUILDER_COMPONENTS_FILES_FOLDERS_N_ITEMS_PUBLISHED="%s Components Files & Folders published."
@@ -2025,6 +2054,8 @@ COM_COMPONENTBUILDER_COMPONENTS_MODULES_N_ITEMS_CHECKED_IN_1="%d Component Modul
COM_COMPONENTBUILDER_COMPONENTS_MODULES_N_ITEMS_CHECKED_IN_MORE="%d Components Modules successfully checked in." COM_COMPONENTBUILDER_COMPONENTS_MODULES_N_ITEMS_CHECKED_IN_MORE="%d Components Modules successfully checked in."
COM_COMPONENTBUILDER_COMPONENTS_MODULES_N_ITEMS_DELETED="%s Components Modules deleted." COM_COMPONENTBUILDER_COMPONENTS_MODULES_N_ITEMS_DELETED="%s Components Modules deleted."
COM_COMPONENTBUILDER_COMPONENTS_MODULES_N_ITEMS_DELETED_1="%s Component Modules deleted." COM_COMPONENTBUILDER_COMPONENTS_MODULES_N_ITEMS_DELETED_1="%s Component Modules deleted."
COM_COMPONENTBUILDER_COMPONENTS_MODULES_N_ITEMS_FAILED_PUBLISHING="%s Components Modules failed publishing."
COM_COMPONENTBUILDER_COMPONENTS_MODULES_N_ITEMS_FAILED_PUBLISHING_1="%s Component Modules failed publishing."
COM_COMPONENTBUILDER_COMPONENTS_MODULES_N_ITEMS_FEATURED="%s Components Modules featured." COM_COMPONENTBUILDER_COMPONENTS_MODULES_N_ITEMS_FEATURED="%s Components Modules featured."
COM_COMPONENTBUILDER_COMPONENTS_MODULES_N_ITEMS_FEATURED_1="%s Component Modules featured." COM_COMPONENTBUILDER_COMPONENTS_MODULES_N_ITEMS_FEATURED_1="%s Component Modules featured."
COM_COMPONENTBUILDER_COMPONENTS_MODULES_N_ITEMS_PUBLISHED="%s Components Modules published." COM_COMPONENTBUILDER_COMPONENTS_MODULES_N_ITEMS_PUBLISHED="%s Components Modules published."
@@ -2065,6 +2096,8 @@ COM_COMPONENTBUILDER_COMPONENTS_MYSQL_TWEAKS_N_ITEMS_CHECKED_IN_1="%d Component
COM_COMPONENTBUILDER_COMPONENTS_MYSQL_TWEAKS_N_ITEMS_CHECKED_IN_MORE="%d Components mysql Tweaks successfully checked in." COM_COMPONENTBUILDER_COMPONENTS_MYSQL_TWEAKS_N_ITEMS_CHECKED_IN_MORE="%d Components mysql Tweaks successfully checked in."
COM_COMPONENTBUILDER_COMPONENTS_MYSQL_TWEAKS_N_ITEMS_DELETED="%s Components mysql Tweaks deleted." COM_COMPONENTBUILDER_COMPONENTS_MYSQL_TWEAKS_N_ITEMS_DELETED="%s Components mysql Tweaks deleted."
COM_COMPONENTBUILDER_COMPONENTS_MYSQL_TWEAKS_N_ITEMS_DELETED_1="%s Component mysql Tweaks deleted." COM_COMPONENTBUILDER_COMPONENTS_MYSQL_TWEAKS_N_ITEMS_DELETED_1="%s Component mysql Tweaks deleted."
COM_COMPONENTBUILDER_COMPONENTS_MYSQL_TWEAKS_N_ITEMS_FAILED_PUBLISHING="%s Components mysql Tweaks failed publishing."
COM_COMPONENTBUILDER_COMPONENTS_MYSQL_TWEAKS_N_ITEMS_FAILED_PUBLISHING_1="%s Component mysql Tweaks failed publishing."
COM_COMPONENTBUILDER_COMPONENTS_MYSQL_TWEAKS_N_ITEMS_FEATURED="%s Components mysql Tweaks featured." COM_COMPONENTBUILDER_COMPONENTS_MYSQL_TWEAKS_N_ITEMS_FEATURED="%s Components mysql Tweaks featured."
COM_COMPONENTBUILDER_COMPONENTS_MYSQL_TWEAKS_N_ITEMS_FEATURED_1="%s Component mysql Tweaks featured." COM_COMPONENTBUILDER_COMPONENTS_MYSQL_TWEAKS_N_ITEMS_FEATURED_1="%s Component mysql Tweaks featured."
COM_COMPONENTBUILDER_COMPONENTS_MYSQL_TWEAKS_N_ITEMS_PUBLISHED="%s Components mysql Tweaks published." COM_COMPONENTBUILDER_COMPONENTS_MYSQL_TWEAKS_N_ITEMS_PUBLISHED="%s Components mysql Tweaks published."
@@ -2105,6 +2138,8 @@ COM_COMPONENTBUILDER_COMPONENTS_PLACEHOLDERS_N_ITEMS_CHECKED_IN_1="%d Component
COM_COMPONENTBUILDER_COMPONENTS_PLACEHOLDERS_N_ITEMS_CHECKED_IN_MORE="%d Components Placeholders successfully checked in." COM_COMPONENTBUILDER_COMPONENTS_PLACEHOLDERS_N_ITEMS_CHECKED_IN_MORE="%d Components Placeholders successfully checked in."
COM_COMPONENTBUILDER_COMPONENTS_PLACEHOLDERS_N_ITEMS_DELETED="%s Components Placeholders deleted." COM_COMPONENTBUILDER_COMPONENTS_PLACEHOLDERS_N_ITEMS_DELETED="%s Components Placeholders deleted."
COM_COMPONENTBUILDER_COMPONENTS_PLACEHOLDERS_N_ITEMS_DELETED_1="%s Component Placeholders deleted." COM_COMPONENTBUILDER_COMPONENTS_PLACEHOLDERS_N_ITEMS_DELETED_1="%s Component Placeholders deleted."
COM_COMPONENTBUILDER_COMPONENTS_PLACEHOLDERS_N_ITEMS_FAILED_PUBLISHING="%s Components Placeholders failed publishing."
COM_COMPONENTBUILDER_COMPONENTS_PLACEHOLDERS_N_ITEMS_FAILED_PUBLISHING_1="%s Component Placeholders failed publishing."
COM_COMPONENTBUILDER_COMPONENTS_PLACEHOLDERS_N_ITEMS_FEATURED="%s Components Placeholders featured." COM_COMPONENTBUILDER_COMPONENTS_PLACEHOLDERS_N_ITEMS_FEATURED="%s Components Placeholders featured."
COM_COMPONENTBUILDER_COMPONENTS_PLACEHOLDERS_N_ITEMS_FEATURED_1="%s Component Placeholders featured." COM_COMPONENTBUILDER_COMPONENTS_PLACEHOLDERS_N_ITEMS_FEATURED_1="%s Component Placeholders featured."
COM_COMPONENTBUILDER_COMPONENTS_PLACEHOLDERS_N_ITEMS_PUBLISHED="%s Components Placeholders published." COM_COMPONENTBUILDER_COMPONENTS_PLACEHOLDERS_N_ITEMS_PUBLISHED="%s Components Placeholders published."
@@ -2145,6 +2180,8 @@ COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_N_ITEMS_CHECKED_IN_1="%d Component Plugi
COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_N_ITEMS_CHECKED_IN_MORE="%d Components Plugins successfully checked in." COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_N_ITEMS_CHECKED_IN_MORE="%d Components Plugins successfully checked in."
COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_N_ITEMS_DELETED="%s Components Plugins deleted." COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_N_ITEMS_DELETED="%s Components Plugins deleted."
COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_N_ITEMS_DELETED_1="%s Component Plugins deleted." COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_N_ITEMS_DELETED_1="%s Component Plugins deleted."
COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_N_ITEMS_FAILED_PUBLISHING="%s Components Plugins failed publishing."
COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_N_ITEMS_FAILED_PUBLISHING_1="%s Component Plugins failed publishing."
COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_N_ITEMS_FEATURED="%s Components Plugins featured." COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_N_ITEMS_FEATURED="%s Components Plugins featured."
COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_N_ITEMS_FEATURED_1="%s Component Plugins featured." COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_N_ITEMS_FEATURED_1="%s Component Plugins featured."
COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_N_ITEMS_PUBLISHED="%s Components Plugins published." COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_N_ITEMS_PUBLISHED="%s Components Plugins published."
@@ -2185,6 +2222,8 @@ COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_N_ITEMS_CHECKED_IN_1="%d Component Si
COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_N_ITEMS_CHECKED_IN_MORE="%d Components Site Views successfully checked in." COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_N_ITEMS_CHECKED_IN_MORE="%d Components Site Views successfully checked in."
COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_N_ITEMS_DELETED="%s Components Site Views deleted." COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_N_ITEMS_DELETED="%s Components Site Views deleted."
COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_N_ITEMS_DELETED_1="%s Component Site Views deleted." COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_N_ITEMS_DELETED_1="%s Component Site Views deleted."
COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_N_ITEMS_FAILED_PUBLISHING="%s Components Site Views failed publishing."
COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_N_ITEMS_FAILED_PUBLISHING_1="%s Component Site Views failed publishing."
COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_N_ITEMS_FEATURED="%s Components Site Views featured." COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_N_ITEMS_FEATURED="%s Components Site Views featured."
COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_N_ITEMS_FEATURED_1="%s Component Site Views featured." COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_N_ITEMS_FEATURED_1="%s Component Site Views featured."
COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_N_ITEMS_PUBLISHED="%s Components Site Views published." COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_N_ITEMS_PUBLISHED="%s Components Site Views published."
@@ -2225,6 +2264,8 @@ COM_COMPONENTBUILDER_COMPONENTS_UPDATES_N_ITEMS_CHECKED_IN_1="%d Component Updat
COM_COMPONENTBUILDER_COMPONENTS_UPDATES_N_ITEMS_CHECKED_IN_MORE="%d Components Updates successfully checked in." COM_COMPONENTBUILDER_COMPONENTS_UPDATES_N_ITEMS_CHECKED_IN_MORE="%d Components Updates successfully checked in."
COM_COMPONENTBUILDER_COMPONENTS_UPDATES_N_ITEMS_DELETED="%s Components Updates deleted." COM_COMPONENTBUILDER_COMPONENTS_UPDATES_N_ITEMS_DELETED="%s Components Updates deleted."
COM_COMPONENTBUILDER_COMPONENTS_UPDATES_N_ITEMS_DELETED_1="%s Component Updates deleted." COM_COMPONENTBUILDER_COMPONENTS_UPDATES_N_ITEMS_DELETED_1="%s Component Updates deleted."
COM_COMPONENTBUILDER_COMPONENTS_UPDATES_N_ITEMS_FAILED_PUBLISHING="%s Components Updates failed publishing."
COM_COMPONENTBUILDER_COMPONENTS_UPDATES_N_ITEMS_FAILED_PUBLISHING_1="%s Component Updates failed publishing."
COM_COMPONENTBUILDER_COMPONENTS_UPDATES_N_ITEMS_FEATURED="%s Components Updates featured." COM_COMPONENTBUILDER_COMPONENTS_UPDATES_N_ITEMS_FEATURED="%s Components Updates featured."
COM_COMPONENTBUILDER_COMPONENTS_UPDATES_N_ITEMS_FEATURED_1="%s Component Updates featured." COM_COMPONENTBUILDER_COMPONENTS_UPDATES_N_ITEMS_FEATURED_1="%s Component Updates featured."
COM_COMPONENTBUILDER_COMPONENTS_UPDATES_N_ITEMS_PUBLISHED="%s Components Updates published." COM_COMPONENTBUILDER_COMPONENTS_UPDATES_N_ITEMS_PUBLISHED="%s Components Updates published."
@@ -3234,6 +3275,10 @@ COM_COMPONENTBUILDER_CONDITIONS="Conditions"
COM_COMPONENTBUILDER_CONFIG_ACTIVE="Active" COM_COMPONENTBUILDER_CONFIG_ACTIVE="Active"
COM_COMPONENTBUILDER_CONFIG_ADD_MENU_PREFIX_DESCRIPTION="Would you like to add a prefix to the Joomla menu name of your components" COM_COMPONENTBUILDER_CONFIG_ADD_MENU_PREFIX_DESCRIPTION="Would you like to add a prefix to the Joomla menu name of your components"
COM_COMPONENTBUILDER_CONFIG_ADD_MENU_PREFIX_LABEL="Add Menu Prefix" COM_COMPONENTBUILDER_CONFIG_ADD_MENU_PREFIX_LABEL="Add Menu Prefix"
COM_COMPONENTBUILDER_CONFIG_ADMIN_CUSTOM_TABS_TABS="Admin Custom Tabs (tabs)"
COM_COMPONENTBUILDER_CONFIG_ADMIN_FIELDS_ADDFIELDS="Admin Fields (addfields)"
COM_COMPONENTBUILDER_CONFIG_ADMIN_FIELDS_CONDITIONS_ADDCONDITIONS="Admin Fields Conditions (addconditions)"
COM_COMPONENTBUILDER_CONFIG_ADMIN_FIELDS_RELATIONS_ADDRELATIONS="Admin Fields Relations (addrelations)"
COM_COMPONENTBUILDER_CONFIG_ALMOST_FLAT_LOAD="Almost Flat" COM_COMPONENTBUILDER_CONFIG_ALMOST_FLAT_LOAD="Almost Flat"
COM_COMPONENTBUILDER_CONFIG_ALPHANUMERIC="Alphanumeric" COM_COMPONENTBUILDER_CONFIG_ALPHANUMERIC="Alphanumeric"
COM_COMPONENTBUILDER_CONFIG_ALPHANUMERICDOT="Alphanumeric+dot" COM_COMPONENTBUILDER_CONFIG_ALPHANUMERICDOT="Alphanumeric+dot"
@@ -3335,7 +3380,10 @@ COM_COMPONENTBUILDER_CONFIG_COMPILER_FOLDER_PATH_MESSAGE="Error! Please add some
COM_COMPONENTBUILDER_CONFIG_COMPILER_PLUGIN_DESCRIPTION="Select the plugin you would like to use in JCB's compiler" COM_COMPONENTBUILDER_CONFIG_COMPILER_PLUGIN_DESCRIPTION="Select the plugin you would like to use in JCB's compiler"
COM_COMPONENTBUILDER_CONFIG_COMPILER_PLUGIN_LABEL="Activate Compiler Plugins" COM_COMPONENTBUILDER_CONFIG_COMPILER_PLUGIN_LABEL="Activate Compiler Plugins"
COM_COMPONENTBUILDER_CONFIG_COMPONENT="Component" COM_COMPONENTBUILDER_CONFIG_COMPONENT="Component"
COM_COMPONENTBUILDER_CONFIG_COMPONENT_ADMIN_VIEWS_ADDADMIN_VIEWS="Component Admin Views (addadmin_views)"
COM_COMPONENTBUILDER_CONFIG_COMPONENT_CUSTOM_ADMIN_VIEWS_ADDCUSTOM_ADMIN_VIEWS="Component Custom Admin Views (addcustom_admin_views)"
COM_COMPONENTBUILDER_CONFIG_COMPONENT_LABEL="Component" COM_COMPONENTBUILDER_CONFIG_COMPONENT_LABEL="Component"
COM_COMPONENTBUILDER_CONFIG_COMPONENT_SITE_VIEWS_ADDSITE_VIEWS="Component Site Views (addsite_views)"
COM_COMPONENTBUILDER_CONFIG_CRONJOB_BACKUP_FOLDER_PATH_DESCRIPTION="Here you can set the path to where all components are backed up to." COM_COMPONENTBUILDER_CONFIG_CRONJOB_BACKUP_FOLDER_PATH_DESCRIPTION="Here you can set the path to where all components are backed up to."
COM_COMPONENTBUILDER_CONFIG_CRONJOB_BACKUP_FOLDER_PATH_HINT="/home/user/fullbackup" COM_COMPONENTBUILDER_CONFIG_CRONJOB_BACKUP_FOLDER_PATH_HINT="/home/user/fullbackup"
COM_COMPONENTBUILDER_CONFIG_CRONJOB_BACKUP_FOLDER_PATH_LABEL="Cronjob Backup Folder Path" COM_COMPONENTBUILDER_CONFIG_CRONJOB_BACKUP_FOLDER_PATH_LABEL="Cronjob Backup Folder Path"
@@ -3378,6 +3426,8 @@ COM_COMPONENTBUILDER_CONFIG_DKIM_VALUE_DESCRIPTION="This is the TXT value to use
COM_COMPONENTBUILDER_CONFIG_DKIM_VALUE_HINT="v=DKIM1;k=rsa;g=*;s=email;h=sha1;t=s;p=PUBLICKEY" COM_COMPONENTBUILDER_CONFIG_DKIM_VALUE_HINT="v=DKIM1;k=rsa;g=*;s=email;h=sha1;t=s;p=PUBLICKEY"
COM_COMPONENTBUILDER_CONFIG_DKIM_VALUE_LABEL="Value" COM_COMPONENTBUILDER_CONFIG_DKIM_VALUE_LABEL="Value"
COM_COMPONENTBUILDER_CONFIG_DONT_LOAD="Not" COM_COMPONENTBUILDER_CONFIG_DONT_LOAD="Not"
COM_COMPONENTBUILDER_CONFIG_DYNAMIC_GET_JOIN_DB_TABLE="Dynamic Get (join_db_table)"
COM_COMPONENTBUILDER_CONFIG_DYNAMIC_GET_JOIN_VIEW_TABLE="Dynamic Get (join_view_table)"
COM_COMPONENTBUILDER_CONFIG_EDITOR_DESCRIPTION="Select the editor you would like to use as the JCB global editor for all custom coding areas." COM_COMPONENTBUILDER_CONFIG_EDITOR_DESCRIPTION="Select the editor you would like to use as the JCB global editor for all custom coding areas."
COM_COMPONENTBUILDER_CONFIG_EDITOR_LABEL="Select an editor" COM_COMPONENTBUILDER_CONFIG_EDITOR_LABEL="Select an editor"
COM_COMPONENTBUILDER_CONFIG_EMAILFROM_DESCRIPTION="The global email address that will be used to send system email." COM_COMPONENTBUILDER_CONFIG_EMAILFROM_DESCRIPTION="The global email address that will be used to send system email."
@@ -3446,6 +3496,8 @@ COM_COMPONENTBUILDER_CONFIG_EXPORT_EMAIL_DESCRIPTION="Enter Email"
COM_COMPONENTBUILDER_CONFIG_EXPORT_EMAIL_HINT="Email Here" COM_COMPONENTBUILDER_CONFIG_EXPORT_EMAIL_HINT="Email Here"
COM_COMPONENTBUILDER_CONFIG_EXPORT_EMAIL_LABEL="Email" COM_COMPONENTBUILDER_CONFIG_EXPORT_EMAIL_LABEL="Email"
COM_COMPONENTBUILDER_CONFIG_EXPORT_EMAIL_MESSAGE="Error! Please email address here." COM_COMPONENTBUILDER_CONFIG_EXPORT_EMAIL_MESSAGE="Error! Please email address here."
COM_COMPONENTBUILDER_CONFIG_EXPORT_LANGUAGE_STRINGS_DESCRIPTION="All the export of language strings during JCB package export."
COM_COMPONENTBUILDER_CONFIG_EXPORT_LANGUAGE_STRINGS_LABEL="Export Language Strings"
COM_COMPONENTBUILDER_CONFIG_EXPORT_LICENSE_DESCRIPTION="Add License Here" COM_COMPONENTBUILDER_CONFIG_EXPORT_LICENSE_DESCRIPTION="Add License Here"
COM_COMPONENTBUILDER_CONFIG_EXPORT_LICENSE_HINT="Add License Here" COM_COMPONENTBUILDER_CONFIG_EXPORT_LICENSE_HINT="Add License Here"
COM_COMPONENTBUILDER_CONFIG_EXPORT_LICENSE_LABEL="License" COM_COMPONENTBUILDER_CONFIG_EXPORT_LICENSE_LABEL="License"
@@ -3485,6 +3537,7 @@ COM_COMPONENTBUILDER_CONFIG_JCB_COMMUNITY_PACKAGES="JCB Community Packages"
COM_COMPONENTBUILDER_CONFIG_JCB_PACKAGE_DIRECTORIES_DESCRIPTION="Here you can manage what package directories show in the JCB package import area." COM_COMPONENTBUILDER_CONFIG_JCB_PACKAGE_DIRECTORIES_DESCRIPTION="Here you can manage what package directories show in the JCB package import area."
COM_COMPONENTBUILDER_CONFIG_JCB_PACKAGE_DIRECTORIES_LABEL="Directories" COM_COMPONENTBUILDER_CONFIG_JCB_PACKAGE_DIRECTORIES_LABEL="Directories"
COM_COMPONENTBUILDER_CONFIG_LANGUAGE_LABEL="Language" COM_COMPONENTBUILDER_CONFIG_LANGUAGE_LABEL="Language"
COM_COMPONENTBUILDER_CONFIG_LAYOUT_LABEL="Layout"
COM_COMPONENTBUILDER_CONFIG_LOCAL_FOLDER="Local Folder" COM_COMPONENTBUILDER_CONFIG_LOCAL_FOLDER="Local Folder"
COM_COMPONENTBUILDER_CONFIG_MAILER_DESCRIPTION="Select what mailer you would like to use to send emails." COM_COMPONENTBUILDER_CONFIG_MAILER_DESCRIPTION="Select what mailer you would like to use to send emails."
COM_COMPONENTBUILDER_CONFIG_MAILER_LABEL="Mailer" COM_COMPONENTBUILDER_CONFIG_MAILER_LABEL="Mailer"
@@ -3567,6 +3620,9 @@ COM_COMPONENTBUILDER_CONFIG_PHP_MAIL="PHP Mail"
COM_COMPONENTBUILDER_CONFIG_PLACEHOLDERS_DESCRIPTION="Should JCB insert the custom code placeholders? This is only applicable if this component has custom code." COM_COMPONENTBUILDER_CONFIG_PLACEHOLDERS_DESCRIPTION="Should JCB insert the custom code placeholders? This is only applicable if this component has custom code."
COM_COMPONENTBUILDER_CONFIG_PLACEHOLDERS_LABEL="Add Custom Code Placeholders" COM_COMPONENTBUILDER_CONFIG_PLACEHOLDERS_LABEL="Add Custom Code Placeholders"
COM_COMPONENTBUILDER_CONFIG_REMOTE_SERVER="Remote Server" COM_COMPONENTBUILDER_CONFIG_REMOTE_SERVER="Remote Server"
COM_COMPONENTBUILDER_CONFIG_REPEATABLETABLE_JOOMLA="Repeatable-table (joomla)"
COM_COMPONENTBUILDER_CONFIG_REPEATABLE_JOOMLA="Repeatable (Joomla)"
COM_COMPONENTBUILDER_CONFIG_REPEATABLE_UIKIT="Repeatable (UIkit)"
COM_COMPONENTBUILDER_CONFIG_REPLYNAME_DESCRIPTION="Text displayed in the header &quot;Reply To:&quot; field when replying to the site email. Usually the the person that receives the response. (leave blank for none)" COM_COMPONENTBUILDER_CONFIG_REPLYNAME_DESCRIPTION="Text displayed in the header &quot;Reply To:&quot; field when replying to the site email. Usually the the person that receives the response. (leave blank for none)"
COM_COMPONENTBUILDER_CONFIG_REPLYNAME_HINT="Reply Name Here" COM_COMPONENTBUILDER_CONFIG_REPLYNAME_HINT="Reply Name Here"
COM_COMPONENTBUILDER_CONFIG_REPLYNAME_LABEL="Reply to Name" COM_COMPONENTBUILDER_CONFIG_REPLYNAME_LABEL="Reply to Name"
@@ -3602,6 +3658,8 @@ COM_COMPONENTBUILDER_CONFIG_SSL="SSL"
COM_COMPONENTBUILDER_CONFIG_STORAGE_TIME_TO_LIVE_DESCRIPTION="How long should the data that is stored in the browser memory remain unchanged before it is removed and updated." COM_COMPONENTBUILDER_CONFIG_STORAGE_TIME_TO_LIVE_DESCRIPTION="How long should the data that is stored in the browser memory remain unchanged before it is removed and updated."
COM_COMPONENTBUILDER_CONFIG_STORAGE_TIME_TO_LIVE_LABEL="Update Cycle" COM_COMPONENTBUILDER_CONFIG_STORAGE_TIME_TO_LIVE_LABEL="Update Cycle"
COM_COMPONENTBUILDER_CONFIG_STRING_MANIPULATION="String Manipulation" COM_COMPONENTBUILDER_CONFIG_STRING_MANIPULATION="String Manipulation"
COM_COMPONENTBUILDER_CONFIG_SUBFORM_LAYOUTS_DESCRIPTION="Select the sub-form layouts you would like to use."
COM_COMPONENTBUILDER_CONFIG_SUBFORM_LAYOUTS_LABEL="Sub-form Layouts"
COM_COMPONENTBUILDER_CONFIG_TLS="TLS" COM_COMPONENTBUILDER_CONFIG_TLS="TLS"
COM_COMPONENTBUILDER_CONFIG_TRUE="True" COM_COMPONENTBUILDER_CONFIG_TRUE="True"
COM_COMPONENTBUILDER_CONFIG_TYPE_NAME_BUILDER_DESCRIPTION="The default option only uses alphabetical characters and converts all numbers in field names to the English equivalent like <em>1</em> becomes <b>one</b>.<br />Alphanumeric+dot keeps the numbers unconverted unless it is at the beginning of the field name, and allows for a dot (.) to be used in the type name for namespacing." COM_COMPONENTBUILDER_CONFIG_TYPE_NAME_BUILDER_DESCRIPTION="The default option only uses alphabetical characters and converts all numbers in field names to the English equivalent like <em>1</em> becomes <b>one</b>.<br />Alphanumeric+dot keeps the numbers unconverted unless it is at the beginning of the field name, and allows for a dot (.) to be used in the type name for namespacing."
@@ -3616,6 +3674,7 @@ COM_COMPONENTBUILDER_CONFIG_UIKIT_MIN_LABEL="Load Minified"
COM_COMPONENTBUILDER_CONFIG_UIKIT_STYLE_DESC="Set the css style that should be used." COM_COMPONENTBUILDER_CONFIG_UIKIT_STYLE_DESC="Set the css style that should be used."
COM_COMPONENTBUILDER_CONFIG_UIKIT_STYLE_LABEL="css Style" COM_COMPONENTBUILDER_CONFIG_UIKIT_STYLE_LABEL="css Style"
COM_COMPONENTBUILDER_CONFIG_VDM_PACKAGES="VDM Packages" COM_COMPONENTBUILDER_CONFIG_VDM_PACKAGES="VDM Packages"
COM_COMPONENTBUILDER_CONFIG_VIEW_FIELD_LABEL="View & Field"
COM_COMPONENTBUILDER_CONFIG_YES="Yes" COM_COMPONENTBUILDER_CONFIG_YES="Yes"
COM_COMPONENTBUILDER_CONFIRMATION_STEP_BEFORE_IMPORTING="Confirmation Step Before Importing!" COM_COMPONENTBUILDER_CONFIRMATION_STEP_BEFORE_IMPORTING="Confirmation Step Before Importing!"
COM_COMPONENTBUILDER_CONTEXT="Context" COM_COMPONENTBUILDER_CONTEXT="Context"
@@ -3669,6 +3728,8 @@ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_N_ITEMS_CHECKED_IN_1="%d Custom Admin Vi
COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_N_ITEMS_CHECKED_IN_MORE="%d Custom Admin Views successfully checked in." COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_N_ITEMS_CHECKED_IN_MORE="%d Custom Admin Views successfully checked in."
COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_N_ITEMS_DELETED="%s Custom Admin Views deleted." COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_N_ITEMS_DELETED="%s Custom Admin Views deleted."
COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_N_ITEMS_DELETED_1="%s Custom Admin View deleted." COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_N_ITEMS_DELETED_1="%s Custom Admin View deleted."
COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_N_ITEMS_FAILED_PUBLISHING="%s Custom Admin Views failed publishing."
COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_N_ITEMS_FAILED_PUBLISHING_1="%s Custom Admin View failed publishing."
COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_N_ITEMS_FEATURED="%s Custom Admin Views featured." COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_N_ITEMS_FEATURED="%s Custom Admin Views featured."
COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_N_ITEMS_FEATURED_1="%s Custom Admin View featured." COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_N_ITEMS_FEATURED_1="%s Custom Admin View featured."
COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_N_ITEMS_PUBLISHED="%s Custom Admin Views published." COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_N_ITEMS_PUBLISHED="%s Custom Admin Views published."
@@ -4127,6 +4188,8 @@ COM_COMPONENTBUILDER_CUSTOM_CODES_N_ITEMS_CHECKED_IN_1="%d Custom Code successfu
COM_COMPONENTBUILDER_CUSTOM_CODES_N_ITEMS_CHECKED_IN_MORE="%d Custom Codes successfully checked in." COM_COMPONENTBUILDER_CUSTOM_CODES_N_ITEMS_CHECKED_IN_MORE="%d Custom Codes successfully checked in."
COM_COMPONENTBUILDER_CUSTOM_CODES_N_ITEMS_DELETED="%s Custom Codes deleted." COM_COMPONENTBUILDER_CUSTOM_CODES_N_ITEMS_DELETED="%s Custom Codes deleted."
COM_COMPONENTBUILDER_CUSTOM_CODES_N_ITEMS_DELETED_1="%s Custom Code deleted." COM_COMPONENTBUILDER_CUSTOM_CODES_N_ITEMS_DELETED_1="%s Custom Code deleted."
COM_COMPONENTBUILDER_CUSTOM_CODES_N_ITEMS_FAILED_PUBLISHING="%s Custom Codes failed publishing."
COM_COMPONENTBUILDER_CUSTOM_CODES_N_ITEMS_FAILED_PUBLISHING_1="%s Custom Code failed publishing."
COM_COMPONENTBUILDER_CUSTOM_CODES_N_ITEMS_FEATURED="%s Custom Codes featured." COM_COMPONENTBUILDER_CUSTOM_CODES_N_ITEMS_FEATURED="%s Custom Codes featured."
COM_COMPONENTBUILDER_CUSTOM_CODES_N_ITEMS_FEATURED_1="%s Custom Code featured." COM_COMPONENTBUILDER_CUSTOM_CODES_N_ITEMS_FEATURED_1="%s Custom Code featured."
COM_COMPONENTBUILDER_CUSTOM_CODES_N_ITEMS_PUBLISHED="%s Custom Codes published." COM_COMPONENTBUILDER_CUSTOM_CODES_N_ITEMS_PUBLISHED="%s Custom Codes published."
@@ -4430,6 +4493,8 @@ COM_COMPONENTBUILDER_DYNAMIC_GETS_N_ITEMS_CHECKED_IN_1="%d Dynamic Get successfu
COM_COMPONENTBUILDER_DYNAMIC_GETS_N_ITEMS_CHECKED_IN_MORE="%d Dynamic Gets successfully checked in." COM_COMPONENTBUILDER_DYNAMIC_GETS_N_ITEMS_CHECKED_IN_MORE="%d Dynamic Gets successfully checked in."
COM_COMPONENTBUILDER_DYNAMIC_GETS_N_ITEMS_DELETED="%s Dynamic Gets deleted." COM_COMPONENTBUILDER_DYNAMIC_GETS_N_ITEMS_DELETED="%s Dynamic Gets deleted."
COM_COMPONENTBUILDER_DYNAMIC_GETS_N_ITEMS_DELETED_1="%s Dynamic Get deleted." COM_COMPONENTBUILDER_DYNAMIC_GETS_N_ITEMS_DELETED_1="%s Dynamic Get deleted."
COM_COMPONENTBUILDER_DYNAMIC_GETS_N_ITEMS_FAILED_PUBLISHING="%s Dynamic Gets failed publishing."
COM_COMPONENTBUILDER_DYNAMIC_GETS_N_ITEMS_FAILED_PUBLISHING_1="%s Dynamic Get failed publishing."
COM_COMPONENTBUILDER_DYNAMIC_GETS_N_ITEMS_FEATURED="%s Dynamic Gets featured." COM_COMPONENTBUILDER_DYNAMIC_GETS_N_ITEMS_FEATURED="%s Dynamic Gets featured."
COM_COMPONENTBUILDER_DYNAMIC_GETS_N_ITEMS_FEATURED_1="%s Dynamic Get featured." COM_COMPONENTBUILDER_DYNAMIC_GETS_N_ITEMS_FEATURED_1="%s Dynamic Get featured."
COM_COMPONENTBUILDER_DYNAMIC_GETS_N_ITEMS_PUBLISHED="%s Dynamic Gets published." COM_COMPONENTBUILDER_DYNAMIC_GETS_N_ITEMS_PUBLISHED="%s Dynamic Gets published."
@@ -4495,6 +4560,8 @@ COM_COMPONENTBUILDER_DYNAMIC_GET_DIRECTION_LABEL="Ordering Direction"
COM_COMPONENTBUILDER_DYNAMIC_GET_E="e" COM_COMPONENTBUILDER_DYNAMIC_GET_E="e"
COM_COMPONENTBUILDER_DYNAMIC_GET_EDIT="Editing the Dynamic Get" COM_COMPONENTBUILDER_DYNAMIC_GET_EDIT="Editing the Dynamic Get"
COM_COMPONENTBUILDER_DYNAMIC_GET_EE="ee" COM_COMPONENTBUILDER_DYNAMIC_GET_EE="ee"
COM_COMPONENTBUILDER_DYNAMIC_GET_EMPTY_DESCRIPTION="Empty"
COM_COMPONENTBUILDER_DYNAMIC_GET_EMPTY_LABEL="Allow"
COM_COMPONENTBUILDER_DYNAMIC_GET_EQUAL="equal" COM_COMPONENTBUILDER_DYNAMIC_GET_EQUAL="equal"
COM_COMPONENTBUILDER_DYNAMIC_GET_EQUAL_OR_NOT="equal or not" COM_COMPONENTBUILDER_DYNAMIC_GET_EQUAL_OR_NOT="equal or not"
COM_COMPONENTBUILDER_DYNAMIC_GET_ERROR_UNIQUE_ALIAS="Another Dynamic Get has the same alias." COM_COMPONENTBUILDER_DYNAMIC_GET_ERROR_UNIQUE_ALIAS="Another Dynamic Get has the same alias."
@@ -4793,6 +4860,8 @@ COM_COMPONENTBUILDER_FIELDS_N_ITEMS_CHECKED_IN_1="%d Field successfully checked
COM_COMPONENTBUILDER_FIELDS_N_ITEMS_CHECKED_IN_MORE="%d Fields successfully checked in." COM_COMPONENTBUILDER_FIELDS_N_ITEMS_CHECKED_IN_MORE="%d Fields successfully checked in."
COM_COMPONENTBUILDER_FIELDS_N_ITEMS_DELETED="%s Fields deleted." COM_COMPONENTBUILDER_FIELDS_N_ITEMS_DELETED="%s Fields deleted."
COM_COMPONENTBUILDER_FIELDS_N_ITEMS_DELETED_1="%s Field deleted." COM_COMPONENTBUILDER_FIELDS_N_ITEMS_DELETED_1="%s Field deleted."
COM_COMPONENTBUILDER_FIELDS_N_ITEMS_FAILED_PUBLISHING="%s Fields failed publishing."
COM_COMPONENTBUILDER_FIELDS_N_ITEMS_FAILED_PUBLISHING_1="%s Field failed publishing."
COM_COMPONENTBUILDER_FIELDS_N_ITEMS_FEATURED="%s Fields featured." COM_COMPONENTBUILDER_FIELDS_N_ITEMS_FEATURED="%s Fields featured."
COM_COMPONENTBUILDER_FIELDS_N_ITEMS_FEATURED_1="%s Field featured." COM_COMPONENTBUILDER_FIELDS_N_ITEMS_FEATURED_1="%s Field featured."
COM_COMPONENTBUILDER_FIELDS_N_ITEMS_PUBLISHED="%s Fields published." COM_COMPONENTBUILDER_FIELDS_N_ITEMS_PUBLISHED="%s Fields published."
@@ -4838,6 +4907,8 @@ COM_COMPONENTBUILDER_FIELDTYPES_N_ITEMS_CHECKED_IN_1="%d Fieldtype successfully
COM_COMPONENTBUILDER_FIELDTYPES_N_ITEMS_CHECKED_IN_MORE="%d Fieldtypes successfully checked in." COM_COMPONENTBUILDER_FIELDTYPES_N_ITEMS_CHECKED_IN_MORE="%d Fieldtypes successfully checked in."
COM_COMPONENTBUILDER_FIELDTYPES_N_ITEMS_DELETED="%s Fieldtypes deleted." COM_COMPONENTBUILDER_FIELDTYPES_N_ITEMS_DELETED="%s Fieldtypes deleted."
COM_COMPONENTBUILDER_FIELDTYPES_N_ITEMS_DELETED_1="%s Fieldtype deleted." COM_COMPONENTBUILDER_FIELDTYPES_N_ITEMS_DELETED_1="%s Fieldtype deleted."
COM_COMPONENTBUILDER_FIELDTYPES_N_ITEMS_FAILED_PUBLISHING="%s Fieldtypes failed publishing."
COM_COMPONENTBUILDER_FIELDTYPES_N_ITEMS_FAILED_PUBLISHING_1="%s Fieldtype failed publishing."
COM_COMPONENTBUILDER_FIELDTYPES_N_ITEMS_FEATURED="%s Fieldtypes featured." COM_COMPONENTBUILDER_FIELDTYPES_N_ITEMS_FEATURED="%s Fieldtypes featured."
COM_COMPONENTBUILDER_FIELDTYPES_N_ITEMS_FEATURED_1="%s Fieldtype featured." COM_COMPONENTBUILDER_FIELDTYPES_N_ITEMS_FEATURED_1="%s Fieldtype featured."
COM_COMPONENTBUILDER_FIELDTYPES_N_ITEMS_PUBLISHED="%s Fieldtypes published." COM_COMPONENTBUILDER_FIELDTYPES_N_ITEMS_PUBLISHED="%s Fieldtypes published."
@@ -5336,6 +5407,8 @@ COM_COMPONENTBUILDER_HELP_DOCUMENTS_N_ITEMS_CHECKED_IN_1="%d Help Document succe
COM_COMPONENTBUILDER_HELP_DOCUMENTS_N_ITEMS_CHECKED_IN_MORE="%d Help Documents successfully checked in." COM_COMPONENTBUILDER_HELP_DOCUMENTS_N_ITEMS_CHECKED_IN_MORE="%d Help Documents successfully checked in."
COM_COMPONENTBUILDER_HELP_DOCUMENTS_N_ITEMS_DELETED="%s Help Documents deleted." COM_COMPONENTBUILDER_HELP_DOCUMENTS_N_ITEMS_DELETED="%s Help Documents deleted."
COM_COMPONENTBUILDER_HELP_DOCUMENTS_N_ITEMS_DELETED_1="%s Help Document deleted." COM_COMPONENTBUILDER_HELP_DOCUMENTS_N_ITEMS_DELETED_1="%s Help Document deleted."
COM_COMPONENTBUILDER_HELP_DOCUMENTS_N_ITEMS_FAILED_PUBLISHING="%s Help Documents failed publishing."
COM_COMPONENTBUILDER_HELP_DOCUMENTS_N_ITEMS_FAILED_PUBLISHING_1="%s Help Document failed publishing."
COM_COMPONENTBUILDER_HELP_DOCUMENTS_N_ITEMS_FEATURED="%s Help Documents featured." COM_COMPONENTBUILDER_HELP_DOCUMENTS_N_ITEMS_FEATURED="%s Help Documents featured."
COM_COMPONENTBUILDER_HELP_DOCUMENTS_N_ITEMS_FEATURED_1="%s Help Document featured." COM_COMPONENTBUILDER_HELP_DOCUMENTS_N_ITEMS_FEATURED_1="%s Help Document featured."
COM_COMPONENTBUILDER_HELP_DOCUMENTS_N_ITEMS_PUBLISHED="%s Help Documents published." COM_COMPONENTBUILDER_HELP_DOCUMENTS_N_ITEMS_PUBLISHED="%s Help Documents published."
@@ -5535,6 +5608,8 @@ COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_N_ITEMS_CHECKED_IN_1="%d Joomla Component
COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_N_ITEMS_CHECKED_IN_MORE="%d Joomla Components successfully checked in." COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_N_ITEMS_CHECKED_IN_MORE="%d Joomla Components successfully checked in."
COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_N_ITEMS_DELETED="%s Joomla Components deleted." COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_N_ITEMS_DELETED="%s Joomla Components deleted."
COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_N_ITEMS_DELETED_1="%s Joomla Component deleted." COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_N_ITEMS_DELETED_1="%s Joomla Component deleted."
COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_N_ITEMS_FAILED_PUBLISHING="%s Joomla Components failed publishing."
COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_N_ITEMS_FAILED_PUBLISHING_1="%s Joomla Component failed publishing."
COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_N_ITEMS_FEATURED="%s Joomla Components featured." COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_N_ITEMS_FEATURED="%s Joomla Components featured."
COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_N_ITEMS_FEATURED_1="%s Joomla Component featured." COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_N_ITEMS_FEATURED_1="%s Joomla Component featured."
COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_N_ITEMS_PUBLISHED="%s Joomla Components published." COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_N_ITEMS_PUBLISHED="%s Joomla Components published."
@@ -5871,7 +5946,7 @@ Project duration: **###projectWeekTime### weeks** or **###projectMonthTime### mo
## Donations<br /> ## Donations<br />
<br /> <br />
If you want to support this project, please consider donating:<br /> If you want to support this project, please consider donating:<br />
* PayPal: [paypal.me/asseblief](https://www.paypal.me/asseblief) (Asseblief = Please) in Afrikaans<br /> * PayPal: [paypal.me/donationgeek](https://www.paypal.me/donationgeek)<br />
* Bitcoin: 18vURxYpPFjvNk8BnUy1ovCAyQmY3MzkSf<br /> * Bitcoin: 18vURxYpPFjvNk8BnUy1ovCAyQmY3MzkSf<br />
* Ethereum: 0x9548144662b47327c954f3e214edb96662d51218 * Ethereum: 0x9548144662b47327c954f3e214edb96662d51218
</code></div>" </code></div>"
@@ -5926,6 +6001,9 @@ COM_COMPONENTBUILDER_JOOMLA_COMPONENT_PHP_SITE_EVENT_LABEL="Global Helper Site E
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_PUBLISHING="Publishing" COM_COMPONENTBUILDER_JOOMLA_COMPONENT_PUBLISHING="Publishing"
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_README="Readme" COM_COMPONENTBUILDER_JOOMLA_COMPONENT_README="Readme"
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_README_LABEL="README.md" COM_COMPONENTBUILDER_JOOMLA_COMPONENT_README_LABEL="README.md"
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_REMOVE_LINE_BREAKS="Remove Line Breaks"
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_REMOVE_LINE_BREAKS_DESCRIPTION="Should we remove all line breaks (&quot;\r&quot;, &quot;\n&quot;) from all language strings in this component."
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_REMOVE_LINE_BREAKS_LABEL="Remove line breaks<br /><small>from language strings</small>"
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_RUN_EXPANSION_BUTTON_ACCESS="Joomla Component Run Expansion Button Access" COM_COMPONENTBUILDER_JOOMLA_COMPONENT_RUN_EXPANSION_BUTTON_ACCESS="Joomla Component Run Expansion Button Access"
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_RUN_EXPANSION_BUTTON_ACCESS_DESC="Allows the users in this group to access the run expansion button." COM_COMPONENTBUILDER_JOOMLA_COMPONENT_RUN_EXPANSION_BUTTON_ACCESS_DESC="Allows the users in this group to access the run expansion button."
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_SALES_SERVER="Sales Server" COM_COMPONENTBUILDER_JOOMLA_COMPONENT_SALES_SERVER="Sales Server"
@@ -6069,6 +6147,8 @@ COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_N_ITEMS_CHECKED_IN_1="%d
COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_N_ITEMS_CHECKED_IN_MORE="%d Joomla Modules Files, Folders & URLs successfully checked in." COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_N_ITEMS_CHECKED_IN_MORE="%d Joomla Modules Files, Folders & URLs successfully checked in."
COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_N_ITEMS_DELETED="%s Joomla Modules Files, Folders & URLs deleted." COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_N_ITEMS_DELETED="%s Joomla Modules Files, Folders & URLs deleted."
COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_N_ITEMS_DELETED_1="%s Joomla Module Files, Folders & URLs deleted." COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_N_ITEMS_DELETED_1="%s Joomla Module Files, Folders & URLs deleted."
COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_N_ITEMS_FAILED_PUBLISHING="%s Joomla Modules Files, Folders & URLs failed publishing."
COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_N_ITEMS_FAILED_PUBLISHING_1="%s Joomla Module Files, Folders & URLs failed publishing."
COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_N_ITEMS_FEATURED="%s Joomla Modules Files, Folders & URLs featured." COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_N_ITEMS_FEATURED="%s Joomla Modules Files, Folders & URLs featured."
COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_N_ITEMS_FEATURED_1="%s Joomla Module Files, Folders & URLs featured." COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_N_ITEMS_FEATURED_1="%s Joomla Module Files, Folders & URLs featured."
COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_N_ITEMS_PUBLISHED="%s Joomla Modules Files, Folders & URLs published." COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_N_ITEMS_PUBLISHED="%s Joomla Modules Files, Folders & URLs published."
@@ -6086,6 +6166,8 @@ COM_COMPONENTBUILDER_JOOMLA_MODULES_N_ITEMS_CHECKED_IN_1="%d Joomla Module succe
COM_COMPONENTBUILDER_JOOMLA_MODULES_N_ITEMS_CHECKED_IN_MORE="%d Joomla Modules successfully checked in." COM_COMPONENTBUILDER_JOOMLA_MODULES_N_ITEMS_CHECKED_IN_MORE="%d Joomla Modules successfully checked in."
COM_COMPONENTBUILDER_JOOMLA_MODULES_N_ITEMS_DELETED="%s Joomla Modules deleted." COM_COMPONENTBUILDER_JOOMLA_MODULES_N_ITEMS_DELETED="%s Joomla Modules deleted."
COM_COMPONENTBUILDER_JOOMLA_MODULES_N_ITEMS_DELETED_1="%s Joomla Module deleted." COM_COMPONENTBUILDER_JOOMLA_MODULES_N_ITEMS_DELETED_1="%s Joomla Module deleted."
COM_COMPONENTBUILDER_JOOMLA_MODULES_N_ITEMS_FAILED_PUBLISHING="%s Joomla Modules failed publishing."
COM_COMPONENTBUILDER_JOOMLA_MODULES_N_ITEMS_FAILED_PUBLISHING_1="%s Joomla Module failed publishing."
COM_COMPONENTBUILDER_JOOMLA_MODULES_N_ITEMS_FEATURED="%s Joomla Modules featured." COM_COMPONENTBUILDER_JOOMLA_MODULES_N_ITEMS_FEATURED="%s Joomla Modules featured."
COM_COMPONENTBUILDER_JOOMLA_MODULES_N_ITEMS_FEATURED_1="%s Joomla Module featured." COM_COMPONENTBUILDER_JOOMLA_MODULES_N_ITEMS_FEATURED_1="%s Joomla Module featured."
COM_COMPONENTBUILDER_JOOMLA_MODULES_N_ITEMS_PUBLISHED="%s Joomla Modules published." COM_COMPONENTBUILDER_JOOMLA_MODULES_N_ITEMS_PUBLISHED="%s Joomla Modules published."
@@ -6128,6 +6210,8 @@ COM_COMPONENTBUILDER_JOOMLA_MODULES_UPDATES_N_ITEMS_CHECKED_IN_1="%d Joomla Modu
COM_COMPONENTBUILDER_JOOMLA_MODULES_UPDATES_N_ITEMS_CHECKED_IN_MORE="%d Joomla Modules Updates successfully checked in." COM_COMPONENTBUILDER_JOOMLA_MODULES_UPDATES_N_ITEMS_CHECKED_IN_MORE="%d Joomla Modules Updates successfully checked in."
COM_COMPONENTBUILDER_JOOMLA_MODULES_UPDATES_N_ITEMS_DELETED="%s Joomla Modules Updates deleted." COM_COMPONENTBUILDER_JOOMLA_MODULES_UPDATES_N_ITEMS_DELETED="%s Joomla Modules Updates deleted."
COM_COMPONENTBUILDER_JOOMLA_MODULES_UPDATES_N_ITEMS_DELETED_1="%s Joomla Module Updates deleted." COM_COMPONENTBUILDER_JOOMLA_MODULES_UPDATES_N_ITEMS_DELETED_1="%s Joomla Module Updates deleted."
COM_COMPONENTBUILDER_JOOMLA_MODULES_UPDATES_N_ITEMS_FAILED_PUBLISHING="%s Joomla Modules Updates failed publishing."
COM_COMPONENTBUILDER_JOOMLA_MODULES_UPDATES_N_ITEMS_FAILED_PUBLISHING_1="%s Joomla Module Updates failed publishing."
COM_COMPONENTBUILDER_JOOMLA_MODULES_UPDATES_N_ITEMS_FEATURED="%s Joomla Modules Updates featured." COM_COMPONENTBUILDER_JOOMLA_MODULES_UPDATES_N_ITEMS_FEATURED="%s Joomla Modules Updates featured."
COM_COMPONENTBUILDER_JOOMLA_MODULES_UPDATES_N_ITEMS_FEATURED_1="%s Joomla Module Updates featured." COM_COMPONENTBUILDER_JOOMLA_MODULES_UPDATES_N_ITEMS_FEATURED_1="%s Joomla Module Updates featured."
COM_COMPONENTBUILDER_JOOMLA_MODULES_UPDATES_N_ITEMS_PUBLISHED="%s Joomla Modules Updates published." COM_COMPONENTBUILDER_JOOMLA_MODULES_UPDATES_N_ITEMS_PUBLISHED="%s Joomla Modules Updates published."
@@ -6553,6 +6637,8 @@ COM_COMPONENTBUILDER_JOOMLA_PLUGINS_FILES_FOLDERS_URLS_N_ITEMS_CHECKED_IN_1="%d
COM_COMPONENTBUILDER_JOOMLA_PLUGINS_FILES_FOLDERS_URLS_N_ITEMS_CHECKED_IN_MORE="%d Joomla Plugins Files, Folders & URLs successfully checked in." COM_COMPONENTBUILDER_JOOMLA_PLUGINS_FILES_FOLDERS_URLS_N_ITEMS_CHECKED_IN_MORE="%d Joomla Plugins Files, Folders & URLs successfully checked in."
COM_COMPONENTBUILDER_JOOMLA_PLUGINS_FILES_FOLDERS_URLS_N_ITEMS_DELETED="%s Joomla Plugins Files, Folders & URLs deleted." COM_COMPONENTBUILDER_JOOMLA_PLUGINS_FILES_FOLDERS_URLS_N_ITEMS_DELETED="%s Joomla Plugins Files, Folders & URLs deleted."
COM_COMPONENTBUILDER_JOOMLA_PLUGINS_FILES_FOLDERS_URLS_N_ITEMS_DELETED_1="%s Joomla Plugin Files, Folders & URLs deleted." COM_COMPONENTBUILDER_JOOMLA_PLUGINS_FILES_FOLDERS_URLS_N_ITEMS_DELETED_1="%s Joomla Plugin Files, Folders & URLs deleted."
COM_COMPONENTBUILDER_JOOMLA_PLUGINS_FILES_FOLDERS_URLS_N_ITEMS_FAILED_PUBLISHING="%s Joomla Plugins Files, Folders & URLs failed publishing."
COM_COMPONENTBUILDER_JOOMLA_PLUGINS_FILES_FOLDERS_URLS_N_ITEMS_FAILED_PUBLISHING_1="%s Joomla Plugin Files, Folders & URLs failed publishing."
COM_COMPONENTBUILDER_JOOMLA_PLUGINS_FILES_FOLDERS_URLS_N_ITEMS_FEATURED="%s Joomla Plugins Files, Folders & URLs featured." COM_COMPONENTBUILDER_JOOMLA_PLUGINS_FILES_FOLDERS_URLS_N_ITEMS_FEATURED="%s Joomla Plugins Files, Folders & URLs featured."
COM_COMPONENTBUILDER_JOOMLA_PLUGINS_FILES_FOLDERS_URLS_N_ITEMS_FEATURED_1="%s Joomla Plugin Files, Folders & URLs featured." COM_COMPONENTBUILDER_JOOMLA_PLUGINS_FILES_FOLDERS_URLS_N_ITEMS_FEATURED_1="%s Joomla Plugin Files, Folders & URLs featured."
COM_COMPONENTBUILDER_JOOMLA_PLUGINS_FILES_FOLDERS_URLS_N_ITEMS_PUBLISHED="%s Joomla Plugins Files, Folders & URLs published." COM_COMPONENTBUILDER_JOOMLA_PLUGINS_FILES_FOLDERS_URLS_N_ITEMS_PUBLISHED="%s Joomla Plugins Files, Folders & URLs published."
@@ -6570,6 +6656,8 @@ COM_COMPONENTBUILDER_JOOMLA_PLUGINS_N_ITEMS_CHECKED_IN_1="%d Joomla Plugin succe
COM_COMPONENTBUILDER_JOOMLA_PLUGINS_N_ITEMS_CHECKED_IN_MORE="%d Joomla Plugins successfully checked in." COM_COMPONENTBUILDER_JOOMLA_PLUGINS_N_ITEMS_CHECKED_IN_MORE="%d Joomla Plugins successfully checked in."
COM_COMPONENTBUILDER_JOOMLA_PLUGINS_N_ITEMS_DELETED="%s Joomla Plugins deleted." COM_COMPONENTBUILDER_JOOMLA_PLUGINS_N_ITEMS_DELETED="%s Joomla Plugins deleted."
COM_COMPONENTBUILDER_JOOMLA_PLUGINS_N_ITEMS_DELETED_1="%s Joomla Plugin deleted." COM_COMPONENTBUILDER_JOOMLA_PLUGINS_N_ITEMS_DELETED_1="%s Joomla Plugin deleted."
COM_COMPONENTBUILDER_JOOMLA_PLUGINS_N_ITEMS_FAILED_PUBLISHING="%s Joomla Plugins failed publishing."
COM_COMPONENTBUILDER_JOOMLA_PLUGINS_N_ITEMS_FAILED_PUBLISHING_1="%s Joomla Plugin failed publishing."
COM_COMPONENTBUILDER_JOOMLA_PLUGINS_N_ITEMS_FEATURED="%s Joomla Plugins featured." COM_COMPONENTBUILDER_JOOMLA_PLUGINS_N_ITEMS_FEATURED="%s Joomla Plugins featured."
COM_COMPONENTBUILDER_JOOMLA_PLUGINS_N_ITEMS_FEATURED_1="%s Joomla Plugin featured." COM_COMPONENTBUILDER_JOOMLA_PLUGINS_N_ITEMS_FEATURED_1="%s Joomla Plugin featured."
COM_COMPONENTBUILDER_JOOMLA_PLUGINS_N_ITEMS_PUBLISHED="%s Joomla Plugins published." COM_COMPONENTBUILDER_JOOMLA_PLUGINS_N_ITEMS_PUBLISHED="%s Joomla Plugins published."
@@ -6612,6 +6700,8 @@ COM_COMPONENTBUILDER_JOOMLA_PLUGINS_UPDATES_N_ITEMS_CHECKED_IN_1="%d Joomla Plug
COM_COMPONENTBUILDER_JOOMLA_PLUGINS_UPDATES_N_ITEMS_CHECKED_IN_MORE="%d Joomla Plugins Updates successfully checked in." COM_COMPONENTBUILDER_JOOMLA_PLUGINS_UPDATES_N_ITEMS_CHECKED_IN_MORE="%d Joomla Plugins Updates successfully checked in."
COM_COMPONENTBUILDER_JOOMLA_PLUGINS_UPDATES_N_ITEMS_DELETED="%s Joomla Plugins Updates deleted." COM_COMPONENTBUILDER_JOOMLA_PLUGINS_UPDATES_N_ITEMS_DELETED="%s Joomla Plugins Updates deleted."
COM_COMPONENTBUILDER_JOOMLA_PLUGINS_UPDATES_N_ITEMS_DELETED_1="%s Joomla Plugin Updates deleted." COM_COMPONENTBUILDER_JOOMLA_PLUGINS_UPDATES_N_ITEMS_DELETED_1="%s Joomla Plugin Updates deleted."
COM_COMPONENTBUILDER_JOOMLA_PLUGINS_UPDATES_N_ITEMS_FAILED_PUBLISHING="%s Joomla Plugins Updates failed publishing."
COM_COMPONENTBUILDER_JOOMLA_PLUGINS_UPDATES_N_ITEMS_FAILED_PUBLISHING_1="%s Joomla Plugin Updates failed publishing."
COM_COMPONENTBUILDER_JOOMLA_PLUGINS_UPDATES_N_ITEMS_FEATURED="%s Joomla Plugins Updates featured." COM_COMPONENTBUILDER_JOOMLA_PLUGINS_UPDATES_N_ITEMS_FEATURED="%s Joomla Plugins Updates featured."
COM_COMPONENTBUILDER_JOOMLA_PLUGINS_UPDATES_N_ITEMS_FEATURED_1="%s Joomla Plugin Updates featured." COM_COMPONENTBUILDER_JOOMLA_PLUGINS_UPDATES_N_ITEMS_FEATURED_1="%s Joomla Plugin Updates featured."
COM_COMPONENTBUILDER_JOOMLA_PLUGINS_UPDATES_N_ITEMS_PUBLISHED="%s Joomla Plugins Updates published." COM_COMPONENTBUILDER_JOOMLA_PLUGINS_UPDATES_N_ITEMS_PUBLISHED="%s Joomla Plugins Updates published."
@@ -6820,6 +6910,8 @@ COM_COMPONENTBUILDER_JOOMLA_PLUGIN_GROUPS_N_ITEMS_CHECKED_IN_1="%d Joomla Plugin
COM_COMPONENTBUILDER_JOOMLA_PLUGIN_GROUPS_N_ITEMS_CHECKED_IN_MORE="%d Joomla Plugin Groups successfully checked in." COM_COMPONENTBUILDER_JOOMLA_PLUGIN_GROUPS_N_ITEMS_CHECKED_IN_MORE="%d Joomla Plugin Groups successfully checked in."
COM_COMPONENTBUILDER_JOOMLA_PLUGIN_GROUPS_N_ITEMS_DELETED="%s Joomla Plugin Groups deleted." COM_COMPONENTBUILDER_JOOMLA_PLUGIN_GROUPS_N_ITEMS_DELETED="%s Joomla Plugin Groups deleted."
COM_COMPONENTBUILDER_JOOMLA_PLUGIN_GROUPS_N_ITEMS_DELETED_1="%s Joomla Plugin Group deleted." COM_COMPONENTBUILDER_JOOMLA_PLUGIN_GROUPS_N_ITEMS_DELETED_1="%s Joomla Plugin Group deleted."
COM_COMPONENTBUILDER_JOOMLA_PLUGIN_GROUPS_N_ITEMS_FAILED_PUBLISHING="%s Joomla Plugin Groups failed publishing."
COM_COMPONENTBUILDER_JOOMLA_PLUGIN_GROUPS_N_ITEMS_FAILED_PUBLISHING_1="%s Joomla Plugin Group failed publishing."
COM_COMPONENTBUILDER_JOOMLA_PLUGIN_GROUPS_N_ITEMS_FEATURED="%s Joomla Plugin Groups featured." COM_COMPONENTBUILDER_JOOMLA_PLUGIN_GROUPS_N_ITEMS_FEATURED="%s Joomla Plugin Groups featured."
COM_COMPONENTBUILDER_JOOMLA_PLUGIN_GROUPS_N_ITEMS_FEATURED_1="%s Joomla Plugin Group featured." COM_COMPONENTBUILDER_JOOMLA_PLUGIN_GROUPS_N_ITEMS_FEATURED_1="%s Joomla Plugin Group featured."
COM_COMPONENTBUILDER_JOOMLA_PLUGIN_GROUPS_N_ITEMS_PUBLISHED="%s Joomla Plugin Groups published." COM_COMPONENTBUILDER_JOOMLA_PLUGIN_GROUPS_N_ITEMS_PUBLISHED="%s Joomla Plugin Groups published."
@@ -6862,8 +6954,8 @@ COM_COMPONENTBUILDER_JOOMLA_PLUGIN_GUID_DESCRIPTION="Globally Unique Identifier"
COM_COMPONENTBUILDER_JOOMLA_PLUGIN_GUID_HINT="Auto Generated" COM_COMPONENTBUILDER_JOOMLA_PLUGIN_GUID_HINT="Auto Generated"
COM_COMPONENTBUILDER_JOOMLA_PLUGIN_GUID_LABEL="GUID" COM_COMPONENTBUILDER_JOOMLA_PLUGIN_GUID_LABEL="GUID"
COM_COMPONENTBUILDER_JOOMLA_PLUGIN_HEAD="Head" COM_COMPONENTBUILDER_JOOMLA_PLUGIN_HEAD="Head"
COM_COMPONENTBUILDER_JOOMLA_PLUGIN_HEAD_DESCRIPTION="The class head, where JLoader, namespace and use is added, so that class being extended will work." COM_COMPONENTBUILDER_JOOMLA_PLUGIN_HEAD_DESCRIPTION="The class header to add any header values can be added."
COM_COMPONENTBUILDER_JOOMLA_PLUGIN_HEAD_LABEL="Class Head" COM_COMPONENTBUILDER_JOOMLA_PLUGIN_HEAD_LABEL="Class Header"
COM_COMPONENTBUILDER_JOOMLA_PLUGIN_ID="Id" COM_COMPONENTBUILDER_JOOMLA_PLUGIN_ID="Id"
COM_COMPONENTBUILDER_JOOMLA_PLUGIN_JOOMLA_PLUGIN_GROUP="Joomla Plugin Group" COM_COMPONENTBUILDER_JOOMLA_PLUGIN_JOOMLA_PLUGIN_GROUP="Joomla Plugin Group"
COM_COMPONENTBUILDER_JOOMLA_PLUGIN_JOOMLA_PLUGIN_GROUP_LABEL="Joomla Plugin Group" COM_COMPONENTBUILDER_JOOMLA_PLUGIN_JOOMLA_PLUGIN_GROUP_LABEL="Joomla Plugin Group"
@@ -7060,6 +7152,8 @@ COM_COMPONENTBUILDER_LANGUAGES_N_ITEMS_CHECKED_IN_1="%d Language successfully ch
COM_COMPONENTBUILDER_LANGUAGES_N_ITEMS_CHECKED_IN_MORE="%d Languages successfully checked in." COM_COMPONENTBUILDER_LANGUAGES_N_ITEMS_CHECKED_IN_MORE="%d Languages successfully checked in."
COM_COMPONENTBUILDER_LANGUAGES_N_ITEMS_DELETED="%s Languages deleted." COM_COMPONENTBUILDER_LANGUAGES_N_ITEMS_DELETED="%s Languages deleted."
COM_COMPONENTBUILDER_LANGUAGES_N_ITEMS_DELETED_1="%s Language deleted." COM_COMPONENTBUILDER_LANGUAGES_N_ITEMS_DELETED_1="%s Language deleted."
COM_COMPONENTBUILDER_LANGUAGES_N_ITEMS_FAILED_PUBLISHING="%s Languages failed publishing."
COM_COMPONENTBUILDER_LANGUAGES_N_ITEMS_FAILED_PUBLISHING_1="%s Language failed publishing."
COM_COMPONENTBUILDER_LANGUAGES_N_ITEMS_FEATURED="%s Languages featured." COM_COMPONENTBUILDER_LANGUAGES_N_ITEMS_FEATURED="%s Languages featured."
COM_COMPONENTBUILDER_LANGUAGES_N_ITEMS_FEATURED_1="%s Language featured." COM_COMPONENTBUILDER_LANGUAGES_N_ITEMS_FEATURED_1="%s Language featured."
COM_COMPONENTBUILDER_LANGUAGES_N_ITEMS_PUBLISHED="%s Languages published." COM_COMPONENTBUILDER_LANGUAGES_N_ITEMS_PUBLISHED="%s Languages published."
@@ -7135,6 +7229,8 @@ COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_N_ITEMS_CHECKED_IN_1="%d Language Tra
COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_N_ITEMS_CHECKED_IN_MORE="%d Language Translations successfully checked in." COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_N_ITEMS_CHECKED_IN_MORE="%d Language Translations successfully checked in."
COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_N_ITEMS_DELETED="%s Language Translations deleted." COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_N_ITEMS_DELETED="%s Language Translations deleted."
COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_N_ITEMS_DELETED_1="%s Language Translation deleted." COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_N_ITEMS_DELETED_1="%s Language Translation deleted."
COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_N_ITEMS_FAILED_PUBLISHING="%s Language Translations failed publishing."
COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_N_ITEMS_FAILED_PUBLISHING_1="%s Language Translation failed publishing."
COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_N_ITEMS_FEATURED="%s Language Translations featured." COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_N_ITEMS_FEATURED="%s Language Translations featured."
COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_N_ITEMS_FEATURED_1="%s Language Translation featured." COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_N_ITEMS_FEATURED_1="%s Language Translation featured."
COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_N_ITEMS_PUBLISHED="%s Language Translations published." COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_N_ITEMS_PUBLISHED="%s Language Translations published."
@@ -7223,6 +7319,8 @@ COM_COMPONENTBUILDER_LAYOUTS_N_ITEMS_CHECKED_IN_1="%d Layout successfully checke
COM_COMPONENTBUILDER_LAYOUTS_N_ITEMS_CHECKED_IN_MORE="%d Layouts successfully checked in." COM_COMPONENTBUILDER_LAYOUTS_N_ITEMS_CHECKED_IN_MORE="%d Layouts successfully checked in."
COM_COMPONENTBUILDER_LAYOUTS_N_ITEMS_DELETED="%s Layouts deleted." COM_COMPONENTBUILDER_LAYOUTS_N_ITEMS_DELETED="%s Layouts deleted."
COM_COMPONENTBUILDER_LAYOUTS_N_ITEMS_DELETED_1="%s Layout deleted." COM_COMPONENTBUILDER_LAYOUTS_N_ITEMS_DELETED_1="%s Layout deleted."
COM_COMPONENTBUILDER_LAYOUTS_N_ITEMS_FAILED_PUBLISHING="%s Layouts failed publishing."
COM_COMPONENTBUILDER_LAYOUTS_N_ITEMS_FAILED_PUBLISHING_1="%s Layout failed publishing."
COM_COMPONENTBUILDER_LAYOUTS_N_ITEMS_FEATURED="%s Layouts featured." COM_COMPONENTBUILDER_LAYOUTS_N_ITEMS_FEATURED="%s Layouts featured."
COM_COMPONENTBUILDER_LAYOUTS_N_ITEMS_FEATURED_1="%s Layout featured." COM_COMPONENTBUILDER_LAYOUTS_N_ITEMS_FEATURED_1="%s Layout featured."
COM_COMPONENTBUILDER_LAYOUTS_N_ITEMS_PUBLISHED="%s Layouts published." COM_COMPONENTBUILDER_LAYOUTS_N_ITEMS_PUBLISHED="%s Layouts published."
@@ -7341,6 +7439,8 @@ COM_COMPONENTBUILDER_LIBRARIES_CONFIG_N_ITEMS_CHECKED_IN_1="%d Library Config su
COM_COMPONENTBUILDER_LIBRARIES_CONFIG_N_ITEMS_CHECKED_IN_MORE="%d Libraries Config successfully checked in." COM_COMPONENTBUILDER_LIBRARIES_CONFIG_N_ITEMS_CHECKED_IN_MORE="%d Libraries Config successfully checked in."
COM_COMPONENTBUILDER_LIBRARIES_CONFIG_N_ITEMS_DELETED="%s Libraries Config deleted." COM_COMPONENTBUILDER_LIBRARIES_CONFIG_N_ITEMS_DELETED="%s Libraries Config deleted."
COM_COMPONENTBUILDER_LIBRARIES_CONFIG_N_ITEMS_DELETED_1="%s Library Config deleted." COM_COMPONENTBUILDER_LIBRARIES_CONFIG_N_ITEMS_DELETED_1="%s Library Config deleted."
COM_COMPONENTBUILDER_LIBRARIES_CONFIG_N_ITEMS_FAILED_PUBLISHING="%s Libraries Config failed publishing."
COM_COMPONENTBUILDER_LIBRARIES_CONFIG_N_ITEMS_FAILED_PUBLISHING_1="%s Library Config failed publishing."
COM_COMPONENTBUILDER_LIBRARIES_CONFIG_N_ITEMS_FEATURED="%s Libraries Config featured." COM_COMPONENTBUILDER_LIBRARIES_CONFIG_N_ITEMS_FEATURED="%s Libraries Config featured."
COM_COMPONENTBUILDER_LIBRARIES_CONFIG_N_ITEMS_FEATURED_1="%s Library Config featured." COM_COMPONENTBUILDER_LIBRARIES_CONFIG_N_ITEMS_FEATURED_1="%s Library Config featured."
COM_COMPONENTBUILDER_LIBRARIES_CONFIG_N_ITEMS_PUBLISHED="%s Libraries Config published." COM_COMPONENTBUILDER_LIBRARIES_CONFIG_N_ITEMS_PUBLISHED="%s Libraries Config published."
@@ -7395,6 +7495,8 @@ COM_COMPONENTBUILDER_LIBRARIES_FILES_FOLDERS_URLS_N_ITEMS_CHECKED_IN_1="%d Libra
COM_COMPONENTBUILDER_LIBRARIES_FILES_FOLDERS_URLS_N_ITEMS_CHECKED_IN_MORE="%d Libraries Files, Folders & URLs successfully checked in." COM_COMPONENTBUILDER_LIBRARIES_FILES_FOLDERS_URLS_N_ITEMS_CHECKED_IN_MORE="%d Libraries Files, Folders & URLs successfully checked in."
COM_COMPONENTBUILDER_LIBRARIES_FILES_FOLDERS_URLS_N_ITEMS_DELETED="%s Libraries Files, Folders & URLs deleted." COM_COMPONENTBUILDER_LIBRARIES_FILES_FOLDERS_URLS_N_ITEMS_DELETED="%s Libraries Files, Folders & URLs deleted."
COM_COMPONENTBUILDER_LIBRARIES_FILES_FOLDERS_URLS_N_ITEMS_DELETED_1="%s Library Files, Folders & URLs deleted." COM_COMPONENTBUILDER_LIBRARIES_FILES_FOLDERS_URLS_N_ITEMS_DELETED_1="%s Library Files, Folders & URLs deleted."
COM_COMPONENTBUILDER_LIBRARIES_FILES_FOLDERS_URLS_N_ITEMS_FAILED_PUBLISHING="%s Libraries Files, Folders & URLs failed publishing."
COM_COMPONENTBUILDER_LIBRARIES_FILES_FOLDERS_URLS_N_ITEMS_FAILED_PUBLISHING_1="%s Library Files, Folders & URLs failed publishing."
COM_COMPONENTBUILDER_LIBRARIES_FILES_FOLDERS_URLS_N_ITEMS_FEATURED="%s Libraries Files, Folders & URLs featured." COM_COMPONENTBUILDER_LIBRARIES_FILES_FOLDERS_URLS_N_ITEMS_FEATURED="%s Libraries Files, Folders & URLs featured."
COM_COMPONENTBUILDER_LIBRARIES_FILES_FOLDERS_URLS_N_ITEMS_FEATURED_1="%s Library Files, Folders & URLs featured." COM_COMPONENTBUILDER_LIBRARIES_FILES_FOLDERS_URLS_N_ITEMS_FEATURED_1="%s Library Files, Folders & URLs featured."
COM_COMPONENTBUILDER_LIBRARIES_FILES_FOLDERS_URLS_N_ITEMS_PUBLISHED="%s Libraries Files, Folders & URLs published." COM_COMPONENTBUILDER_LIBRARIES_FILES_FOLDERS_URLS_N_ITEMS_PUBLISHED="%s Libraries Files, Folders & URLs published."
@@ -7412,6 +7514,8 @@ COM_COMPONENTBUILDER_LIBRARIES_N_ITEMS_CHECKED_IN_1="%d Library successfully che
COM_COMPONENTBUILDER_LIBRARIES_N_ITEMS_CHECKED_IN_MORE="%d Libraries successfully checked in." COM_COMPONENTBUILDER_LIBRARIES_N_ITEMS_CHECKED_IN_MORE="%d Libraries successfully checked in."
COM_COMPONENTBUILDER_LIBRARIES_N_ITEMS_DELETED="%s Libraries deleted." COM_COMPONENTBUILDER_LIBRARIES_N_ITEMS_DELETED="%s Libraries deleted."
COM_COMPONENTBUILDER_LIBRARIES_N_ITEMS_DELETED_1="%s Library deleted." COM_COMPONENTBUILDER_LIBRARIES_N_ITEMS_DELETED_1="%s Library deleted."
COM_COMPONENTBUILDER_LIBRARIES_N_ITEMS_FAILED_PUBLISHING="%s Libraries failed publishing."
COM_COMPONENTBUILDER_LIBRARIES_N_ITEMS_FAILED_PUBLISHING_1="%s Library failed publishing."
COM_COMPONENTBUILDER_LIBRARIES_N_ITEMS_FEATURED="%s Libraries featured." COM_COMPONENTBUILDER_LIBRARIES_N_ITEMS_FEATURED="%s Libraries featured."
COM_COMPONENTBUILDER_LIBRARIES_N_ITEMS_FEATURED_1="%s Library featured." COM_COMPONENTBUILDER_LIBRARIES_N_ITEMS_FEATURED_1="%s Library featured."
COM_COMPONENTBUILDER_LIBRARIES_N_ITEMS_PUBLISHED="%s Libraries published." COM_COMPONENTBUILDER_LIBRARIES_N_ITEMS_PUBLISHED="%s Libraries published."
@@ -7717,6 +7821,7 @@ COM_COMPONENTBUILDER_MODEL_AFTER_MODELLING="Model (after modelling)"
COM_COMPONENTBUILDER_MODEL_BEFORE_MODELLING="Model (before modelling)" COM_COMPONENTBUILDER_MODEL_BEFORE_MODELLING="Model (before modelling)"
COM_COMPONENTBUILDER_MODULE="Module" COM_COMPONENTBUILDER_MODULE="Module"
COM_COMPONENTBUILDER_MODULES="Modules" COM_COMPONENTBUILDER_MODULES="Modules"
COM_COMPONENTBUILDER_MOVE="Move"
COM_COMPONENTBUILDER_NAME="Name" COM_COMPONENTBUILDER_NAME="Name"
COM_COMPONENTBUILDER_NAME_ASC="Name (Asc)" COM_COMPONENTBUILDER_NAME_ASC="Name (Asc)"
COM_COMPONENTBUILDER_NAME_DESC="Name (Desc)" COM_COMPONENTBUILDER_NAME_DESC="Name (Desc)"
@@ -7816,6 +7921,8 @@ COM_COMPONENTBUILDER_PLACEHOLDERS_N_ITEMS_CHECKED_IN_1="%d Placeholder successfu
COM_COMPONENTBUILDER_PLACEHOLDERS_N_ITEMS_CHECKED_IN_MORE="%d Placeholders successfully checked in." COM_COMPONENTBUILDER_PLACEHOLDERS_N_ITEMS_CHECKED_IN_MORE="%d Placeholders successfully checked in."
COM_COMPONENTBUILDER_PLACEHOLDERS_N_ITEMS_DELETED="%s Placeholders deleted." COM_COMPONENTBUILDER_PLACEHOLDERS_N_ITEMS_DELETED="%s Placeholders deleted."
COM_COMPONENTBUILDER_PLACEHOLDERS_N_ITEMS_DELETED_1="%s Placeholder deleted." COM_COMPONENTBUILDER_PLACEHOLDERS_N_ITEMS_DELETED_1="%s Placeholder deleted."
COM_COMPONENTBUILDER_PLACEHOLDERS_N_ITEMS_FAILED_PUBLISHING="%s Placeholders failed publishing."
COM_COMPONENTBUILDER_PLACEHOLDERS_N_ITEMS_FAILED_PUBLISHING_1="%s Placeholder failed publishing."
COM_COMPONENTBUILDER_PLACEHOLDERS_N_ITEMS_FEATURED="%s Placeholders featured." COM_COMPONENTBUILDER_PLACEHOLDERS_N_ITEMS_FEATURED="%s Placeholders featured."
COM_COMPONENTBUILDER_PLACEHOLDERS_N_ITEMS_FEATURED_1="%s Placeholder featured." COM_COMPONENTBUILDER_PLACEHOLDERS_N_ITEMS_FEATURED_1="%s Placeholder featured."
COM_COMPONENTBUILDER_PLACEHOLDERS_N_ITEMS_PUBLISHED="%s Placeholders published." COM_COMPONENTBUILDER_PLACEHOLDERS_N_ITEMS_PUBLISHED="%s Placeholders published."
@@ -7913,6 +8020,7 @@ COM_COMPONENTBUILDER_PUBLISHING="Publishing"
COM_COMPONENTBUILDER_READY_TO_COMPILE_A_COMPONENT="Ready to compile a component" COM_COMPONENTBUILDER_READY_TO_COMPILE_A_COMPONENT="Ready to compile a component"
COM_COMPONENTBUILDER_REFRESH="Refresh" COM_COMPONENTBUILDER_REFRESH="Refresh"
COM_COMPONENTBUILDER_RELEASED_THIS="released this" COM_COMPONENTBUILDER_RELEASED_THIS="released this"
COM_COMPONENTBUILDER_REMOVE="Remove"
COM_COMPONENTBUILDER_RENAME="Rename" COM_COMPONENTBUILDER_RENAME="Rename"
COM_COMPONENTBUILDER_REPORT_AN_ISSUE_BSB="Report an issue: <b>%s</b>" COM_COMPONENTBUILDER_REPORT_AN_ISSUE_BSB="Report an issue: <b>%s</b>"
COM_COMPONENTBUILDER_REQUIRES_THE_VALUE_ENTERED_BE_ONE_OF_THE_OPTIONS_IN_AN_ELEMENT_OF_TYPEQUOTLISTQUOT_THAT_IS_THAT_THE_ELEMENT_IS_A_SELECT_LIST="Requires the value entered be one of the options in an element of type=&quot;list&quot;: that is, that the element is a select list." COM_COMPONENTBUILDER_REQUIRES_THE_VALUE_ENTERED_BE_ONE_OF_THE_OPTIONS_IN_AN_ELEMENT_OF_TYPEQUOTLISTQUOT_THAT_IS_THAT_THE_ELEMENT_IS_A_SELECT_LIST="Requires the value entered be one of the options in an element of type=&quot;list&quot;: that is, that the element is a select list."
@@ -7973,6 +8081,8 @@ COM_COMPONENTBUILDER_SERVERS_N_ITEMS_CHECKED_IN_1="%d Server successfully checke
COM_COMPONENTBUILDER_SERVERS_N_ITEMS_CHECKED_IN_MORE="%d Servers successfully checked in." COM_COMPONENTBUILDER_SERVERS_N_ITEMS_CHECKED_IN_MORE="%d Servers successfully checked in."
COM_COMPONENTBUILDER_SERVERS_N_ITEMS_DELETED="%s Servers deleted." COM_COMPONENTBUILDER_SERVERS_N_ITEMS_DELETED="%s Servers deleted."
COM_COMPONENTBUILDER_SERVERS_N_ITEMS_DELETED_1="%s Server deleted." COM_COMPONENTBUILDER_SERVERS_N_ITEMS_DELETED_1="%s Server deleted."
COM_COMPONENTBUILDER_SERVERS_N_ITEMS_FAILED_PUBLISHING="%s Servers failed publishing."
COM_COMPONENTBUILDER_SERVERS_N_ITEMS_FAILED_PUBLISHING_1="%s Server failed publishing."
COM_COMPONENTBUILDER_SERVERS_N_ITEMS_FEATURED="%s Servers featured." COM_COMPONENTBUILDER_SERVERS_N_ITEMS_FEATURED="%s Servers featured."
COM_COMPONENTBUILDER_SERVERS_N_ITEMS_FEATURED_1="%s Server featured." COM_COMPONENTBUILDER_SERVERS_N_ITEMS_FEATURED_1="%s Server featured."
COM_COMPONENTBUILDER_SERVERS_N_ITEMS_PUBLISHED="%s Servers published." COM_COMPONENTBUILDER_SERVERS_N_ITEMS_PUBLISHED="%s Servers published."
@@ -8135,6 +8245,8 @@ COM_COMPONENTBUILDER_SITE_VIEWS_N_ITEMS_CHECKED_IN_1="%d Site View successfully
COM_COMPONENTBUILDER_SITE_VIEWS_N_ITEMS_CHECKED_IN_MORE="%d Site Views successfully checked in." COM_COMPONENTBUILDER_SITE_VIEWS_N_ITEMS_CHECKED_IN_MORE="%d Site Views successfully checked in."
COM_COMPONENTBUILDER_SITE_VIEWS_N_ITEMS_DELETED="%s Site Views deleted." COM_COMPONENTBUILDER_SITE_VIEWS_N_ITEMS_DELETED="%s Site Views deleted."
COM_COMPONENTBUILDER_SITE_VIEWS_N_ITEMS_DELETED_1="%s Site View deleted." COM_COMPONENTBUILDER_SITE_VIEWS_N_ITEMS_DELETED_1="%s Site View deleted."
COM_COMPONENTBUILDER_SITE_VIEWS_N_ITEMS_FAILED_PUBLISHING="%s Site Views failed publishing."
COM_COMPONENTBUILDER_SITE_VIEWS_N_ITEMS_FAILED_PUBLISHING_1="%s Site View failed publishing."
COM_COMPONENTBUILDER_SITE_VIEWS_N_ITEMS_FEATURED="%s Site Views featured." COM_COMPONENTBUILDER_SITE_VIEWS_N_ITEMS_FEATURED="%s Site Views featured."
COM_COMPONENTBUILDER_SITE_VIEWS_N_ITEMS_FEATURED_1="%s Site View featured." COM_COMPONENTBUILDER_SITE_VIEWS_N_ITEMS_FEATURED_1="%s Site View featured."
COM_COMPONENTBUILDER_SITE_VIEWS_N_ITEMS_PUBLISHED="%s Site Views published." COM_COMPONENTBUILDER_SITE_VIEWS_N_ITEMS_PUBLISHED="%s Site Views published."
@@ -8597,6 +8709,8 @@ COM_COMPONENTBUILDER_SNIPPETS_N_ITEMS_CHECKED_IN_1="%d Snippet successfully chec
COM_COMPONENTBUILDER_SNIPPETS_N_ITEMS_CHECKED_IN_MORE="%d Snippets successfully checked in." COM_COMPONENTBUILDER_SNIPPETS_N_ITEMS_CHECKED_IN_MORE="%d Snippets successfully checked in."
COM_COMPONENTBUILDER_SNIPPETS_N_ITEMS_DELETED="%s Snippets deleted." COM_COMPONENTBUILDER_SNIPPETS_N_ITEMS_DELETED="%s Snippets deleted."
COM_COMPONENTBUILDER_SNIPPETS_N_ITEMS_DELETED_1="%s Snippet deleted." COM_COMPONENTBUILDER_SNIPPETS_N_ITEMS_DELETED_1="%s Snippet deleted."
COM_COMPONENTBUILDER_SNIPPETS_N_ITEMS_FAILED_PUBLISHING="%s Snippets failed publishing."
COM_COMPONENTBUILDER_SNIPPETS_N_ITEMS_FAILED_PUBLISHING_1="%s Snippet failed publishing."
COM_COMPONENTBUILDER_SNIPPETS_N_ITEMS_FEATURED="%s Snippets featured." COM_COMPONENTBUILDER_SNIPPETS_N_ITEMS_FEATURED="%s Snippets featured."
COM_COMPONENTBUILDER_SNIPPETS_N_ITEMS_FEATURED_1="%s Snippet featured." COM_COMPONENTBUILDER_SNIPPETS_N_ITEMS_FEATURED_1="%s Snippet featured."
COM_COMPONENTBUILDER_SNIPPETS_N_ITEMS_PUBLISHED="%s Snippets published." COM_COMPONENTBUILDER_SNIPPETS_N_ITEMS_PUBLISHED="%s Snippets published."
@@ -8706,6 +8820,8 @@ COM_COMPONENTBUILDER_SNIPPET_TYPES_N_ITEMS_CHECKED_IN_1="%d Snippet Type success
COM_COMPONENTBUILDER_SNIPPET_TYPES_N_ITEMS_CHECKED_IN_MORE="%d Snippet Types successfully checked in." COM_COMPONENTBUILDER_SNIPPET_TYPES_N_ITEMS_CHECKED_IN_MORE="%d Snippet Types successfully checked in."
COM_COMPONENTBUILDER_SNIPPET_TYPES_N_ITEMS_DELETED="%s Snippet Types deleted." COM_COMPONENTBUILDER_SNIPPET_TYPES_N_ITEMS_DELETED="%s Snippet Types deleted."
COM_COMPONENTBUILDER_SNIPPET_TYPES_N_ITEMS_DELETED_1="%s Snippet Type deleted." COM_COMPONENTBUILDER_SNIPPET_TYPES_N_ITEMS_DELETED_1="%s Snippet Type deleted."
COM_COMPONENTBUILDER_SNIPPET_TYPES_N_ITEMS_FAILED_PUBLISHING="%s Snippet Types failed publishing."
COM_COMPONENTBUILDER_SNIPPET_TYPES_N_ITEMS_FAILED_PUBLISHING_1="%s Snippet Type failed publishing."
COM_COMPONENTBUILDER_SNIPPET_TYPES_N_ITEMS_FEATURED="%s Snippet Types featured." COM_COMPONENTBUILDER_SNIPPET_TYPES_N_ITEMS_FEATURED="%s Snippet Types featured."
COM_COMPONENTBUILDER_SNIPPET_TYPES_N_ITEMS_FEATURED_1="%s Snippet Type featured." COM_COMPONENTBUILDER_SNIPPET_TYPES_N_ITEMS_FEATURED_1="%s Snippet Type featured."
COM_COMPONENTBUILDER_SNIPPET_TYPES_N_ITEMS_PUBLISHED="%s Snippet Types published." COM_COMPONENTBUILDER_SNIPPET_TYPES_N_ITEMS_PUBLISHED="%s Snippet Types published."
@@ -8841,6 +8957,8 @@ COM_COMPONENTBUILDER_TEMPLATES_N_ITEMS_CHECKED_IN_1="%d Template successfully ch
COM_COMPONENTBUILDER_TEMPLATES_N_ITEMS_CHECKED_IN_MORE="%d Templates successfully checked in." COM_COMPONENTBUILDER_TEMPLATES_N_ITEMS_CHECKED_IN_MORE="%d Templates successfully checked in."
COM_COMPONENTBUILDER_TEMPLATES_N_ITEMS_DELETED="%s Templates deleted." COM_COMPONENTBUILDER_TEMPLATES_N_ITEMS_DELETED="%s Templates deleted."
COM_COMPONENTBUILDER_TEMPLATES_N_ITEMS_DELETED_1="%s Template deleted." COM_COMPONENTBUILDER_TEMPLATES_N_ITEMS_DELETED_1="%s Template deleted."
COM_COMPONENTBUILDER_TEMPLATES_N_ITEMS_FAILED_PUBLISHING="%s Templates failed publishing."
COM_COMPONENTBUILDER_TEMPLATES_N_ITEMS_FAILED_PUBLISHING_1="%s Template failed publishing."
COM_COMPONENTBUILDER_TEMPLATES_N_ITEMS_FEATURED="%s Templates featured." COM_COMPONENTBUILDER_TEMPLATES_N_ITEMS_FEATURED="%s Templates featured."
COM_COMPONENTBUILDER_TEMPLATES_N_ITEMS_FEATURED_1="%s Template featured." COM_COMPONENTBUILDER_TEMPLATES_N_ITEMS_FEATURED_1="%s Template featured."
COM_COMPONENTBUILDER_TEMPLATES_N_ITEMS_PUBLISHED="%s Templates published." COM_COMPONENTBUILDER_TEMPLATES_N_ITEMS_PUBLISHED="%s Templates published."
@@ -9104,6 +9222,8 @@ COM_COMPONENTBUILDER_VALIDATION_RULES_N_ITEMS_CHECKED_IN_1="%d Validation Rule s
COM_COMPONENTBUILDER_VALIDATION_RULES_N_ITEMS_CHECKED_IN_MORE="%d Validation Rules successfully checked in." COM_COMPONENTBUILDER_VALIDATION_RULES_N_ITEMS_CHECKED_IN_MORE="%d Validation Rules successfully checked in."
COM_COMPONENTBUILDER_VALIDATION_RULES_N_ITEMS_DELETED="%s Validation Rules deleted." COM_COMPONENTBUILDER_VALIDATION_RULES_N_ITEMS_DELETED="%s Validation Rules deleted."
COM_COMPONENTBUILDER_VALIDATION_RULES_N_ITEMS_DELETED_1="%s Validation Rule deleted." COM_COMPONENTBUILDER_VALIDATION_RULES_N_ITEMS_DELETED_1="%s Validation Rule deleted."
COM_COMPONENTBUILDER_VALIDATION_RULES_N_ITEMS_FAILED_PUBLISHING="%s Validation Rules failed publishing."
COM_COMPONENTBUILDER_VALIDATION_RULES_N_ITEMS_FAILED_PUBLISHING_1="%s Validation Rule failed publishing."
COM_COMPONENTBUILDER_VALIDATION_RULES_N_ITEMS_FEATURED="%s Validation Rules featured." COM_COMPONENTBUILDER_VALIDATION_RULES_N_ITEMS_FEATURED="%s Validation Rules featured."
COM_COMPONENTBUILDER_VALIDATION_RULES_N_ITEMS_FEATURED_1="%s Validation Rule featured." COM_COMPONENTBUILDER_VALIDATION_RULES_N_ITEMS_FEATURED_1="%s Validation Rule featured."
COM_COMPONENTBUILDER_VALIDATION_RULES_N_ITEMS_PUBLISHED="%s Validation Rules published." COM_COMPONENTBUILDER_VALIDATION_RULES_N_ITEMS_PUBLISHED="%s Validation Rules published."

View File

@@ -13,7 +13,7 @@
defined('_JEXEC') or die('Restricted access'); defined('_JEXEC') or die('Restricted access');
// set the defaults // set the defaults
$items = $displayData->vyffields; $items = $displayData->vycfields;
$user = JFactory::getUser(); $user = JFactory::getUser();
$id = $displayData->item->id; $id = $displayData->item->id;
// set the edit URL // set the edit URL
@@ -118,31 +118,31 @@ $can = ComponentbuilderHelper::getActions('field');
<?php echo JText::_($item->store); ?> <?php echo JText::_($item->store); ?>
</td> </td>
<td> <td>
<?php if ($user->authorise('core.edit', 'com_componentbuilder.fields.category.' . (int)$item->catid)): ?> <?php if ($user->authorise('core.edit', 'com_componentbuilder.field.category.' . (int)$item->catid)): ?>
<a href="index.php?option=com_categories&task=category.edit&id=<?php echo (int)$item->catid; ?>&extension=com_componentbuilder.fields"><?php echo $displayData->escape($item->category_title); ?></a> <a href="index.php?option=com_categories&task=category.edit&id=<?php echo (int)$item->catid; ?>&extension=com_componentbuilder.field"><?php echo $displayData->escape($item->category_title); ?></a>
<?php else: ?> <?php else: ?>
<?php echo $displayData->escape($item->category_title); ?> <?php echo $displayData->escape($item->category_title); ?>
<?php endif; ?> <?php endif; ?>
</td> </td>
<?php if ($item->published == 1):?> <?php if ($item->published == 1): ?>
<td class="center" data-sort-value="1"> <td class="center" data-sort-value="1">
<span class="status-metro status-published" title="<?php echo JText::_('COM_COMPONENTBUILDER_PUBLISHED'); ?>"> <span class="status-metro status-published" title="<?php echo JText::_('COM_COMPONENTBUILDER_PUBLISHED'); ?>">
<?php echo JText::_('COM_COMPONENTBUILDER_PUBLISHED'); ?> <?php echo JText::_('COM_COMPONENTBUILDER_PUBLISHED'); ?>
</span> </span>
</td> </td>
<?php elseif ($item->published == 0):?> <?php elseif ($item->published == 0): ?>
<td class="center" data-sort-value="2"> <td class="center" data-sort-value="2">
<span class="status-metro status-inactive" title="<?php echo JText::_('COM_COMPONENTBUILDER_INACTIVE'); ?>"> <span class="status-metro status-inactive" title="<?php echo JText::_('COM_COMPONENTBUILDER_INACTIVE'); ?>">
<?php echo JText::_('COM_COMPONENTBUILDER_INACTIVE'); ?> <?php echo JText::_('COM_COMPONENTBUILDER_INACTIVE'); ?>
</span> </span>
</td> </td>
<?php elseif ($item->published == 2):?> <?php elseif ($item->published == 2): ?>
<td class="center" data-sort-value="3"> <td class="center" data-sort-value="3">
<span class="status-metro status-archived" title="<?php echo JText::_('COM_COMPONENTBUILDER_ARCHIVED'); ?>"> <span class="status-metro status-archived" title="<?php echo JText::_('COM_COMPONENTBUILDER_ARCHIVED'); ?>">
<?php echo JText::_('COM_COMPONENTBUILDER_ARCHIVED'); ?> <?php echo JText::_('COM_COMPONENTBUILDER_ARCHIVED'); ?>
</span> </span>
</td> </td>
<?php elseif ($item->published == -2):?> <?php elseif ($item->published == -2): ?>
<td class="center" data-sort-value="4"> <td class="center" data-sort-value="4">
<span class="status-metro status-trashed" title="<?php echo JText::_('COM_COMPONENTBUILDER_TRASHED'); ?>"> <span class="status-metro status-trashed" title="<?php echo JText::_('COM_COMPONENTBUILDER_TRASHED'); ?>">
<?php echo JText::_('COM_COMPONENTBUILDER_TRASHED'); ?> <?php echo JText::_('COM_COMPONENTBUILDER_TRASHED'); ?>

View File

@@ -31,13 +31,13 @@ $fields = $displayData->get($fields_tab_layout) ?: array(
'component_version', 'component_version',
'debug_linenr', 'debug_linenr',
'add_placeholders', 'add_placeholders',
'remove_line_breaks',
'mvc_versiondate', 'mvc_versiondate',
'note_version_options_one', 'note_version_options_one',
'note_version_options_two', 'note_version_options_two',
'note_version_options_three', 'note_version_options_three',
'short_description', 'short_description',
'description', 'description'
'copyright'
); );
$hiddenFields = $displayData->get('hidden_fields') ?: array(); $hiddenFields = $displayData->get('hidden_fields') ?: array();

View File

@@ -38,7 +38,8 @@ $fields = $displayData->get($fields_tab_layout) ?: array(
'whmcs_buy_link', 'whmcs_buy_link',
'license', 'license',
'bom', 'bom',
'image' 'image',
'copyright'
); );
$hiddenFields = $displayData->get('hidden_fields') ?: array(); $hiddenFields = $displayData->get('hidden_fields') ?: array();

View File

@@ -0,0 +1,95 @@
<?php
/**
* @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>
* @copyright Copyright (C) 2015 - 2020 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('JPATH_BASE') or die('Restricted access');
/**
* Make thing clear
*
* @var JForm $tmpl The Empty form for template
* @var array $forms Array of JForm instances for render the rows
* @var bool $multiple The multiple state for the form field
* @var int $min Count of minimum repeating in multiple mode
* @var int $max Count of maximum repeating in multiple mode
* @var string $fieldname The field name
* @var string $control The forms control
* @var string $label The field label
* @var string $description The field description
* @var array $buttons Array of the buttons that will be rendered
* @var bool $groupByFieldset Whether group the subform fields by it`s fieldset
*/
extract($displayData);
// Add script
JHtml::_('jquery.ui', array('core', 'sortable'));
JHtml::_('script', 'system/subform-repeatable.js', array('version' => 'auto', 'relative' => true));
$sublayout = 'sectionjcb';
?>
<div class="row-fluid">
<div class="subform-repeatable-wrapper subform-layout">
<div class="subform-repeatable"
data-bt-add="a.group-add-<?php echo $unique_subform_id; ?>"
data-bt-remove="a.group-remove-<?php echo $unique_subform_id; ?>"
data-bt-move="a.group-move-<?php echo $unique_subform_id; ?>"
data-repeatable-element="div.subform-repeatable-jcb-group-<?php echo $unique_subform_id; ?>"
data-minimum="<?php echo $min; ?>" data-maximum="<?php echo $max; ?>"
>
<?php if (!empty($buttons['add'])) : ?>
<div class="btn-toolbar">
<div class="btn-group">
<a class="btn btn-mini button btn-success group-add group-add-<?php echo $unique_subform_id; ?>" aria-label="<?php echo JText::_('COM_COMPONENTBUILDER_ADD'); ?>">
<span class="icon-plus" aria-hidden="true"></span>
</a>
</div>
</div>
<?php endif; ?>
<?php
foreach ($forms as $k => $form) :
echo JLayoutHelper::render(
$sublayout,
array(
'form' => $form,
'basegroup' => $fieldname,
'group' => $fieldname . $k,
'buttons' => $buttons,
'unique_subform_id' => $unique_subform_id
)
);
endforeach;
?>
<?php if ($multiple) : ?>
<template class="subform-repeatable-template-section" style="display: none;"><?php
// Use str_replace to escape HTML in a simple way, it need for IE compatibility, and should be removed later
echo str_replace(
array('<', '>'),
array('SUBFORMLT', 'SUBFORMGT'),
trim(
JLayoutHelper::render(
$sublayout,
array(
'form' => $tmpl,
'basegroup' => $fieldname,
'group' => $fieldname . 'X',
'buttons' => $buttons,
'unique_subform_id' => $unique_subform_id
)
)
)
);
?></template>
<?php endif; ?>
</div>
</div>
</div>

View File

@@ -0,0 +1,62 @@
<?php
/**
* @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>
* @copyright Copyright (C) 2015 - 2020 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('JPATH_BASE') or die('Restricted access');
/**
* Make thing clear
*
* @var JForm $form The form instance for render the section
* @var string $basegroup The base group name
* @var string $group Current group name
* @var array $buttons Array of the buttons that will be rendered
*/
extract($displayData);
?>
<div
class="subform-repeatable-group subform-repeatable-jcb-group-<?php echo $unique_subform_id; ?>"
data-base-name="<?php echo $basegroup; ?>"
data-group="<?php echo $group; ?>"
>
<?php if (!empty($buttons)) : ?>
<div class="btn-toolbar text-right">
<div class="btn-group">
<?php if (!empty($buttons['add'])) : ?>
<a class="btn btn-mini button btn-success group-add group-add-<?php echo $unique_subform_id; ?>" aria-label="<?php echo JText::_('COM_COMPONENTBUILDER_ADD'); ?>">
<span class="icon-plus" aria-hidden="true"></span>
</a>
<?php endif; ?>
<?php if (!empty($buttons['remove'])) : ?>
<a class="btn btn-mini button btn-danger group-remove group-remove-<?php echo $unique_subform_id; ?>" aria-label="<?php echo JText::_('COM_COMPONENTBUILDER_REMOVE'); ?>">
<span class="icon-minus" aria-hidden="true"></span>
</a>
<?php endif; ?>
<?php if (!empty($buttons['move'])) : ?>
<a class="btn btn-mini button btn-primary group-move group-move-<?php echo $unique_subform_id; ?>" aria-label="<?php echo JText::_('COM_COMPONENTBUILDER_MOVE'); ?>">
<span class="icon-move" aria-hidden="true"></span>
</a>
<?php endif; ?>
</div>
</div>
<?php endif; ?>
<div data-uk-grid-margin="" class="uk-grid">
<?php foreach ($form->getGroup('') as $field) : ?>
<div class="uk-width-medium-1-4 uk-width-large-1-5">
<div class="uk-panel">
<?php echo $field->renderField(); ?>
</div>
</div>
<?php endforeach; ?>
</div>
</div>

View File

@@ -13,7 +13,7 @@
defined('_JEXEC') or die('Restricted access'); defined('_JEXEC') or die('Restricted access');
// set the defaults // set the defaults
$items = $displayData->vyplinked_components; $items = $displayData->vymlinked_components;
$user = JFactory::getUser(); $user = JFactory::getUser();
$id = $displayData->item->id; $id = $displayData->item->id;
// set the edit URL // set the edit URL
@@ -217,25 +217,25 @@ else
<?php endif; ?> <?php endif; ?>
</div> </div>
</td> </td>
<?php if ($item->published == 1):?> <?php if ($item->published == 1): ?>
<td class="center" data-sort-value="1"> <td class="center" data-sort-value="1">
<span class="status-metro status-published" title="<?php echo JText::_('COM_COMPONENTBUILDER_PUBLISHED'); ?>"> <span class="status-metro status-published" title="<?php echo JText::_('COM_COMPONENTBUILDER_PUBLISHED'); ?>">
<?php echo JText::_('COM_COMPONENTBUILDER_PUBLISHED'); ?> <?php echo JText::_('COM_COMPONENTBUILDER_PUBLISHED'); ?>
</span> </span>
</td> </td>
<?php elseif ($item->published == 0):?> <?php elseif ($item->published == 0): ?>
<td class="center" data-sort-value="2"> <td class="center" data-sort-value="2">
<span class="status-metro status-inactive" title="<?php echo JText::_('COM_COMPONENTBUILDER_INACTIVE'); ?>"> <span class="status-metro status-inactive" title="<?php echo JText::_('COM_COMPONENTBUILDER_INACTIVE'); ?>">
<?php echo JText::_('COM_COMPONENTBUILDER_INACTIVE'); ?> <?php echo JText::_('COM_COMPONENTBUILDER_INACTIVE'); ?>
</span> </span>
</td> </td>
<?php elseif ($item->published == 2):?> <?php elseif ($item->published == 2): ?>
<td class="center" data-sort-value="3"> <td class="center" data-sort-value="3">
<span class="status-metro status-archived" title="<?php echo JText::_('COM_COMPONENTBUILDER_ARCHIVED'); ?>"> <span class="status-metro status-archived" title="<?php echo JText::_('COM_COMPONENTBUILDER_ARCHIVED'); ?>">
<?php echo JText::_('COM_COMPONENTBUILDER_ARCHIVED'); ?> <?php echo JText::_('COM_COMPONENTBUILDER_ARCHIVED'); ?>
</span> </span>
</td> </td>
<?php elseif ($item->published == -2):?> <?php elseif ($item->published == -2): ?>
<td class="center" data-sort-value="4"> <td class="center" data-sort-value="4">
<span class="status-metro status-trashed" title="<?php echo JText::_('COM_COMPONENTBUILDER_TRASHED'); ?>"> <span class="status-metro status-trashed" title="<?php echo JText::_('COM_COMPONENTBUILDER_TRASHED'); ?>">
<?php echo JText::_('COM_COMPONENTBUILDER_TRASHED'); ?> <?php echo JText::_('COM_COMPONENTBUILDER_TRASHED'); ?>

View File

@@ -12,8 +12,8 @@
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access'); defined('_JEXEC') or die('Restricted access');
use Joomla\Registry\Registry; use Joomla\Registry\Registry;
use Joomla\String\StringHelper; use Joomla\String\StringHelper;
use Joomla\Utilities\ArrayHelper; use Joomla\Utilities\ArrayHelper;
/** /**
@@ -225,6 +225,9 @@ class ComponentbuilderModelAdmin_custom_tabs extends JModelAdmin
$form->setValue($redirectedField, null, $redirectedValue); $form->setValue($redirectedField, null, $redirectedValue);
} }
} }
// update the tabs (sub form) layout
$form->setFieldAttribute('tabs', 'layout', ComponentbuilderHelper::getSubformLayout('admin_custom_tabs', 'tabs'));
return $form; return $form;
} }

View File

@@ -12,8 +12,8 @@
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access'); defined('_JEXEC') or die('Restricted access');
use Joomla\Registry\Registry; use Joomla\Registry\Registry;
use Joomla\String\StringHelper; use Joomla\String\StringHelper;
use Joomla\Utilities\ArrayHelper; use Joomla\Utilities\ArrayHelper;
/** /**
@@ -246,6 +246,9 @@ class ComponentbuilderModelAdmin_fields extends JModelAdmin
$form->setValue($redirectedField, null, $redirectedValue); $form->setValue($redirectedField, null, $redirectedValue);
} }
} }
// update the addfields (sub form) layout
$form->setFieldAttribute('addfields', 'layout', ComponentbuilderHelper::getSubformLayout('admin_fields', 'addfields'));
return $form; return $form;
} }

View File

@@ -12,8 +12,8 @@
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access'); defined('_JEXEC') or die('Restricted access');
use Joomla\Registry\Registry; use Joomla\Registry\Registry;
use Joomla\String\StringHelper; use Joomla\String\StringHelper;
use Joomla\Utilities\ArrayHelper; use Joomla\Utilities\ArrayHelper;
/** /**
@@ -246,6 +246,9 @@ class ComponentbuilderModelAdmin_fields_conditions extends JModelAdmin
$form->setValue($redirectedField, null, $redirectedValue); $form->setValue($redirectedField, null, $redirectedValue);
} }
} }
// update the addconditions (sub form) layout
$form->setFieldAttribute('addconditions', 'layout', ComponentbuilderHelper::getSubformLayout('admin_fields_conditions', 'addconditions'));
return $form; return $form;
} }

View File

@@ -12,8 +12,8 @@
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access'); defined('_JEXEC') or die('Restricted access');
use Joomla\Registry\Registry; use Joomla\Registry\Registry;
use Joomla\String\StringHelper; use Joomla\String\StringHelper;
use Joomla\Utilities\ArrayHelper; use Joomla\Utilities\ArrayHelper;
/** /**
@@ -308,6 +308,9 @@ class ComponentbuilderModelAdmin_fields_relations extends JModelAdmin
$form->setValue($redirectedField, null, $redirectedValue); $form->setValue($redirectedField, null, $redirectedValue);
} }
} }
// update the addrelations (sub form) layout
$form->setFieldAttribute('addrelations', 'layout', ComponentbuilderHelper::getSubformLayout('admin_fields_relations', 'addrelations'));
return $form; return $form;
} }

View File

@@ -12,8 +12,8 @@
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access'); defined('_JEXEC') or die('Restricted access');
use Joomla\Registry\Registry; use Joomla\Registry\Registry;
use Joomla\String\StringHelper; use Joomla\String\StringHelper;
use Joomla\Utilities\ArrayHelper; use Joomla\Utilities\ArrayHelper;
/** /**
@@ -800,8 +800,8 @@ class ComponentbuilderModelAdmin_view extends JModelAdmin
} }
// Only load the GUID if new item // Only load the GUID if new item (or empty)
if (0 == $id) if (0 == $id || !($val = $form->getValue('guid')))
{ {
$form->setValue('guid', null, ComponentbuilderHelper::GUID()); $form->setValue('guid', null, ComponentbuilderHelper::GUID());
} }
@@ -984,7 +984,7 @@ class ComponentbuilderModelAdmin_view extends JModelAdmin
public function validate($form, $data, $group = null) public function validate($form, $data, $group = null)
{ {
// check if the not_required field is set // check if the not_required field is set
if (ComponentbuilderHelper::checkString($data['not_required'])) if (isset($data['not_required']) && ComponentbuilderHelper::checkString($data['not_required']))
{ {
$requiredFields = (array) explode(',',(string) $data['not_required']); $requiredFields = (array) explode(',',(string) $data['not_required']);
$requiredFields = array_unique($requiredFields); $requiredFields = array_unique($requiredFields);
@@ -1491,8 +1491,15 @@ class ComponentbuilderModelAdmin_view extends JModelAdmin
} }
// Set the GUID if empty or not valid // Set the GUID if empty or not valid
if (isset($data['guid']) && !ComponentbuilderHelper::validGUID($data['guid'], "admin_view", $data['id'])) if (empty($data['guid']) && $data['id'] > 0)
{ {
// get the existing one
$data['guid'] = (string) ComponentbuilderHelper::getVar('admin_view', $data['id'], 'id', 'guid');
}
// Set the GUID if empty or not valid
while (!ComponentbuilderHelper::validGUID($data['guid'], "admin_view", $data['id']))
{
// must always be set
$data['guid'] = (string) ComponentbuilderHelper::GUID(); $data['guid'] = (string) ComponentbuilderHelper::GUID();
} }

View File

@@ -342,7 +342,7 @@ class ComponentbuilderModelAdmin_views extends JModelList
public function getExportData($pks, $user = null) public function getExportData($pks, $user = null)
{ {
// setup the query // setup the query
if (ComponentbuilderHelper::checkArray($pks)) if (($pks_size = ComponentbuilderHelper::checkArray($pks)) !== false || 'bulk' === $pks)
{ {
// Set a value to know this is export method. (USE IN CUSTOM CODE TO ALTER OUTCOME) // Set a value to know this is export method. (USE IN CUSTOM CODE TO ALTER OUTCOME)
$_export = true; $_export = true;
@@ -360,7 +360,24 @@ class ComponentbuilderModelAdmin_views extends JModelList
// From the componentbuilder_admin_view table // From the componentbuilder_admin_view table
$query->from($db->quoteName('#__componentbuilder_admin_view', 'a')); $query->from($db->quoteName('#__componentbuilder_admin_view', 'a'));
$query->where('a.id IN (' . implode(',',$pks) . ')'); // The bulk export path
if ('bulk' === $pks)
{
$query->where('a.id > 0');
}
// A large array of ID's will not work out well
elseif ($pks_size > 500)
{
// Use lowest ID
$query->where('a.id >= ' . (int) min($pks));
// Use highest ID
$query->where('a.id <= ' . (int) max($pks));
}
// The normal default path
else
{
$query->where('a.id IN (' . implode(',',$pks) . ')');
}
// Implement View Level Access // Implement View Level Access
if (!$user->authorise('core.options', 'com_componentbuilder')) if (!$user->authorise('core.options', 'com_componentbuilder'))
{ {

View File

@@ -2494,7 +2494,7 @@ class ComponentbuilderModelAjax extends JModelList
'php_batchmove', 'php_before_delete', 'php_before_publish', 'php_before_save', 'php_controller', 'php_batchmove', 'php_before_delete', 'php_before_publish', 'php_before_save', 'php_controller',
'php_controller_list', 'php_document', 'php_getitem', 'php_getitems', 'php_getitems_after_all', 'php_controller_list', 'php_document', 'php_getitem', 'php_getitems', 'php_getitems_after_all',
'php_getlistquery', 'php_import', 'php_import_display', 'php_import_ext', 'php_import_headers', 'php_getform', 'php_getlistquery', 'php_import', 'php_import_display', 'php_import_ext', 'php_import_headers', 'php_getform',
'php_import_save', 'php_import_setdata', 'php_model', 'php_model_list', 'php_postsavehook', 'php_save'), 'php_import_save', 'php_import_setdata', 'php_model', 'php_model_list', 'php_postsavehook', 'php_save', 'sql'),
'views' => 'admin_views', 'views' => 'admin_views',
'not_base64' => array(), 'not_base64' => array(),
'name' => 'system_name' 'name' => 'system_name'

View File

@@ -12,8 +12,8 @@
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access'); defined('_JEXEC') or die('Restricted access');
use Joomla\Registry\Registry; use Joomla\Registry\Registry;
use Joomla\String\StringHelper; use Joomla\String\StringHelper;
use Joomla\Utilities\ArrayHelper; use Joomla\Utilities\ArrayHelper;
/** /**

View File

@@ -12,8 +12,8 @@
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access'); defined('_JEXEC') or die('Restricted access');
use Joomla\Registry\Registry; use Joomla\Registry\Registry;
use Joomla\String\StringHelper; use Joomla\String\StringHelper;
use Joomla\Utilities\ArrayHelper; use Joomla\Utilities\ArrayHelper;
/** /**
@@ -342,8 +342,8 @@ class ComponentbuilderModelClass_method extends JModelAdmin
} }
// Only load the GUID if new item // Only load the GUID if new item (or empty)
if (0 == $id) if (0 == $id || !($val = $form->getValue('guid')))
{ {
$form->setValue('guid', null, ComponentbuilderHelper::GUID()); $form->setValue('guid', null, ComponentbuilderHelper::GUID());
} }
@@ -526,7 +526,7 @@ class ComponentbuilderModelClass_method extends JModelAdmin
public function validate($form, $data, $group = null) public function validate($form, $data, $group = null)
{ {
// check if the not_required field is set // check if the not_required field is set
if (ComponentbuilderHelper::checkString($data['not_required'])) if (isset($data['not_required']) && ComponentbuilderHelper::checkString($data['not_required']))
{ {
$requiredFields = (array) explode(',',(string) $data['not_required']); $requiredFields = (array) explode(',',(string) $data['not_required']);
$requiredFields = array_unique($requiredFields); $requiredFields = array_unique($requiredFields);
@@ -972,8 +972,15 @@ class ComponentbuilderModelClass_method extends JModelAdmin
$data['name'] = ComponentbuilderHelper::safeClassFunctionName($data['name']); $data['name'] = ComponentbuilderHelper::safeClassFunctionName($data['name']);
// Set the GUID if empty or not valid // Set the GUID if empty or not valid
if (isset($data['guid']) && !ComponentbuilderHelper::validGUID($data['guid'], "class_method", $data['id'])) if (empty($data['guid']) && $data['id'] > 0)
{ {
// get the existing one
$data['guid'] = (string) ComponentbuilderHelper::getVar('class_method', $data['id'], 'id', 'guid');
}
// Set the GUID if empty or not valid
while (!ComponentbuilderHelper::validGUID($data['guid'], "class_method", $data['id']))
{
// must always be set
$data['guid'] = (string) ComponentbuilderHelper::GUID(); $data['guid'] = (string) ComponentbuilderHelper::GUID();
} }

View File

@@ -269,7 +269,7 @@ class ComponentbuilderModelClass_methods extends JModelList
public function getExportData($pks, $user = null) public function getExportData($pks, $user = null)
{ {
// setup the query // setup the query
if (ComponentbuilderHelper::checkArray($pks)) if (($pks_size = ComponentbuilderHelper::checkArray($pks)) !== false || 'bulk' === $pks)
{ {
// Set a value to know this is export method. (USE IN CUSTOM CODE TO ALTER OUTCOME) // Set a value to know this is export method. (USE IN CUSTOM CODE TO ALTER OUTCOME)
$_export = true; $_export = true;
@@ -287,7 +287,24 @@ class ComponentbuilderModelClass_methods extends JModelList
// From the componentbuilder_class_method table // From the componentbuilder_class_method table
$query->from($db->quoteName('#__componentbuilder_class_method', 'a')); $query->from($db->quoteName('#__componentbuilder_class_method', 'a'));
$query->where('a.id IN (' . implode(',',$pks) . ')'); // The bulk export path
if ('bulk' === $pks)
{
$query->where('a.id > 0');
}
// A large array of ID's will not work out well
elseif ($pks_size > 500)
{
// Use lowest ID
$query->where('a.id >= ' . (int) min($pks));
// Use highest ID
$query->where('a.id <= ' . (int) max($pks));
}
// The normal default path
else
{
$query->where('a.id IN (' . implode(',',$pks) . ')');
}
// Implement View Level Access // Implement View Level Access
if (!$user->authorise('core.options', 'com_componentbuilder')) if (!$user->authorise('core.options', 'com_componentbuilder'))
{ {

View File

@@ -269,7 +269,7 @@ class ComponentbuilderModelClass_properties extends JModelList
public function getExportData($pks, $user = null) public function getExportData($pks, $user = null)
{ {
// setup the query // setup the query
if (ComponentbuilderHelper::checkArray($pks)) if (($pks_size = ComponentbuilderHelper::checkArray($pks)) !== false || 'bulk' === $pks)
{ {
// Set a value to know this is export method. (USE IN CUSTOM CODE TO ALTER OUTCOME) // Set a value to know this is export method. (USE IN CUSTOM CODE TO ALTER OUTCOME)
$_export = true; $_export = true;
@@ -287,7 +287,24 @@ class ComponentbuilderModelClass_properties extends JModelList
// From the componentbuilder_class_property table // From the componentbuilder_class_property table
$query->from($db->quoteName('#__componentbuilder_class_property', 'a')); $query->from($db->quoteName('#__componentbuilder_class_property', 'a'));
$query->where('a.id IN (' . implode(',',$pks) . ')'); // The bulk export path
if ('bulk' === $pks)
{
$query->where('a.id > 0');
}
// A large array of ID's will not work out well
elseif ($pks_size > 500)
{
// Use lowest ID
$query->where('a.id >= ' . (int) min($pks));
// Use highest ID
$query->where('a.id <= ' . (int) max($pks));
}
// The normal default path
else
{
$query->where('a.id IN (' . implode(',',$pks) . ')');
}
// Implement View Level Access // Implement View Level Access
if (!$user->authorise('core.options', 'com_componentbuilder')) if (!$user->authorise('core.options', 'com_componentbuilder'))
{ {

View File

@@ -12,8 +12,8 @@
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access'); defined('_JEXEC') or die('Restricted access');
use Joomla\Registry\Registry; use Joomla\Registry\Registry;
use Joomla\String\StringHelper; use Joomla\String\StringHelper;
use Joomla\Utilities\ArrayHelper; use Joomla\Utilities\ArrayHelper;
/** /**
@@ -333,8 +333,8 @@ class ComponentbuilderModelClass_property extends JModelAdmin
} }
// Only load the GUID if new item // Only load the GUID if new item (or empty)
if (0 == $id) if (0 == $id || !($val = $form->getValue('guid')))
{ {
$form->setValue('guid', null, ComponentbuilderHelper::GUID()); $form->setValue('guid', null, ComponentbuilderHelper::GUID());
} }
@@ -517,7 +517,7 @@ class ComponentbuilderModelClass_property extends JModelAdmin
public function validate($form, $data, $group = null) public function validate($form, $data, $group = null)
{ {
// check if the not_required field is set // check if the not_required field is set
if (ComponentbuilderHelper::checkString($data['not_required'])) if (isset($data['not_required']) && ComponentbuilderHelper::checkString($data['not_required']))
{ {
$requiredFields = (array) explode(',',(string) $data['not_required']); $requiredFields = (array) explode(',',(string) $data['not_required']);
$requiredFields = array_unique($requiredFields); $requiredFields = array_unique($requiredFields);
@@ -963,8 +963,15 @@ class ComponentbuilderModelClass_property extends JModelAdmin
$data['name'] = ComponentbuilderHelper::safeClassFunctionName($data['name']); $data['name'] = ComponentbuilderHelper::safeClassFunctionName($data['name']);
// Set the GUID if empty or not valid // Set the GUID if empty or not valid
if (isset($data['guid']) && !ComponentbuilderHelper::validGUID($data['guid'], "class_property", $data['id'])) if (empty($data['guid']) && $data['id'] > 0)
{ {
// get the existing one
$data['guid'] = (string) ComponentbuilderHelper::getVar('class_property', $data['id'], 'id', 'guid');
}
// Set the GUID if empty or not valid
while (!ComponentbuilderHelper::validGUID($data['guid'], "class_property", $data['id']))
{
// must always be set
$data['guid'] = (string) ComponentbuilderHelper::GUID(); $data['guid'] = (string) ComponentbuilderHelper::GUID();
} }

View File

@@ -12,8 +12,8 @@
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access'); defined('_JEXEC') or die('Restricted access');
use Joomla\Registry\Registry; use Joomla\Registry\Registry;
use Joomla\String\StringHelper; use Joomla\String\StringHelper;
use Joomla\Utilities\ArrayHelper; use Joomla\Utilities\ArrayHelper;
/** /**
@@ -257,6 +257,9 @@ class ComponentbuilderModelComponent_admin_views extends JModelAdmin
$form->setValue($redirectedField, null, $redirectedValue); $form->setValue($redirectedField, null, $redirectedValue);
} }
} }
// update the addadmin_views (sub form) layout
$form->setFieldAttribute('addadmin_views', 'layout', ComponentbuilderHelper::getSubformLayout('component_admin_views', 'addadmin_views'));
return $form; return $form;
} }

View File

@@ -12,8 +12,8 @@
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access'); defined('_JEXEC') or die('Restricted access');
use Joomla\Registry\Registry; use Joomla\Registry\Registry;
use Joomla\String\StringHelper; use Joomla\String\StringHelper;
use Joomla\Utilities\ArrayHelper; use Joomla\Utilities\ArrayHelper;
/** /**

View File

@@ -12,8 +12,8 @@
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access'); defined('_JEXEC') or die('Restricted access');
use Joomla\Registry\Registry; use Joomla\Registry\Registry;
use Joomla\String\StringHelper; use Joomla\String\StringHelper;
use Joomla\Utilities\ArrayHelper; use Joomla\Utilities\ArrayHelper;
/** /**

View File

@@ -12,8 +12,8 @@
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access'); defined('_JEXEC') or die('Restricted access');
use Joomla\Registry\Registry; use Joomla\Registry\Registry;
use Joomla\String\StringHelper; use Joomla\String\StringHelper;
use Joomla\Utilities\ArrayHelper; use Joomla\Utilities\ArrayHelper;
/** /**
@@ -257,6 +257,9 @@ class ComponentbuilderModelComponent_custom_admin_views extends JModelAdmin
$form->setValue($redirectedField, null, $redirectedValue); $form->setValue($redirectedField, null, $redirectedValue);
} }
} }
// update the addcustom_admin_views (sub form) layout
$form->setFieldAttribute('addcustom_admin_views', 'layout', ComponentbuilderHelper::getSubformLayout('component_custom_admin_views', 'addcustom_admin_views'));
return $form; return $form;
} }

View File

@@ -12,8 +12,8 @@
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access'); defined('_JEXEC') or die('Restricted access');
use Joomla\Registry\Registry; use Joomla\Registry\Registry;
use Joomla\String\StringHelper; use Joomla\String\StringHelper;
use Joomla\Utilities\ArrayHelper; use Joomla\Utilities\ArrayHelper;
/** /**

View File

@@ -12,8 +12,8 @@
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access'); defined('_JEXEC') or die('Restricted access');
use Joomla\Registry\Registry; use Joomla\Registry\Registry;
use Joomla\String\StringHelper; use Joomla\String\StringHelper;
use Joomla\Utilities\ArrayHelper; use Joomla\Utilities\ArrayHelper;
/** /**

View File

@@ -12,8 +12,8 @@
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access'); defined('_JEXEC') or die('Restricted access');
use Joomla\Registry\Registry; use Joomla\Registry\Registry;
use Joomla\String\StringHelper; use Joomla\String\StringHelper;
use Joomla\Utilities\ArrayHelper; use Joomla\Utilities\ArrayHelper;
/** /**

View File

@@ -12,8 +12,8 @@
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access'); defined('_JEXEC') or die('Restricted access');
use Joomla\Registry\Registry; use Joomla\Registry\Registry;
use Joomla\String\StringHelper; use Joomla\String\StringHelper;
use Joomla\Utilities\ArrayHelper; use Joomla\Utilities\ArrayHelper;
/** /**

View File

@@ -12,8 +12,8 @@
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access'); defined('_JEXEC') or die('Restricted access');
use Joomla\Registry\Registry; use Joomla\Registry\Registry;
use Joomla\String\StringHelper; use Joomla\String\StringHelper;
use Joomla\Utilities\ArrayHelper; use Joomla\Utilities\ArrayHelper;
/** /**

View File

@@ -12,8 +12,8 @@
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access'); defined('_JEXEC') or die('Restricted access');
use Joomla\Registry\Registry; use Joomla\Registry\Registry;
use Joomla\String\StringHelper; use Joomla\String\StringHelper;
use Joomla\Utilities\ArrayHelper; use Joomla\Utilities\ArrayHelper;
/** /**

View File

@@ -12,8 +12,8 @@
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access'); defined('_JEXEC') or die('Restricted access');
use Joomla\Registry\Registry; use Joomla\Registry\Registry;
use Joomla\String\StringHelper; use Joomla\String\StringHelper;
use Joomla\Utilities\ArrayHelper; use Joomla\Utilities\ArrayHelper;
/** /**
@@ -257,6 +257,9 @@ class ComponentbuilderModelComponent_site_views extends JModelAdmin
$form->setValue($redirectedField, null, $redirectedValue); $form->setValue($redirectedField, null, $redirectedValue);
} }
} }
// update the addsite_views (sub form) layout
$form->setFieldAttribute('addsite_views', 'layout', ComponentbuilderHelper::getSubformLayout('component_site_views', 'addsite_views'));
return $form; return $form;
} }

View File

@@ -12,8 +12,8 @@
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access'); defined('_JEXEC') or die('Restricted access');
use Joomla\Registry\Registry; use Joomla\Registry\Registry;
use Joomla\String\StringHelper; use Joomla\String\StringHelper;
use Joomla\Utilities\ArrayHelper; use Joomla\Utilities\ArrayHelper;
/** /**

View File

@@ -25,7 +25,7 @@ class ComponentbuilderModelComponentbuilder extends JModelList
$icons = array(); $icons = array();
// view groups array // view groups array
$viewGroups = array( $viewGroups = array(
'main' => array('png.compiler', 'png.joomla_components', 'png.joomla_modules', 'png.joomla_plugins', 'png||importjcbpackages||index.php?option=com_componentbuilder&view=joomla_components&task=joomla_components.smartImport', 'png.admin_view.add', 'png.admin_views', 'png.custom_admin_view.add', 'png.custom_admin_views', 'png.site_view.add', 'png.site_views', 'png.template.add', 'png.templates', 'png.layouts', 'png.dynamic_get.add', 'png.dynamic_gets', 'png.custom_codes', 'png.placeholders', 'png.libraries', 'png.snippets', 'png.get_snippets', 'png.validation_rules', 'png.field.add', 'png.fields', 'png.fields.catid', 'png.fieldtypes', 'png.fieldtypes.catid', 'png.language_translations', 'png.servers', 'png.help_documents') 'main' => array('png.compiler', 'png.joomla_components', 'png.joomla_modules', 'png.joomla_plugins', 'png||importjcbpackages||index.php?option=com_componentbuilder&view=joomla_components&task=joomla_components.smartImport', 'png.admin_view.add', 'png.admin_views', 'png.custom_admin_view.add', 'png.custom_admin_views', 'png.site_view.add', 'png.site_views', 'png.template.add', 'png.templates', 'png.layouts', 'png.dynamic_get.add', 'png.dynamic_gets', 'png.custom_codes', 'png.placeholders', 'png.libraries', 'png.snippets', 'png.get_snippets', 'png.validation_rules', 'png.field.add', 'png.fields', 'png.fields.catid_qpo0O0oqp_com_componentbuilder_po0O0oq_field', 'png.fieldtypes', 'png.fieldtypes.catid_qpo0O0oqp_com_componentbuilder_po0O0oq_fieldtype', 'png.language_translations', 'png.servers', 'png.help_documents')
); );
// view access array // view access array
$viewAccess = array( $viewAccess = array(
@@ -232,8 +232,8 @@ class ComponentbuilderModelComponentbuilder extends JModelList
$viewName = $name; $viewName = $name;
$alt = $name; $alt = $name;
$url = $url; $url = $url;
$image = $name.'.'.$type; $image = $name . '.' . $type;
$name = 'COM_COMPONENTBUILDER_DASHBOARD_'.ComponentbuilderHelper::safeString($name,'U'); $name = 'COM_COMPONENTBUILDER_DASHBOARD_' . ComponentbuilderHelper::safeString($name,'U');
} }
} }
// internal views // internal views
@@ -255,17 +255,27 @@ class ComponentbuilderModelComponentbuilder extends JModelList
switch($action) switch($action)
{ {
case 'add': case 'add':
$url = 'index.php?option=com_componentbuilder&view='.$name.'&layout=edit'; $url = 'index.php?option=com_componentbuilder&view=' . $name . '&layout=edit';
$image = $name.'_'.$action.'.'.$type; $image = $name . '_' . $action. '.' . $type;
$alt = $name.'&nbsp;'.$action; $alt = $name . '&nbsp;' . $action;
$name = 'COM_COMPONENTBUILDER_DASHBOARD_'.ComponentbuilderHelper::safeString($name,'U').'_ADD'; $name = 'COM_COMPONENTBUILDER_DASHBOARD_'.ComponentbuilderHelper::safeString($name,'U').'_ADD';
$add = true; $add = true;
break; break;
default: default:
$url = 'index.php?option=com_categories&view=categories&extension=com_componentbuilder.'.$name; // check for new convention (more stable)
$image = $name.'_'.$action.'.'.$type; if (strpos($action, '_qpo0O0oqp_') !== false)
$alt = $name.'&nbsp;'.$action; {
$name = 'COM_COMPONENTBUILDER_DASHBOARD_'.ComponentbuilderHelper::safeString($name,'U').'_'.ComponentbuilderHelper::safeString($action,'U'); list($action, $extension) = (array) explode('_qpo0O0oqp_', $action);
$extension = str_replace('_po0O0oq_', '.', $extension);
}
else
{
$extension = 'com_componentbuilder.' . $name;
}
$url = 'index.php?option=com_categories&view=categories&extension=' . $extension;
$image = $name . '_' . $action . '.' . $type;
$alt = $viewName . '&nbsp;' . $action;
$name = 'COM_COMPONENTBUILDER_DASHBOARD_' . ComponentbuilderHelper::safeString($name,'U') . '_' . ComponentbuilderHelper::safeString($action,'U');
break; break;
} }
} }
@@ -273,9 +283,9 @@ class ComponentbuilderModelComponentbuilder extends JModelList
{ {
$viewName = $name; $viewName = $name;
$alt = $name; $alt = $name;
$url = 'index.php?option=com_componentbuilder&view='.$name; $url = 'index.php?option=com_componentbuilder&view=' . $name;
$image = $name.'.'.$type; $image = $name . '.' . $type;
$name = 'COM_COMPONENTBUILDER_DASHBOARD_'.ComponentbuilderHelper::safeString($name,'U'); $name = 'COM_COMPONENTBUILDER_DASHBOARD_' . ComponentbuilderHelper::safeString($name,'U');
$hover = false; $hover = false;
} }
} }
@@ -283,8 +293,8 @@ class ComponentbuilderModelComponentbuilder extends JModelList
{ {
$viewName = $view; $viewName = $view;
$alt = $view; $alt = $view;
$url = 'index.php?option=com_componentbuilder&view='.$view; $url = 'index.php?option=com_componentbuilder&view=' . $view;
$image = $view.'.png'; $image = $view . '.png';
$name = ucwords($view).'<br /><br />'; $name = ucwords($view).'<br /><br />';
$hover = false; $hover = false;
} }
@@ -296,7 +306,7 @@ class ComponentbuilderModelComponentbuilder extends JModelList
$dashboard_list = false; $dashboard_list = false;
$accessTo = ''; $accessTo = '';
$accessAdd = ''; $accessAdd = '';
// acces checking start // access checking start
$accessCreate = (isset($viewAccess[$viewName.'.create'])) ? ComponentbuilderHelper::checkString($viewAccess[$viewName.'.create']):false; $accessCreate = (isset($viewAccess[$viewName.'.create'])) ? ComponentbuilderHelper::checkString($viewAccess[$viewName.'.create']):false;
$accessAccess = (isset($viewAccess[$viewName.'.access'])) ? ComponentbuilderHelper::checkString($viewAccess[$viewName.'.access']):false; $accessAccess = (isset($viewAccess[$viewName.'.access'])) ? ComponentbuilderHelper::checkString($viewAccess[$viewName.'.access']):false;
// set main controllers // set main controllers
@@ -311,7 +321,7 @@ class ComponentbuilderModelComponentbuilder extends JModelList
{ {
$accessAdd = 'core.create'; $accessAdd = 'core.create';
} }
// check if acces to view is set // check if access to view is set
if ($accessAccess) if ($accessAccess)
{ {
$accessTo = $viewAccess[$viewName.'.access']; $accessTo = $viewAccess[$viewName.'.access'];

View File

@@ -12,8 +12,8 @@
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access'); defined('_JEXEC') or die('Restricted access');
use Joomla\Registry\Registry; use Joomla\Registry\Registry;
use Joomla\String\StringHelper; use Joomla\String\StringHelper;
use Joomla\Utilities\ArrayHelper; use Joomla\Utilities\ArrayHelper;
/** /**
@@ -506,8 +506,8 @@ class ComponentbuilderModelCustom_admin_view extends JModelAdmin
} }
// Only load the GUID if new item // Only load the GUID if new item (or empty)
if (0 == $id) if (0 == $id || !($val = $form->getValue('guid')))
{ {
$form->setValue('guid', null, ComponentbuilderHelper::GUID()); $form->setValue('guid', null, ComponentbuilderHelper::GUID());
} }
@@ -1125,8 +1125,15 @@ class ComponentbuilderModelCustom_admin_view extends JModelAdmin
} }
// Set the GUID if empty or not valid // Set the GUID if empty or not valid
if (isset($data['guid']) && !ComponentbuilderHelper::validGUID($data['guid'], "custom_admin_view", $data['id'])) if (empty($data['guid']) && $data['id'] > 0)
{ {
// get the existing one
$data['guid'] = (string) ComponentbuilderHelper::getVar('custom_admin_view', $data['id'], 'id', 'guid');
}
// Set the GUID if empty or not valid
while (!ComponentbuilderHelper::validGUID($data['guid'], "custom_admin_view", $data['id']))
{
// must always be set
$data['guid'] = (string) ComponentbuilderHelper::GUID(); $data['guid'] = (string) ComponentbuilderHelper::GUID();
} }

View File

@@ -283,7 +283,7 @@ class ComponentbuilderModelCustom_admin_views extends JModelList
public function getExportData($pks, $user = null) public function getExportData($pks, $user = null)
{ {
// setup the query // setup the query
if (ComponentbuilderHelper::checkArray($pks)) if (($pks_size = ComponentbuilderHelper::checkArray($pks)) !== false || 'bulk' === $pks)
{ {
// Set a value to know this is export method. (USE IN CUSTOM CODE TO ALTER OUTCOME) // Set a value to know this is export method. (USE IN CUSTOM CODE TO ALTER OUTCOME)
$_export = true; $_export = true;
@@ -301,7 +301,24 @@ class ComponentbuilderModelCustom_admin_views extends JModelList
// From the componentbuilder_custom_admin_view table // From the componentbuilder_custom_admin_view table
$query->from($db->quoteName('#__componentbuilder_custom_admin_view', 'a')); $query->from($db->quoteName('#__componentbuilder_custom_admin_view', 'a'));
$query->where('a.id IN (' . implode(',',$pks) . ')'); // The bulk export path
if ('bulk' === $pks)
{
$query->where('a.id > 0');
}
// A large array of ID's will not work out well
elseif ($pks_size > 500)
{
// Use lowest ID
$query->where('a.id >= ' . (int) min($pks));
// Use highest ID
$query->where('a.id <= ' . (int) max($pks));
}
// The normal default path
else
{
$query->where('a.id IN (' . implode(',',$pks) . ')');
}
// Implement View Level Access // Implement View Level Access
if (!$user->authorise('core.options', 'com_componentbuilder')) if (!$user->authorise('core.options', 'com_componentbuilder'))
{ {

View File

@@ -12,8 +12,8 @@
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access'); defined('_JEXEC') or die('Restricted access');
use Joomla\Registry\Registry; use Joomla\Registry\Registry;
use Joomla\String\StringHelper; use Joomla\String\StringHelper;
use Joomla\Utilities\ArrayHelper; use Joomla\Utilities\ArrayHelper;
/** /**
@@ -519,7 +519,7 @@ class ComponentbuilderModelCustom_code extends JModelAdmin
public function validate($form, $data, $group = null) public function validate($form, $data, $group = null)
{ {
// check if the not_required field is set // check if the not_required field is set
if (ComponentbuilderHelper::checkString($data['not_required'])) if (isset($data['not_required']) && ComponentbuilderHelper::checkString($data['not_required']))
{ {
$requiredFields = (array) explode(',',(string) $data['not_required']); $requiredFields = (array) explode(',',(string) $data['not_required']);
$requiredFields = array_unique($requiredFields); $requiredFields = array_unique($requiredFields);

View File

@@ -316,7 +316,7 @@ class ComponentbuilderModelCustom_codes extends JModelList
public function getExportData($pks, $user = null) public function getExportData($pks, $user = null)
{ {
// setup the query // setup the query
if (ComponentbuilderHelper::checkArray($pks)) if (($pks_size = ComponentbuilderHelper::checkArray($pks)) !== false || 'bulk' === $pks)
{ {
// Set a value to know this is export method. (USE IN CUSTOM CODE TO ALTER OUTCOME) // Set a value to know this is export method. (USE IN CUSTOM CODE TO ALTER OUTCOME)
$_export = true; $_export = true;
@@ -334,7 +334,24 @@ class ComponentbuilderModelCustom_codes extends JModelList
// From the componentbuilder_custom_code table // From the componentbuilder_custom_code table
$query->from($db->quoteName('#__componentbuilder_custom_code', 'a')); $query->from($db->quoteName('#__componentbuilder_custom_code', 'a'));
$query->where('a.id IN (' . implode(',',$pks) . ')'); // The bulk export path
if ('bulk' === $pks)
{
$query->where('a.id > 0');
}
// A large array of ID's will not work out well
elseif ($pks_size > 500)
{
// Use lowest ID
$query->where('a.id >= ' . (int) min($pks));
// Use highest ID
$query->where('a.id <= ' . (int) max($pks));
}
// The normal default path
else
{
$query->where('a.id IN (' . implode(',',$pks) . ')');
}
// Implement View Level Access // Implement View Level Access
if (!$user->authorise('core.options', 'com_componentbuilder')) if (!$user->authorise('core.options', 'com_componentbuilder'))
{ {

View File

@@ -12,8 +12,8 @@
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access'); defined('_JEXEC') or die('Restricted access');
use Joomla\Registry\Registry; use Joomla\Registry\Registry;
use Joomla\String\StringHelper; use Joomla\String\StringHelper;
use Joomla\Utilities\ArrayHelper; use Joomla\Utilities\ArrayHelper;
/** /**
@@ -520,12 +520,18 @@ class ComponentbuilderModelDynamic_get extends JModelAdmin
} }
// Only load the GUID if new item // Only load the GUID if new item (or empty)
if (0 == $id) if (0 == $id || !($val = $form->getValue('guid')))
{ {
$form->setValue('guid', null, ComponentbuilderHelper::GUID()); $form->setValue('guid', null, ComponentbuilderHelper::GUID());
} }
// update the join_view_table (sub form) layout
$form->setFieldAttribute('join_view_table', 'layout', ComponentbuilderHelper::getSubformLayout('dynamic_get', 'join_view_table'));
// update the join_db_table (sub form) layout
$form->setFieldAttribute('join_db_table', 'layout', ComponentbuilderHelper::getSubformLayout('dynamic_get', 'join_db_table'));
return $form; return $form;
} }
@@ -704,7 +710,7 @@ class ComponentbuilderModelDynamic_get extends JModelAdmin
public function validate($form, $data, $group = null) public function validate($form, $data, $group = null)
{ {
// check if the not_required field is set // check if the not_required field is set
if (ComponentbuilderHelper::checkString($data['not_required'])) if (isset($data['not_required']) && ComponentbuilderHelper::checkString($data['not_required']))
{ {
$requiredFields = (array) explode(',',(string) $data['not_required']); $requiredFields = (array) explode(',',(string) $data['not_required']);
$requiredFields = array_unique($requiredFields); $requiredFields = array_unique($requiredFields);
@@ -1148,8 +1154,15 @@ class ComponentbuilderModelDynamic_get extends JModelAdmin
// Set the GUID if empty or not valid // Set the GUID if empty or not valid
if (isset($data['guid']) && !ComponentbuilderHelper::validGUID($data['guid'], "dynamic_get", $data['id'])) if (empty($data['guid']) && $data['id'] > 0)
{ {
// get the existing one
$data['guid'] = (string) ComponentbuilderHelper::getVar('dynamic_get', $data['id'], 'id', 'guid');
}
// Set the GUID if empty or not valid
while (!ComponentbuilderHelper::validGUID($data['guid'], "dynamic_get", $data['id']))
{
// must always be set
$data['guid'] = (string) ComponentbuilderHelper::GUID(); $data['guid'] = (string) ComponentbuilderHelper::GUID();
} }

View File

@@ -266,7 +266,7 @@ class ComponentbuilderModelDynamic_gets extends JModelList
public function getExportData($pks, $user = null) public function getExportData($pks, $user = null)
{ {
// setup the query // setup the query
if (ComponentbuilderHelper::checkArray($pks)) if (($pks_size = ComponentbuilderHelper::checkArray($pks)) !== false || 'bulk' === $pks)
{ {
// Set a value to know this is export method. (USE IN CUSTOM CODE TO ALTER OUTCOME) // Set a value to know this is export method. (USE IN CUSTOM CODE TO ALTER OUTCOME)
$_export = true; $_export = true;
@@ -284,7 +284,24 @@ class ComponentbuilderModelDynamic_gets extends JModelList
// From the componentbuilder_dynamic_get table // From the componentbuilder_dynamic_get table
$query->from($db->quoteName('#__componentbuilder_dynamic_get', 'a')); $query->from($db->quoteName('#__componentbuilder_dynamic_get', 'a'));
$query->where('a.id IN (' . implode(',',$pks) . ')'); // The bulk export path
if ('bulk' === $pks)
{
$query->where('a.id > 0');
}
// A large array of ID's will not work out well
elseif ($pks_size > 500)
{
// Use lowest ID
$query->where('a.id >= ' . (int) min($pks));
// Use highest ID
$query->where('a.id <= ' . (int) max($pks));
}
// The normal default path
else
{
$query->where('a.id IN (' . implode(',',$pks) . ')');
}
// Implement View Level Access // Implement View Level Access
if (!$user->authorise('core.options', 'com_componentbuilder')) if (!$user->authorise('core.options', 'com_componentbuilder'))
{ {

View File

@@ -12,8 +12,8 @@
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access'); defined('_JEXEC') or die('Restricted access');
use Joomla\Registry\Registry; use Joomla\Registry\Registry;
use Joomla\String\StringHelper; use Joomla\String\StringHelper;
use Joomla\Utilities\ArrayHelper; use Joomla\Utilities\ArrayHelper;
/** /**
@@ -419,8 +419,8 @@ class ComponentbuilderModelField extends JModelAdmin
} }
// Only load the GUID if new item // Only load the GUID if new item (or empty)
if (0 == $id) if (0 == $id || !($val = $form->getValue('guid')))
{ {
$form->setValue('guid', null, ComponentbuilderHelper::GUID()); $form->setValue('guid', null, ComponentbuilderHelper::GUID());
} }
@@ -603,7 +603,7 @@ class ComponentbuilderModelField extends JModelAdmin
public function validate($form, $data, $group = null) public function validate($form, $data, $group = null)
{ {
// check if the not_required field is set // check if the not_required field is set
if (ComponentbuilderHelper::checkString($data['not_required'])) if (isset($data['not_required']) && ComponentbuilderHelper::checkString($data['not_required']))
{ {
$requiredFields = (array) explode(',',(string) $data['not_required']); $requiredFields = (array) explode(',',(string) $data['not_required']);
$requiredFields = array_unique($requiredFields); $requiredFields = array_unique($requiredFields);
@@ -1144,8 +1144,15 @@ class ComponentbuilderModelField extends JModelAdmin
} }
// Set the GUID if empty or not valid // Set the GUID if empty or not valid
if (isset($data['guid']) && !ComponentbuilderHelper::validGUID($data['guid'], "field", $data['id'])) if (empty($data['guid']) && $data['id'] > 0)
{ {
// get the existing one
$data['guid'] = (string) ComponentbuilderHelper::getVar('field', $data['id'], 'id', 'guid');
}
// Set the GUID if empty or not valid
while (!ComponentbuilderHelper::validGUID($data['guid'], "field", $data['id']))
{
// must always be set
$data['guid'] = (string) ComponentbuilderHelper::GUID(); $data['guid'] = (string) ComponentbuilderHelper::GUID();
} }

View File

@@ -382,7 +382,7 @@ class ComponentbuilderModelFields extends JModelList
public function getExportData($pks, $user = null) public function getExportData($pks, $user = null)
{ {
// setup the query // setup the query
if (ComponentbuilderHelper::checkArray($pks)) if (($pks_size = ComponentbuilderHelper::checkArray($pks)) !== false || 'bulk' === $pks)
{ {
// Set a value to know this is export method. (USE IN CUSTOM CODE TO ALTER OUTCOME) // Set a value to know this is export method. (USE IN CUSTOM CODE TO ALTER OUTCOME)
$_export = true; $_export = true;
@@ -400,7 +400,24 @@ class ComponentbuilderModelFields extends JModelList
// From the componentbuilder_field table // From the componentbuilder_field table
$query->from($db->quoteName('#__componentbuilder_field', 'a')); $query->from($db->quoteName('#__componentbuilder_field', 'a'));
$query->where('a.id IN (' . implode(',',$pks) . ')'); // The bulk export path
if ('bulk' === $pks)
{
$query->where('a.id > 0');
}
// A large array of ID's will not work out well
elseif ($pks_size > 500)
{
// Use lowest ID
$query->where('a.id >= ' . (int) min($pks));
// Use highest ID
$query->where('a.id <= ' . (int) max($pks));
}
// The normal default path
else
{
$query->where('a.id IN (' . implode(',',$pks) . ')');
}
// Implement View Level Access // Implement View Level Access
if (!$user->authorise('core.options', 'com_componentbuilder')) if (!$user->authorise('core.options', 'com_componentbuilder'))
{ {

View File

@@ -0,0 +1,99 @@
<?php
/**
* @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>
* @copyright Copyright (C) 2015 - 2020 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');
// import the list field type
jimport('joomla.form.helper');
JFormHelper::loadFieldClass('list');
/**
* Adminlistvieworderfields Form Field class for the Componentbuilder component
*/
class JFormFieldAdminlistvieworderfields extends JFormFieldList
{
/**
* The adminlistvieworderfields field type.
*
* @var string
*/
public $type = 'adminlistvieworderfields';
/**
* Method to get a list of options for a list input.
*
* @return array An array of JHtml options.
*/
protected function getOptions()
{
// load the db object
$db = JFactory::getDBO();
// get the input from url
$jinput = JFactory::getApplication()->input;
// get the id
$adminView = $jinput->getInt('id', 0);
// check if we have an admin view
if (is_numeric($adminView) && $adminView >= 1)
{
// get all the fields linked to the admin view
if ($addFields = ComponentbuilderHelper::getVar('admin_fields', (int) $adminView, 'admin_view', 'addfields'))
{
if (ComponentbuilderHelper::checkJson($addFields))
{
$addFields = json_decode($addFields, true);
if (ComponentbuilderHelper::checkArray($addFields))
{
foreach($addFields as $addField)
{
// admin list view and ordering
if (isset($addField['field']) && isset($addField['list']) && ($addField['list'] == 1 || $addField['list'] == 3)
&& isset($addField['sort']) && $addField['sort'])
{
$fieldIds[] = (int) $addField['field'];
}
}
}
}
}
// filter by fields linked
if (ComponentbuilderHelper::checkArray($fieldIds))
{
$query = $db->getQuery(true);
$query->select($db->quoteName(array('a.id','a.name', 'a.xml', 'b.name'),array('id','name', 'xml', 'type')));
$query->from($db->quoteName('#__componentbuilder_field', 'a'));
$query->join('LEFT', '#__componentbuilder_fieldtype AS b ON b.id = a.fieldtype');
$query->where($db->quoteName('a.published') . ' >= 1');
// only load these fields
$query->where($db->quoteName('a.id') . ' IN (' . implode(',', $fieldIds) . ')');
$query->order('a.name ASC');
$db->setQuery((string)$query);
$items = $db->loadObjectList();
$options = array();
if ($items)
{
$options[] = JHtml::_('select.option', '', JText::_('PLG_CONTENT_COMPONENTBUILDERFIELDORDERINGTABS_SELECT_AN_OPTION'));
$options[] = JHtml::_('select.option', -1, JText::_('PLG_CONTENT_COMPONENTBUILDERFIELDORDERINGTABS_ID'). ' [ id - text ]');
$options[] = JHtml::_('select.option', -2, JText::_('PLG_CONTENT_COMPONENTBUILDERFIELDORDERINGTABS_ORDERING'). ' [ ordering - number ]');
$options[] = JHtml::_('select.option', -3, JText::_('PLG_CONTENT_COMPONENTBUILDERFIELDORDERINGTABS_STATUS'). ' [ published - list ]');
foreach($items as $item)
{
// get the field name (TODO this could slow down the system so we will need to improve on this)
$field_name = ComponentbuilderHelper::safeFieldName(ComponentbuilderHelper::getBetween(json_decode($item->xml),'name="','"'));
$options[] = JHtml::_('select.option', $item->id, $item->name . ' [ ' . $field_name . ' - ' . $item->type . ' ]');
}
}
return $options;
}
}
return false;
}
}

View File

@@ -0,0 +1,99 @@
<?php
/**
* @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>
* @copyright Copyright (C) 2015 - 2020 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');
// import the list field type
jimport('joomla.form.helper');
JFormHelper::loadFieldClass('list');
/**
* Linkedviewsorderfields Form Field class for the Componentbuilder component
*/
class JFormFieldLinkedviewsorderfields extends JFormFieldList
{
/**
* The linkedviewsorderfields field type.
*
* @var string
*/
public $type = 'linkedviewsorderfields';
/**
* Method to get a list of options for a list input.
*
* @return array An array of JHtml options.
*/
protected function getOptions()
{
// load the db object
$db = JFactory::getDBO();
// get the input from url
$jinput = JFactory::getApplication()->input;
// get the id
$adminView = $jinput->getInt('id', 0);
// check if we have an admin view
if (is_numeric($adminView) && $adminView >= 1)
{
// get all the fields linked to the admin view
if ($addFields = ComponentbuilderHelper::getVar('admin_fields', (int) $adminView, 'admin_view', 'addfields'))
{
if (ComponentbuilderHelper::checkJson($addFields))
{
$addFields = json_decode($addFields, true);
if (ComponentbuilderHelper::checkArray($addFields))
{
foreach($addFields as $addField)
{
// linked list views and ordering
if (isset($addField['field']) && isset($addField['list']) && ($addField['list'] == 1 || $addField['list'] == 4)
&& isset($addField['sort']) && $addField['sort'])
{
$fieldIds[] = (int) $addField['field'];
}
}
}
}
}
// filter by fields linked
if (ComponentbuilderHelper::checkArray($fieldIds))
{
$query = $db->getQuery(true);
$query->select($db->quoteName(array('a.id','a.name', 'a.xml', 'b.name'),array('id','name', 'xml', 'type')));
$query->from($db->quoteName('#__componentbuilder_field', 'a'));
$query->join('LEFT', '#__componentbuilder_fieldtype AS b ON b.id = a.fieldtype');
$query->where($db->quoteName('a.published') . ' >= 1');
// only load these fields
$query->where($db->quoteName('a.id') . ' IN (' . implode(',', $fieldIds) . ')');
$query->order('a.name ASC');
$db->setQuery((string)$query);
$items = $db->loadObjectList();
$options = array();
if ($items)
{
$options[] = JHtml::_('select.option', '', JText::_('PLG_CONTENT_COMPONENTBUILDERFIELDORDERINGTABS_SELECT_AN_OPTION'));
$options[] = JHtml::_('select.option', -1, JText::_('PLG_CONTENT_COMPONENTBUILDERFIELDORDERINGTABS_ID'). ' [ id - text ]');
$options[] = JHtml::_('select.option', -2, JText::_('PLG_CONTENT_COMPONENTBUILDERFIELDORDERINGTABS_ORDERING'). ' [ ordering - number ]');
$options[] = JHtml::_('select.option', -3, JText::_('PLG_CONTENT_COMPONENTBUILDERFIELDORDERINGTABS_STATUS'). ' [ published - list ]');
foreach($items as $item)
{
// get the field name (TODO this could slow down the system so we will need to improve on this)
$field_name = ComponentbuilderHelper::safeFieldName(ComponentbuilderHelper::getBetween(json_decode($item->xml),'name="','"'));
$options[] = JHtml::_('select.option', $item->id, $item->name . ' [ ' . $field_name . ' - ' . $item->type . ' ]');
}
}
return $options;
}
}
return false;
}
}

View File

@@ -12,8 +12,8 @@
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access'); defined('_JEXEC') or die('Restricted access');
use Joomla\Registry\Registry; use Joomla\Registry\Registry;
use Joomla\String\StringHelper; use Joomla\String\StringHelper;
use Joomla\Utilities\ArrayHelper; use Joomla\Utilities\ArrayHelper;
/** /**
@@ -249,7 +249,7 @@ class ComponentbuilderModelFieldtype extends JModelAdmin
* *
* @return mixed An array of data items on success, false on failure. * @return mixed An array of data items on success, false on failure.
*/ */
public function getVyffields() public function getVycfields()
{ {
// Get the user object. // Get the user object.
$user = JFactory::getUser(); $user = JFactory::getUser();
@@ -337,13 +337,13 @@ class ComponentbuilderModelFieldtype extends JModelAdmin
foreach ($items as $nr => &$item) foreach ($items as $nr => &$item)
{ {
// convert datatype // convert datatype
$item->datatype = $this->selectionTranslationVyffields($item->datatype, 'datatype'); $item->datatype = $this->selectionTranslationVycfields($item->datatype, 'datatype');
// convert indexes // convert indexes
$item->indexes = $this->selectionTranslationVyffields($item->indexes, 'indexes'); $item->indexes = $this->selectionTranslationVycfields($item->indexes, 'indexes');
// convert null_switch // convert null_switch
$item->null_switch = $this->selectionTranslationVyffields($item->null_switch, 'null_switch'); $item->null_switch = $this->selectionTranslationVycfields($item->null_switch, 'null_switch');
// convert store // convert store
$item->store = $this->selectionTranslationVyffields($item->store, 'store'); $item->store = $this->selectionTranslationVycfields($item->store, 'store');
} }
} }
@@ -357,7 +357,7 @@ class ComponentbuilderModelFieldtype extends JModelAdmin
* *
* @return translatable string * @return translatable string
*/ */
public function selectionTranslationVyffields($value,$name) public function selectionTranslationVycfields($value,$name)
{ {
// Array of datatype language strings // Array of datatype language strings
if ($name === 'datatype') if ($name === 'datatype')
@@ -544,8 +544,8 @@ class ComponentbuilderModelFieldtype extends JModelAdmin
} }
} }
// Only load the GUID if new item // Only load the GUID if new item (or empty)
if (0 == $id) if (0 == $id || !($val = $form->getValue('guid')))
{ {
$form->setValue('guid', null, ComponentbuilderHelper::GUID()); $form->setValue('guid', null, ComponentbuilderHelper::GUID());
} }
@@ -728,7 +728,7 @@ class ComponentbuilderModelFieldtype extends JModelAdmin
public function validate($form, $data, $group = null) public function validate($form, $data, $group = null)
{ {
// check if the not_required field is set // check if the not_required field is set
if (ComponentbuilderHelper::checkString($data['not_required'])) if (isset($data['not_required']) && ComponentbuilderHelper::checkString($data['not_required']))
{ {
$requiredFields = (array) explode(',',(string) $data['not_required']); $requiredFields = (array) explode(',',(string) $data['not_required']);
$requiredFields = array_unique($requiredFields); $requiredFields = array_unique($requiredFields);
@@ -1197,8 +1197,15 @@ class ComponentbuilderModelFieldtype extends JModelAdmin
// Set the GUID if empty or not valid // Set the GUID if empty or not valid
if (isset($data['guid']) && !ComponentbuilderHelper::validGUID($data['guid'], "fieldtype", $data['id'])) if (empty($data['guid']) && $data['id'] > 0)
{ {
// get the existing one
$data['guid'] = (string) ComponentbuilderHelper::getVar('fieldtype', $data['id'], 'id', 'guid');
}
// Set the GUID if empty or not valid
while (!ComponentbuilderHelper::validGUID($data['guid'], "fieldtype", $data['id']))
{
// must always be set
$data['guid'] = (string) ComponentbuilderHelper::GUID(); $data['guid'] = (string) ComponentbuilderHelper::GUID();
} }

View File

@@ -235,7 +235,7 @@ class ComponentbuilderModelFieldtypes extends JModelList
public function getExportData($pks, $user = null) public function getExportData($pks, $user = null)
{ {
// setup the query // setup the query
if (ComponentbuilderHelper::checkArray($pks)) if (($pks_size = ComponentbuilderHelper::checkArray($pks)) !== false || 'bulk' === $pks)
{ {
// Set a value to know this is export method. (USE IN CUSTOM CODE TO ALTER OUTCOME) // Set a value to know this is export method. (USE IN CUSTOM CODE TO ALTER OUTCOME)
$_export = true; $_export = true;
@@ -253,7 +253,24 @@ class ComponentbuilderModelFieldtypes extends JModelList
// From the componentbuilder_fieldtype table // From the componentbuilder_fieldtype table
$query->from($db->quoteName('#__componentbuilder_fieldtype', 'a')); $query->from($db->quoteName('#__componentbuilder_fieldtype', 'a'));
$query->where('a.id IN (' . implode(',',$pks) . ')'); // The bulk export path
if ('bulk' === $pks)
{
$query->where('a.id > 0');
}
// A large array of ID's will not work out well
elseif ($pks_size > 500)
{
// Use lowest ID
$query->where('a.id >= ' . (int) min($pks));
// Use highest ID
$query->where('a.id <= ' . (int) max($pks));
}
// The normal default path
else
{
$query->where('a.id IN (' . implode(',',$pks) . ')');
}
// Implement View Level Access // Implement View Level Access
if (!$user->authorise('core.options', 'com_componentbuilder')) if (!$user->authorise('core.options', 'com_componentbuilder'))
{ {

View File

@@ -103,7 +103,7 @@
type="subform" type="subform"
name="tabs" name="tabs"
label="COM_COMPONENTBUILDER_ADMIN_CUSTOM_TABS_TABS_LABEL" label="COM_COMPONENTBUILDER_ADMIN_CUSTOM_TABS_TABS_LABEL"
layout="joomla.form.field.subform.repeatable-table" layout="joomla.form.field.subform.repeatable"
multiple="true" multiple="true"
buttons="add,remove,move" buttons="add,remove,move"
description="COM_COMPONENTBUILDER_ADMIN_CUSTOM_TABS_TABS_DESCRIPTION" description="COM_COMPONENTBUILDER_ADMIN_CUSTOM_TABS_TABS_DESCRIPTION"

View File

@@ -103,7 +103,7 @@
type="subform" type="subform"
name="addfields" name="addfields"
label="COM_COMPONENTBUILDER_ADMIN_FIELDS_ADDFIELDS_LABEL" label="COM_COMPONENTBUILDER_ADMIN_FIELDS_ADDFIELDS_LABEL"
layout="joomla.form.field.subform.repeatable-table" layout="repeatablejcb"
multiple="true" multiple="true"
description="COM_COMPONENTBUILDER_ADMIN_FIELDS_ADDFIELDS_DESCRIPTION" description="COM_COMPONENTBUILDER_ADMIN_FIELDS_ADDFIELDS_DESCRIPTION"
default="" default=""

View File

@@ -103,7 +103,7 @@
type="subform" type="subform"
name="addconditions" name="addconditions"
label="COM_COMPONENTBUILDER_ADMIN_FIELDS_CONDITIONS_ADDCONDITIONS_LABEL" label="COM_COMPONENTBUILDER_ADMIN_FIELDS_CONDITIONS_ADDCONDITIONS_LABEL"
layout="joomla.form.field.subform.repeatable" layout="repeatablejcb"
multiple="true" multiple="true"
description="COM_COMPONENTBUILDER_ADMIN_FIELDS_CONDITIONS_ADDCONDITIONS_DESCRIPTION" description="COM_COMPONENTBUILDER_ADMIN_FIELDS_CONDITIONS_ADDCONDITIONS_DESCRIPTION"
default="" default=""

View File

@@ -103,7 +103,7 @@
type="subform" type="subform"
name="addrelations" name="addrelations"
label="COM_COMPONENTBUILDER_ADMIN_FIELDS_RELATIONS_ADDRELATIONS_LABEL" label="COM_COMPONENTBUILDER_ADMIN_FIELDS_RELATIONS_ADDRELATIONS_LABEL"
layout="joomla.form.field.subform.repeatable" layout="repeatablejcb"
multiple="true" multiple="true"
description="COM_COMPONENTBUILDER_ADMIN_FIELDS_RELATIONS_ADDRELATIONS_DESCRIPTION" description="COM_COMPONENTBUILDER_ADMIN_FIELDS_RELATIONS_ADDRELATIONS_DESCRIPTION"
default="" default=""

View File

@@ -103,7 +103,7 @@
type="subform" type="subform"
name="addadmin_views" name="addadmin_views"
label="COM_COMPONENTBUILDER_COMPONENT_ADMIN_VIEWS_ADDADMIN_VIEWS_LABEL" label="COM_COMPONENTBUILDER_COMPONENT_ADMIN_VIEWS_ADDADMIN_VIEWS_LABEL"
layout="joomla.form.field.subform.repeatable-table" layout="repeatablejcb"
multiple="true" multiple="true"
description="COM_COMPONENTBUILDER_COMPONENT_ADMIN_VIEWS_ADDADMIN_VIEWS_DESCRIPTION" description="COM_COMPONENTBUILDER_COMPONENT_ADMIN_VIEWS_ADDADMIN_VIEWS_DESCRIPTION"
default="[{&quot;submenu&quot;:&quot;1&quot;,&quot;checkin&quot;:&quot;1&quot;,&quot;history&quot;:&quot;1&quot;,&quot;access&quot;:&quot;1&quot;,&quot;port&quot;:&quot;1&quot;}]" default="[{&quot;submenu&quot;:&quot;1&quot;,&quot;checkin&quot;:&quot;1&quot;,&quot;history&quot;:&quot;1&quot;,&quot;access&quot;:&quot;1&quot;,&quot;port&quot;:&quot;1&quot;}]"

View File

@@ -103,7 +103,7 @@
type="subform" type="subform"
name="addcustom_admin_views" name="addcustom_admin_views"
label="COM_COMPONENTBUILDER_COMPONENT_CUSTOM_ADMIN_VIEWS_ADDCUSTOM_ADMIN_VIEWS_LABEL" label="COM_COMPONENTBUILDER_COMPONENT_CUSTOM_ADMIN_VIEWS_ADDCUSTOM_ADMIN_VIEWS_LABEL"
layout="joomla.form.field.subform.repeatable-table" layout="repeatablejcb"
multiple="true" multiple="true"
default="" default=""
icon="list"> icon="list">

View File

@@ -103,7 +103,7 @@
type="subform" type="subform"
name="addsite_views" name="addsite_views"
label="COM_COMPONENTBUILDER_COMPONENT_SITE_VIEWS_ADDSITE_VIEWS_LABEL" label="COM_COMPONENTBUILDER_COMPONENT_SITE_VIEWS_ADDSITE_VIEWS_LABEL"
layout="joomla.form.field.subform.repeatable-table" layout="repeatablejcb"
multiple="true" multiple="true"
description="COM_COMPONENTBUILDER_COMPONENT_SITE_VIEWS_ADDSITE_VIEWS_DESCRIPTION" description="COM_COMPONENTBUILDER_COMPONENT_SITE_VIEWS_ADDSITE_VIEWS_DESCRIPTION"
default="" default=""

View File

@@ -90,7 +90,6 @@
type="component" type="component"
name="component" name="component"
label="COM_COMPONENTBUILDER_CUSTOM_CODE_COMPONENT_LABEL" label="COM_COMPONENTBUILDER_CUSTOM_CODE_COMPONENT_LABEL"
description="JFIELD_TITLE_DESC"
class="list_class" class="list_class"
multiple="false" multiple="false"
default="0" default="0"

View File

@@ -227,7 +227,7 @@
type="subform" type="subform"
name="join_db_table" name="join_db_table"
label="COM_COMPONENTBUILDER_DYNAMIC_GET_JOIN_DB_TABLE_LABEL" label="COM_COMPONENTBUILDER_DYNAMIC_GET_JOIN_DB_TABLE_LABEL"
layout="joomla.form.field.subform.repeatable-table" layout="repeatablejcb"
multiple="true" multiple="true"
description="COM_COMPONENTBUILDER_DYNAMIC_GET_JOIN_DB_TABLE_DESCRIPTION" description="COM_COMPONENTBUILDER_DYNAMIC_GET_JOIN_DB_TABLE_DESCRIPTION"
icon="list"> icon="list">
@@ -810,6 +810,16 @@
message="COM_COMPONENTBUILDER_DYNAMIC_GET_TABLE_KEY_MESSAGE" message="COM_COMPONENTBUILDER_DYNAMIC_GET_TABLE_KEY_MESSAGE"
hint="COM_COMPONENTBUILDER_DYNAMIC_GET_TABLE_KEY_HINT" hint="COM_COMPONENTBUILDER_DYNAMIC_GET_TABLE_KEY_HINT"
/> />
<!-- Empty Field. Type: Checkbox. (joomla) -->
<field
type="checkbox"
name="empty"
label="COM_COMPONENTBUILDER_DYNAMIC_GET_EMPTY_LABEL"
value="1"
default="0"
description="COM_COMPONENTBUILDER_DYNAMIC_GET_EMPTY_DESCRIPTION"
class="inputbox"
/>
</form> </form>
</field> </field>
<!-- Add_php_after_getitems Field. Type: Radio. (joomla) --> <!-- Add_php_after_getitems Field. Type: Radio. (joomla) -->
@@ -1202,7 +1212,7 @@
type="subform" type="subform"
name="join_view_table" name="join_view_table"
label="COM_COMPONENTBUILDER_DYNAMIC_GET_JOIN_VIEW_TABLE_LABEL" label="COM_COMPONENTBUILDER_DYNAMIC_GET_JOIN_VIEW_TABLE_LABEL"
layout="joomla.form.field.subform.repeatable-table" layout="repeatablejcb"
multiple="true" multiple="true"
description="COM_COMPONENTBUILDER_DYNAMIC_GET_JOIN_VIEW_TABLE_DESCRIPTION" description="COM_COMPONENTBUILDER_DYNAMIC_GET_JOIN_VIEW_TABLE_DESCRIPTION"
icon="list"> icon="list">

View File

@@ -13,11 +13,8 @@ jform_vvvvwczvxo_required = false;
jform_vvvvwdavxp_required = false; jform_vvvvwdavxp_required = false;
jform_vvvvwdbvxq_required = false; jform_vvvvwdbvxq_required = false;
jform_vvvvwdcvxr_required = false; jform_vvvvwdcvxr_required = false;
jform_vvvvwddvxs_required = false; jform_vvvvwdfvxs_required = false;
jform_vvvvwdgvxt_required = false; jform_vvvvwdfvxt_required = false;
jform_vvvvwdgvxu_required = false;
jform_vvvvwdhvxv_required = false;
jform_vvvvwdhvxw_required = false;
// Initial Script // Initial Script
jQuery(document).ready(function() jQuery(document).ready(function()
@@ -34,32 +31,24 @@ jQuery(document).ready(function()
var datatype_vvvvwdc = jQuery("#jform_datatype").val(); var datatype_vvvvwdc = jQuery("#jform_datatype").val();
vvvvwdc(datatype_vvvvwdc); vvvvwdc(datatype_vvvvwdc);
var store_vvvvwdd = jQuery("#jform_store").val();
var datatype_vvvvwdd = jQuery("#jform_datatype").val(); var datatype_vvvvwdd = jQuery("#jform_datatype").val();
vvvvwdd(datatype_vvvvwdd); vvvvwdd(store_vvvvwdd,datatype_vvvvwdd);
var store_vvvvwde = jQuery("#jform_store").val(); var store_vvvvwdf = jQuery("#jform_store").val();
var datatype_vvvvwde = jQuery("#jform_datatype").val(); vvvvwdf(store_vvvvwdf);
vvvvwde(store_vvvvwde,datatype_vvvvwde);
var store_vvvvwdg = jQuery("#jform_store").val(); var add_css_view_vvvvwdg = jQuery("#jform_add_css_view input[type='radio']:checked").val();
var datatype_vvvvwdg = jQuery("#jform_datatype").val(); vvvvwdg(add_css_view_vvvvwdg);
vvvvwdg(store_vvvvwdg,datatype_vvvvwdg);
var datatype_vvvvwdh = jQuery("#jform_datatype").val(); var add_css_views_vvvvwdh = jQuery("#jform_add_css_views input[type='radio']:checked").val();
var store_vvvvwdh = jQuery("#jform_store").val(); vvvvwdh(add_css_views_vvvvwdh);
vvvvwdh(datatype_vvvvwdh,store_vvvvwdh);
var add_css_view_vvvvwdi = jQuery("#jform_add_css_view input[type='radio']:checked").val(); var add_javascript_view_footer_vvvvwdi = jQuery("#jform_add_javascript_view_footer input[type='radio']:checked").val();
vvvvwdi(add_css_view_vvvvwdi); vvvvwdi(add_javascript_view_footer_vvvvwdi);
var add_css_views_vvvvwdj = jQuery("#jform_add_css_views input[type='radio']:checked").val(); var add_javascript_views_footer_vvvvwdj = jQuery("#jform_add_javascript_views_footer input[type='radio']:checked").val();
vvvvwdj(add_css_views_vvvvwdj); vvvvwdj(add_javascript_views_footer_vvvvwdj);
var add_javascript_view_footer_vvvvwdk = jQuery("#jform_add_javascript_view_footer input[type='radio']:checked").val();
vvvvwdk(add_javascript_view_footer_vvvvwdk);
var add_javascript_views_footer_vvvvwdl = jQuery("#jform_add_javascript_views_footer input[type='radio']:checked").val();
vvvvwdl(add_javascript_views_footer_vvvvwdl);
}); });
// the vvvvwcz function // the vvvvwcz function
@@ -289,8 +278,20 @@ function datatype_vvvvwdc_SomeFunc(datatype_vvvvwdc)
} }
// the vvvvwdd function // the vvvvwdd function
function vvvvwdd(datatype_vvvvwdd) function vvvvwdd(store_vvvvwdd,datatype_vvvvwdd)
{ {
if (isSet(store_vvvvwdd) && store_vvvvwdd.constructor !== Array)
{
var temp_vvvvwdd = store_vvvvwdd;
var store_vvvvwdd = [];
store_vvvvwdd.push(temp_vvvvwdd);
}
else if (!isSet(store_vvvvwdd))
{
var store_vvvvwdd = [];
}
var store = store_vvvvwdd.some(store_vvvvwdd_SomeFunc);
if (isSet(datatype_vvvvwdd) && datatype_vvvvwdd.constructor !== Array) if (isSet(datatype_vvvvwdd) && datatype_vvvvwdd.constructor !== Array)
{ {
var temp_vvvvwdd = datatype_vvvvwdd; var temp_vvvvwdd = datatype_vvvvwdd;
@@ -305,34 +306,27 @@ function vvvvwdd(datatype_vvvvwdd)
// set this function logic // set this function logic
if (datatype) if (store && datatype)
{ {
jQuery('#jform_store').closest('.control-group').show(); jQuery('.note_whmcs_encryption').closest('.control-group').show();
// add required attribute to store field
if (jform_vvvvwddvxs_required)
{
updateFieldRequired('store',0);
jQuery('#jform_store').prop('required','required');
jQuery('#jform_store').attr('aria-required',true);
jQuery('#jform_store').addClass('required');
jform_vvvvwddvxs_required = false;
}
} }
else else
{ {
jQuery('#jform_store').closest('.control-group').hide(); jQuery('.note_whmcs_encryption').closest('.control-group').hide();
// remove required attribute from store field
if (!jform_vvvvwddvxs_required)
{
updateFieldRequired('store',1);
jQuery('#jform_store').removeAttr('required');
jQuery('#jform_store').removeAttr('aria-required');
jQuery('#jform_store').removeClass('required');
jform_vvvvwddvxs_required = true;
}
} }
} }
// the vvvvwdd Some function
function store_vvvvwdd_SomeFunc(store_vvvvwdd)
{
// set the function logic
if (store_vvvvwdd == 4)
{
return true;
}
return false;
}
// the vvvvwdd Some function // the vvvvwdd Some function
function datatype_vvvvwdd_SomeFunc(datatype_vvvvwdd) function datatype_vvvvwdd_SomeFunc(datatype_vvvvwdd)
{ {
@@ -344,61 +338,82 @@ function datatype_vvvvwdd_SomeFunc(datatype_vvvvwdd)
return false; return false;
} }
// the vvvvwde function // the vvvvwdf function
function vvvvwde(store_vvvvwde,datatype_vvvvwde) function vvvvwdf(store_vvvvwdf)
{ {
if (isSet(store_vvvvwde) && store_vvvvwde.constructor !== Array) if (isSet(store_vvvvwdf) && store_vvvvwdf.constructor !== Array)
{ {
var temp_vvvvwde = store_vvvvwde; var temp_vvvvwdf = store_vvvvwdf;
var store_vvvvwde = []; var store_vvvvwdf = [];
store_vvvvwde.push(temp_vvvvwde); store_vvvvwdf.push(temp_vvvvwdf);
} }
else if (!isSet(store_vvvvwde)) else if (!isSet(store_vvvvwdf))
{ {
var store_vvvvwde = []; var store_vvvvwdf = [];
} }
var store = store_vvvvwde.some(store_vvvvwde_SomeFunc); var store = store_vvvvwdf.some(store_vvvvwdf_SomeFunc);
if (isSet(datatype_vvvvwde) && datatype_vvvvwde.constructor !== Array)
{
var temp_vvvvwde = datatype_vvvvwde;
var datatype_vvvvwde = [];
datatype_vvvvwde.push(temp_vvvvwde);
}
else if (!isSet(datatype_vvvvwde))
{
var datatype_vvvvwde = [];
}
var datatype = datatype_vvvvwde.some(datatype_vvvvwde_SomeFunc);
// set this function logic // set this function logic
if (store && datatype) if (store)
{ {
jQuery('.note_whmcs_encryption').closest('.control-group').show(); jQuery('#jform_initiator_on_get_model').closest('.control-group').show();
jQuery('#jform_initiator_on_save_model').closest('.control-group').show();
jQuery('.note_expert_field_save_mode').closest('.control-group').show();
jQuery('#jform_on_get_model_field').closest('.control-group').show();
// add required attribute to on_get_model_field field
if (jform_vvvvwdfvxs_required)
{
updateFieldRequired('on_get_model_field',0);
jQuery('#jform_on_get_model_field').prop('required','required');
jQuery('#jform_on_get_model_field').attr('aria-required',true);
jQuery('#jform_on_get_model_field').addClass('required');
jform_vvvvwdfvxs_required = false;
}
jQuery('#jform_on_save_model_field').closest('.control-group').show();
// add required attribute to on_save_model_field field
if (jform_vvvvwdfvxt_required)
{
updateFieldRequired('on_save_model_field',0);
jQuery('#jform_on_save_model_field').prop('required','required');
jQuery('#jform_on_save_model_field').attr('aria-required',true);
jQuery('#jform_on_save_model_field').addClass('required');
jform_vvvvwdfvxt_required = false;
}
} }
else else
{ {
jQuery('.note_whmcs_encryption').closest('.control-group').hide(); jQuery('#jform_initiator_on_get_model').closest('.control-group').hide();
jQuery('#jform_initiator_on_save_model').closest('.control-group').hide();
jQuery('.note_expert_field_save_mode').closest('.control-group').hide();
jQuery('#jform_on_get_model_field').closest('.control-group').hide();
// remove required attribute from on_get_model_field field
if (!jform_vvvvwdfvxs_required)
{
updateFieldRequired('on_get_model_field',1);
jQuery('#jform_on_get_model_field').removeAttr('required');
jQuery('#jform_on_get_model_field').removeAttr('aria-required');
jQuery('#jform_on_get_model_field').removeClass('required');
jform_vvvvwdfvxs_required = true;
}
jQuery('#jform_on_save_model_field').closest('.control-group').hide();
// remove required attribute from on_save_model_field field
if (!jform_vvvvwdfvxt_required)
{
updateFieldRequired('on_save_model_field',1);
jQuery('#jform_on_save_model_field').removeAttr('required');
jQuery('#jform_on_save_model_field').removeAttr('aria-required');
jQuery('#jform_on_save_model_field').removeClass('required');
jform_vvvvwdfvxt_required = true;
}
} }
} }
// the vvvvwde Some function // the vvvvwdf Some function
function store_vvvvwde_SomeFunc(store_vvvvwde) function store_vvvvwdf_SomeFunc(store_vvvvwdf)
{ {
// set the function logic // set the function logic
if (store_vvvvwde == 4) if (store_vvvvwdf == 6)
{
return true;
}
return false;
}
// the vvvvwde Some function
function datatype_vvvvwde_SomeFunc(datatype_vvvvwde)
{
// set the function logic
if (datatype_vvvvwde == 'CHAR' || datatype_vvvvwde == 'VARCHAR' || datatype_vvvvwde == 'TEXT' || datatype_vvvvwde == 'MEDIUMTEXT' || datatype_vvvvwde == 'LONGTEXT' || datatype_vvvvwde == 'BLOB' || datatype_vvvvwde == 'TINYBLOB' || datatype_vvvvwde == 'MEDIUMBLOB' || datatype_vvvvwde == 'LONGBLOB')
{ {
return true; return true;
} }
@@ -406,220 +421,10 @@ function datatype_vvvvwde_SomeFunc(datatype_vvvvwde)
} }
// the vvvvwdg function // the vvvvwdg function
function vvvvwdg(store_vvvvwdg,datatype_vvvvwdg) function vvvvwdg(add_css_view_vvvvwdg)
{
if (isSet(store_vvvvwdg) && store_vvvvwdg.constructor !== Array)
{
var temp_vvvvwdg = store_vvvvwdg;
var store_vvvvwdg = [];
store_vvvvwdg.push(temp_vvvvwdg);
}
else if (!isSet(store_vvvvwdg))
{
var store_vvvvwdg = [];
}
var store = store_vvvvwdg.some(store_vvvvwdg_SomeFunc);
if (isSet(datatype_vvvvwdg) && datatype_vvvvwdg.constructor !== Array)
{
var temp_vvvvwdg = datatype_vvvvwdg;
var datatype_vvvvwdg = [];
datatype_vvvvwdg.push(temp_vvvvwdg);
}
else if (!isSet(datatype_vvvvwdg))
{
var datatype_vvvvwdg = [];
}
var datatype = datatype_vvvvwdg.some(datatype_vvvvwdg_SomeFunc);
// set this function logic
if (store && datatype)
{
jQuery('#jform_initiator_on_get_model').closest('.control-group').show();
jQuery('#jform_initiator_on_save_model').closest('.control-group').show();
jQuery('#jform_on_save_model_field').closest('.control-group').show();
// add required attribute to on_save_model_field field
if (jform_vvvvwdgvxt_required)
{
updateFieldRequired('on_save_model_field',0);
jQuery('#jform_on_save_model_field').prop('required','required');
jQuery('#jform_on_save_model_field').attr('aria-required',true);
jQuery('#jform_on_save_model_field').addClass('required');
jform_vvvvwdgvxt_required = false;
}
jQuery('.note_expert_field_save_mode').closest('.control-group').show();
jQuery('#jform_on_get_model_field').closest('.control-group').show();
// add required attribute to on_get_model_field field
if (jform_vvvvwdgvxu_required)
{
updateFieldRequired('on_get_model_field',0);
jQuery('#jform_on_get_model_field').prop('required','required');
jQuery('#jform_on_get_model_field').attr('aria-required',true);
jQuery('#jform_on_get_model_field').addClass('required');
jform_vvvvwdgvxu_required = false;
}
}
else
{
jQuery('#jform_initiator_on_get_model').closest('.control-group').hide();
jQuery('#jform_initiator_on_save_model').closest('.control-group').hide();
jQuery('#jform_on_save_model_field').closest('.control-group').hide();
// remove required attribute from on_save_model_field field
if (!jform_vvvvwdgvxt_required)
{
updateFieldRequired('on_save_model_field',1);
jQuery('#jform_on_save_model_field').removeAttr('required');
jQuery('#jform_on_save_model_field').removeAttr('aria-required');
jQuery('#jform_on_save_model_field').removeClass('required');
jform_vvvvwdgvxt_required = true;
}
jQuery('.note_expert_field_save_mode').closest('.control-group').hide();
jQuery('#jform_on_get_model_field').closest('.control-group').hide();
// remove required attribute from on_get_model_field field
if (!jform_vvvvwdgvxu_required)
{
updateFieldRequired('on_get_model_field',1);
jQuery('#jform_on_get_model_field').removeAttr('required');
jQuery('#jform_on_get_model_field').removeAttr('aria-required');
jQuery('#jform_on_get_model_field').removeClass('required');
jform_vvvvwdgvxu_required = true;
}
}
}
// the vvvvwdg Some function
function store_vvvvwdg_SomeFunc(store_vvvvwdg)
{ {
// set the function logic // set the function logic
if (store_vvvvwdg == 6) if (add_css_view_vvvvwdg == 1)
{
return true;
}
return false;
}
// the vvvvwdg Some function
function datatype_vvvvwdg_SomeFunc(datatype_vvvvwdg)
{
// set the function logic
if (datatype_vvvvwdg == 'CHAR' || datatype_vvvvwdg == 'VARCHAR' || datatype_vvvvwdg == 'TEXT' || datatype_vvvvwdg == 'MEDIUMTEXT' || datatype_vvvvwdg == 'LONGTEXT' || datatype_vvvvwdg == 'BLOB' || datatype_vvvvwdg == 'TINYBLOB' || datatype_vvvvwdg == 'MEDIUMBLOB' || datatype_vvvvwdg == 'LONGBLOB')
{
return true;
}
return false;
}
// the vvvvwdh function
function vvvvwdh(datatype_vvvvwdh,store_vvvvwdh)
{
if (isSet(datatype_vvvvwdh) && datatype_vvvvwdh.constructor !== Array)
{
var temp_vvvvwdh = datatype_vvvvwdh;
var datatype_vvvvwdh = [];
datatype_vvvvwdh.push(temp_vvvvwdh);
}
else if (!isSet(datatype_vvvvwdh))
{
var datatype_vvvvwdh = [];
}
var datatype = datatype_vvvvwdh.some(datatype_vvvvwdh_SomeFunc);
if (isSet(store_vvvvwdh) && store_vvvvwdh.constructor !== Array)
{
var temp_vvvvwdh = store_vvvvwdh;
var store_vvvvwdh = [];
store_vvvvwdh.push(temp_vvvvwdh);
}
else if (!isSet(store_vvvvwdh))
{
var store_vvvvwdh = [];
}
var store = store_vvvvwdh.some(store_vvvvwdh_SomeFunc);
// set this function logic
if (datatype && store)
{
jQuery('#jform_initiator_on_get_model').closest('.control-group').show();
jQuery('#jform_initiator_on_save_model').closest('.control-group').show();
jQuery('#jform_on_save_model_field').closest('.control-group').show();
// add required attribute to on_save_model_field field
if (jform_vvvvwdhvxv_required)
{
updateFieldRequired('on_save_model_field',0);
jQuery('#jform_on_save_model_field').prop('required','required');
jQuery('#jform_on_save_model_field').attr('aria-required',true);
jQuery('#jform_on_save_model_field').addClass('required');
jform_vvvvwdhvxv_required = false;
}
jQuery('.note_expert_field_save_mode').closest('.control-group').show();
jQuery('#jform_on_get_model_field').closest('.control-group').show();
// add required attribute to on_get_model_field field
if (jform_vvvvwdhvxw_required)
{
updateFieldRequired('on_get_model_field',0);
jQuery('#jform_on_get_model_field').prop('required','required');
jQuery('#jform_on_get_model_field').attr('aria-required',true);
jQuery('#jform_on_get_model_field').addClass('required');
jform_vvvvwdhvxw_required = false;
}
}
else
{
jQuery('#jform_initiator_on_get_model').closest('.control-group').hide();
jQuery('#jform_initiator_on_save_model').closest('.control-group').hide();
jQuery('#jform_on_save_model_field').closest('.control-group').hide();
// remove required attribute from on_save_model_field field
if (!jform_vvvvwdhvxv_required)
{
updateFieldRequired('on_save_model_field',1);
jQuery('#jform_on_save_model_field').removeAttr('required');
jQuery('#jform_on_save_model_field').removeAttr('aria-required');
jQuery('#jform_on_save_model_field').removeClass('required');
jform_vvvvwdhvxv_required = true;
}
jQuery('.note_expert_field_save_mode').closest('.control-group').hide();
jQuery('#jform_on_get_model_field').closest('.control-group').hide();
// remove required attribute from on_get_model_field field
if (!jform_vvvvwdhvxw_required)
{
updateFieldRequired('on_get_model_field',1);
jQuery('#jform_on_get_model_field').removeAttr('required');
jQuery('#jform_on_get_model_field').removeAttr('aria-required');
jQuery('#jform_on_get_model_field').removeClass('required');
jform_vvvvwdhvxw_required = true;
}
}
}
// the vvvvwdh Some function
function datatype_vvvvwdh_SomeFunc(datatype_vvvvwdh)
{
// set the function logic
if (datatype_vvvvwdh == 'CHAR' || datatype_vvvvwdh == 'VARCHAR' || datatype_vvvvwdh == 'TEXT' || datatype_vvvvwdh == 'MEDIUMTEXT' || datatype_vvvvwdh == 'LONGTEXT' || datatype_vvvvwdh == 'BLOB' || datatype_vvvvwdh == 'TINYBLOB' || datatype_vvvvwdh == 'MEDIUMBLOB' || datatype_vvvvwdh == 'LONGBLOB')
{
return true;
}
return false;
}
// the vvvvwdh Some function
function store_vvvvwdh_SomeFunc(store_vvvvwdh)
{
// set the function logic
if (store_vvvvwdh == 6)
{
return true;
}
return false;
}
// the vvvvwdi function
function vvvvwdi(add_css_view_vvvvwdi)
{
// set the function logic
if (add_css_view_vvvvwdi == 1)
{ {
jQuery('#jform_css_view-lbl').closest('.control-group').show(); jQuery('#jform_css_view-lbl').closest('.control-group').show();
} }
@@ -629,11 +434,11 @@ function vvvvwdi(add_css_view_vvvvwdi)
} }
} }
// the vvvvwdj function // the vvvvwdh function
function vvvvwdj(add_css_views_vvvvwdj) function vvvvwdh(add_css_views_vvvvwdh)
{ {
// set the function logic // set the function logic
if (add_css_views_vvvvwdj == 1) if (add_css_views_vvvvwdh == 1)
{ {
jQuery('#jform_css_views-lbl').closest('.control-group').show(); jQuery('#jform_css_views-lbl').closest('.control-group').show();
} }
@@ -643,11 +448,11 @@ function vvvvwdj(add_css_views_vvvvwdj)
} }
} }
// the vvvvwdk function // the vvvvwdi function
function vvvvwdk(add_javascript_view_footer_vvvvwdk) function vvvvwdi(add_javascript_view_footer_vvvvwdi)
{ {
// set the function logic // set the function logic
if (add_javascript_view_footer_vvvvwdk == 1) if (add_javascript_view_footer_vvvvwdi == 1)
{ {
jQuery('#jform_javascript_view_footer-lbl').closest('.control-group').show(); jQuery('#jform_javascript_view_footer-lbl').closest('.control-group').show();
} }
@@ -657,11 +462,11 @@ function vvvvwdk(add_javascript_view_footer_vvvvwdk)
} }
} }
// the vvvvwdl function // the vvvvwdj function
function vvvvwdl(add_javascript_views_footer_vvvvwdl) function vvvvwdj(add_javascript_views_footer_vvvvwdj)
{ {
// set the function logic // set the function logic
if (add_javascript_views_footer_vvvvwdl == 1) if (add_javascript_views_footer_vvvvwdj == 1)
{ {
jQuery('#jform_javascript_views_footer-lbl').closest('.control-group').show(); jQuery('#jform_javascript_views_footer-lbl').closest('.control-group').show();
} }

View File

@@ -227,8 +227,7 @@
type="category" type="category"
name="catid" name="catid"
label="COM_COMPONENTBUILDER_FIELD_CATID_LABEL" label="COM_COMPONENTBUILDER_FIELD_CATID_LABEL"
extension="com_componentbuilder.fields" extension="com_componentbuilder.field"
default=""
description="COM_COMPONENTBUILDER_FIELD_CATID_DESCRIPTION" description="COM_COMPONENTBUILDER_FIELD_CATID_DESCRIPTION"
class="inputbox" class="inputbox"
/> />

File diff suppressed because it is too large Load Diff

View File

@@ -449,7 +449,7 @@
type="category" type="category"
name="catid" name="catid"
label="COM_COMPONENTBUILDER_FIELDTYPE_CATID_LABEL" label="COM_COMPONENTBUILDER_FIELDTYPE_CATID_LABEL"
extension="com_componentbuilder.fieldtypes" extension="com_componentbuilder.fieldtype"
default="" default=""
description="COM_COMPONENTBUILDER_FIELDTYPE_CATID_DESCRIPTION" description="COM_COMPONENTBUILDER_FIELDTYPE_CATID_DESCRIPTION"
class="inputbox" class="inputbox"

View File

@@ -9,98 +9,210 @@
*/ */
// Some Global Values // Some Global Values
jform_vvvvwekvyq_required = false; jform_vvvvweivyn_required = false;
jform_vvvvwelvyr_required = false; jform_vvvvwejvyo_required = false;
jform_vvvvwemvys_required = false; jform_vvvvwekvyp_required = false;
jform_vvvvwenvyt_required = false; jform_vvvvwelvyq_required = false;
jform_vvvvwepvyu_required = false; jform_vvvvwenvyr_required = false;
// Initial Script // Initial Script
jQuery(document).ready(function() jQuery(document).ready(function()
{ {
var location_vvvvwek = jQuery("#jform_location input[type='radio']:checked").val(); var location_vvvvwei = jQuery("#jform_location input[type='radio']:checked").val();
vvvvwek(location_vvvvwek); vvvvwei(location_vvvvwei);
var location_vvvvwel = jQuery("#jform_location input[type='radio']:checked").val(); var location_vvvvwej = jQuery("#jform_location input[type='radio']:checked").val();
vvvvwel(location_vvvvwel); vvvvwej(location_vvvvwej);
var type_vvvvwek = jQuery("#jform_type").val();
vvvvwek(type_vvvvwek);
var type_vvvvwel = jQuery("#jform_type").val();
vvvvwel(type_vvvvwel);
var type_vvvvwem = jQuery("#jform_type").val(); var type_vvvvwem = jQuery("#jform_type").val();
vvvvwem(type_vvvvwem); vvvvwem(type_vvvvwem);
var type_vvvvwen = jQuery("#jform_type").val(); var target_vvvvwen = jQuery("#jform_target input[type='radio']:checked").val();
vvvvwen(type_vvvvwen); vvvvwen(target_vvvvwen);
var type_vvvvweo = jQuery("#jform_type").val();
vvvvweo(type_vvvvweo);
var target_vvvvwep = jQuery("#jform_target input[type='radio']:checked").val();
vvvvwep(target_vvvvwep);
}); });
// the vvvvwek function // the vvvvwei function
function vvvvwek(location_vvvvwek) function vvvvwei(location_vvvvwei)
{ {
// set the function logic // set the function logic
if (location_vvvvwek == 1) if (location_vvvvwei == 1)
{ {
jQuery('#jform_admin_view').closest('.control-group').show(); jQuery('#jform_admin_view').closest('.control-group').show();
// add required attribute to admin_view field // add required attribute to admin_view field
if (jform_vvvvwekvyq_required) if (jform_vvvvweivyn_required)
{ {
updateFieldRequired('admin_view',0); updateFieldRequired('admin_view',0);
jQuery('#jform_admin_view').prop('required','required'); jQuery('#jform_admin_view').prop('required','required');
jQuery('#jform_admin_view').attr('aria-required',true); jQuery('#jform_admin_view').attr('aria-required',true);
jQuery('#jform_admin_view').addClass('required'); jQuery('#jform_admin_view').addClass('required');
jform_vvvvwekvyq_required = false; jform_vvvvweivyn_required = false;
} }
} }
else else
{ {
jQuery('#jform_admin_view').closest('.control-group').hide(); jQuery('#jform_admin_view').closest('.control-group').hide();
// remove required attribute from admin_view field // remove required attribute from admin_view field
if (!jform_vvvvwekvyq_required) if (!jform_vvvvweivyn_required)
{ {
updateFieldRequired('admin_view',1); updateFieldRequired('admin_view',1);
jQuery('#jform_admin_view').removeAttr('required'); jQuery('#jform_admin_view').removeAttr('required');
jQuery('#jform_admin_view').removeAttr('aria-required'); jQuery('#jform_admin_view').removeAttr('aria-required');
jQuery('#jform_admin_view').removeClass('required'); jQuery('#jform_admin_view').removeClass('required');
jform_vvvvwekvyq_required = true; jform_vvvvweivyn_required = true;
} }
} }
} }
// the vvvvwel function // the vvvvwej function
function vvvvwel(location_vvvvwel) function vvvvwej(location_vvvvwej)
{ {
// set the function logic // set the function logic
if (location_vvvvwel == 2) if (location_vvvvwej == 2)
{ {
jQuery('#jform_site_view').closest('.control-group').show(); jQuery('#jform_site_view').closest('.control-group').show();
// add required attribute to site_view field // add required attribute to site_view field
if (jform_vvvvwelvyr_required) if (jform_vvvvwejvyo_required)
{ {
updateFieldRequired('site_view',0); updateFieldRequired('site_view',0);
jQuery('#jform_site_view').prop('required','required'); jQuery('#jform_site_view').prop('required','required');
jQuery('#jform_site_view').attr('aria-required',true); jQuery('#jform_site_view').attr('aria-required',true);
jQuery('#jform_site_view').addClass('required'); jQuery('#jform_site_view').addClass('required');
jform_vvvvwelvyr_required = false; jform_vvvvwejvyo_required = false;
} }
} }
else else
{ {
jQuery('#jform_site_view').closest('.control-group').hide(); jQuery('#jform_site_view').closest('.control-group').hide();
// remove required attribute from site_view field // remove required attribute from site_view field
if (!jform_vvvvwelvyr_required) if (!jform_vvvvwejvyo_required)
{ {
updateFieldRequired('site_view',1); updateFieldRequired('site_view',1);
jQuery('#jform_site_view').removeAttr('required'); jQuery('#jform_site_view').removeAttr('required');
jQuery('#jform_site_view').removeAttr('aria-required'); jQuery('#jform_site_view').removeAttr('aria-required');
jQuery('#jform_site_view').removeClass('required'); jQuery('#jform_site_view').removeClass('required');
jform_vvvvwelvyr_required = true; jform_vvvvwejvyo_required = true;
} }
} }
} }
// the vvvvwek function
function vvvvwek(type_vvvvwek)
{
if (isSet(type_vvvvwek) && type_vvvvwek.constructor !== Array)
{
var temp_vvvvwek = type_vvvvwek;
var type_vvvvwek = [];
type_vvvvwek.push(temp_vvvvwek);
}
else if (!isSet(type_vvvvwek))
{
var type_vvvvwek = [];
}
var type = type_vvvvwek.some(type_vvvvwek_SomeFunc);
// set this function logic
if (type)
{
jQuery('#jform_url').closest('.control-group').show();
// add required attribute to url field
if (jform_vvvvwekvyp_required)
{
updateFieldRequired('url',0);
jQuery('#jform_url').prop('required','required');
jQuery('#jform_url').attr('aria-required',true);
jQuery('#jform_url').addClass('required');
jform_vvvvwekvyp_required = false;
}
}
else
{
jQuery('#jform_url').closest('.control-group').hide();
// remove required attribute from url field
if (!jform_vvvvwekvyp_required)
{
updateFieldRequired('url',1);
jQuery('#jform_url').removeAttr('required');
jQuery('#jform_url').removeAttr('aria-required');
jQuery('#jform_url').removeClass('required');
jform_vvvvwekvyp_required = true;
}
}
}
// the vvvvwek Some function
function type_vvvvwek_SomeFunc(type_vvvvwek)
{
// set the function logic
if (type_vvvvwek == 3)
{
return true;
}
return false;
}
// the vvvvwel function
function vvvvwel(type_vvvvwel)
{
if (isSet(type_vvvvwel) && type_vvvvwel.constructor !== Array)
{
var temp_vvvvwel = type_vvvvwel;
var type_vvvvwel = [];
type_vvvvwel.push(temp_vvvvwel);
}
else if (!isSet(type_vvvvwel))
{
var type_vvvvwel = [];
}
var type = type_vvvvwel.some(type_vvvvwel_SomeFunc);
// set this function logic
if (type)
{
jQuery('#jform_article').closest('.control-group').show();
// add required attribute to article field
if (jform_vvvvwelvyq_required)
{
updateFieldRequired('article',0);
jQuery('#jform_article').prop('required','required');
jQuery('#jform_article').attr('aria-required',true);
jQuery('#jform_article').addClass('required');
jform_vvvvwelvyq_required = false;
}
}
else
{
jQuery('#jform_article').closest('.control-group').hide();
// remove required attribute from article field
if (!jform_vvvvwelvyq_required)
{
updateFieldRequired('article',1);
jQuery('#jform_article').removeAttr('required');
jQuery('#jform_article').removeAttr('aria-required');
jQuery('#jform_article').removeClass('required');
jform_vvvvwelvyq_required = true;
}
}
}
// the vvvvwel Some function
function type_vvvvwel_SomeFunc(type_vvvvwel)
{
// set the function logic
if (type_vvvvwel == 1)
{
return true;
}
return false;
}
// the vvvvwem function // the vvvvwem function
function vvvvwem(type_vvvvwem) function vvvvwem(type_vvvvwem)
{ {
@@ -117,118 +229,6 @@ function vvvvwem(type_vvvvwem)
var type = type_vvvvwem.some(type_vvvvwem_SomeFunc); var type = type_vvvvwem.some(type_vvvvwem_SomeFunc);
// set this function logic
if (type)
{
jQuery('#jform_url').closest('.control-group').show();
// add required attribute to url field
if (jform_vvvvwemvys_required)
{
updateFieldRequired('url',0);
jQuery('#jform_url').prop('required','required');
jQuery('#jform_url').attr('aria-required',true);
jQuery('#jform_url').addClass('required');
jform_vvvvwemvys_required = false;
}
}
else
{
jQuery('#jform_url').closest('.control-group').hide();
// remove required attribute from url field
if (!jform_vvvvwemvys_required)
{
updateFieldRequired('url',1);
jQuery('#jform_url').removeAttr('required');
jQuery('#jform_url').removeAttr('aria-required');
jQuery('#jform_url').removeClass('required');
jform_vvvvwemvys_required = true;
}
}
}
// the vvvvwem Some function
function type_vvvvwem_SomeFunc(type_vvvvwem)
{
// set the function logic
if (type_vvvvwem == 3)
{
return true;
}
return false;
}
// the vvvvwen function
function vvvvwen(type_vvvvwen)
{
if (isSet(type_vvvvwen) && type_vvvvwen.constructor !== Array)
{
var temp_vvvvwen = type_vvvvwen;
var type_vvvvwen = [];
type_vvvvwen.push(temp_vvvvwen);
}
else if (!isSet(type_vvvvwen))
{
var type_vvvvwen = [];
}
var type = type_vvvvwen.some(type_vvvvwen_SomeFunc);
// set this function logic
if (type)
{
jQuery('#jform_article').closest('.control-group').show();
// add required attribute to article field
if (jform_vvvvwenvyt_required)
{
updateFieldRequired('article',0);
jQuery('#jform_article').prop('required','required');
jQuery('#jform_article').attr('aria-required',true);
jQuery('#jform_article').addClass('required');
jform_vvvvwenvyt_required = false;
}
}
else
{
jQuery('#jform_article').closest('.control-group').hide();
// remove required attribute from article field
if (!jform_vvvvwenvyt_required)
{
updateFieldRequired('article',1);
jQuery('#jform_article').removeAttr('required');
jQuery('#jform_article').removeAttr('aria-required');
jQuery('#jform_article').removeClass('required');
jform_vvvvwenvyt_required = true;
}
}
}
// the vvvvwen Some function
function type_vvvvwen_SomeFunc(type_vvvvwen)
{
// set the function logic
if (type_vvvvwen == 1)
{
return true;
}
return false;
}
// the vvvvweo function
function vvvvweo(type_vvvvweo)
{
if (isSet(type_vvvvweo) && type_vvvvweo.constructor !== Array)
{
var temp_vvvvweo = type_vvvvweo;
var type_vvvvweo = [];
type_vvvvweo.push(temp_vvvvweo);
}
else if (!isSet(type_vvvvweo))
{
var type_vvvvweo = [];
}
var type = type_vvvvweo.some(type_vvvvweo_SomeFunc);
// set this function logic // set this function logic
if (type) if (type)
{ {
@@ -240,45 +240,45 @@ function vvvvweo(type_vvvvweo)
} }
} }
// the vvvvweo Some function // the vvvvwem Some function
function type_vvvvweo_SomeFunc(type_vvvvweo) function type_vvvvwem_SomeFunc(type_vvvvwem)
{ {
// set the function logic // set the function logic
if (type_vvvvweo == 2) if (type_vvvvwem == 2)
{ {
return true; return true;
} }
return false; return false;
} }
// the vvvvwep function // the vvvvwen function
function vvvvwep(target_vvvvwep) function vvvvwen(target_vvvvwen)
{ {
// set the function logic // set the function logic
if (target_vvvvwep == 1) if (target_vvvvwen == 1)
{ {
jQuery('#jform_groups').closest('.control-group').show(); jQuery('#jform_groups').closest('.control-group').show();
// add required attribute to groups field // add required attribute to groups field
if (jform_vvvvwepvyu_required) if (jform_vvvvwenvyr_required)
{ {
updateFieldRequired('groups',0); updateFieldRequired('groups',0);
jQuery('#jform_groups').prop('required','required'); jQuery('#jform_groups').prop('required','required');
jQuery('#jform_groups').attr('aria-required',true); jQuery('#jform_groups').attr('aria-required',true);
jQuery('#jform_groups').addClass('required'); jQuery('#jform_groups').addClass('required');
jform_vvvvwepvyu_required = false; jform_vvvvwenvyr_required = false;
} }
} }
else else
{ {
jQuery('#jform_groups').closest('.control-group').hide(); jQuery('#jform_groups').closest('.control-group').hide();
// remove required attribute from groups field // remove required attribute from groups field
if (!jform_vvvvwepvyu_required) if (!jform_vvvvwenvyr_required)
{ {
updateFieldRequired('groups',1); updateFieldRequired('groups',1);
jQuery('#jform_groups').removeAttr('required'); jQuery('#jform_groups').removeAttr('required');
jQuery('#jform_groups').removeAttr('aria-required'); jQuery('#jform_groups').removeAttr('aria-required');
jQuery('#jform_groups').removeClass('required'); jQuery('#jform_groups').removeClass('required');
jform_vvvvwepvyu_required = true; jform_vvvvwenvyr_required = true;
} }
} }
} }

View File

@@ -292,6 +292,21 @@
<option value="3"> <option value="3">
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_USE_ONLY_FIRST_NUMBER_OF_GLOBAL_VERSION_ONEXX</option> COM_COMPONENTBUILDER_JOOMLA_COMPONENT_USE_ONLY_FIRST_NUMBER_OF_GLOBAL_VERSION_ONEXX</option>
</field> </field>
<!-- Remove_line_breaks Field. Type: Radio. (joomla) -->
<field
type="radio"
name="remove_line_breaks"
label="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_REMOVE_LINE_BREAKS_LABEL"
description="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_REMOVE_LINE_BREAKS_DESCRIPTION"
class="btn-group btn-group-yesno"
default="0"
required="true">
<!-- Option Set. -->
<option value="1">
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_YES</option>
<option value="0">
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_NO</option>
</field>
<!-- Add_placeholders Field. Type: Radio. (joomla) --> <!-- Add_placeholders Field. Type: Radio. (joomla) -->
<field <field
type="radio" type="radio"
@@ -357,34 +372,6 @@
multiple="false" multiple="false"
default="" default=""
/> />
<!-- Copyright Field. Type: Textarea. (joomla) -->
<field
type="textarea"
name="copyright"
label="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_COPYRIGHT_LABEL"
rows="7"
cols="10"
default="Copyright (C) 2015. All Rights Reserved"
description="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_COPYRIGHT_DESCRIPTION"
class="text_area span12"
filter="HTML"
hint="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_COPYRIGHT_HINT"
required="true"
/>
<!-- Add_php_postflight_update Field. Type: Radio. (joomla) -->
<field
type="radio"
name="add_php_postflight_update"
label="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_ADD_PHP_POSTFLIGHT_UPDATE_LABEL"
class="btn-group btn-group-yesno"
default="0"
required="true">
<!-- Option Set. -->
<option value="1">
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_YES</option>
<option value="0">
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_NO</option>
</field>
<!-- Author Field. Type: Text. (joomla) --> <!-- Author Field. Type: Text. (joomla) -->
<field <field
type="text" type="text"
@@ -401,13 +388,14 @@
message="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_AUTHOR_MESSAGE" message="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_AUTHOR_MESSAGE"
hint="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_AUTHOR_HINT" hint="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_AUTHOR_HINT"
/> />
<!-- Addreadme Field. Type: Radio. (joomla) --> <!-- Add_php_postflight_update Field. Type: Radio. (joomla) -->
<field <field
type="radio" type="radio"
name="addreadme" name="add_php_postflight_update"
label="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_ADDREADME_LABEL" label="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_ADD_PHP_POSTFLIGHT_UPDATE_LABEL"
class="btn-group btn-group-yesno" class="btn-group btn-group-yesno"
default="0"> default="0"
required="true">
<!-- Option Set. --> <!-- Option Set. -->
<option value="1"> <option value="1">
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_YES</option> COM_COMPONENTBUILDER_JOOMLA_COMPONENT_YES</option>
@@ -429,15 +417,13 @@
message="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_EMAIL_MESSAGE" message="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_EMAIL_MESSAGE"
hint="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_EMAIL_HINT" hint="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_EMAIL_HINT"
/> />
<!-- Debug_linenr Field. Type: Radio. (joomla) --> <!-- Addreadme Field. Type: Radio. (joomla) -->
<field <field
type="radio" type="radio"
name="debug_linenr" name="addreadme"
label="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_DEBUG_LINENR_LABEL" label="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_ADDREADME_LABEL"
description="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_DEBUG_LINENR_DESCRIPTION"
class="btn-group btn-group-yesno" class="btn-group btn-group-yesno"
default="0" default="0">
required="true">
<!-- Option Set. --> <!-- Option Set. -->
<option value="1"> <option value="1">
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_YES</option> COM_COMPONENTBUILDER_JOOMLA_COMPONENT_YES</option>
@@ -460,19 +446,21 @@
message="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_WEBSITE_MESSAGE" message="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_WEBSITE_MESSAGE"
hint="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_WEBSITE_HINT" hint="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_WEBSITE_HINT"
/> />
<!-- Buildcompsql Field. Type: Textarea. (joomla) --> <!-- Debug_linenr Field. Type: Radio. (joomla) -->
<field <field
type="textarea" type="radio"
name="buildcompsql" name="debug_linenr"
label="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_BUILDCOMPSQL_LABEL" label="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_DEBUG_LINENR_LABEL"
rows="30" description="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_DEBUG_LINENR_DESCRIPTION"
cols="15" class="btn-group btn-group-yesno"
description="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_BUILDCOMPSQL_DESCRIPTION" default="0"
class="text_area span12" required="true">
filter="raw" <!-- Option Set. -->
hint="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_BUILDCOMPSQL_HINT" <option value="1">
required="true" COM_COMPONENTBUILDER_JOOMLA_COMPONENT_YES</option>
/> <option value="0">
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_NO</option>
</field>
<!-- Add_license Field. Type: Radio. (joomla) --> <!-- Add_license Field. Type: Radio. (joomla) -->
<field <field
type="radio" type="radio"
@@ -488,20 +476,19 @@
<option value="0"> <option value="0">
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_NO</option> COM_COMPONENTBUILDER_JOOMLA_COMPONENT_NO</option>
</field> </field>
<!-- Add_php_helper_both Field. Type: Radio. (joomla) --> <!-- Buildcompsql Field. Type: Textarea. (joomla) -->
<field <field
type="radio" type="textarea"
name="add_php_helper_both" name="buildcompsql"
label="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_ADD_PHP_HELPER_BOTH_LABEL" label="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_BUILDCOMPSQL_LABEL"
class="btn-group btn-group-yesno" rows="30"
default="0" cols="15"
required="true"> description="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_BUILDCOMPSQL_DESCRIPTION"
<!-- Option Set. --> class="text_area span12"
<option value="1"> filter="raw"
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_YES</option> hint="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_BUILDCOMPSQL_HINT"
<option value="0"> required="true"
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_NO</option> />
</field>
<!-- License_type Field. Type: List. (joomla) --> <!-- License_type Field. Type: List. (joomla) -->
<field <field
type="list" type="list"
@@ -523,11 +510,11 @@
<option value="4"> <option value="4">
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_CUSTOM_USED_IN_CUSTOM_CODE</option> COM_COMPONENTBUILDER_JOOMLA_COMPONENT_CUSTOM_USED_IN_CUSTOM_CODE</option>
</field> </field>
<!-- Add_admin_event Field. Type: Radio. (joomla) --> <!-- Add_php_helper_both Field. Type: Radio. (joomla) -->
<field <field
type="radio" type="radio"
name="add_admin_event" name="add_php_helper_both"
label="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_ADD_ADMIN_EVENT_LABEL" label="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_ADD_PHP_HELPER_BOTH_LABEL"
class="btn-group btn-group-yesno" class="btn-group btn-group-yesno"
default="0" default="0"
required="true"> required="true">
@@ -539,11 +526,11 @@
</field> </field>
<!-- Note_whmcs_lisencing_note Field. Type: Note. A None Database Field. (joomla) --> <!-- Note_whmcs_lisencing_note Field. Type: Note. A None Database Field. (joomla) -->
<field type="note" name="note_whmcs_lisencing_note" label="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_NOTE_WHMCS_LISENCING_NOTE_LABEL" description="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_NOTE_WHMCS_LISENCING_NOTE_DESCRIPTION" heading="h4" class="alert alert-success note_whmcs_lisencing_note" /> <field type="note" name="note_whmcs_lisencing_note" label="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_NOTE_WHMCS_LISENCING_NOTE_LABEL" description="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_NOTE_WHMCS_LISENCING_NOTE_DESCRIPTION" heading="h4" class="alert alert-success note_whmcs_lisencing_note" />
<!-- Add_site_event Field. Type: Radio. (joomla) --> <!-- Add_admin_event Field. Type: Radio. (joomla) -->
<field <field
type="radio" type="radio"
name="add_site_event" name="add_admin_event"
label="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_ADD_SITE_EVENT_LABEL" label="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_ADD_ADMIN_EVENT_LABEL"
class="btn-group btn-group-yesno" class="btn-group btn-group-yesno"
default="0" default="0"
required="true"> required="true">
@@ -566,11 +553,11 @@
message="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_WHMCS_KEY_MESSAGE" message="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_WHMCS_KEY_MESSAGE"
hint="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_WHMCS_KEY_HINT" hint="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_WHMCS_KEY_HINT"
/> />
<!-- Add_css_admin Field. Type: Radio. (joomla) --> <!-- Add_site_event Field. Type: Radio. (joomla) -->
<field <field
type="radio" type="radio"
name="add_css_admin" name="add_site_event"
label="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_ADD_CSS_ADMIN_LABEL" label="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_ADD_SITE_EVENT_LABEL"
class="btn-group btn-group-yesno" class="btn-group btn-group-yesno"
default="0" default="0"
required="true"> required="true">
@@ -595,20 +582,19 @@
message="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_WHMCS_URL_MESSAGE" message="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_WHMCS_URL_MESSAGE"
hint="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_WHMCS_URL_HINT" hint="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_WHMCS_URL_HINT"
/> />
<!-- Dashboard_type Field. Type: Radio. (joomla) --> <!-- Add_css_admin Field. Type: Radio. (joomla) -->
<field <field
type="radio" type="radio"
name="dashboard_type" name="add_css_admin"
label="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_DASHBOARD_TYPE_LABEL" label="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_ADD_CSS_ADMIN_LABEL"
description="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_DASHBOARD_TYPE_DESCRIPTION"
class="btn-group btn-group-yesno" class="btn-group btn-group-yesno"
default="1" default="0"
required="true"> required="true">
<!-- Option Set. --> <!-- Option Set. -->
<option value="1"> <option value="1">
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_DEFAULT</option> COM_COMPONENTBUILDER_JOOMLA_COMPONENT_YES</option>
<option value="2"> <option value="0">
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_DYNAMIC</option> COM_COMPONENTBUILDER_JOOMLA_COMPONENT_NO</option>
</field> </field>
<!-- Whmcs_buy_link Field. Type: Url. (joomla) --> <!-- Whmcs_buy_link Field. Type: Url. (joomla) -->
<field <field
@@ -625,19 +611,20 @@
message="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_WHMCS_BUY_LINK_MESSAGE" message="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_WHMCS_BUY_LINK_MESSAGE"
hint="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_WHMCS_BUY_LINK_HINT" hint="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_WHMCS_BUY_LINK_HINT"
/> />
<!-- Add_php_preflight_install Field. Type: Radio. (joomla) --> <!-- Dashboard_type Field. Type: Radio. (joomla) -->
<field <field
type="radio" type="radio"
name="add_php_preflight_install" name="dashboard_type"
label="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_ADD_PHP_PREFLIGHT_INSTALL_LABEL" label="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_DASHBOARD_TYPE_LABEL"
description="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_DASHBOARD_TYPE_DESCRIPTION"
class="btn-group btn-group-yesno" class="btn-group btn-group-yesno"
default="0" default="1"
required="true"> required="true">
<!-- Option Set. --> <!-- Option Set. -->
<option value="1"> <option value="1">
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_YES</option> COM_COMPONENTBUILDER_JOOMLA_COMPONENT_DEFAULT</option>
<option value="0"> <option value="2">
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_NO</option> COM_COMPONENTBUILDER_JOOMLA_COMPONENT_DYNAMIC</option>
</field> </field>
<!-- License Field. Type: Textarea. (joomla) --> <!-- License Field. Type: Textarea. (joomla) -->
<field <field
@@ -653,11 +640,11 @@
hint="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_LICENSE_HINT" hint="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_LICENSE_HINT"
required="true" required="true"
/> />
<!-- Add_php_postflight_install Field. Type: Radio. (joomla) --> <!-- Add_php_preflight_install Field. Type: Radio. (joomla) -->
<field <field
type="radio" type="radio"
name="add_php_postflight_install" name="add_php_preflight_install"
label="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_ADD_PHP_POSTFLIGHT_INSTALL_LABEL" label="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_ADD_PHP_PREFLIGHT_INSTALL_LABEL"
class="btn-group btn-group-yesno" class="btn-group btn-group-yesno"
default="0" default="0"
required="true"> required="true">
@@ -679,11 +666,11 @@
hide_none="true" hide_none="true"
hide_default="true" hide_default="true"
/> />
<!-- Add_php_method_uninstall Field. Type: Radio. (joomla) --> <!-- Add_php_postflight_install Field. Type: Radio. (joomla) -->
<field <field
type="radio" type="radio"
name="add_php_method_uninstall" name="add_php_postflight_install"
label="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_ADD_PHP_METHOD_UNINSTALL_LABEL" label="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_ADD_PHP_POSTFLIGHT_INSTALL_LABEL"
class="btn-group btn-group-yesno" class="btn-group btn-group-yesno"
default="0" default="0"
required="true"> required="true">
@@ -701,6 +688,34 @@
description="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_IMAGE_DESCRIPTION" description="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_IMAGE_DESCRIPTION"
directory="" directory=""
/> />
<!-- Add_php_method_uninstall Field. Type: Radio. (joomla) -->
<field
type="radio"
name="add_php_method_uninstall"
label="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_ADD_PHP_METHOD_UNINSTALL_LABEL"
class="btn-group btn-group-yesno"
default="0"
required="true">
<!-- Option Set. -->
<option value="1">
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_YES</option>
<option value="0">
COM_COMPONENTBUILDER_JOOMLA_COMPONENT_NO</option>
</field>
<!-- Copyright Field. Type: Textarea. (joomla) -->
<field
type="textarea"
name="copyright"
label="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_COPYRIGHT_LABEL"
rows="7"
cols="10"
default="Copyright (C) 2015. All Rights Reserved"
description="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_COPYRIGHT_DESCRIPTION"
class="text_area span12"
filter="SAFEHTML"
hint="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_COPYRIGHT_HINT"
required="true"
/>
<!-- Add_sql_uninstall Field. Type: Radio. (joomla) --> <!-- Add_sql_uninstall Field. Type: Radio. (joomla) -->
<field <field
type="radio" type="radio"
@@ -939,7 +954,7 @@
label="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_MENU_PREFIX_LABEL" label="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_MENU_PREFIX_LABEL"
size="30" size="30"
maxlength="30" maxlength="30"
default="&amp;#187;" default=""
description="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_MENU_PREFIX_DESCRIPTION" description="COM_COMPONENTBUILDER_JOOMLA_COMPONENT_MENU_PREFIX_DESCRIPTION"
class="text_area" class="text_area"
filter="SAFEHTML" filter="SAFEHTML"

View File

@@ -90,7 +90,6 @@
type="joomlamodules" type="joomlamodules"
name="joomla_module" name="joomla_module"
label="COM_COMPONENTBUILDER_JOOMLA_MODULE_FILES_FOLDERS_URLS_JOOMLA_MODULE_LABEL" label="COM_COMPONENTBUILDER_JOOMLA_MODULE_FILES_FOLDERS_URLS_JOOMLA_MODULE_LABEL"
description="JFIELD_TITLE_DESC"
class="list_class span12" class="list_class span12"
multiple="false" multiple="false"
default="0" default="0"

View File

@@ -90,7 +90,6 @@
type="joomlamodules" type="joomlamodules"
name="joomla_module" name="joomla_module"
label="COM_COMPONENTBUILDER_JOOMLA_MODULE_UPDATES_JOOMLA_MODULE_LABEL" label="COM_COMPONENTBUILDER_JOOMLA_MODULE_UPDATES_JOOMLA_MODULE_LABEL"
description="JFIELD_TITLE_DESC"
class="list_class span12" class="list_class span12"
multiple="false" multiple="false"
default="0" default="0"

View File

@@ -90,7 +90,6 @@
type="joomlaplugins" type="joomlaplugins"
name="joomla_plugin" name="joomla_plugin"
label="COM_COMPONENTBUILDER_JOOMLA_PLUGIN_FILES_FOLDERS_URLS_JOOMLA_PLUGIN_LABEL" label="COM_COMPONENTBUILDER_JOOMLA_PLUGIN_FILES_FOLDERS_URLS_JOOMLA_PLUGIN_LABEL"
description="JFIELD_TITLE_DESC"
class="list_class span12" class="list_class span12"
multiple="false" multiple="false"
default="0" default="0"

View File

@@ -90,7 +90,6 @@
type="joomlaplugins" type="joomlaplugins"
name="joomla_plugin" name="joomla_plugin"
label="COM_COMPONENTBUILDER_JOOMLA_PLUGIN_UPDATES_JOOMLA_PLUGIN_LABEL" label="COM_COMPONENTBUILDER_JOOMLA_PLUGIN_UPDATES_JOOMLA_PLUGIN_LABEL"
description="JFIELD_TITLE_DESC"
class="list_class span12" class="list_class span12"
multiple="false" multiple="false"
default="0" default="0"

View File

@@ -92,7 +92,6 @@
label="COM_COMPONENTBUILDER_LANGUAGE_TRANSLATION_SOURCE_LABEL" label="COM_COMPONENTBUILDER_LANGUAGE_TRANSLATION_SOURCE_LABEL"
rows="4" rows="4"
cols="5" cols="5"
description="JFIELD_TITLE_DESC"
message="COM_COMPONENTBUILDER_LANGUAGE_TRANSLATION_SOURCE_MESSAGE" message="COM_COMPONENTBUILDER_LANGUAGE_TRANSLATION_SOURCE_MESSAGE"
class="text_area span12" class="text_area span12"
filter="safehtml" filter="safehtml"
@@ -150,7 +149,7 @@
cols="20" cols="20"
message="COM_COMPONENTBUILDER_LANGUAGE_TRANSLATION_TRANSLATION_MESSAGE" message="COM_COMPONENTBUILDER_LANGUAGE_TRANSLATION_TRANSLATION_MESSAGE"
class="text_area translation_text_area" class="text_area translation_text_area"
filter="SAFEHTML" filter="RAW"
hint="COM_COMPONENTBUILDER_LANGUAGE_TRANSLATION_TRANSLATION_HINT" hint="COM_COMPONENTBUILDER_LANGUAGE_TRANSLATION_TRANSLATION_HINT"
/> />
<!-- Language Field. Type: Lang. (custom) --> <!-- Language Field. Type: Lang. (custom) -->

View File

@@ -9,24 +9,28 @@
*/ */
// Some Global Values // Some Global Values
jform_vvvvweavyg_required = false; jform_vvvvwdyvyd_required = false;
jform_vvvvweavyh_required = false; jform_vvvvwdyvye_required = false;
jform_vvvvweavyi_required = false; jform_vvvvwdyvyf_required = false;
jform_vvvvwdyvyg_required = false;
jform_vvvvwdyvyh_required = false;
jform_vvvvwdzvyi_required = false;
jform_vvvvweavyj_required = false; jform_vvvvweavyj_required = false;
jform_vvvvweavyk_required = false; jform_vvvvwecvyk_required = false;
jform_vvvvwebvyl_required = false; jform_vvvvweevyl_required = false;
jform_vvvvwecvym_required = false;
jform_vvvvweevyn_required = false;
jform_vvvvwegvyo_required = false;
// Initial Script // Initial Script
jQuery(document).ready(function() jQuery(document).ready(function()
{ {
var protocol_vvvvwea = jQuery("#jform_protocol").val(); var protocol_vvvvwdy = jQuery("#jform_protocol").val();
vvvvwea(protocol_vvvvwea); vvvvwdy(protocol_vvvvwdy);
var protocol_vvvvweb = jQuery("#jform_protocol").val(); var protocol_vvvvwdz = jQuery("#jform_protocol").val();
vvvvweb(protocol_vvvvweb); vvvvwdz(protocol_vvvvwdz);
var protocol_vvvvwea = jQuery("#jform_protocol").val();
var authentication_vvvvwea = jQuery("#jform_authentication").val();
vvvvwea(protocol_vvvvwea,authentication_vvvvwea);
var protocol_vvvvwec = jQuery("#jform_protocol").val(); var protocol_vvvvwec = jQuery("#jform_protocol").val();
var authentication_vvvvwec = jQuery("#jform_authentication").val(); var authentication_vvvvwec = jQuery("#jform_authentication").val();
@@ -39,14 +43,206 @@ jQuery(document).ready(function()
var protocol_vvvvweg = jQuery("#jform_protocol").val(); var protocol_vvvvweg = jQuery("#jform_protocol").val();
var authentication_vvvvweg = jQuery("#jform_authentication").val(); var authentication_vvvvweg = jQuery("#jform_authentication").val();
vvvvweg(protocol_vvvvweg,authentication_vvvvweg); vvvvweg(protocol_vvvvweg,authentication_vvvvweg);
var protocol_vvvvwei = jQuery("#jform_protocol").val();
var authentication_vvvvwei = jQuery("#jform_authentication").val();
vvvvwei(protocol_vvvvwei,authentication_vvvvwei);
}); });
// the vvvvwdy function
function vvvvwdy(protocol_vvvvwdy)
{
if (isSet(protocol_vvvvwdy) && protocol_vvvvwdy.constructor !== Array)
{
var temp_vvvvwdy = protocol_vvvvwdy;
var protocol_vvvvwdy = [];
protocol_vvvvwdy.push(temp_vvvvwdy);
}
else if (!isSet(protocol_vvvvwdy))
{
var protocol_vvvvwdy = [];
}
var protocol = protocol_vvvvwdy.some(protocol_vvvvwdy_SomeFunc);
// set this function logic
if (protocol)
{
jQuery('#jform_authentication').closest('.control-group').show();
// add required attribute to authentication field
if (jform_vvvvwdyvyd_required)
{
updateFieldRequired('authentication',0);
jQuery('#jform_authentication').prop('required','required');
jQuery('#jform_authentication').attr('aria-required',true);
jQuery('#jform_authentication').addClass('required');
jform_vvvvwdyvyd_required = false;
}
jQuery('#jform_host').closest('.control-group').show();
// add required attribute to host field
if (jform_vvvvwdyvye_required)
{
updateFieldRequired('host',0);
jQuery('#jform_host').prop('required','required');
jQuery('#jform_host').attr('aria-required',true);
jQuery('#jform_host').addClass('required');
jform_vvvvwdyvye_required = false;
}
jQuery('#jform_port').closest('.control-group').show();
// add required attribute to port field
if (jform_vvvvwdyvyf_required)
{
updateFieldRequired('port',0);
jQuery('#jform_port').prop('required','required');
jQuery('#jform_port').attr('aria-required',true);
jQuery('#jform_port').addClass('required');
jform_vvvvwdyvyf_required = false;
}
jQuery('#jform_path').closest('.control-group').show();
// add required attribute to path field
if (jform_vvvvwdyvyg_required)
{
updateFieldRequired('path',0);
jQuery('#jform_path').prop('required','required');
jQuery('#jform_path').attr('aria-required',true);
jQuery('#jform_path').addClass('required');
jform_vvvvwdyvyg_required = false;
}
jQuery('.note_ssh_security').closest('.control-group').show();
jQuery('#jform_username').closest('.control-group').show();
// add required attribute to username field
if (jform_vvvvwdyvyh_required)
{
updateFieldRequired('username',0);
jQuery('#jform_username').prop('required','required');
jQuery('#jform_username').attr('aria-required',true);
jQuery('#jform_username').addClass('required');
jform_vvvvwdyvyh_required = false;
}
}
else
{
jQuery('#jform_authentication').closest('.control-group').hide();
// remove required attribute from authentication field
if (!jform_vvvvwdyvyd_required)
{
updateFieldRequired('authentication',1);
jQuery('#jform_authentication').removeAttr('required');
jQuery('#jform_authentication').removeAttr('aria-required');
jQuery('#jform_authentication').removeClass('required');
jform_vvvvwdyvyd_required = true;
}
jQuery('#jform_host').closest('.control-group').hide();
// remove required attribute from host field
if (!jform_vvvvwdyvye_required)
{
updateFieldRequired('host',1);
jQuery('#jform_host').removeAttr('required');
jQuery('#jform_host').removeAttr('aria-required');
jQuery('#jform_host').removeClass('required');
jform_vvvvwdyvye_required = true;
}
jQuery('#jform_port').closest('.control-group').hide();
// remove required attribute from port field
if (!jform_vvvvwdyvyf_required)
{
updateFieldRequired('port',1);
jQuery('#jform_port').removeAttr('required');
jQuery('#jform_port').removeAttr('aria-required');
jQuery('#jform_port').removeClass('required');
jform_vvvvwdyvyf_required = true;
}
jQuery('#jform_path').closest('.control-group').hide();
// remove required attribute from path field
if (!jform_vvvvwdyvyg_required)
{
updateFieldRequired('path',1);
jQuery('#jform_path').removeAttr('required');
jQuery('#jform_path').removeAttr('aria-required');
jQuery('#jform_path').removeClass('required');
jform_vvvvwdyvyg_required = true;
}
jQuery('.note_ssh_security').closest('.control-group').hide();
jQuery('#jform_username').closest('.control-group').hide();
// remove required attribute from username field
if (!jform_vvvvwdyvyh_required)
{
updateFieldRequired('username',1);
jQuery('#jform_username').removeAttr('required');
jQuery('#jform_username').removeAttr('aria-required');
jQuery('#jform_username').removeClass('required');
jform_vvvvwdyvyh_required = true;
}
}
}
// the vvvvwdy Some function
function protocol_vvvvwdy_SomeFunc(protocol_vvvvwdy)
{
// set the function logic
if (protocol_vvvvwdy == 2)
{
return true;
}
return false;
}
// the vvvvwdz function
function vvvvwdz(protocol_vvvvwdz)
{
if (isSet(protocol_vvvvwdz) && protocol_vvvvwdz.constructor !== Array)
{
var temp_vvvvwdz = protocol_vvvvwdz;
var protocol_vvvvwdz = [];
protocol_vvvvwdz.push(temp_vvvvwdz);
}
else if (!isSet(protocol_vvvvwdz))
{
var protocol_vvvvwdz = [];
}
var protocol = protocol_vvvvwdz.some(protocol_vvvvwdz_SomeFunc);
// set this function logic
if (protocol)
{
jQuery('.note_ftp_signature').closest('.control-group').show();
jQuery('#jform_signature').closest('.control-group').show();
// add required attribute to signature field
if (jform_vvvvwdzvyi_required)
{
updateFieldRequired('signature',0);
jQuery('#jform_signature').prop('required','required');
jQuery('#jform_signature').attr('aria-required',true);
jQuery('#jform_signature').addClass('required');
jform_vvvvwdzvyi_required = false;
}
}
else
{
jQuery('.note_ftp_signature').closest('.control-group').hide();
jQuery('#jform_signature').closest('.control-group').hide();
// remove required attribute from signature field
if (!jform_vvvvwdzvyi_required)
{
updateFieldRequired('signature',1);
jQuery('#jform_signature').removeAttr('required');
jQuery('#jform_signature').removeAttr('aria-required');
jQuery('#jform_signature').removeClass('required');
jform_vvvvwdzvyi_required = true;
}
}
}
// the vvvvwdz Some function
function protocol_vvvvwdz_SomeFunc(protocol_vvvvwdz)
{
// set the function logic
if (protocol_vvvvwdz == 1)
{
return true;
}
return false;
}
// the vvvvwea function // the vvvvwea function
function vvvvwea(protocol_vvvvwea) function vvvvwea(protocol_vvvvwea,authentication_vvvvwea)
{ {
if (isSet(protocol_vvvvwea) && protocol_vvvvwea.constructor !== Array) if (isSet(protocol_vvvvwea) && protocol_vvvvwea.constructor !== Array)
{ {
@@ -60,115 +256,45 @@ function vvvvwea(protocol_vvvvwea)
} }
var protocol = protocol_vvvvwea.some(protocol_vvvvwea_SomeFunc); var protocol = protocol_vvvvwea.some(protocol_vvvvwea_SomeFunc);
if (isSet(authentication_vvvvwea) && authentication_vvvvwea.constructor !== Array)
{
var temp_vvvvwea = authentication_vvvvwea;
var authentication_vvvvwea = [];
authentication_vvvvwea.push(temp_vvvvwea);
}
else if (!isSet(authentication_vvvvwea))
{
var authentication_vvvvwea = [];
}
var authentication = authentication_vvvvwea.some(authentication_vvvvwea_SomeFunc);
// set this function logic // set this function logic
if (protocol) if (protocol && authentication)
{ {
jQuery('#jform_authentication').closest('.control-group').show(); jQuery('#jform_password').closest('.control-group').show();
// add required attribute to authentication field // add required attribute to password field
if (jform_vvvvweavyg_required)
{
updateFieldRequired('authentication',0);
jQuery('#jform_authentication').prop('required','required');
jQuery('#jform_authentication').attr('aria-required',true);
jQuery('#jform_authentication').addClass('required');
jform_vvvvweavyg_required = false;
}
jQuery('#jform_host').closest('.control-group').show();
// add required attribute to host field
if (jform_vvvvweavyh_required)
{
updateFieldRequired('host',0);
jQuery('#jform_host').prop('required','required');
jQuery('#jform_host').attr('aria-required',true);
jQuery('#jform_host').addClass('required');
jform_vvvvweavyh_required = false;
}
jQuery('#jform_port').closest('.control-group').show();
// add required attribute to port field
if (jform_vvvvweavyi_required)
{
updateFieldRequired('port',0);
jQuery('#jform_port').prop('required','required');
jQuery('#jform_port').attr('aria-required',true);
jQuery('#jform_port').addClass('required');
jform_vvvvweavyi_required = false;
}
jQuery('#jform_path').closest('.control-group').show();
// add required attribute to path field
if (jform_vvvvweavyj_required) if (jform_vvvvweavyj_required)
{ {
updateFieldRequired('path',0); updateFieldRequired('password',0);
jQuery('#jform_path').prop('required','required'); jQuery('#jform_password').prop('required','required');
jQuery('#jform_path').attr('aria-required',true); jQuery('#jform_password').attr('aria-required',true);
jQuery('#jform_path').addClass('required'); jQuery('#jform_password').addClass('required');
jform_vvvvweavyj_required = false; jform_vvvvweavyj_required = false;
} }
jQuery('.note_ssh_security').closest('.control-group').show();
jQuery('#jform_username').closest('.control-group').show();
// add required attribute to username field
if (jform_vvvvweavyk_required)
{
updateFieldRequired('username',0);
jQuery('#jform_username').prop('required','required');
jQuery('#jform_username').attr('aria-required',true);
jQuery('#jform_username').addClass('required');
jform_vvvvweavyk_required = false;
}
} }
else else
{ {
jQuery('#jform_authentication').closest('.control-group').hide(); jQuery('#jform_password').closest('.control-group').hide();
// remove required attribute from authentication field // remove required attribute from password field
if (!jform_vvvvweavyg_required)
{
updateFieldRequired('authentication',1);
jQuery('#jform_authentication').removeAttr('required');
jQuery('#jform_authentication').removeAttr('aria-required');
jQuery('#jform_authentication').removeClass('required');
jform_vvvvweavyg_required = true;
}
jQuery('#jform_host').closest('.control-group').hide();
// remove required attribute from host field
if (!jform_vvvvweavyh_required)
{
updateFieldRequired('host',1);
jQuery('#jform_host').removeAttr('required');
jQuery('#jform_host').removeAttr('aria-required');
jQuery('#jform_host').removeClass('required');
jform_vvvvweavyh_required = true;
}
jQuery('#jform_port').closest('.control-group').hide();
// remove required attribute from port field
if (!jform_vvvvweavyi_required)
{
updateFieldRequired('port',1);
jQuery('#jform_port').removeAttr('required');
jQuery('#jform_port').removeAttr('aria-required');
jQuery('#jform_port').removeClass('required');
jform_vvvvweavyi_required = true;
}
jQuery('#jform_path').closest('.control-group').hide();
// remove required attribute from path field
if (!jform_vvvvweavyj_required) if (!jform_vvvvweavyj_required)
{ {
updateFieldRequired('path',1); updateFieldRequired('password',1);
jQuery('#jform_path').removeAttr('required'); jQuery('#jform_password').removeAttr('required');
jQuery('#jform_path').removeAttr('aria-required'); jQuery('#jform_password').removeAttr('aria-required');
jQuery('#jform_path').removeClass('required'); jQuery('#jform_password').removeClass('required');
jform_vvvvweavyj_required = true; jform_vvvvweavyj_required = true;
} }
jQuery('.note_ssh_security').closest('.control-group').hide();
jQuery('#jform_username').closest('.control-group').hide();
// remove required attribute from username field
if (!jform_vvvvweavyk_required)
{
updateFieldRequired('username',1);
jQuery('#jform_username').removeAttr('required');
jQuery('#jform_username').removeAttr('aria-required');
jQuery('#jform_username').removeClass('required');
jform_vvvvweavyk_required = true;
}
} }
} }
@@ -183,58 +309,11 @@ function protocol_vvvvwea_SomeFunc(protocol_vvvvwea)
return false; return false;
} }
// the vvvvweb function // the vvvvwea Some function
function vvvvweb(protocol_vvvvweb) function authentication_vvvvwea_SomeFunc(authentication_vvvvwea)
{
if (isSet(protocol_vvvvweb) && protocol_vvvvweb.constructor !== Array)
{
var temp_vvvvweb = protocol_vvvvweb;
var protocol_vvvvweb = [];
protocol_vvvvweb.push(temp_vvvvweb);
}
else if (!isSet(protocol_vvvvweb))
{
var protocol_vvvvweb = [];
}
var protocol = protocol_vvvvweb.some(protocol_vvvvweb_SomeFunc);
// set this function logic
if (protocol)
{
jQuery('.note_ftp_signature').closest('.control-group').show();
jQuery('#jform_signature').closest('.control-group').show();
// add required attribute to signature field
if (jform_vvvvwebvyl_required)
{
updateFieldRequired('signature',0);
jQuery('#jform_signature').prop('required','required');
jQuery('#jform_signature').attr('aria-required',true);
jQuery('#jform_signature').addClass('required');
jform_vvvvwebvyl_required = false;
}
}
else
{
jQuery('.note_ftp_signature').closest('.control-group').hide();
jQuery('#jform_signature').closest('.control-group').hide();
// remove required attribute from signature field
if (!jform_vvvvwebvyl_required)
{
updateFieldRequired('signature',1);
jQuery('#jform_signature').removeAttr('required');
jQuery('#jform_signature').removeAttr('aria-required');
jQuery('#jform_signature').removeClass('required');
jform_vvvvwebvyl_required = true;
}
}
}
// the vvvvweb Some function
function protocol_vvvvweb_SomeFunc(protocol_vvvvweb)
{ {
// set the function logic // set the function logic
if (protocol_vvvvweb == 1) if (authentication_vvvvwea == 1 || authentication_vvvvwea == 3 || authentication_vvvvwea == 5)
{ {
return true; return true;
} }
@@ -272,28 +351,28 @@ function vvvvwec(protocol_vvvvwec,authentication_vvvvwec)
// set this function logic // set this function logic
if (protocol && authentication) if (protocol && authentication)
{ {
jQuery('#jform_password').closest('.control-group').show(); jQuery('#jform_private').closest('.control-group').show();
// add required attribute to password field // add required attribute to private field
if (jform_vvvvwecvym_required) if (jform_vvvvwecvyk_required)
{ {
updateFieldRequired('password',0); updateFieldRequired('private',0);
jQuery('#jform_password').prop('required','required'); jQuery('#jform_private').prop('required','required');
jQuery('#jform_password').attr('aria-required',true); jQuery('#jform_private').attr('aria-required',true);
jQuery('#jform_password').addClass('required'); jQuery('#jform_private').addClass('required');
jform_vvvvwecvym_required = false; jform_vvvvwecvyk_required = false;
} }
} }
else else
{ {
jQuery('#jform_password').closest('.control-group').hide(); jQuery('#jform_private').closest('.control-group').hide();
// remove required attribute from password field // remove required attribute from private field
if (!jform_vvvvwecvym_required) if (!jform_vvvvwecvyk_required)
{ {
updateFieldRequired('password',1); updateFieldRequired('private',1);
jQuery('#jform_password').removeAttr('required'); jQuery('#jform_private').removeAttr('required');
jQuery('#jform_password').removeAttr('aria-required'); jQuery('#jform_private').removeAttr('aria-required');
jQuery('#jform_password').removeClass('required'); jQuery('#jform_private').removeClass('required');
jform_vvvvwecvym_required = true; jform_vvvvwecvyk_required = true;
} }
} }
} }
@@ -313,7 +392,7 @@ function protocol_vvvvwec_SomeFunc(protocol_vvvvwec)
function authentication_vvvvwec_SomeFunc(authentication_vvvvwec) function authentication_vvvvwec_SomeFunc(authentication_vvvvwec)
{ {
// set the function logic // set the function logic
if (authentication_vvvvwec == 1 || authentication_vvvvwec == 3 || authentication_vvvvwec == 5) if (authentication_vvvvwec == 2 || authentication_vvvvwec == 3)
{ {
return true; return true;
} }
@@ -351,28 +430,28 @@ function vvvvwee(protocol_vvvvwee,authentication_vvvvwee)
// set this function logic // set this function logic
if (protocol && authentication) if (protocol && authentication)
{ {
jQuery('#jform_private').closest('.control-group').show(); jQuery('#jform_private_key').closest('.control-group').show();
// add required attribute to private field // add required attribute to private_key field
if (jform_vvvvweevyn_required) if (jform_vvvvweevyl_required)
{ {
updateFieldRequired('private',0); updateFieldRequired('private_key',0);
jQuery('#jform_private').prop('required','required'); jQuery('#jform_private_key').prop('required','required');
jQuery('#jform_private').attr('aria-required',true); jQuery('#jform_private_key').attr('aria-required',true);
jQuery('#jform_private').addClass('required'); jQuery('#jform_private_key').addClass('required');
jform_vvvvweevyn_required = false; jform_vvvvweevyl_required = false;
} }
} }
else else
{ {
jQuery('#jform_private').closest('.control-group').hide(); jQuery('#jform_private_key').closest('.control-group').hide();
// remove required attribute from private field // remove required attribute from private_key field
if (!jform_vvvvweevyn_required) if (!jform_vvvvweevyl_required)
{ {
updateFieldRequired('private',1); updateFieldRequired('private_key',1);
jQuery('#jform_private').removeAttr('required'); jQuery('#jform_private_key').removeAttr('required');
jQuery('#jform_private').removeAttr('aria-required'); jQuery('#jform_private_key').removeAttr('aria-required');
jQuery('#jform_private').removeClass('required'); jQuery('#jform_private_key').removeClass('required');
jform_vvvvweevyn_required = true; jform_vvvvweevyl_required = true;
} }
} }
} }
@@ -392,7 +471,7 @@ function protocol_vvvvwee_SomeFunc(protocol_vvvvwee)
function authentication_vvvvwee_SomeFunc(authentication_vvvvwee) function authentication_vvvvwee_SomeFunc(authentication_vvvvwee)
{ {
// set the function logic // set the function logic
if (authentication_vvvvwee == 2 || authentication_vvvvwee == 3) if (authentication_vvvvwee == 4 || authentication_vvvvwee == 5)
{ {
return true; return true;
} }
@@ -430,29 +509,11 @@ function vvvvweg(protocol_vvvvweg,authentication_vvvvweg)
// set this function logic // set this function logic
if (protocol && authentication) if (protocol && authentication)
{ {
jQuery('#jform_private_key').closest('.control-group').show(); jQuery('#jform_secret').closest('.control-group').show();
// add required attribute to private_key field
if (jform_vvvvwegvyo_required)
{
updateFieldRequired('private_key',0);
jQuery('#jform_private_key').prop('required','required');
jQuery('#jform_private_key').attr('aria-required',true);
jQuery('#jform_private_key').addClass('required');
jform_vvvvwegvyo_required = false;
}
} }
else else
{ {
jQuery('#jform_private_key').closest('.control-group').hide(); jQuery('#jform_secret').closest('.control-group').hide();
// remove required attribute from private_key field
if (!jform_vvvvwegvyo_required)
{
updateFieldRequired('private_key',1);
jQuery('#jform_private_key').removeAttr('required');
jQuery('#jform_private_key').removeAttr('aria-required');
jQuery('#jform_private_key').removeClass('required');
jform_vvvvwegvyo_required = true;
}
} }
} }
@@ -471,68 +532,7 @@ function protocol_vvvvweg_SomeFunc(protocol_vvvvweg)
function authentication_vvvvweg_SomeFunc(authentication_vvvvweg) function authentication_vvvvweg_SomeFunc(authentication_vvvvweg)
{ {
// set the function logic // set the function logic
if (authentication_vvvvweg == 4 || authentication_vvvvweg == 5) if (authentication_vvvvweg == 2 || authentication_vvvvweg == 3 || authentication_vvvvweg == 4 || authentication_vvvvweg == 5)
{
return true;
}
return false;
}
// the vvvvwei function
function vvvvwei(protocol_vvvvwei,authentication_vvvvwei)
{
if (isSet(protocol_vvvvwei) && protocol_vvvvwei.constructor !== Array)
{
var temp_vvvvwei = protocol_vvvvwei;
var protocol_vvvvwei = [];
protocol_vvvvwei.push(temp_vvvvwei);
}
else if (!isSet(protocol_vvvvwei))
{
var protocol_vvvvwei = [];
}
var protocol = protocol_vvvvwei.some(protocol_vvvvwei_SomeFunc);
if (isSet(authentication_vvvvwei) && authentication_vvvvwei.constructor !== Array)
{
var temp_vvvvwei = authentication_vvvvwei;
var authentication_vvvvwei = [];
authentication_vvvvwei.push(temp_vvvvwei);
}
else if (!isSet(authentication_vvvvwei))
{
var authentication_vvvvwei = [];
}
var authentication = authentication_vvvvwei.some(authentication_vvvvwei_SomeFunc);
// set this function logic
if (protocol && authentication)
{
jQuery('#jform_secret').closest('.control-group').show();
}
else
{
jQuery('#jform_secret').closest('.control-group').hide();
}
}
// the vvvvwei Some function
function protocol_vvvvwei_SomeFunc(protocol_vvvvwei)
{
// set the function logic
if (protocol_vvvvwei == 2)
{
return true;
}
return false;
}
// the vvvvwei Some function
function authentication_vvvvwei_SomeFunc(authentication_vvvvwei)
{
// set the function logic
if (authentication_vvvvwei == 2 || authentication_vvvvwei == 3 || authentication_vvvvwei == 4 || authentication_vvvvwei == 5)
{ {
return true; return true;
} }

View File

@@ -12,8 +12,8 @@
// No direct access to this file // No direct access to this file
defined('_JEXEC') or die('Restricted access'); defined('_JEXEC') or die('Restricted access');
use Joomla\Registry\Registry; use Joomla\Registry\Registry;
use Joomla\String\StringHelper; use Joomla\String\StringHelper;
use Joomla\Utilities\ArrayHelper; use Joomla\Utilities\ArrayHelper;
/** /**
@@ -415,7 +415,7 @@ class ComponentbuilderModelHelp_document extends JModelAdmin
public function validate($form, $data, $group = null) public function validate($form, $data, $group = null)
{ {
// check if the not_required field is set // check if the not_required field is set
if (ComponentbuilderHelper::checkString($data['not_required'])) if (isset($data['not_required']) && ComponentbuilderHelper::checkString($data['not_required']))
{ {
$requiredFields = (array) explode(',',(string) $data['not_required']); $requiredFields = (array) explode(',',(string) $data['not_required']);
$requiredFields = array_unique($requiredFields); $requiredFields = array_unique($requiredFields);

View File

@@ -278,7 +278,7 @@ class ComponentbuilderModelHelp_documents extends JModelList
public function getExportData($pks, $user = null) public function getExportData($pks, $user = null)
{ {
// setup the query // setup the query
if (ComponentbuilderHelper::checkArray($pks)) if (($pks_size = ComponentbuilderHelper::checkArray($pks)) !== false || 'bulk' === $pks)
{ {
// Set a value to know this is export method. (USE IN CUSTOM CODE TO ALTER OUTCOME) // Set a value to know this is export method. (USE IN CUSTOM CODE TO ALTER OUTCOME)
$_export = true; $_export = true;
@@ -296,7 +296,24 @@ class ComponentbuilderModelHelp_documents extends JModelList
// From the componentbuilder_help_document table // From the componentbuilder_help_document table
$query->from($db->quoteName('#__componentbuilder_help_document', 'a')); $query->from($db->quoteName('#__componentbuilder_help_document', 'a'));
$query->where('a.id IN (' . implode(',',$pks) . ')'); // The bulk export path
if ('bulk' === $pks)
{
$query->where('a.id > 0');
}
// A large array of ID's will not work out well
elseif ($pks_size > 500)
{
// Use lowest ID
$query->where('a.id >= ' . (int) min($pks));
// Use highest ID
$query->where('a.id <= ' . (int) max($pks));
}
// The normal default path
else
{
$query->where('a.id IN (' . implode(',',$pks) . ')');
}
// Order the results by ordering // Order the results by ordering
$query->order('a.ordering ASC'); $query->order('a.ordering ASC');

View File

@@ -426,7 +426,15 @@ class ComponentbuilderModelImport extends JModelLegacy
$jinput = JFactory::getApplication()->input; $jinput = JFactory::getApplication()->input;
foreach($target_headers as $header) foreach($target_headers as $header)
{ {
$data['target_headers'][$header] = $jinput->getString($header, null); if (($column = $jinput->getString($header, false)) !== false ||
($column = $jinput->getString(strtolower($header), false)) !== false)
{
$data['target_headers'][$header] = $column;
}
else
{
$data['target_headers'][$header] = null;
}
} }
// set the data // set the data
if(isset($package['dir'])) if(isset($package['dir']))

Some files were not shown because too many files have changed in this diff Show More