- get('core.edit')): ?>
+ get('joomla_component.edit')): ?>
escape($item->system_name); ?>
checked_out): ?>
name, $item->checked_out_time, 'joomla_components.', $canCheckin); ?>
diff --git a/admin/layouts/ftp/publishing.php b/admin/layouts/ftp/publishing.php
index 8d79c177f..b6c0d3f1f 100644
--- a/admin/layouts/ftp/publishing.php
+++ b/admin/layouts/ftp/publishing.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage publishing.php
diff --git a/admin/layouts/ftp/publlshing.php b/admin/layouts/ftp/publlshing.php
index 3dae5e08a..979e11f42 100644
--- a/admin/layouts/ftp/publlshing.php
+++ b/admin/layouts/ftp/publlshing.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage publlshing.php
diff --git a/admin/layouts/help_document/details_above.php b/admin/layouts/help_document/details_above.php
index d11370c22..2f4a2fe4f 100644
--- a/admin/layouts/help_document/details_above.php
+++ b/admin/layouts/help_document/details_above.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage details_above.php
diff --git a/admin/layouts/help_document/details_fullwidth.php b/admin/layouts/help_document/details_fullwidth.php
index 4322467c2..c21aa69f1 100644
--- a/admin/layouts/help_document/details_fullwidth.php
+++ b/admin/layouts/help_document/details_fullwidth.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage details_fullwidth.php
diff --git a/admin/layouts/help_document/details_left.php b/admin/layouts/help_document/details_left.php
index af8402247..a36ceed8d 100644
--- a/admin/layouts/help_document/details_left.php
+++ b/admin/layouts/help_document/details_left.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage details_left.php
diff --git a/admin/layouts/help_document/details_right.php b/admin/layouts/help_document/details_right.php
index fad9e09d2..6e6d6c87b 100644
--- a/admin/layouts/help_document/details_right.php
+++ b/admin/layouts/help_document/details_right.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage details_right.php
diff --git a/admin/layouts/help_document/details_under.php b/admin/layouts/help_document/details_under.php
index b39d6a504..5b2b24f66 100644
--- a/admin/layouts/help_document/details_under.php
+++ b/admin/layouts/help_document/details_under.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage details_under.php
diff --git a/admin/layouts/help_document/publishing.php b/admin/layouts/help_document/publishing.php
index 8d79c177f..b6c0d3f1f 100644
--- a/admin/layouts/help_document/publishing.php
+++ b/admin/layouts/help_document/publishing.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage publishing.php
diff --git a/admin/layouts/help_document/publlshing.php b/admin/layouts/help_document/publlshing.php
index 57e4ad263..979e11f42 100644
--- a/admin/layouts/help_document/publlshing.php
+++ b/admin/layouts/help_document/publlshing.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage publlshing.php
@@ -33,6 +33,7 @@ $form = $displayData->getForm();
$fields = $displayData->get('fields') ?: array(
'published',
'ordering',
+ 'access',
'version',
'hits',
'id'
diff --git a/admin/layouts/joomla_component/admin_views_fullwidth.php b/admin/layouts/joomla_component/admin_views_fullwidth.php
index d0e13dcb6..affd61f9e 100644
--- a/admin/layouts/joomla_component/admin_views_fullwidth.php
+++ b/admin/layouts/joomla_component/admin_views_fullwidth.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage admin_views_fullwidth.php
@@ -38,7 +38,7 @@ $can = ComponentbuilderHelper::getActions('admin_view');
?>
-get('core.create')): ?>
+get('admin_view.create')): ?>
@@ -74,7 +74,7 @@ $can = ComponentbuilderHelper::getActions('admin_view');
?>
- get('core.edit')): ?>
+ get('admin_view.edit')): ?>
escape($item->system_name); ?>
checked_out): ?>
name, $item->checked_out_time, 'admin_views.', $canCheckin); ?>
diff --git a/admin/layouts/joomla_component/custom_admin_views_fullwidth.php b/admin/layouts/joomla_component/custom_admin_views_fullwidth.php
index e2eaf5b20..c8ef5d768 100644
--- a/admin/layouts/joomla_component/custom_admin_views_fullwidth.php
+++ b/admin/layouts/joomla_component/custom_admin_views_fullwidth.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage custom_admin_views_fullwidth.php
diff --git a/admin/layouts/joomla_component/details_above.php b/admin/layouts/joomla_component/details_above.php
index b5e3e769a..c3abf1866 100644
--- a/admin/layouts/joomla_component/details_above.php
+++ b/admin/layouts/joomla_component/details_above.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage details_above.php
diff --git a/admin/layouts/joomla_component/details_left.php b/admin/layouts/joomla_component/details_left.php
index c1cdee5fc..6de7dd96a 100644
--- a/admin/layouts/joomla_component/details_left.php
+++ b/admin/layouts/joomla_component/details_left.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage details_left.php
diff --git a/admin/layouts/joomla_component/details_right.php b/admin/layouts/joomla_component/details_right.php
index 4af263aa9..39721c8f3 100644
--- a/admin/layouts/joomla_component/details_right.php
+++ b/admin/layouts/joomla_component/details_right.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage details_right.php
diff --git a/admin/layouts/joomla_component/details_under.php b/admin/layouts/joomla_component/details_under.php
index b39d6a504..5b2b24f66 100644
--- a/admin/layouts/joomla_component/details_under.php
+++ b/admin/layouts/joomla_component/details_under.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage details_under.php
diff --git a/admin/layouts/joomla_component/dynamic_build_beta_fullwidth.php b/admin/layouts/joomla_component/dynamic_build_beta_fullwidth.php
index 2a84a11da..61c9b35ab 100644
--- a/admin/layouts/joomla_component/dynamic_build_beta_fullwidth.php
+++ b/admin/layouts/joomla_component/dynamic_build_beta_fullwidth.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage dynamic_build_beta_fullwidth.php
diff --git a/admin/layouts/joomla_component/dynamic_integration_fullwidth.php b/admin/layouts/joomla_component/dynamic_integration_fullwidth.php
index ee095540b..33e0137a1 100644
--- a/admin/layouts/joomla_component/dynamic_integration_fullwidth.php
+++ b/admin/layouts/joomla_component/dynamic_integration_fullwidth.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage dynamic_integration_fullwidth.php
diff --git a/admin/layouts/joomla_component/libs_helpers_fullwidth.php b/admin/layouts/joomla_component/libs_helpers_fullwidth.php
index 187d068a4..c4914ff90 100644
--- a/admin/layouts/joomla_component/libs_helpers_fullwidth.php
+++ b/admin/layouts/joomla_component/libs_helpers_fullwidth.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage libs_helpers_fullwidth.php
diff --git a/admin/layouts/joomla_component/metadata.php b/admin/layouts/joomla_component/metadata.php
new file mode 100644
index 000000000..174f1a19b
--- /dev/null
+++ b/admin/layouts/joomla_component/metadata.php
@@ -0,0 +1,56 @@
+
+ @copyright Copyright (C) 2015. All Rights Reserved
+ @license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
+
+ Builds Complex Joomla Components
+
+/-----------------------------------------------------------------------------------------------------------------------------*/
+
+// No direct access to this file
+
+defined('_JEXEC') or die('Restricted access');
+
+$form = $displayData->getForm();
+
+// JLayout for standard handling of metadata fields in the administrator content edit screens.
+$fieldSets = $form->getFieldsets('metadata');
+?>
+
+ $fieldSet) : ?>
+ description) && trim($fieldSet->description)) : ?>
+ escape(JText::_($fieldSet->description)); ?>
+
+
+ renderField('metadesc');
+ echo $form->renderField('metakey');
+ }
+
+ foreach ($form->getFieldset($name) as $field)
+ {
+ if ($field->name != 'jform[metadata][tags][]')
+ {
+ echo $field->renderField();
+ }
+ } ?>
+
diff --git a/admin/layouts/joomla_component/mysql_fullwidth.php b/admin/layouts/joomla_component/mysql_fullwidth.php
index 85546c38f..f9c2695f6 100644
--- a/admin/layouts/joomla_component/mysql_fullwidth.php
+++ b/admin/layouts/joomla_component/mysql_fullwidth.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage mysql_fullwidth.php
diff --git a/admin/layouts/joomla_component/php_fullwidth.php b/admin/layouts/joomla_component/php_fullwidth.php
index 428da7b9f..b64ec0ccd 100644
--- a/admin/layouts/joomla_component/php_fullwidth.php
+++ b/admin/layouts/joomla_component/php_fullwidth.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage php_fullwidth.php
diff --git a/admin/layouts/joomla_component/publishing.php b/admin/layouts/joomla_component/publishing.php
index 8d79c177f..90be72273 100644
--- a/admin/layouts/joomla_component/publishing.php
+++ b/admin/layouts/joomla_component/publishing.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage publishing.php
@@ -34,7 +34,13 @@ $fields = $displayData->get('fields') ?: array(
'created',
'created_by',
'modified',
- 'modified_by'
+ 'modified_by',
+ 'published',
+ 'ordering',
+ 'access',
+ 'version',
+ 'hits',
+ 'id'
);
$hiddenFields = $displayData->get('hidden_fields') ?: array();
diff --git a/admin/layouts/joomla_component/readme_left.php b/admin/layouts/joomla_component/readme_left.php
index 7c98bd0ef..3e2221aff 100644
--- a/admin/layouts/joomla_component/readme_left.php
+++ b/admin/layouts/joomla_component/readme_left.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage readme_left.php
diff --git a/admin/layouts/joomla_component/readme_right.php b/admin/layouts/joomla_component/readme_right.php
index 50998a4d0..3fa3b302b 100644
--- a/admin/layouts/joomla_component/readme_right.php
+++ b/admin/layouts/joomla_component/readme_right.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage readme_right.php
diff --git a/admin/layouts/joomla_component/settings_left.php b/admin/layouts/joomla_component/settings_left.php
index 848344f10..0bdc0287a 100644
--- a/admin/layouts/joomla_component/settings_left.php
+++ b/admin/layouts/joomla_component/settings_left.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage settings_left.php
diff --git a/admin/layouts/joomla_component/settings_right.php b/admin/layouts/joomla_component/settings_right.php
index 7abd9e2ae..a27ecca0e 100644
--- a/admin/layouts/joomla_component/settings_right.php
+++ b/admin/layouts/joomla_component/settings_right.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage settings_right.php
diff --git a/admin/layouts/joomla_component/site_views_fullwidth.php b/admin/layouts/joomla_component/site_views_fullwidth.php
index 3e2f233e6..d27b37289 100644
--- a/admin/layouts/joomla_component/site_views_fullwidth.php
+++ b/admin/layouts/joomla_component/site_views_fullwidth.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage site_views_fullwidth.php
diff --git a/admin/layouts/joomla_component/translation_fullwidth.php b/admin/layouts/joomla_component/translation_fullwidth.php
index e3cc90284..8ee24c7da 100644
--- a/admin/layouts/joomla_component/translation_fullwidth.php
+++ b/admin/layouts/joomla_component/translation_fullwidth.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage translation_fullwidth.php
diff --git a/admin/layouts/language/details_left.php b/admin/layouts/language/details_left.php
index 6e7540050..259fa1157 100644
--- a/admin/layouts/language/details_left.php
+++ b/admin/layouts/language/details_left.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage details_left.php
diff --git a/admin/layouts/language/details_right.php b/admin/layouts/language/details_right.php
index 382ba6ec0..386c4044f 100644
--- a/admin/layouts/language/details_right.php
+++ b/admin/layouts/language/details_right.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage details_right.php
diff --git a/admin/layouts/language/publishing.php b/admin/layouts/language/publishing.php
index 8d79c177f..b6c0d3f1f 100644
--- a/admin/layouts/language/publishing.php
+++ b/admin/layouts/language/publishing.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage publishing.php
diff --git a/admin/layouts/language/publlshing.php b/admin/layouts/language/publlshing.php
index 3dae5e08a..979e11f42 100644
--- a/admin/layouts/language/publlshing.php
+++ b/admin/layouts/language/publlshing.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage publlshing.php
diff --git a/admin/layouts/language_translation/details_above.php b/admin/layouts/language_translation/details_above.php
index 655d19659..1af7819cb 100644
--- a/admin/layouts/language_translation/details_above.php
+++ b/admin/layouts/language_translation/details_above.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage details_above.php
diff --git a/admin/layouts/language_translation/details_fullwidth.php b/admin/layouts/language_translation/details_fullwidth.php
index 297aeb817..3c68a0536 100644
--- a/admin/layouts/language_translation/details_fullwidth.php
+++ b/admin/layouts/language_translation/details_fullwidth.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage details_fullwidth.php
diff --git a/admin/layouts/language_translation/publishing.php b/admin/layouts/language_translation/publishing.php
index 8d79c177f..b6c0d3f1f 100644
--- a/admin/layouts/language_translation/publishing.php
+++ b/admin/layouts/language_translation/publishing.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage publishing.php
diff --git a/admin/layouts/language_translation/publlshing.php b/admin/layouts/language_translation/publlshing.php
index 3dae5e08a..979e11f42 100644
--- a/admin/layouts/language_translation/publlshing.php
+++ b/admin/layouts/language_translation/publlshing.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage publlshing.php
diff --git a/admin/layouts/layout/custom_script_fullwidth.php b/admin/layouts/layout/custom_script_fullwidth.php
index 28d4abef9..6b68deade 100644
--- a/admin/layouts/layout/custom_script_fullwidth.php
+++ b/admin/layouts/layout/custom_script_fullwidth.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage custom_script_fullwidth.php
diff --git a/admin/layouts/layout/details_fullwidth.php b/admin/layouts/layout/details_fullwidth.php
index cbdfe7274..27249e024 100644
--- a/admin/layouts/layout/details_fullwidth.php
+++ b/admin/layouts/layout/details_fullwidth.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage details_fullwidth.php
diff --git a/admin/layouts/layout/details_left.php b/admin/layouts/layout/details_left.php
index 3b25306df..1c99798ab 100644
--- a/admin/layouts/layout/details_left.php
+++ b/admin/layouts/layout/details_left.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage details_left.php
diff --git a/admin/layouts/layout/details_right.php b/admin/layouts/layout/details_right.php
index ea28fc350..fae90925f 100644
--- a/admin/layouts/layout/details_right.php
+++ b/admin/layouts/layout/details_right.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage details_right.php
diff --git a/admin/layouts/layout/details_rightside.php b/admin/layouts/layout/details_rightside.php
index aaee21bbb..0110e2439 100644
--- a/admin/layouts/layout/details_rightside.php
+++ b/admin/layouts/layout/details_rightside.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage details_rightside.php
diff --git a/admin/layouts/layout/details_under.php b/admin/layouts/layout/details_under.php
index b39d6a504..5b2b24f66 100644
--- a/admin/layouts/layout/details_under.php
+++ b/admin/layouts/layout/details_under.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage details_under.php
diff --git a/admin/layouts/layout/publishing.php b/admin/layouts/layout/publishing.php
index 8d79c177f..b6c0d3f1f 100644
--- a/admin/layouts/layout/publishing.php
+++ b/admin/layouts/layout/publishing.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage publishing.php
diff --git a/admin/layouts/layout/publlshing.php b/admin/layouts/layout/publlshing.php
index 3dae5e08a..979e11f42 100644
--- a/admin/layouts/layout/publlshing.php
+++ b/admin/layouts/layout/publlshing.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage publlshing.php
diff --git a/admin/layouts/site_view/custom_buttons_fullwidth.php b/admin/layouts/site_view/custom_buttons_fullwidth.php
index 3d898d998..4bbfa9ec5 100644
--- a/admin/layouts/site_view/custom_buttons_fullwidth.php
+++ b/admin/layouts/site_view/custom_buttons_fullwidth.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage custom_buttons_fullwidth.php
@@ -30,6 +30,8 @@ defined('_JEXEC') or die('Restricted access');
$form = $displayData->getForm();
$fields = $displayData->get('fields') ?: array(
+ 'note_custom_toolbar_placeholder',
+ 'custom_button',
'php_controller',
'php_model'
);
diff --git a/admin/layouts/site_view/custom_buttons_left.php b/admin/layouts/site_view/custom_buttons_left.php
index 1c0dd2997..093c249f0 100644
--- a/admin/layouts/site_view/custom_buttons_left.php
+++ b/admin/layouts/site_view/custom_buttons_left.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage custom_buttons_left.php
@@ -30,7 +30,6 @@ defined('_JEXEC') or die('Restricted access');
$form = $displayData->getForm();
$fields = $displayData->get('fields') ?: array(
- 'button_position',
'add_custom_button'
);
diff --git a/admin/layouts/site_view/custom_buttons_right.php b/admin/layouts/site_view/custom_buttons_right.php
index ec75d90cd..7e7b82d32 100644
--- a/admin/layouts/site_view/custom_buttons_right.php
+++ b/admin/layouts/site_view/custom_buttons_right.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage custom_buttons_right.php
@@ -30,8 +30,7 @@ defined('_JEXEC') or die('Restricted access');
$form = $displayData->getForm();
$fields = $displayData->get('fields') ?: array(
- 'note_custom_toolbar_placeholder',
- 'custom_button'
+ 'button_position'
);
$hiddenFields = $displayData->get('hidden_fields') ?: array();
diff --git a/admin/layouts/site_view/details_above.php b/admin/layouts/site_view/details_above.php
index b5e3e769a..c3abf1866 100644
--- a/admin/layouts/site_view/details_above.php
+++ b/admin/layouts/site_view/details_above.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage details_above.php
diff --git a/admin/layouts/site_view/details_fullwidth.php b/admin/layouts/site_view/details_fullwidth.php
index 37cb6f57b..21b529eed 100644
--- a/admin/layouts/site_view/details_fullwidth.php
+++ b/admin/layouts/site_view/details_fullwidth.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage details_fullwidth.php
diff --git a/admin/layouts/site_view/details_left.php b/admin/layouts/site_view/details_left.php
index 1bffb5ef9..356259a6e 100644
--- a/admin/layouts/site_view/details_left.php
+++ b/admin/layouts/site_view/details_left.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage details_left.php
diff --git a/admin/layouts/site_view/details_right.php b/admin/layouts/site_view/details_right.php
index ea28fc350..fae90925f 100644
--- a/admin/layouts/site_view/details_right.php
+++ b/admin/layouts/site_view/details_right.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage details_right.php
diff --git a/admin/layouts/site_view/details_rightside.php b/admin/layouts/site_view/details_rightside.php
index b017076ff..2feb0423b 100644
--- a/admin/layouts/site_view/details_rightside.php
+++ b/admin/layouts/site_view/details_rightside.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage details_rightside.php
diff --git a/admin/layouts/site_view/details_under.php b/admin/layouts/site_view/details_under.php
index b39d6a504..5b2b24f66 100644
--- a/admin/layouts/site_view/details_under.php
+++ b/admin/layouts/site_view/details_under.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage details_under.php
diff --git a/admin/layouts/site_view/javascript_css_fullwidth.php b/admin/layouts/site_view/javascript_css_fullwidth.php
index c18f7b503..7b897e9f3 100644
--- a/admin/layouts/site_view/javascript_css_fullwidth.php
+++ b/admin/layouts/site_view/javascript_css_fullwidth.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage javascript_css_fullwidth.php
diff --git a/admin/layouts/site_view/linked_components_fullwidth.php b/admin/layouts/site_view/linked_components_fullwidth.php
index 7ace291f0..4c33f5016 100644
--- a/admin/layouts/site_view/linked_components_fullwidth.php
+++ b/admin/layouts/site_view/linked_components_fullwidth.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage linked_components_fullwidth.php
@@ -28,7 +28,7 @@
defined('_JEXEC') or die('Restricted access');
// set the defaults
-$items = $displayData->vyvlinked_components;
+$items = $displayData->vyulinked_components;
$user = JFactory::getUser();
$id = $displayData->item->id;
$edit = "index.php?option=com_componentbuilder&view=joomla_components&task=joomla_component.edit";
@@ -74,7 +74,7 @@ $edit = "index.php?option=com_componentbuilder&view=joomla_components&task=jooml
?>
- get('core.edit')): ?>
+ get('joomla_component.edit')): ?>
escape($item->system_name); ?>
checked_out): ?>
name, $item->checked_out_time, 'joomla_components.', $canCheckin); ?>
diff --git a/admin/layouts/site_view/php_fullwidth.php b/admin/layouts/site_view/php_fullwidth.php
index 7548721a3..9bef8eede 100644
--- a/admin/layouts/site_view/php_fullwidth.php
+++ b/admin/layouts/site_view/php_fullwidth.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage php_fullwidth.php
diff --git a/admin/layouts/site_view/publishing.php b/admin/layouts/site_view/publishing.php
index 8d79c177f..b6c0d3f1f 100644
--- a/admin/layouts/site_view/publishing.php
+++ b/admin/layouts/site_view/publishing.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage publishing.php
diff --git a/admin/layouts/site_view/publlshing.php b/admin/layouts/site_view/publlshing.php
index 3dae5e08a..979e11f42 100644
--- a/admin/layouts/site_view/publlshing.php
+++ b/admin/layouts/site_view/publlshing.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage publlshing.php
diff --git a/admin/layouts/snippet/details_above.php b/admin/layouts/snippet/details_above.php
index 9b9b1dacd..d1c38ca9d 100644
--- a/admin/layouts/snippet/details_above.php
+++ b/admin/layouts/snippet/details_above.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage details_above.php
diff --git a/admin/layouts/snippet/details_left.php b/admin/layouts/snippet/details_left.php
index 5b0d2e42e..0eefb5500 100644
--- a/admin/layouts/snippet/details_left.php
+++ b/admin/layouts/snippet/details_left.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage details_left.php
diff --git a/admin/layouts/snippet/details_right.php b/admin/layouts/snippet/details_right.php
index b3998a70c..e47dc84a8 100644
--- a/admin/layouts/snippet/details_right.php
+++ b/admin/layouts/snippet/details_right.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage details_right.php
diff --git a/admin/layouts/snippet/publishing.php b/admin/layouts/snippet/publishing.php
index 8d79c177f..b6c0d3f1f 100644
--- a/admin/layouts/snippet/publishing.php
+++ b/admin/layouts/snippet/publishing.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage publishing.php
diff --git a/admin/layouts/snippet/publlshing.php b/admin/layouts/snippet/publlshing.php
index 3dae5e08a..979e11f42 100644
--- a/admin/layouts/snippet/publlshing.php
+++ b/admin/layouts/snippet/publlshing.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage publlshing.php
diff --git a/admin/layouts/template/custom_script_fullwidth.php b/admin/layouts/template/custom_script_fullwidth.php
index 28d4abef9..6b68deade 100644
--- a/admin/layouts/template/custom_script_fullwidth.php
+++ b/admin/layouts/template/custom_script_fullwidth.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage custom_script_fullwidth.php
diff --git a/admin/layouts/template/details_fullwidth.php b/admin/layouts/template/details_fullwidth.php
index 462d02d3c..83df7489e 100644
--- a/admin/layouts/template/details_fullwidth.php
+++ b/admin/layouts/template/details_fullwidth.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage details_fullwidth.php
diff --git a/admin/layouts/template/details_left.php b/admin/layouts/template/details_left.php
index 3b25306df..1c99798ab 100644
--- a/admin/layouts/template/details_left.php
+++ b/admin/layouts/template/details_left.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage details_left.php
diff --git a/admin/layouts/template/details_right.php b/admin/layouts/template/details_right.php
index ea28fc350..fae90925f 100644
--- a/admin/layouts/template/details_right.php
+++ b/admin/layouts/template/details_right.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage details_right.php
diff --git a/admin/layouts/template/details_rightside.php b/admin/layouts/template/details_rightside.php
index aaee21bbb..0110e2439 100644
--- a/admin/layouts/template/details_rightside.php
+++ b/admin/layouts/template/details_rightside.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage details_rightside.php
diff --git a/admin/layouts/template/details_under.php b/admin/layouts/template/details_under.php
index b39d6a504..5b2b24f66 100644
--- a/admin/layouts/template/details_under.php
+++ b/admin/layouts/template/details_under.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage details_under.php
diff --git a/admin/layouts/template/publishing.php b/admin/layouts/template/publishing.php
index 8d79c177f..b6c0d3f1f 100644
--- a/admin/layouts/template/publishing.php
+++ b/admin/layouts/template/publishing.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage publishing.php
diff --git a/admin/layouts/template/publlshing.php b/admin/layouts/template/publlshing.php
index 3dae5e08a..979e11f42 100644
--- a/admin/layouts/template/publlshing.php
+++ b/admin/layouts/template/publlshing.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage publlshing.php
diff --git a/admin/models/admin_fields.php b/admin/models/admin_fields.php
new file mode 100644
index 000000000..6578a1abb
--- /dev/null
+++ b/admin/models/admin_fields.php
@@ -0,0 +1,902 @@
+
+ @copyright Copyright (C) 2015. All Rights Reserved
+ @license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
+
+ Builds Complex Joomla Components
+
+/-----------------------------------------------------------------------------------------------------------------------------*/
+
+// No direct access to this file
+defined('_JEXEC') or die('Restricted access');
+
+use Joomla\Registry\Registry;
+
+// import Joomla modelform library
+jimport('joomla.application.component.modeladmin');
+
+/**
+ * Componentbuilder Admin_fields Model
+ */
+class ComponentbuilderModelAdmin_fields extends JModelAdmin
+{
+ /**
+ * @var string The prefix to use with controller messages.
+ * @since 1.6
+ */
+ protected $text_prefix = 'COM_COMPONENTBUILDER';
+
+ /**
+ * The type alias for this content type.
+ *
+ * @var string
+ * @since 3.2
+ */
+ public $typeAlias = 'com_componentbuilder.admin_fields';
+
+ /**
+ * Returns a Table object, always creating it
+ *
+ * @param type $type The table type to instantiate
+ * @param string $prefix A prefix for the table class name. Optional.
+ * @param array $config Configuration array for model. Optional.
+ *
+ * @return JTable A database object
+ *
+ * @since 1.6
+ */
+ public function getTable($type = 'admin_fields', $prefix = 'ComponentbuilderTable', $config = array())
+ {
+ return JTable::getInstance($type, $prefix, $config);
+ }
+
+ /**
+ * Method to get a single record.
+ *
+ * @param integer $pk The id of the primary key.
+ *
+ * @return mixed Object on success, false on failure.
+ *
+ * @since 1.6
+ */
+ public function getItem($pk = null)
+ {
+ if ($item = parent::getItem($pk))
+ {
+ if (!empty($item->params))
+ {
+ // Convert the params field to an array.
+ $registry = new Registry;
+ $registry->loadString($item->params);
+ $item->params = $registry->toArray();
+ }
+
+ if (!empty($item->metadata))
+ {
+ // Convert the metadata field to an array.
+ $registry = new Registry;
+ $registry->loadString($item->metadata);
+ $item->metadata = $registry->toArray();
+ }
+
+ if (!empty($item->addfields))
+ {
+ // Convert the addfields field to an array.
+ $addfields = new Registry;
+ $addfields->loadString($item->addfields);
+ $item->addfields = $addfields->toArray();
+ }
+
+ // check what type of field array we have here (should be subform... but just incase)
+ // This could happen due to huge data sets
+ if (isset($item->addfields) && isset($item->addfields['field']))
+ {
+ $bucket = array();
+ foreach($item->addfields as $option => $values)
+ {
+ foreach($values as $nr => $value)
+ {
+ $bucket['addfields'.$nr][$option] = $value;
+ }
+ }
+ $item->addfields = $bucket;
+ // update the fields in the DB
+ $fieldsUpdate = new stdClass();
+ $fieldsUpdate->id = (int) $item->id;
+ $fieldsUpdate->addfields = json_encode($bucket);
+ $this->_db->updateObject('#__componentbuilder_admin_fields', $fieldsUpdate, 'id');
+ }
+
+ if (!empty($item->id))
+ {
+ $item->tags = new JHelperTags;
+ $item->tags->getTagIds($item->id, 'com_componentbuilder.admin_fields');
+ }
+ }
+
+ return $item;
+ }
+
+ /**
+ * Method to get the record form.
+ *
+ * @param array $data Data for the form.
+ * @param boolean $loadData True if the form is to load its own data (default case), false if not.
+ *
+ * @return mixed A JForm object on success, false on failure
+ *
+ * @since 1.6
+ */
+ public function getForm($data = array(), $loadData = true)
+ {
+ // Get the form.
+ $form = $this->loadForm('com_componentbuilder.admin_fields', 'admin_fields', array('control' => 'jform', 'load_data' => $loadData));
+
+ if (empty($form))
+ {
+ return false;
+ }
+
+ $jinput = JFactory::getApplication()->input;
+
+ // The front end calls this model and uses a_id to avoid id clashes so we need to check for that first.
+ if ($jinput->get('a_id'))
+ {
+ $id = $jinput->get('a_id', 0, 'INT');
+ }
+ // The back end uses id so we use that the rest of the time and set it to 0 by default.
+ else
+ {
+ $id = $jinput->get('id', 0, 'INT');
+ }
+
+ $user = JFactory::getUser();
+
+ // Check for existing item.
+ // Modify the form based on Edit State access controls.
+ if ($id != 0 && (!$user->authorise('admin_fields.edit.state', 'com_componentbuilder.admin_fields.' . (int) $id))
+ || ($id == 0 && !$user->authorise('admin_fields.edit.state', 'com_componentbuilder')))
+ {
+ // Disable fields for display.
+ $form->setFieldAttribute('ordering', 'disabled', 'true');
+ $form->setFieldAttribute('published', 'disabled', 'true');
+ // Disable fields while saving.
+ $form->setFieldAttribute('ordering', 'filter', 'unset');
+ $form->setFieldAttribute('published', 'filter', 'unset');
+ }
+ // If this is a new item insure the greated by is set.
+ if (0 == $id)
+ {
+ // Set the created_by to this user
+ $form->setValue('created_by', null, $user->id);
+ }
+ // Modify the form based on Edit Creaded By access controls.
+ if ($id != 0 && (!$user->authorise('admin_fields.edit.created_by', 'com_componentbuilder.admin_fields.' . (int) $id))
+ || ($id == 0 && !$user->authorise('admin_fields.edit.created_by', 'com_componentbuilder')))
+ {
+ // Disable fields for display.
+ $form->setFieldAttribute('created_by', 'disabled', 'true');
+ // Disable fields for display.
+ $form->setFieldAttribute('created_by', 'readonly', 'true');
+ // Disable fields while saving.
+ $form->setFieldAttribute('created_by', 'filter', 'unset');
+ }
+ // Modify the form based on Edit Creaded Date access controls.
+ if ($id != 0 && (!$user->authorise('admin_fields.edit.created', 'com_componentbuilder.admin_fields.' . (int) $id))
+ || ($id == 0 && !$user->authorise('admin_fields.edit.created', 'com_componentbuilder')))
+ {
+ // Disable fields for display.
+ $form->setFieldAttribute('created', 'disabled', 'true');
+ // Disable fields while saving.
+ $form->setFieldAttribute('created', 'filter', 'unset');
+ }
+ // Only load these values if no id is found
+ if (0 == $id)
+ {
+ // Set redirected field name
+ $redirectedField = $jinput->get('ref', null, 'STRING');
+ // Set redirected field value
+ $redirectedValue = $jinput->get('refid', 0, 'INT');
+ if (0 != $redirectedValue && $redirectedField)
+ {
+ // Now set the local-redirected field default value
+ $form->setValue($redirectedField, null, $redirectedValue);
+ }
+ }
+
+ return $form;
+ }
+
+ /**
+ * Method to get the script that have to be included on the form
+ *
+ * @return string script files
+ */
+ public function getScript()
+ {
+ return 'administrator/components/com_componentbuilder/models/forms/admin_fields.js';
+ }
+
+ /**
+ * Method to test whether a record can be deleted.
+ *
+ * @param object $record A record object.
+ *
+ * @return boolean True if allowed to delete the record. Defaults to the permission set in the component.
+ *
+ * @since 1.6
+ */
+ protected function canDelete($record)
+ {
+ if (!empty($record->id))
+ {
+ if ($record->published != -2)
+ {
+ return;
+ }
+
+ $user = JFactory::getUser();
+ // The record has been set. Check the record permissions.
+ return $user->authorise('admin_fields.delete', 'com_componentbuilder.admin_fields.' . (int) $record->id);
+ }
+ return false;
+ }
+
+ /**
+ * Method to test whether a record can have its state edited.
+ *
+ * @param object $record A record object.
+ *
+ * @return boolean True if allowed to change the state of the record. Defaults to the permission set in the component.
+ *
+ * @since 1.6
+ */
+ protected function canEditState($record)
+ {
+ $user = JFactory::getUser();
+ $recordId = (!empty($record->id)) ? $record->id : 0;
+
+ if ($recordId)
+ {
+ // The record has been set. Check the record permissions.
+ $permission = $user->authorise('admin_fields.edit.state', 'com_componentbuilder.admin_fields.' . (int) $recordId);
+ if (!$permission && !is_null($permission))
+ {
+ return false;
+ }
+ }
+ // In the absense of better information, revert to the component permissions.
+ return $user->authorise('admin_fields.edit.state', 'com_componentbuilder');
+ }
+
+ /**
+ * Method override to check if you can edit an existing record.
+ *
+ * @param array $data An array of input data.
+ * @param string $key The name of the key for the primary key.
+ *
+ * @return boolean
+ * @since 2.5
+ */
+ protected function allowEdit($data = array(), $key = 'id')
+ {
+ // Check specific edit permission then general edit permission.
+ $user = JFactory::getUser();
+
+ return $user->authorise('admin_fields.edit', 'com_componentbuilder.admin_fields.'. ((int) isset($data[$key]) ? $data[$key] : 0)) or $user->authorise('admin_fields.edit', 'com_componentbuilder');
+ }
+
+ /**
+ * Prepare and sanitise the table data prior to saving.
+ *
+ * @param JTable $table A JTable object.
+ *
+ * @return void
+ *
+ * @since 1.6
+ */
+ protected function prepareTable($table)
+ {
+ $date = JFactory::getDate();
+ $user = JFactory::getUser();
+
+ if (isset($table->name))
+ {
+ $table->name = htmlspecialchars_decode($table->name, ENT_QUOTES);
+ }
+
+ if (isset($table->alias) && empty($table->alias))
+ {
+ $table->generateAlias();
+ }
+
+ if (empty($table->id))
+ {
+ $table->created = $date->toSql();
+ // set the user
+ if ($table->created_by == 0 || empty($table->created_by))
+ {
+ $table->created_by = $user->id;
+ }
+ // Set ordering to the last item if not set
+ if (empty($table->ordering))
+ {
+ $db = JFactory::getDbo();
+ $query = $db->getQuery(true)
+ ->select('MAX(ordering)')
+ ->from($db->quoteName('#__componentbuilder_admin_fields'));
+ $db->setQuery($query);
+ $max = $db->loadResult();
+
+ $table->ordering = $max + 1;
+ }
+ }
+ else
+ {
+ $table->modified = $date->toSql();
+ $table->modified_by = $user->id;
+ }
+
+ if (!empty($table->id))
+ {
+ // Increment the items version number.
+ $table->version++;
+ }
+ }
+
+ /**
+ * Method to get the data that should be injected in the form.
+ *
+ * @return mixed The data for the form.
+ *
+ * @since 1.6
+ */
+ protected function loadFormData()
+ {
+ // Check the session for previously entered form data.
+ $data = JFactory::getApplication()->getUserState('com_componentbuilder.edit.admin_fields.data', array());
+
+ if (empty($data))
+ {
+ $data = $this->getItem();
+ }
+
+ return $data;
+ }
+
+ /**
+ * Method to get the unique fields of this table.
+ *
+ * @return mixed An array of field names, boolean false if none is set.
+ *
+ * @since 3.0
+ */
+ protected function getUniqeFields()
+ {
+ return false;
+ }
+
+ /**
+ * Method to delete one or more records.
+ *
+ * @param array &$pks An array of record primary keys.
+ *
+ * @return boolean True if successful, false if an error occurs.
+ *
+ * @since 12.2
+ */
+ public function delete(&$pks)
+ {
+ if (!parent::delete($pks))
+ {
+ return false;
+ }
+
+ return true;
+ }
+
+ /**
+ * Method to change the published state of one or more records.
+ *
+ * @param array &$pks A list of the primary keys to change.
+ * @param integer $value The value of the published state.
+ *
+ * @return boolean True on success.
+ *
+ * @since 12.2
+ */
+ public function publish(&$pks, $value = 1)
+ {
+ if (!parent::publish($pks, $value))
+ {
+ return false;
+ }
+
+ return true;
+ }
+
+ /**
+ * Method to perform batch operations on an item or a set of items.
+ *
+ * @param array $commands An array of commands to perform.
+ * @param array $pks An array of item ids.
+ * @param array $contexts An array of item contexts.
+ *
+ * @return boolean Returns true on success, false on failure.
+ *
+ * @since 12.2
+ */
+ public function batch($commands, $pks, $contexts)
+ {
+ // Sanitize ids.
+ $pks = array_unique($pks);
+ JArrayHelper::toInteger($pks);
+
+ // Remove any values of zero.
+ if (array_search(0, $pks, true))
+ {
+ unset($pks[array_search(0, $pks, true)]);
+ }
+
+ if (empty($pks))
+ {
+ $this->setError(JText::_('JGLOBAL_NO_ITEM_SELECTED'));
+ return false;
+ }
+
+ $done = false;
+
+ // Set some needed variables.
+ $this->user = JFactory::getUser();
+ $this->table = $this->getTable();
+ $this->tableClassName = get_class($this->table);
+ $this->contentType = new JUcmType;
+ $this->type = $this->contentType->getTypeByTable($this->tableClassName);
+ $this->canDo = ComponentbuilderHelper::getActions('admin_fields');
+ $this->batchSet = true;
+
+ if (!$this->canDo->get('core.batch'))
+ {
+ $this->setError(JText::_('JLIB_APPLICATION_ERROR_INSUFFICIENT_BATCH_INFORMATION'));
+ return false;
+ }
+
+ if ($this->type == false)
+ {
+ $type = new JUcmType;
+ $this->type = $type->getTypeByAlias($this->typeAlias);
+ }
+
+ $this->tagsObserver = $this->table->getObserverOfClass('JTableObserverTags');
+
+ if (!empty($commands['move_copy']))
+ {
+ $cmd = JArrayHelper::getValue($commands, 'move_copy', 'c');
+
+ if ($cmd == 'c')
+ {
+ $result = $this->batchCopy($commands, $pks, $contexts);
+
+ if (is_array($result))
+ {
+ foreach ($result as $old => $new)
+ {
+ $contexts[$new] = $contexts[$old];
+ }
+ $pks = array_values($result);
+ }
+ else
+ {
+ return false;
+ }
+ }
+ elseif ($cmd == 'm' && !$this->batchMove($commands, $pks, $contexts))
+ {
+ return false;
+ }
+
+ $done = true;
+ }
+
+ if (!$done)
+ {
+ $this->setError(JText::_('JLIB_APPLICATION_ERROR_INSUFFICIENT_BATCH_INFORMATION'));
+
+ return false;
+ }
+
+ // Clear the cache
+ $this->cleanCache();
+
+ return true;
+ }
+
+ /**
+ * Batch copy items to a new category or current.
+ *
+ * @param integer $values The new values.
+ * @param array $pks An array of row IDs.
+ * @param array $contexts An array of item contexts.
+ *
+ * @return mixed An array of new IDs on success, boolean false on failure.
+ *
+ * @since 12.2
+ */
+ protected function batchCopy($values, $pks, $contexts)
+ {
+ if (empty($this->batchSet))
+ {
+ // Set some needed variables.
+ $this->user = JFactory::getUser();
+ $this->table = $this->getTable();
+ $this->tableClassName = get_class($this->table);
+ $this->contentType = new JUcmType;
+ $this->type = $this->contentType->getTypeByTable($this->tableClassName);
+ $this->canDo = ComponentbuilderHelper::getActions('admin_fields');
+ }
+
+ if (!$this->canDo->get('admin_fields.create') && !$this->canDo->get('admin_fields.batch'))
+ {
+ return false;
+ }
+
+ // get list of uniqe fields
+ $uniqeFields = $this->getUniqeFields();
+ // remove move_copy from array
+ unset($values['move_copy']);
+
+ // make sure published is set
+ if (!isset($values['published']))
+ {
+ $values['published'] = 0;
+ }
+ elseif (isset($values['published']) && !$this->canDo->get('admin_fields.edit.state'))
+ {
+ $values['published'] = 0;
+ }
+
+ $newIds = array();
+
+ // Parent exists so let's proceed
+ while (!empty($pks))
+ {
+ // Pop the first ID off the stack
+ $pk = array_shift($pks);
+
+ $this->table->reset();
+
+ // only allow copy if user may edit this item.
+
+ if (!$this->user->authorise('admin_fields.edit', $contexts[$pk]))
+
+ {
+
+ // Not fatal error
+
+ $this->setError(JText::sprintf('JLIB_APPLICATION_ERROR_BATCH_MOVE_ROW_NOT_FOUND', $pk));
+
+ continue;
+
+ }
+
+ // Check that the row actually exists
+ if (!$this->table->load($pk))
+ {
+ if ($error = $this->table->getError())
+ {
+ // Fatal error
+ $this->setError($error);
+
+ return false;
+ }
+ else
+ {
+ // Not fatal error
+ $this->setError(JText::sprintf('JLIB_APPLICATION_ERROR_BATCH_MOVE_ROW_NOT_FOUND', $pk));
+ continue;
+ }
+ }
+
+ $this->table->admin_view = $this->generateUniqe('admin_view',$this->table->admin_view);
+
+ // insert all set values
+ if (ComponentbuilderHelper::checkArray($values))
+ {
+ foreach ($values as $key => $value)
+ {
+ if (strlen($value) > 0 && isset($this->table->$key))
+ {
+ $this->table->$key = $value;
+ }
+ }
+ }
+
+ // update all uniqe fields
+ if (ComponentbuilderHelper::checkArray($uniqeFields))
+ {
+ foreach ($uniqeFields as $uniqeField)
+ {
+ $this->table->$uniqeField = $this->generateUniqe($uniqeField,$this->table->$uniqeField);
+ }
+ }
+
+ // Reset the ID because we are making a copy
+ $this->table->id = 0;
+
+ // TODO: Deal with ordering?
+ // $this->table->ordering = 1;
+
+ // Check the row.
+ if (!$this->table->check())
+ {
+ $this->setError($this->table->getError());
+
+ return false;
+ }
+
+ if (!empty($this->type))
+ {
+ $this->createTagsHelper($this->tagsObserver, $this->type, $pk, $this->typeAlias, $this->table);
+ }
+
+ // Store the row.
+ if (!$this->table->store())
+ {
+ $this->setError($this->table->getError());
+
+ return false;
+ }
+
+ // Get the new item ID
+ $newId = $this->table->get('id');
+
+ // Add the new ID to the array
+ $newIds[$pk] = $newId;
+ }
+
+ // Clean the cache
+ $this->cleanCache();
+
+ return $newIds;
+ }
+
+ /**
+ * Batch move items to a new category
+ *
+ * @param integer $value The new category ID.
+ * @param array $pks An array of row IDs.
+ * @param array $contexts An array of item contexts.
+ *
+ * @return boolean True if successful, false otherwise and internal error is set.
+ *
+ * @since 12.2
+ */
+ protected function batchMove($values, $pks, $contexts)
+ {
+ if (empty($this->batchSet))
+ {
+ // Set some needed variables.
+ $this->user = JFactory::getUser();
+ $this->table = $this->getTable();
+ $this->tableClassName = get_class($this->table);
+ $this->contentType = new JUcmType;
+ $this->type = $this->contentType->getTypeByTable($this->tableClassName);
+ $this->canDo = ComponentbuilderHelper::getActions('admin_fields');
+ }
+
+ if (!$this->canDo->get('admin_fields.edit') && !$this->canDo->get('admin_fields.batch'))
+ {
+ $this->setError(JText::_('JLIB_APPLICATION_ERROR_BATCH_CANNOT_EDIT'));
+ return false;
+ }
+
+ // make sure published only updates if user has the permission.
+ if (isset($values['published']) && !$this->canDo->get('admin_fields.edit.state'))
+ {
+ unset($values['published']);
+ }
+ // remove move_copy from array
+ unset($values['move_copy']);
+
+ // Parent exists so we proceed
+ foreach ($pks as $pk)
+ {
+ if (!$this->user->authorise('admin_fields.edit', $contexts[$pk]))
+ {
+ $this->setError(JText::_('JLIB_APPLICATION_ERROR_BATCH_CANNOT_EDIT'));
+
+ return false;
+ }
+
+ // Check that the row actually exists
+ if (!$this->table->load($pk))
+ {
+ if ($error = $this->table->getError())
+ {
+ // Fatal error
+ $this->setError($error);
+
+ return false;
+ }
+ else
+ {
+ // Not fatal error
+ $this->setError(JText::sprintf('JLIB_APPLICATION_ERROR_BATCH_MOVE_ROW_NOT_FOUND', $pk));
+ continue;
+ }
+ }
+
+ // insert all set values.
+ if (ComponentbuilderHelper::checkArray($values))
+ {
+ foreach ($values as $key => $value)
+ {
+ // Do special action for access.
+ if ('access' === $key && strlen($value) > 0)
+ {
+ $this->table->$key = $value;
+ }
+ elseif (strlen($value) > 0 && isset($this->table->$key))
+ {
+ $this->table->$key = $value;
+ }
+ }
+ }
+
+
+ // Check the row.
+ if (!$this->table->check())
+ {
+ $this->setError($this->table->getError());
+
+ return false;
+ }
+
+ if (!empty($this->type))
+ {
+ $this->createTagsHelper($this->tagsObserver, $this->type, $pk, $this->typeAlias, $this->table);
+ }
+
+ // Store the row.
+ if (!$this->table->store())
+ {
+ $this->setError($this->table->getError());
+
+ return false;
+ }
+ }
+
+ // Clean the cache
+ $this->cleanCache();
+
+ return true;
+ }
+
+ /**
+ * Method to save the form data.
+ *
+ * @param array $data The form data.
+ *
+ * @return boolean True on success.
+ *
+ * @since 1.6
+ */
+ public function save($data)
+ {
+ $input = JFactory::getApplication()->input;
+ $filter = JFilterInput::getInstance();
+
+ // set the metadata to the Item Data
+ if (isset($data['metadata']) && isset($data['metadata']['author']))
+ {
+ $data['metadata']['author'] = $filter->clean($data['metadata']['author'], 'TRIM');
+
+ $metadata = new JRegistry;
+ $metadata->loadArray($data['metadata']);
+ $data['metadata'] = (string) $metadata;
+ }
+
+ // Set the addfields items to data.
+ if (isset($data['addfields']) && is_array($data['addfields']))
+ {
+ $addfields = new JRegistry;
+ $addfields->loadArray($data['addfields']);
+ $data['addfields'] = (string) $addfields;
+ }
+ elseif (!isset($data['addfields']))
+ {
+ // Set the empty addfields to data
+ $data['addfields'] = '';
+ }
+
+ // Set the Params Items to data
+ if (isset($data['params']) && is_array($data['params']))
+ {
+ $params = new JRegistry;
+ $params->loadArray($data['params']);
+ $data['params'] = (string) $params;
+ }
+
+ // Alter the uniqe field for save as copy
+ if ($input->get('task') === 'save2copy')
+ {
+ // Automatic handling of other uniqe fields
+ $uniqeFields = $this->getUniqeFields();
+ if (ComponentbuilderHelper::checkArray($uniqeFields))
+ {
+ foreach ($uniqeFields as $uniqeField)
+ {
+ $data[$uniqeField] = $this->generateUniqe($uniqeField,$data[$uniqeField]);
+ }
+ }
+ }
+
+ if (parent::save($data))
+ {
+ return true;
+ }
+ return false;
+ }
+
+ /**
+ * Method to generate a uniqe value.
+ *
+ * @param string $field name.
+ * @param string $value data.
+ *
+ * @return string New value.
+ *
+ * @since 3.0
+ */
+ protected function generateUniqe($field,$value)
+ {
+
+ // set field value uniqe
+ $table = $this->getTable();
+
+ while ($table->load(array($field => $value)))
+ {
+ $value = JString::increment($value);
+ }
+
+ return $value;
+ }
+
+ /**
+ * Method to change the title & alias.
+ *
+ * @param string $title The title.
+ *
+ * @return array Contains the modified title and alias.
+ *
+ */
+ protected function _generateNewTitle($title)
+ {
+
+ // Alter the title
+ $table = $this->getTable();
+
+ while ($table->load(array('title' => $title)))
+ {
+ $title = JString::increment($title);
+ }
+
+ return $title;
+ }
+}
diff --git a/admin/models/admin_fields_conditions.php b/admin/models/admin_fields_conditions.php
new file mode 100644
index 000000000..5cad61656
--- /dev/null
+++ b/admin/models/admin_fields_conditions.php
@@ -0,0 +1,902 @@
+
+ @copyright Copyright (C) 2015. All Rights Reserved
+ @license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
+
+ Builds Complex Joomla Components
+
+/-----------------------------------------------------------------------------------------------------------------------------*/
+
+// No direct access to this file
+defined('_JEXEC') or die('Restricted access');
+
+use Joomla\Registry\Registry;
+
+// import Joomla modelform library
+jimport('joomla.application.component.modeladmin');
+
+/**
+ * Componentbuilder Admin_fields_conditions Model
+ */
+class ComponentbuilderModelAdmin_fields_conditions extends JModelAdmin
+{
+ /**
+ * @var string The prefix to use with controller messages.
+ * @since 1.6
+ */
+ protected $text_prefix = 'COM_COMPONENTBUILDER';
+
+ /**
+ * The type alias for this content type.
+ *
+ * @var string
+ * @since 3.2
+ */
+ public $typeAlias = 'com_componentbuilder.admin_fields_conditions';
+
+ /**
+ * Returns a Table object, always creating it
+ *
+ * @param type $type The table type to instantiate
+ * @param string $prefix A prefix for the table class name. Optional.
+ * @param array $config Configuration array for model. Optional.
+ *
+ * @return JTable A database object
+ *
+ * @since 1.6
+ */
+ public function getTable($type = 'admin_fields_conditions', $prefix = 'ComponentbuilderTable', $config = array())
+ {
+ return JTable::getInstance($type, $prefix, $config);
+ }
+
+ /**
+ * Method to get a single record.
+ *
+ * @param integer $pk The id of the primary key.
+ *
+ * @return mixed Object on success, false on failure.
+ *
+ * @since 1.6
+ */
+ public function getItem($pk = null)
+ {
+ if ($item = parent::getItem($pk))
+ {
+ if (!empty($item->params))
+ {
+ // Convert the params field to an array.
+ $registry = new Registry;
+ $registry->loadString($item->params);
+ $item->params = $registry->toArray();
+ }
+
+ if (!empty($item->metadata))
+ {
+ // Convert the metadata field to an array.
+ $registry = new Registry;
+ $registry->loadString($item->metadata);
+ $item->metadata = $registry->toArray();
+ }
+
+ if (!empty($item->addconditions))
+ {
+ // Convert the addconditions field to an array.
+ $addconditions = new Registry;
+ $addconditions->loadString($item->addconditions);
+ $item->addconditions = $addconditions->toArray();
+ }
+
+ // check what type of conditions array we have here (should be subform... but just incase)
+ // This could happen due to huge data sets
+ if (isset($item->addconditions) && isset($item->addconditions['target_field']))
+ {
+ $bucket = array();
+ foreach($item->addconditions as $option => $values)
+ {
+ foreach($values as $nr => $value)
+ {
+ $bucket['addconditions'.$nr][$option] = $value;
+ }
+ }
+ $item->addconditions = $bucket;
+ // update the fields
+ $conditionsUpdate = new stdClass();
+ $conditionsUpdate->id = (int) $item->id;
+ $conditionsUpdate->addconditions = json_encode($bucket);
+ $this->_db->updateObject('#__componentbuilder_admin_fields_conditions', $conditionsUpdate, 'id');
+ }
+
+ if (!empty($item->id))
+ {
+ $item->tags = new JHelperTags;
+ $item->tags->getTagIds($item->id, 'com_componentbuilder.admin_fields_conditions');
+ }
+ }
+
+ return $item;
+ }
+
+ /**
+ * Method to get the record form.
+ *
+ * @param array $data Data for the form.
+ * @param boolean $loadData True if the form is to load its own data (default case), false if not.
+ *
+ * @return mixed A JForm object on success, false on failure
+ *
+ * @since 1.6
+ */
+ public function getForm($data = array(), $loadData = true)
+ {
+ // Get the form.
+ $form = $this->loadForm('com_componentbuilder.admin_fields_conditions', 'admin_fields_conditions', array('control' => 'jform', 'load_data' => $loadData));
+
+ if (empty($form))
+ {
+ return false;
+ }
+
+ $jinput = JFactory::getApplication()->input;
+
+ // The front end calls this model and uses a_id to avoid id clashes so we need to check for that first.
+ if ($jinput->get('a_id'))
+ {
+ $id = $jinput->get('a_id', 0, 'INT');
+ }
+ // The back end uses id so we use that the rest of the time and set it to 0 by default.
+ else
+ {
+ $id = $jinput->get('id', 0, 'INT');
+ }
+
+ $user = JFactory::getUser();
+
+ // Check for existing item.
+ // Modify the form based on Edit State access controls.
+ if ($id != 0 && (!$user->authorise('admin_fields_conditions.edit.state', 'com_componentbuilder.admin_fields_conditions.' . (int) $id))
+ || ($id == 0 && !$user->authorise('admin_fields_conditions.edit.state', 'com_componentbuilder')))
+ {
+ // Disable fields for display.
+ $form->setFieldAttribute('ordering', 'disabled', 'true');
+ $form->setFieldAttribute('published', 'disabled', 'true');
+ // Disable fields while saving.
+ $form->setFieldAttribute('ordering', 'filter', 'unset');
+ $form->setFieldAttribute('published', 'filter', 'unset');
+ }
+ // If this is a new item insure the greated by is set.
+ if (0 == $id)
+ {
+ // Set the created_by to this user
+ $form->setValue('created_by', null, $user->id);
+ }
+ // Modify the form based on Edit Creaded By access controls.
+ if ($id != 0 && (!$user->authorise('admin_fields_conditions.edit.created_by', 'com_componentbuilder.admin_fields_conditions.' . (int) $id))
+ || ($id == 0 && !$user->authorise('admin_fields_conditions.edit.created_by', 'com_componentbuilder')))
+ {
+ // Disable fields for display.
+ $form->setFieldAttribute('created_by', 'disabled', 'true');
+ // Disable fields for display.
+ $form->setFieldAttribute('created_by', 'readonly', 'true');
+ // Disable fields while saving.
+ $form->setFieldAttribute('created_by', 'filter', 'unset');
+ }
+ // Modify the form based on Edit Creaded Date access controls.
+ if ($id != 0 && (!$user->authorise('admin_fields_conditions.edit.created', 'com_componentbuilder.admin_fields_conditions.' . (int) $id))
+ || ($id == 0 && !$user->authorise('admin_fields_conditions.edit.created', 'com_componentbuilder')))
+ {
+ // Disable fields for display.
+ $form->setFieldAttribute('created', 'disabled', 'true');
+ // Disable fields while saving.
+ $form->setFieldAttribute('created', 'filter', 'unset');
+ }
+ // Only load these values if no id is found
+ if (0 == $id)
+ {
+ // Set redirected field name
+ $redirectedField = $jinput->get('ref', null, 'STRING');
+ // Set redirected field value
+ $redirectedValue = $jinput->get('refid', 0, 'INT');
+ if (0 != $redirectedValue && $redirectedField)
+ {
+ // Now set the local-redirected field default value
+ $form->setValue($redirectedField, null, $redirectedValue);
+ }
+ }
+
+ return $form;
+ }
+
+ /**
+ * Method to get the script that have to be included on the form
+ *
+ * @return string script files
+ */
+ public function getScript()
+ {
+ return 'administrator/components/com_componentbuilder/models/forms/admin_fields_conditions.js';
+ }
+
+ /**
+ * Method to test whether a record can be deleted.
+ *
+ * @param object $record A record object.
+ *
+ * @return boolean True if allowed to delete the record. Defaults to the permission set in the component.
+ *
+ * @since 1.6
+ */
+ protected function canDelete($record)
+ {
+ if (!empty($record->id))
+ {
+ if ($record->published != -2)
+ {
+ return;
+ }
+
+ $user = JFactory::getUser();
+ // The record has been set. Check the record permissions.
+ return $user->authorise('admin_fields_conditions.delete', 'com_componentbuilder.admin_fields_conditions.' . (int) $record->id);
+ }
+ return false;
+ }
+
+ /**
+ * Method to test whether a record can have its state edited.
+ *
+ * @param object $record A record object.
+ *
+ * @return boolean True if allowed to change the state of the record. Defaults to the permission set in the component.
+ *
+ * @since 1.6
+ */
+ protected function canEditState($record)
+ {
+ $user = JFactory::getUser();
+ $recordId = (!empty($record->id)) ? $record->id : 0;
+
+ if ($recordId)
+ {
+ // The record has been set. Check the record permissions.
+ $permission = $user->authorise('admin_fields_conditions.edit.state', 'com_componentbuilder.admin_fields_conditions.' . (int) $recordId);
+ if (!$permission && !is_null($permission))
+ {
+ return false;
+ }
+ }
+ // In the absense of better information, revert to the component permissions.
+ return $user->authorise('admin_fields_conditions.edit.state', 'com_componentbuilder');
+ }
+
+ /**
+ * Method override to check if you can edit an existing record.
+ *
+ * @param array $data An array of input data.
+ * @param string $key The name of the key for the primary key.
+ *
+ * @return boolean
+ * @since 2.5
+ */
+ protected function allowEdit($data = array(), $key = 'id')
+ {
+ // Check specific edit permission then general edit permission.
+ $user = JFactory::getUser();
+
+ return $user->authorise('admin_fields_conditions.edit', 'com_componentbuilder.admin_fields_conditions.'. ((int) isset($data[$key]) ? $data[$key] : 0)) or $user->authorise('admin_fields_conditions.edit', 'com_componentbuilder');
+ }
+
+ /**
+ * Prepare and sanitise the table data prior to saving.
+ *
+ * @param JTable $table A JTable object.
+ *
+ * @return void
+ *
+ * @since 1.6
+ */
+ protected function prepareTable($table)
+ {
+ $date = JFactory::getDate();
+ $user = JFactory::getUser();
+
+ if (isset($table->name))
+ {
+ $table->name = htmlspecialchars_decode($table->name, ENT_QUOTES);
+ }
+
+ if (isset($table->alias) && empty($table->alias))
+ {
+ $table->generateAlias();
+ }
+
+ if (empty($table->id))
+ {
+ $table->created = $date->toSql();
+ // set the user
+ if ($table->created_by == 0 || empty($table->created_by))
+ {
+ $table->created_by = $user->id;
+ }
+ // Set ordering to the last item if not set
+ if (empty($table->ordering))
+ {
+ $db = JFactory::getDbo();
+ $query = $db->getQuery(true)
+ ->select('MAX(ordering)')
+ ->from($db->quoteName('#__componentbuilder_admin_fields_conditions'));
+ $db->setQuery($query);
+ $max = $db->loadResult();
+
+ $table->ordering = $max + 1;
+ }
+ }
+ else
+ {
+ $table->modified = $date->toSql();
+ $table->modified_by = $user->id;
+ }
+
+ if (!empty($table->id))
+ {
+ // Increment the items version number.
+ $table->version++;
+ }
+ }
+
+ /**
+ * Method to get the data that should be injected in the form.
+ *
+ * @return mixed The data for the form.
+ *
+ * @since 1.6
+ */
+ protected function loadFormData()
+ {
+ // Check the session for previously entered form data.
+ $data = JFactory::getApplication()->getUserState('com_componentbuilder.edit.admin_fields_conditions.data', array());
+
+ if (empty($data))
+ {
+ $data = $this->getItem();
+ }
+
+ return $data;
+ }
+
+ /**
+ * Method to get the unique fields of this table.
+ *
+ * @return mixed An array of field names, boolean false if none is set.
+ *
+ * @since 3.0
+ */
+ protected function getUniqeFields()
+ {
+ return false;
+ }
+
+ /**
+ * Method to delete one or more records.
+ *
+ * @param array &$pks An array of record primary keys.
+ *
+ * @return boolean True if successful, false if an error occurs.
+ *
+ * @since 12.2
+ */
+ public function delete(&$pks)
+ {
+ if (!parent::delete($pks))
+ {
+ return false;
+ }
+
+ return true;
+ }
+
+ /**
+ * Method to change the published state of one or more records.
+ *
+ * @param array &$pks A list of the primary keys to change.
+ * @param integer $value The value of the published state.
+ *
+ * @return boolean True on success.
+ *
+ * @since 12.2
+ */
+ public function publish(&$pks, $value = 1)
+ {
+ if (!parent::publish($pks, $value))
+ {
+ return false;
+ }
+
+ return true;
+ }
+
+ /**
+ * Method to perform batch operations on an item or a set of items.
+ *
+ * @param array $commands An array of commands to perform.
+ * @param array $pks An array of item ids.
+ * @param array $contexts An array of item contexts.
+ *
+ * @return boolean Returns true on success, false on failure.
+ *
+ * @since 12.2
+ */
+ public function batch($commands, $pks, $contexts)
+ {
+ // Sanitize ids.
+ $pks = array_unique($pks);
+ JArrayHelper::toInteger($pks);
+
+ // Remove any values of zero.
+ if (array_search(0, $pks, true))
+ {
+ unset($pks[array_search(0, $pks, true)]);
+ }
+
+ if (empty($pks))
+ {
+ $this->setError(JText::_('JGLOBAL_NO_ITEM_SELECTED'));
+ return false;
+ }
+
+ $done = false;
+
+ // Set some needed variables.
+ $this->user = JFactory::getUser();
+ $this->table = $this->getTable();
+ $this->tableClassName = get_class($this->table);
+ $this->contentType = new JUcmType;
+ $this->type = $this->contentType->getTypeByTable($this->tableClassName);
+ $this->canDo = ComponentbuilderHelper::getActions('admin_fields_conditions');
+ $this->batchSet = true;
+
+ if (!$this->canDo->get('core.batch'))
+ {
+ $this->setError(JText::_('JLIB_APPLICATION_ERROR_INSUFFICIENT_BATCH_INFORMATION'));
+ return false;
+ }
+
+ if ($this->type == false)
+ {
+ $type = new JUcmType;
+ $this->type = $type->getTypeByAlias($this->typeAlias);
+ }
+
+ $this->tagsObserver = $this->table->getObserverOfClass('JTableObserverTags');
+
+ if (!empty($commands['move_copy']))
+ {
+ $cmd = JArrayHelper::getValue($commands, 'move_copy', 'c');
+
+ if ($cmd == 'c')
+ {
+ $result = $this->batchCopy($commands, $pks, $contexts);
+
+ if (is_array($result))
+ {
+ foreach ($result as $old => $new)
+ {
+ $contexts[$new] = $contexts[$old];
+ }
+ $pks = array_values($result);
+ }
+ else
+ {
+ return false;
+ }
+ }
+ elseif ($cmd == 'm' && !$this->batchMove($commands, $pks, $contexts))
+ {
+ return false;
+ }
+
+ $done = true;
+ }
+
+ if (!$done)
+ {
+ $this->setError(JText::_('JLIB_APPLICATION_ERROR_INSUFFICIENT_BATCH_INFORMATION'));
+
+ return false;
+ }
+
+ // Clear the cache
+ $this->cleanCache();
+
+ return true;
+ }
+
+ /**
+ * Batch copy items to a new category or current.
+ *
+ * @param integer $values The new values.
+ * @param array $pks An array of row IDs.
+ * @param array $contexts An array of item contexts.
+ *
+ * @return mixed An array of new IDs on success, boolean false on failure.
+ *
+ * @since 12.2
+ */
+ protected function batchCopy($values, $pks, $contexts)
+ {
+ if (empty($this->batchSet))
+ {
+ // Set some needed variables.
+ $this->user = JFactory::getUser();
+ $this->table = $this->getTable();
+ $this->tableClassName = get_class($this->table);
+ $this->contentType = new JUcmType;
+ $this->type = $this->contentType->getTypeByTable($this->tableClassName);
+ $this->canDo = ComponentbuilderHelper::getActions('admin_fields_conditions');
+ }
+
+ if (!$this->canDo->get('admin_fields_conditions.create') && !$this->canDo->get('admin_fields_conditions.batch'))
+ {
+ return false;
+ }
+
+ // get list of uniqe fields
+ $uniqeFields = $this->getUniqeFields();
+ // remove move_copy from array
+ unset($values['move_copy']);
+
+ // make sure published is set
+ if (!isset($values['published']))
+ {
+ $values['published'] = 0;
+ }
+ elseif (isset($values['published']) && !$this->canDo->get('admin_fields_conditions.edit.state'))
+ {
+ $values['published'] = 0;
+ }
+
+ $newIds = array();
+
+ // Parent exists so let's proceed
+ while (!empty($pks))
+ {
+ // Pop the first ID off the stack
+ $pk = array_shift($pks);
+
+ $this->table->reset();
+
+ // only allow copy if user may edit this item.
+
+ if (!$this->user->authorise('admin_fields_conditions.edit', $contexts[$pk]))
+
+ {
+
+ // Not fatal error
+
+ $this->setError(JText::sprintf('JLIB_APPLICATION_ERROR_BATCH_MOVE_ROW_NOT_FOUND', $pk));
+
+ continue;
+
+ }
+
+ // Check that the row actually exists
+ if (!$this->table->load($pk))
+ {
+ if ($error = $this->table->getError())
+ {
+ // Fatal error
+ $this->setError($error);
+
+ return false;
+ }
+ else
+ {
+ // Not fatal error
+ $this->setError(JText::sprintf('JLIB_APPLICATION_ERROR_BATCH_MOVE_ROW_NOT_FOUND', $pk));
+ continue;
+ }
+ }
+
+ $this->table->admin_view = $this->generateUniqe('admin_view',$this->table->admin_view);
+
+ // insert all set values
+ if (ComponentbuilderHelper::checkArray($values))
+ {
+ foreach ($values as $key => $value)
+ {
+ if (strlen($value) > 0 && isset($this->table->$key))
+ {
+ $this->table->$key = $value;
+ }
+ }
+ }
+
+ // update all uniqe fields
+ if (ComponentbuilderHelper::checkArray($uniqeFields))
+ {
+ foreach ($uniqeFields as $uniqeField)
+ {
+ $this->table->$uniqeField = $this->generateUniqe($uniqeField,$this->table->$uniqeField);
+ }
+ }
+
+ // Reset the ID because we are making a copy
+ $this->table->id = 0;
+
+ // TODO: Deal with ordering?
+ // $this->table->ordering = 1;
+
+ // Check the row.
+ if (!$this->table->check())
+ {
+ $this->setError($this->table->getError());
+
+ return false;
+ }
+
+ if (!empty($this->type))
+ {
+ $this->createTagsHelper($this->tagsObserver, $this->type, $pk, $this->typeAlias, $this->table);
+ }
+
+ // Store the row.
+ if (!$this->table->store())
+ {
+ $this->setError($this->table->getError());
+
+ return false;
+ }
+
+ // Get the new item ID
+ $newId = $this->table->get('id');
+
+ // Add the new ID to the array
+ $newIds[$pk] = $newId;
+ }
+
+ // Clean the cache
+ $this->cleanCache();
+
+ return $newIds;
+ }
+
+ /**
+ * Batch move items to a new category
+ *
+ * @param integer $value The new category ID.
+ * @param array $pks An array of row IDs.
+ * @param array $contexts An array of item contexts.
+ *
+ * @return boolean True if successful, false otherwise and internal error is set.
+ *
+ * @since 12.2
+ */
+ protected function batchMove($values, $pks, $contexts)
+ {
+ if (empty($this->batchSet))
+ {
+ // Set some needed variables.
+ $this->user = JFactory::getUser();
+ $this->table = $this->getTable();
+ $this->tableClassName = get_class($this->table);
+ $this->contentType = new JUcmType;
+ $this->type = $this->contentType->getTypeByTable($this->tableClassName);
+ $this->canDo = ComponentbuilderHelper::getActions('admin_fields_conditions');
+ }
+
+ if (!$this->canDo->get('admin_fields_conditions.edit') && !$this->canDo->get('admin_fields_conditions.batch'))
+ {
+ $this->setError(JText::_('JLIB_APPLICATION_ERROR_BATCH_CANNOT_EDIT'));
+ return false;
+ }
+
+ // make sure published only updates if user has the permission.
+ if (isset($values['published']) && !$this->canDo->get('admin_fields_conditions.edit.state'))
+ {
+ unset($values['published']);
+ }
+ // remove move_copy from array
+ unset($values['move_copy']);
+
+ // Parent exists so we proceed
+ foreach ($pks as $pk)
+ {
+ if (!$this->user->authorise('admin_fields_conditions.edit', $contexts[$pk]))
+ {
+ $this->setError(JText::_('JLIB_APPLICATION_ERROR_BATCH_CANNOT_EDIT'));
+
+ return false;
+ }
+
+ // Check that the row actually exists
+ if (!$this->table->load($pk))
+ {
+ if ($error = $this->table->getError())
+ {
+ // Fatal error
+ $this->setError($error);
+
+ return false;
+ }
+ else
+ {
+ // Not fatal error
+ $this->setError(JText::sprintf('JLIB_APPLICATION_ERROR_BATCH_MOVE_ROW_NOT_FOUND', $pk));
+ continue;
+ }
+ }
+
+ // insert all set values.
+ if (ComponentbuilderHelper::checkArray($values))
+ {
+ foreach ($values as $key => $value)
+ {
+ // Do special action for access.
+ if ('access' === $key && strlen($value) > 0)
+ {
+ $this->table->$key = $value;
+ }
+ elseif (strlen($value) > 0 && isset($this->table->$key))
+ {
+ $this->table->$key = $value;
+ }
+ }
+ }
+
+
+ // Check the row.
+ if (!$this->table->check())
+ {
+ $this->setError($this->table->getError());
+
+ return false;
+ }
+
+ if (!empty($this->type))
+ {
+ $this->createTagsHelper($this->tagsObserver, $this->type, $pk, $this->typeAlias, $this->table);
+ }
+
+ // Store the row.
+ if (!$this->table->store())
+ {
+ $this->setError($this->table->getError());
+
+ return false;
+ }
+ }
+
+ // Clean the cache
+ $this->cleanCache();
+
+ return true;
+ }
+
+ /**
+ * Method to save the form data.
+ *
+ * @param array $data The form data.
+ *
+ * @return boolean True on success.
+ *
+ * @since 1.6
+ */
+ public function save($data)
+ {
+ $input = JFactory::getApplication()->input;
+ $filter = JFilterInput::getInstance();
+
+ // set the metadata to the Item Data
+ if (isset($data['metadata']) && isset($data['metadata']['author']))
+ {
+ $data['metadata']['author'] = $filter->clean($data['metadata']['author'], 'TRIM');
+
+ $metadata = new JRegistry;
+ $metadata->loadArray($data['metadata']);
+ $data['metadata'] = (string) $metadata;
+ }
+
+ // Set the addconditions items to data.
+ if (isset($data['addconditions']) && is_array($data['addconditions']))
+ {
+ $addconditions = new JRegistry;
+ $addconditions->loadArray($data['addconditions']);
+ $data['addconditions'] = (string) $addconditions;
+ }
+ elseif (!isset($data['addconditions']))
+ {
+ // Set the empty addconditions to data
+ $data['addconditions'] = '';
+ }
+
+ // Set the Params Items to data
+ if (isset($data['params']) && is_array($data['params']))
+ {
+ $params = new JRegistry;
+ $params->loadArray($data['params']);
+ $data['params'] = (string) $params;
+ }
+
+ // Alter the uniqe field for save as copy
+ if ($input->get('task') === 'save2copy')
+ {
+ // Automatic handling of other uniqe fields
+ $uniqeFields = $this->getUniqeFields();
+ if (ComponentbuilderHelper::checkArray($uniqeFields))
+ {
+ foreach ($uniqeFields as $uniqeField)
+ {
+ $data[$uniqeField] = $this->generateUniqe($uniqeField,$data[$uniqeField]);
+ }
+ }
+ }
+
+ if (parent::save($data))
+ {
+ return true;
+ }
+ return false;
+ }
+
+ /**
+ * Method to generate a uniqe value.
+ *
+ * @param string $field name.
+ * @param string $value data.
+ *
+ * @return string New value.
+ *
+ * @since 3.0
+ */
+ protected function generateUniqe($field,$value)
+ {
+
+ // set field value uniqe
+ $table = $this->getTable();
+
+ while ($table->load(array($field => $value)))
+ {
+ $value = JString::increment($value);
+ }
+
+ return $value;
+ }
+
+ /**
+ * Method to change the title & alias.
+ *
+ * @param string $title The title.
+ *
+ * @return array Contains the modified title and alias.
+ *
+ */
+ protected function _generateNewTitle($title)
+ {
+
+ // Alter the title
+ $table = $this->getTable();
+
+ while ($table->load(array('title' => $title)))
+ {
+ $title = JString::increment($title);
+ }
+
+ return $title;
+ }
+}
diff --git a/admin/models/admin_view.php b/admin/models/admin_view.php
index ccf3a27fe..5878e6f11 100644
--- a/admin/models/admin_view.php
+++ b/admin/models/admin_view.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version @update number 114 of this MVC
- @build 28th August, 2017
+ @version @update number 192 of this MVC
+ @build 16th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage admin_view.php
@@ -64,6 +64,11 @@ class ComponentbuilderModelAdmin_view extends JModelAdmin
public function getTable($type = 'admin_view', $prefix = 'ComponentbuilderTable', $config = array())
{
return JTable::getInstance($type, $prefix, $config);
+ }
+
+ public function getVDM()
+ {
+ return $this->vastDevMod;
}
/**
@@ -95,6 +100,60 @@ class ComponentbuilderModelAdmin_view extends JModelAdmin
$item->metadata = $registry->toArray();
}
+ if (!empty($item->addpermissions))
+ {
+ // Convert the addpermissions field to an array.
+ $addpermissions = new Registry;
+ $addpermissions->loadString($item->addpermissions);
+ $item->addpermissions = $addpermissions->toArray();
+ }
+
+ if (!empty($item->addtabs))
+ {
+ // Convert the addtabs field to an array.
+ $addtabs = new Registry;
+ $addtabs->loadString($item->addtabs);
+ $item->addtabs = $addtabs->toArray();
+ }
+
+ if (!empty($item->addlinked_views))
+ {
+ // Convert the addlinked_views field to an array.
+ $addlinked_views = new Registry;
+ $addlinked_views->loadString($item->addlinked_views);
+ $item->addlinked_views = $addlinked_views->toArray();
+ }
+
+ if (!empty($item->custom_button))
+ {
+ // Convert the custom_button field to an array.
+ $custom_button = new Registry;
+ $custom_button->loadString($item->custom_button);
+ $item->custom_button = $custom_button->toArray();
+ }
+
+ if (!empty($item->addtables))
+ {
+ // Convert the addtables field to an array.
+ $addtables = new Registry;
+ $addtables->loadString($item->addtables);
+ $item->addtables = $addtables->toArray();
+ }
+
+ if (!empty($item->ajax_input))
+ {
+ // Convert the ajax_input field to an array.
+ $ajax_input = new Registry;
+ $ajax_input->loadString($item->ajax_input);
+ $item->ajax_input = $ajax_input->toArray();
+ }
+
+ if (!empty($item->php_getitems))
+ {
+ // base64 Decode php_getitems.
+ $item->php_getitems = base64_decode($item->php_getitems);
+ }
+
if (!empty($item->php_batchmove))
{
// base64 Decode php_batchmove.
@@ -131,12 +190,6 @@ class ComponentbuilderModelAdmin_view extends JModelAdmin
$item->php_after_publish = base64_decode($item->php_after_publish);
}
- if (!empty($item->php_getitems))
- {
- // base64 Decode php_getitems.
- $item->php_getitems = base64_decode($item->php_getitems);
- }
-
if (!empty($item->php_import))
{
// base64 Decode php_import.
@@ -291,6 +344,126 @@ class ComponentbuilderModelAdmin_view extends JModelAdmin
{
// base64 Decode php_import_ext.
$item->php_import_ext = base64_decode($item->php_import_ext);
+ }
+
+
+ if (empty($item->id))
+ {
+ $id = 0;
+ }
+ else
+ {
+ $id = $item->id;
+ }
+ // set the id and view name to session
+ if ($vdm = ComponentbuilderHelper::get('admin_view__'.$id))
+ {
+ $this->vastDevMod = $vdm;
+ }
+ else
+ {
+ $this->vastDevMod = ComponentbuilderHelper::randomkey(50);
+ ComponentbuilderHelper::set($this->vastDevMod, 'admin_view__'.$id);
+ ComponentbuilderHelper::set('admin_view__'.$id, $this->vastDevMod);
+ }
+
+ // update the fields
+ $objectUpdate = new stdClass();
+ $objectUpdate->id = (int) $item->id;
+ // check what type of linked_views array we have here (should be subform... but just incase)
+ // This could happen due to huge data sets
+ if (isset($item->addlinked_views) && isset($item->addlinked_views['adminview']))
+ {
+ $bucket = array();
+ foreach($item->addlinked_views as $option => $values)
+ {
+ foreach($values as $nr => $value)
+ {
+ $bucket['addlinked_views'.$nr][$option] = $value;
+ }
+ }
+ $item->addlinked_views = $bucket;
+ $objectUpdate->addconditions = json_encode($bucket);
+ }
+ // check what type of ajax_input array we have here (should be subform... but just incase)
+ // This could happen due to huge data sets
+ if (isset($item->ajax_input) && isset($item->ajax_input['value_name']))
+ {
+ $bucket = array();
+ foreach($item->ajax_input as $option => $values)
+ {
+ foreach($values as $nr => $value)
+ {
+ $bucket['ajax_input'.$nr][$option] = $value;
+ }
+ }
+ $item->ajax_input = $bucket;
+ $objectUpdate->ajax_input = json_encode($bucket);
+ }
+ // check what type of custom_button array we have here (should be subform... but just incase)
+ // This could happen due to huge data sets
+ if (isset($item->custom_button) && isset($item->custom_button['name']))
+ {
+ $bucket = array();
+ foreach($item->custom_button as $option => $values)
+ {
+ foreach($values as $nr => $value)
+ {
+ $bucket['custom_button'.$nr][$option] = $value;
+ }
+ }
+ $item->custom_button = $bucket;
+ $objectUpdate->custom_button = json_encode($bucket);
+ }
+ // check what type of permissions array we have here (should be subform... but just incase)
+ // This could happen due to huge data sets
+ if (isset($item->addpermissions) && isset($item->addpermissions['action']))
+ {
+ $bucket = array();
+ foreach($item->addpermissions as $option => $values)
+ {
+ foreach($values as $nr => $value)
+ {
+ $bucket['addpermissions'.$nr][$option] = $value;
+ }
+ }
+ $item->addpermissions = $bucket;
+ $objectUpdate->addpermissions = json_encode($bucket);
+ }
+ // check what type of table array we have here (should be subform... but just incase)
+ // This could happen due to huge data sets
+ if (isset($item->addtables) && isset($item->addtables['table']))
+ {
+ $bucket = array();
+ foreach($item->addtables as $option => $values)
+ {
+ foreach($values as $nr => $value)
+ {
+ $bucket['addtables'.$nr][$option] = $value;
+ }
+ }
+ $item->addtables = $bucket;
+ $objectUpdate->addtables = json_encode($bucket);
+ }
+ // check what type of tabs array we have here (should be subform... but just incase)
+ // This could happen due to huge data sets
+ if (isset($item->addtabs) && isset($item->addtabs['name']))
+ {
+ $bucket = array();
+ foreach($item->addtabs as $option => $values)
+ {
+ foreach($values as $nr => $value)
+ {
+ $bucket['addtabs'.$nr][$option] = $value;
+ }
+ }
+ $item->addtabs = $bucket;
+ $objectUpdate->addtabs = json_encode($bucket);
+ }
+ // be sure to update the table if we found repeatable fields that are still not converted
+ if (count((array) $objectUpdate) > 1)
+ {
+ $this->_db->updateObject('#__componentbuilder_admin_view', $objectUpdate, 'id');
}
if (!empty($item->id))
@@ -299,8 +472,7 @@ class ComponentbuilderModelAdmin_view extends JModelAdmin
$item->tags->getTagIds($item->id, 'com_componentbuilder.admin_view');
}
}
- $this->idvvvz = $item->addfields;
- $this->addadmin_viewsvvwa = $item->id;
+ $this->addadmin_viewsvvvz = $item->id;
return $item;
}
@@ -310,200 +482,7 @@ class ComponentbuilderModelAdmin_view extends JModelAdmin
*
* @return mixed An array of data items on success, false on failure.
*/
- public function getVxzfields()
- {
- // Get the user object.
- $user = JFactory::getUser();
- // Create a new query object.
- $db = JFactory::getDBO();
- $query = $db->getQuery(true);
-
- // Select some fields
- $query->select('a.*');
- $query->select($db->quoteName('c.title','category_title'));
-
- // From the componentbuilder_field table
- $query->from($db->quoteName('#__componentbuilder_field', 'a'));
- $query->join('LEFT', $db->quoteName('#__categories', 'c') . ' ON (' . $db->quoteName('a.catid') . ' = ' . $db->quoteName('c.id') . ')');
-
- // From the componentbuilder_fieldtype table.
- $query->select($db->quoteName('g.name','fieldtype_name'));
- $query->join('LEFT', $db->quoteName('#__componentbuilder_fieldtype', 'g') . ' ON (' . $db->quoteName('a.fieldtype') . ' = ' . $db->quoteName('g.id') . ')');
-
- // Join over the asset groups.
- $query->select('ag.title AS access_level');
- $query->join('LEFT', '#__viewlevels AS ag ON ag.id = a.access');
- // Filter by access level.
- if ($access = $this->getState('filter.access'))
- {
- $query->where('a.access = ' . (int) $access);
- }
- // Implement View Level Access
- if (!$user->authorise('core.options', 'com_componentbuilder'))
- {
- $groups = implode(',', $user->getAuthorisedViewLevels());
- $query->where('a.access IN (' . $groups . ')');
- }
-
- // Order the results by ordering
- $query->order('a.published ASC');
- $query->order('a.ordering ASC');
-
- // Load the items
- $db->setQuery($query);
- $db->execute();
- if ($db->getNumRows())
- {
- $items = $db->loadObjectList();
-
- // set values to display correctly.
- if (ComponentbuilderHelper::checkArray($items))
- {
- // get user object.
- $user = JFactory::getUser();
- foreach ($items as $nr => &$item)
- {
- $access = ($user->authorise('field.access', 'com_componentbuilder.field.' . (int) $item->id) && $user->authorise('field.access', 'com_componentbuilder'));
- if (!$access)
- {
- unset($items[$nr]);
- continue;
- }
-
- }
- }
-
- // set selection value to a translatable value
- if (ComponentbuilderHelper::checkArray($items))
- {
- foreach ($items as $nr => &$item)
- {
- // convert datatype
- $item->datatype = $this->selectionTranslationVxzfields($item->datatype, 'datatype');
- // convert indexes
- $item->indexes = $this->selectionTranslationVxzfields($item->indexes, 'indexes');
- // convert null_switch
- $item->null_switch = $this->selectionTranslationVxzfields($item->null_switch, 'null_switch');
- // convert store
- $item->store = $this->selectionTranslationVxzfields($item->store, 'store');
- }
- }
-
-
- // Filter by id Repetable Field
- $idvvvz = json_decode($this->idvvvz,true);
- if (ComponentbuilderHelper::checkArray($items) && isset($idvvvz) && ComponentbuilderHelper::checkArray($idvvvz))
- {
- foreach ($items as $nr => &$item)
- {
- if ($item->id && isset($idvvvz['field']) && ComponentbuilderHelper::checkArray($idvvvz['field']))
- {
- if (!in_array($item->id,$idvvvz['field']))
- {
- unset($items[$nr]);
- continue;
- }
- }
- else
- {
- unset($items[$nr]);
- continue;
- }
- }
- }
- else
- {
- return false;
- }
- return $items;
- }
- return false;
- }
-
- /**
- * Method to convert selection values to translatable string.
- *
- * @return translatable string
- */
- public function selectionTranslationVxzfields($value,$name)
- {
- // Array of datatype language strings
- if ($name === 'datatype')
- {
- $datatypeArray = array(
- 'CHAR' => 'COM_COMPONENTBUILDER_FIELD_CHAR',
- 'VARCHAR' => 'COM_COMPONENTBUILDER_FIELD_VARCHAR',
- 'TEXT' => 'COM_COMPONENTBUILDER_FIELD_TEXT',
- 'MEDIUMTEXT' => 'COM_COMPONENTBUILDER_FIELD_MEDIUMTEXT',
- 'LONGTEXT' => 'COM_COMPONENTBUILDER_FIELD_LONGTEXT',
- 'DATETIME' => 'COM_COMPONENTBUILDER_FIELD_DATETIME',
- 'DATE' => 'COM_COMPONENTBUILDER_FIELD_DATE',
- 'TIME' => 'COM_COMPONENTBUILDER_FIELD_TIME',
- 'INT' => 'COM_COMPONENTBUILDER_FIELD_INT',
- 'TINYINT' => 'COM_COMPONENTBUILDER_FIELD_TINYINT',
- 'BIGINT' => 'COM_COMPONENTBUILDER_FIELD_BIGINT',
- 'FLOAT' => 'COM_COMPONENTBUILDER_FIELD_FLOAT',
- 'DECIMAL' => 'COM_COMPONENTBUILDER_FIELD_DECIMAL',
- 'DOUBLE' => 'COM_COMPONENTBUILDER_FIELD_DOUBLE'
- );
- // Now check if value is found in this array
- if (isset($datatypeArray[$value]) && ComponentbuilderHelper::checkString($datatypeArray[$value]))
- {
- return $datatypeArray[$value];
- }
- }
- // Array of indexes language strings
- if ($name === 'indexes')
- {
- $indexesArray = array(
- 1 => 'COM_COMPONENTBUILDER_FIELD_UNIQUE_KEY',
- 2 => 'COM_COMPONENTBUILDER_FIELD_KEY',
- 0 => 'COM_COMPONENTBUILDER_FIELD_NONE'
- );
- // Now check if value is found in this array
- if (isset($indexesArray[$value]) && ComponentbuilderHelper::checkString($indexesArray[$value]))
- {
- return $indexesArray[$value];
- }
- }
- // Array of null_switch language strings
- if ($name === 'null_switch')
- {
- $null_switchArray = array(
- 'NULL' => 'COM_COMPONENTBUILDER_FIELD_NULL',
- 'NOT NULL' => 'COM_COMPONENTBUILDER_FIELD_NOT_NULL'
- );
- // Now check if value is found in this array
- if (isset($null_switchArray[$value]) && ComponentbuilderHelper::checkString($null_switchArray[$value]))
- {
- return $null_switchArray[$value];
- }
- }
- // Array of store language strings
- if ($name === 'store')
- {
- $storeArray = array(
- 0 => 'COM_COMPONENTBUILDER_FIELD_DEFAULT',
- 1 => 'COM_COMPONENTBUILDER_FIELD_JSON',
- 2 => 'COM_COMPONENTBUILDER_FIELD_BASESIXTY_FOUR',
- 3 => 'COM_COMPONENTBUILDER_FIELD_BASIC_ENCRYPTION_LOCALKEY',
- 4 => 'COM_COMPONENTBUILDER_FIELD_ADVANCE_ENCRYPTION_WHMCSKEY'
- );
- // Now check if value is found in this array
- if (isset($storeArray[$value]) && ComponentbuilderHelper::checkString($storeArray[$value]))
- {
- return $storeArray[$value];
- }
- }
- return $value;
- }
-
- /**
- * Method to get list data.
- *
- * @return mixed An array of data items on success, false on failure.
- */
- public function getVyalinked_components()
+ public function getVxzlinked_components()
{
// Get the user object.
$user = JFactory::getUser();
@@ -543,15 +522,32 @@ class ComponentbuilderModelAdmin_view extends JModelAdmin
{
$items = $db->loadObjectList();
- // Filter by addadmin_viewsvvwa in this Repetable Field
- if (ComponentbuilderHelper::checkArray($items) && isset($this->addadmin_viewsvvwa))
+ // set values to display correctly.
+ if (ComponentbuilderHelper::checkArray($items))
+ {
+ // get user object.
+ $user = JFactory::getUser();
+ foreach ($items as $nr => &$item)
+ {
+ $access = ($user->authorise('joomla_component.access', 'com_componentbuilder.joomla_component.' . (int) $item->id) && $user->authorise('joomla_component.access', 'com_componentbuilder'));
+ if (!$access)
+ {
+ unset($items[$nr]);
+ continue;
+ }
+
+ }
+ }
+
+ // Filter by addadmin_viewsvvvz in this Repetable Field
+ if (ComponentbuilderHelper::checkArray($items) && isset($this->addadmin_viewsvvvz))
{
foreach ($items as $nr => &$item)
{
if (isset($item->addadmin_views) && ComponentbuilderHelper::checkJson($item->addadmin_views))
{
$tmpArray = json_decode($item->addadmin_views,true);
- if (!isset($tmpArray['adminview']) || !ComponentbuilderHelper::checkArray($tmpArray['adminview']) || !in_array($this->addadmin_viewsvvwa, $tmpArray['adminview']))
+ if (!isset($tmpArray['adminview']) || !ComponentbuilderHelper::checkArray($tmpArray['adminview']) || !in_array($this->addadmin_viewsvvvz, $tmpArray['adminview']))
{
unset($items[$nr]);
continue;
@@ -610,8 +606,8 @@ class ComponentbuilderModelAdmin_view extends JModelAdmin
// Check for existing item.
// Modify the form based on Edit State access controls.
- if ($id != 0 && (!$user->authorise('core.edit.state', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('core.edit.state', 'com_componentbuilder')))
+ if ($id != 0 && (!$user->authorise('admin_view.edit.state', 'com_componentbuilder.admin_view.' . (int) $id))
+ || ($id == 0 && !$user->authorise('admin_view.edit.state', 'com_componentbuilder')))
{
// Disable fields for display.
$form->setFieldAttribute('ordering', 'disabled', 'true');
@@ -627,7 +623,8 @@ class ComponentbuilderModelAdmin_view extends JModelAdmin
$form->setValue('created_by', null, $user->id);
}
// Modify the form based on Edit Creaded By access controls.
- if (!$user->authorise('core.edit.created_by', 'com_componentbuilder'))
+ if ($id != 0 && (!$user->authorise('admin_view.edit.created_by', 'com_componentbuilder.admin_view.' . (int) $id))
+ || ($id == 0 && !$user->authorise('admin_view.edit.created_by', 'com_componentbuilder')))
{
// Disable fields for display.
$form->setFieldAttribute('created_by', 'disabled', 'true');
@@ -637,1350 +634,14 @@ class ComponentbuilderModelAdmin_view extends JModelAdmin
$form->setFieldAttribute('created_by', 'filter', 'unset');
}
// Modify the form based on Edit Creaded Date access controls.
- if (!$user->authorise('core.edit.created', 'com_componentbuilder'))
+ if ($id != 0 && (!$user->authorise('admin_view.edit.created', 'com_componentbuilder.admin_view.' . (int) $id))
+ || ($id == 0 && !$user->authorise('admin_view.edit.created', 'com_componentbuilder')))
{
// Disable fields for display.
$form->setFieldAttribute('created', 'disabled', 'true');
// Disable fields while saving.
$form->setFieldAttribute('created', 'filter', 'unset');
}
- // Modify the form based on Edit System Name access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.system_name', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.system_name', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('system_name', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('system_name', 'readonly', 'true');
- if (!$form->getValue('system_name'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('system_name', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('system_name', 'required', 'false');
- }
- }
- // Modify the form based on Edit Name Single access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.name_single', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.name_single', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('name_single', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('name_single', 'readonly', 'true');
- if (!$form->getValue('name_single'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('name_single', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('name_single', 'required', 'false');
- }
- }
- // Modify the form based on Edit Name List access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.name_list', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.name_list', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('name_list', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('name_list', 'readonly', 'true');
- if (!$form->getValue('name_list'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('name_list', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('name_list', 'required', 'false');
- }
- }
- // Modify the form based on Edit Short Description access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.short_description', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.short_description', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('short_description', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('short_description', 'readonly', 'true');
- if (!$form->getValue('short_description'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('short_description', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('short_description', 'required', 'false');
- }
- }
- // Modify the form based on Edit Php Batchmove access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.php_batchmove', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.php_batchmove', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('php_batchmove', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('php_batchmove', 'readonly', 'true');
- if (!$form->getValue('php_batchmove'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('php_batchmove', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('php_batchmove', 'required', 'false');
- }
- }
- // Modify the form based on Edit Type access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.type', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.type', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('type', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('type', 'readonly', 'true');
- if (!$form->getValue('type'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('type', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('type', 'required', 'false');
- }
- }
- // Modify the form based on Edit Php Save access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.php_save', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.php_save', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('php_save', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('php_save', 'readonly', 'true');
- if (!$form->getValue('php_save'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('php_save', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('php_save', 'required', 'false');
- }
- }
- // Modify the form based on Edit Description access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.description', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.description', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('description', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('description', 'readonly', 'true');
- if (!$form->getValue('description'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('description', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('description', 'required', 'false');
- }
- }
- // Modify the form based on Edit Php After Delete access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.php_after_delete', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.php_after_delete', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('php_after_delete', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('php_after_delete', 'readonly', 'true');
- if (!$form->getValue('php_after_delete'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('php_after_delete', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('php_after_delete', 'required', 'false');
- }
- }
- // Modify the form based on Edit Add Fadein access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.add_fadein', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.add_fadein', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('add_fadein', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('add_fadein', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('add_fadein', 'class', '');
- $form->setFieldAttribute('add_fadein', 'class', $class.' disabled no-click');
- if (!$form->getValue('add_fadein'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('add_fadein', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('add_fadein', 'required', 'false');
- }
- }
- // Modify the form based on Edit Icon access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.icon', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.icon', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('icon', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('icon', 'readonly', 'true');
- if (!$form->getValue('icon'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('icon', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('icon', 'required', 'false');
- }
- }
- // Modify the form based on Edit Php Getlistquery access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.php_getlistquery', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.php_getlistquery', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('php_getlistquery', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('php_getlistquery', 'readonly', 'true');
- if (!$form->getValue('php_getlistquery'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('php_getlistquery', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('php_getlistquery', 'required', 'false');
- }
- }
- // Modify the form based on Edit Icon Add access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.icon_add', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.icon_add', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('icon_add', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('icon_add', 'readonly', 'true');
- if (!$form->getValue('icon_add'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('icon_add', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('icon_add', 'required', 'false');
- }
- }
- // Modify the form based on Edit Php Allowedit access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.php_allowedit', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.php_allowedit', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('php_allowedit', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('php_allowedit', 'readonly', 'true');
- if (!$form->getValue('php_allowedit'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('php_allowedit', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('php_allowedit', 'required', 'false');
- }
- }
- // Modify the form based on Edit Icon Category access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.icon_category', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.icon_category', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('icon_category', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('icon_category', 'readonly', 'true');
- if (!$form->getValue('icon_category'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('icon_category', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('icon_category', 'required', 'false');
- }
- }
- // Modify the form based on Edit Php After Publish access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.php_after_publish', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.php_after_publish', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('php_after_publish', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('php_after_publish', 'readonly', 'true');
- if (!$form->getValue('php_after_publish'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('php_after_publish', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('php_after_publish', 'required', 'false');
- }
- }
- // Modify the form based on Edit Source access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.source', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.source', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('source', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('source', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('source', 'class', '');
- $form->setFieldAttribute('source', 'class', $class.' disabled no-click');
- if (!$form->getValue('source'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('source', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('source', 'required', 'false');
- }
- }
- // Modify the form based on Edit Php Getitems access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.php_getitems', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.php_getitems', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('php_getitems', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('php_getitems', 'readonly', 'true');
- if (!$form->getValue('php_getitems'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('php_getitems', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('php_getitems', 'required', 'false');
- }
- }
- // Modify the form based on Edit Php Import access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.php_import', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.php_import', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('php_import', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('php_import', 'readonly', 'true');
- if (!$form->getValue('php_import'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('php_import', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('php_import', 'required', 'false');
- }
- }
- // Modify the form based on Edit Addpermissions access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.addpermissions', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.addpermissions', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('addpermissions', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('addpermissions', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('addpermissions', 'class', '');
- $form->setFieldAttribute('addpermissions', 'class', $class.' disabled no-click');
- if (!$form->getValue('addpermissions'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('addpermissions', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('addpermissions', 'required', 'false');
- }
- }
- // Modify the form based on Edit Php Getitems After All access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.php_getitems_after_all', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.php_getitems_after_all', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('php_getitems_after_all', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('php_getitems_after_all', 'readonly', 'true');
- if (!$form->getValue('php_getitems_after_all'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('php_getitems_after_all', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('php_getitems_after_all', 'required', 'false');
- }
- }
- // Modify the form based on Edit Addtabs access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.addtabs', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.addtabs', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('addtabs', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('addtabs', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('addtabs', 'class', '');
- $form->setFieldAttribute('addtabs', 'class', $class.' disabled no-click');
- if (!$form->getValue('addtabs'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('addtabs', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('addtabs', 'required', 'false');
- }
- }
- // Modify the form based on Edit Php Before Save access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.php_before_save', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.php_before_save', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('php_before_save', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('php_before_save', 'readonly', 'true');
- if (!$form->getValue('php_before_save'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('php_before_save', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('php_before_save', 'required', 'false');
- }
- }
- // Modify the form based on Edit Php Postsavehook access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.php_postsavehook', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.php_postsavehook', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('php_postsavehook', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('php_postsavehook', 'readonly', 'true');
- if (!$form->getValue('php_postsavehook'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('php_postsavehook', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('php_postsavehook', 'required', 'false');
- }
- }
- // Modify the form based on Edit Addfields access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.addfields', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.addfields', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('addfields', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('addfields', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('addfields', 'class', '');
- $form->setFieldAttribute('addfields', 'class', $class.' disabled no-click');
- if (!$form->getValue('addfields'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('addfields', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('addfields', 'required', 'false');
- }
- }
- // Modify the form based on Edit Php Batchcopy access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.php_batchcopy', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.php_batchcopy', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('php_batchcopy', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('php_batchcopy', 'readonly', 'true');
- if (!$form->getValue('php_batchcopy'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('php_batchcopy', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('php_batchcopy', 'required', 'false');
- }
- }
- // Modify the form based on Edit Php Before Publish access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.php_before_publish', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.php_before_publish', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('php_before_publish', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('php_before_publish', 'readonly', 'true');
- if (!$form->getValue('php_before_publish'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('php_before_publish', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('php_before_publish', 'required', 'false');
- }
- }
- // Modify the form based on Edit Addconditions access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.addconditions', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.addconditions', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('addconditions', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('addconditions', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('addconditions', 'class', '');
- $form->setFieldAttribute('addconditions', 'class', $class.' disabled no-click');
- if (!$form->getValue('addconditions'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('addconditions', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('addconditions', 'required', 'false');
- }
- }
- // Modify the form based on Edit Php Before Delete access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.php_before_delete', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.php_before_delete', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('php_before_delete', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('php_before_delete', 'readonly', 'true');
- if (!$form->getValue('php_before_delete'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('php_before_delete', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('php_before_delete', 'required', 'false');
- }
- }
- // Modify the form based on Edit Addlinked Views access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.addlinked_views', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.addlinked_views', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('addlinked_views', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('addlinked_views', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('addlinked_views', 'class', '');
- $form->setFieldAttribute('addlinked_views', 'class', $class.' disabled no-click');
- if (!$form->getValue('addlinked_views'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('addlinked_views', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('addlinked_views', 'required', 'false');
- }
- }
- // Modify the form based on Edit Php Document access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.php_document', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.php_document', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('php_document', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('php_document', 'readonly', 'true');
- if (!$form->getValue('php_document'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('php_document', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('php_document', 'required', 'false');
- }
- }
- // Modify the form based on Edit Sql access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.sql', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.sql', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('sql', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('sql', 'readonly', 'true');
- if (!$form->getValue('sql'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('sql', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('sql', 'required', 'false');
- }
- }
- // Modify the form based on Edit Php Import Display access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.php_import_display', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.php_import_display', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('php_import_display', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('php_import_display', 'readonly', 'true');
- if (!$form->getValue('php_import_display'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('php_import_display', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('php_import_display', 'required', 'false');
- }
- }
- // Modify the form based on Edit Php Getitem access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.php_getitem', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.php_getitem', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('php_getitem', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('php_getitem', 'readonly', 'true');
- if (!$form->getValue('php_getitem'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('php_getitem', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('php_getitem', 'required', 'false');
- }
- }
- // Modify the form based on Edit Php Import Save access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.php_import_save', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.php_import_save', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('php_import_save', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('php_import_save', 'readonly', 'true');
- if (!$form->getValue('php_import_save'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('php_import_save', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('php_import_save', 'required', 'false');
- }
- }
- // Modify the form based on Edit Add Css View access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.add_css_view', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.add_css_view', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('add_css_view', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('add_css_view', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('add_css_view', 'class', '');
- $form->setFieldAttribute('add_css_view', 'class', $class.' disabled no-click');
- if (!$form->getValue('add_css_view'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('add_css_view', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('add_css_view', 'required', 'false');
- }
- }
- // Modify the form based on Edit Css View access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.css_view', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.css_view', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('css_view', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('css_view', 'readonly', 'true');
- if (!$form->getValue('css_view'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('css_view', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('css_view', 'required', 'false');
- }
- }
- // Modify the form based on Edit Add Php Getitems access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.add_php_getitems', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.add_php_getitems', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('add_php_getitems', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('add_php_getitems', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('add_php_getitems', 'class', '');
- $form->setFieldAttribute('add_php_getitems', 'class', $class.' disabled no-click');
- if (!$form->getValue('add_php_getitems'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('add_php_getitems', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('add_php_getitems', 'required', 'false');
- }
- }
- // Modify the form based on Edit Add Css Views access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.add_css_views', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.add_css_views', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('add_css_views', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('add_css_views', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('add_css_views', 'class', '');
- $form->setFieldAttribute('add_css_views', 'class', $class.' disabled no-click');
- if (!$form->getValue('add_css_views'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('add_css_views', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('add_css_views', 'required', 'false');
- }
- }
- // Modify the form based on Edit Add Php Getitems After All access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.add_php_getitems_after_all', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.add_php_getitems_after_all', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('add_php_getitems_after_all', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('add_php_getitems_after_all', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('add_php_getitems_after_all', 'class', '');
- $form->setFieldAttribute('add_php_getitems_after_all', 'class', $class.' disabled no-click');
- if (!$form->getValue('add_php_getitems_after_all'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('add_php_getitems_after_all', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('add_php_getitems_after_all', 'required', 'false');
- }
- }
- // Modify the form based on Edit Css Views access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.css_views', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.css_views', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('css_views', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('css_views', 'readonly', 'true');
- if (!$form->getValue('css_views'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('css_views', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('css_views', 'required', 'false');
- }
- }
- // Modify the form based on Edit Add Php Getlistquery access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.add_php_getlistquery', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.add_php_getlistquery', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('add_php_getlistquery', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('add_php_getlistquery', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('add_php_getlistquery', 'class', '');
- $form->setFieldAttribute('add_php_getlistquery', 'class', $class.' disabled no-click');
- if (!$form->getValue('add_php_getlistquery'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('add_php_getlistquery', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('add_php_getlistquery', 'required', 'false');
- }
- }
- // Modify the form based on Edit Add Javascript View File access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.add_javascript_view_file', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.add_javascript_view_file', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('add_javascript_view_file', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('add_javascript_view_file', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('add_javascript_view_file', 'class', '');
- $form->setFieldAttribute('add_javascript_view_file', 'class', $class.' disabled no-click');
- if (!$form->getValue('add_javascript_view_file'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('add_javascript_view_file', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('add_javascript_view_file', 'required', 'false');
- }
- }
- // Modify the form based on Edit Add Php Before Save access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.add_php_before_save', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.add_php_before_save', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('add_php_before_save', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('add_php_before_save', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('add_php_before_save', 'class', '');
- $form->setFieldAttribute('add_php_before_save', 'class', $class.' disabled no-click');
- if (!$form->getValue('add_php_before_save'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('add_php_before_save', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('add_php_before_save', 'required', 'false');
- }
- }
- // Modify the form based on Edit Javascript View File access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.javascript_view_file', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.javascript_view_file', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('javascript_view_file', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('javascript_view_file', 'readonly', 'true');
- if (!$form->getValue('javascript_view_file'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('javascript_view_file', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('javascript_view_file', 'required', 'false');
- }
- }
- // Modify the form based on Edit Add Php Save access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.add_php_save', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.add_php_save', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('add_php_save', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('add_php_save', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('add_php_save', 'class', '');
- $form->setFieldAttribute('add_php_save', 'class', $class.' disabled no-click');
- if (!$form->getValue('add_php_save'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('add_php_save', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('add_php_save', 'required', 'false');
- }
- }
- // Modify the form based on Edit Add Javascript View Footer access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.add_javascript_view_footer', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.add_javascript_view_footer', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('add_javascript_view_footer', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('add_javascript_view_footer', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('add_javascript_view_footer', 'class', '');
- $form->setFieldAttribute('add_javascript_view_footer', 'class', $class.' disabled no-click');
- if (!$form->getValue('add_javascript_view_footer'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('add_javascript_view_footer', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('add_javascript_view_footer', 'required', 'false');
- }
- }
- // Modify the form based on Edit Add Php Postsavehook access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.add_php_postsavehook', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.add_php_postsavehook', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('add_php_postsavehook', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('add_php_postsavehook', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('add_php_postsavehook', 'class', '');
- $form->setFieldAttribute('add_php_postsavehook', 'class', $class.' disabled no-click');
- if (!$form->getValue('add_php_postsavehook'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('add_php_postsavehook', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('add_php_postsavehook', 'required', 'false');
- }
- }
- // Modify the form based on Edit Javascript View Footer access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.javascript_view_footer', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.javascript_view_footer', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('javascript_view_footer', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('javascript_view_footer', 'readonly', 'true');
- if (!$form->getValue('javascript_view_footer'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('javascript_view_footer', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('javascript_view_footer', 'required', 'false');
- }
- }
- // Modify the form based on Edit Add Php Allowedit access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.add_php_allowedit', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.add_php_allowedit', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('add_php_allowedit', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('add_php_allowedit', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('add_php_allowedit', 'class', '');
- $form->setFieldAttribute('add_php_allowedit', 'class', $class.' disabled no-click');
- if (!$form->getValue('add_php_allowedit'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('add_php_allowedit', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('add_php_allowedit', 'required', 'false');
- }
- }
- // Modify the form based on Edit Add Javascript Views File access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.add_javascript_views_file', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.add_javascript_views_file', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('add_javascript_views_file', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('add_javascript_views_file', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('add_javascript_views_file', 'class', '');
- $form->setFieldAttribute('add_javascript_views_file', 'class', $class.' disabled no-click');
- if (!$form->getValue('add_javascript_views_file'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('add_javascript_views_file', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('add_javascript_views_file', 'required', 'false');
- }
- }
- // Modify the form based on Edit Add Php Batchcopy access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.add_php_batchcopy', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.add_php_batchcopy', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('add_php_batchcopy', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('add_php_batchcopy', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('add_php_batchcopy', 'class', '');
- $form->setFieldAttribute('add_php_batchcopy', 'class', $class.' disabled no-click');
- if (!$form->getValue('add_php_batchcopy'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('add_php_batchcopy', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('add_php_batchcopy', 'required', 'false');
- }
- }
- // Modify the form based on Edit Javascript Views File access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.javascript_views_file', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.javascript_views_file', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('javascript_views_file', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('javascript_views_file', 'readonly', 'true');
- if (!$form->getValue('javascript_views_file'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('javascript_views_file', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('javascript_views_file', 'required', 'false');
- }
- }
- // Modify the form based on Edit Add Php Batchmove access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.add_php_batchmove', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.add_php_batchmove', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('add_php_batchmove', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('add_php_batchmove', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('add_php_batchmove', 'class', '');
- $form->setFieldAttribute('add_php_batchmove', 'class', $class.' disabled no-click');
- if (!$form->getValue('add_php_batchmove'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('add_php_batchmove', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('add_php_batchmove', 'required', 'false');
- }
- }
- // Modify the form based on Edit Add Javascript Views Footer access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.add_javascript_views_footer', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.add_javascript_views_footer', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('add_javascript_views_footer', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('add_javascript_views_footer', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('add_javascript_views_footer', 'class', '');
- $form->setFieldAttribute('add_javascript_views_footer', 'class', $class.' disabled no-click');
- if (!$form->getValue('add_javascript_views_footer'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('add_javascript_views_footer', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('add_javascript_views_footer', 'required', 'false');
- }
- }
- // Modify the form based on Edit Add Php Before Publish access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.add_php_before_publish', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.add_php_before_publish', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('add_php_before_publish', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('add_php_before_publish', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('add_php_before_publish', 'class', '');
- $form->setFieldAttribute('add_php_before_publish', 'class', $class.' disabled no-click');
- if (!$form->getValue('add_php_before_publish'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('add_php_before_publish', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('add_php_before_publish', 'required', 'false');
- }
- }
- // Modify the form based on Edit Javascript Views Footer access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.javascript_views_footer', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.javascript_views_footer', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('javascript_views_footer', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('javascript_views_footer', 'readonly', 'true');
- if (!$form->getValue('javascript_views_footer'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('javascript_views_footer', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('javascript_views_footer', 'required', 'false');
- }
- }
- // Modify the form based on Edit Add Php After Publish access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.add_php_after_publish', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.add_php_after_publish', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('add_php_after_publish', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('add_php_after_publish', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('add_php_after_publish', 'class', '');
- $form->setFieldAttribute('add_php_after_publish', 'class', $class.' disabled no-click');
- if (!$form->getValue('add_php_after_publish'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('add_php_after_publish', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('add_php_after_publish', 'required', 'false');
- }
- }
- // Modify the form based on Edit Add Custom Button access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.add_custom_button', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.add_custom_button', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('add_custom_button', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('add_custom_button', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('add_custom_button', 'class', '');
- $form->setFieldAttribute('add_custom_button', 'class', $class.' disabled no-click');
- if (!$form->getValue('add_custom_button'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('add_custom_button', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('add_custom_button', 'required', 'false');
- }
- }
- // Modify the form based on Edit Add Php Before Delete access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.add_php_before_delete', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.add_php_before_delete', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('add_php_before_delete', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('add_php_before_delete', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('add_php_before_delete', 'class', '');
- $form->setFieldAttribute('add_php_before_delete', 'class', $class.' disabled no-click');
- if (!$form->getValue('add_php_before_delete'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('add_php_before_delete', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('add_php_before_delete', 'required', 'false');
- }
- }
- // Modify the form based on Edit Custom Button access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.custom_button', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.custom_button', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('custom_button', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('custom_button', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('custom_button', 'class', '');
- $form->setFieldAttribute('custom_button', 'class', $class.' disabled no-click');
- if (!$form->getValue('custom_button'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('custom_button', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('custom_button', 'required', 'false');
- }
- }
- // Modify the form based on Edit Add Php After Delete access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.add_php_after_delete', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.add_php_after_delete', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('add_php_after_delete', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('add_php_after_delete', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('add_php_after_delete', 'class', '');
- $form->setFieldAttribute('add_php_after_delete', 'class', $class.' disabled no-click');
- if (!$form->getValue('add_php_after_delete'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('add_php_after_delete', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('add_php_after_delete', 'required', 'false');
- }
- }
- // Modify the form based on Edit Php Controller access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.php_controller', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.php_controller', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('php_controller', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('php_controller', 'readonly', 'true');
- if (!$form->getValue('php_controller'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('php_controller', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('php_controller', 'required', 'false');
- }
- }
- // Modify the form based on Edit Add Php Document access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.add_php_document', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.add_php_document', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('add_php_document', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('add_php_document', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('add_php_document', 'class', '');
- $form->setFieldAttribute('add_php_document', 'class', $class.' disabled no-click');
- if (!$form->getValue('add_php_document'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('add_php_document', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('add_php_document', 'required', 'false');
- }
- }
- // Modify the form based on Edit Php Model access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.php_model', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.php_model', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('php_model', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('php_model', 'readonly', 'true');
- if (!$form->getValue('php_model'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('php_model', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('php_model', 'required', 'false');
- }
- }
- // Modify the form based on Edit Add Sql access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.add_sql', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.add_sql', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('add_sql', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('add_sql', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('add_sql', 'class', '');
- $form->setFieldAttribute('add_sql', 'class', $class.' disabled no-click');
- if (!$form->getValue('add_sql'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('add_sql', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('add_sql', 'required', 'false');
- }
- }
- // Modify the form based on Edit Php Controller List access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.php_controller_list', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.php_controller_list', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('php_controller_list', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('php_controller_list', 'readonly', 'true');
- if (!$form->getValue('php_controller_list'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('php_controller_list', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('php_controller_list', 'required', 'false');
- }
- }
- // Modify the form based on Edit Addtables access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.addtables', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.addtables', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('addtables', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('addtables', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('addtables', 'class', '');
- $form->setFieldAttribute('addtables', 'class', $class.' disabled no-click');
- if (!$form->getValue('addtables'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('addtables', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('addtables', 'required', 'false');
- }
- }
- // Modify the form based on Edit Php Model List access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.php_model_list', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.php_model_list', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('php_model_list', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('php_model_list', 'readonly', 'true');
- if (!$form->getValue('php_model_list'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('php_model_list', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('php_model_list', 'required', 'false');
- }
- }
- // Modify the form based on Edit Add Php Ajax access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.add_php_ajax', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.add_php_ajax', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('add_php_ajax', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('add_php_ajax', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('add_php_ajax', 'class', '');
- $form->setFieldAttribute('add_php_ajax', 'class', $class.' disabled no-click');
- if (!$form->getValue('add_php_ajax'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('add_php_ajax', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('add_php_ajax', 'required', 'false');
- }
- }
- // Modify the form based on Edit Add Custom Import access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.add_custom_import', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.add_custom_import', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('add_custom_import', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('add_custom_import', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('add_custom_import', 'class', '');
- $form->setFieldAttribute('add_custom_import', 'class', $class.' disabled no-click');
- if (!$form->getValue('add_custom_import'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('add_custom_import', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('add_custom_import', 'required', 'false');
- }
- }
- // Modify the form based on Edit Php Ajaxmethod access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.php_ajaxmethod', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.php_ajaxmethod', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('php_ajaxmethod', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('php_ajaxmethod', 'readonly', 'true');
- if (!$form->getValue('php_ajaxmethod'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('php_ajaxmethod', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('php_ajaxmethod', 'required', 'false');
- }
- }
- // Modify the form based on Edit Html Import View access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.html_import_view', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.html_import_view', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('html_import_view', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('html_import_view', 'readonly', 'true');
- if (!$form->getValue('html_import_view'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('html_import_view', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('html_import_view', 'required', 'false');
- }
- }
- // Modify the form based on Edit Ajax Input access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.ajax_input', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.ajax_input', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('ajax_input', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('ajax_input', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('ajax_input', 'class', '');
- $form->setFieldAttribute('ajax_input', 'class', $class.' disabled no-click');
- if (!$form->getValue('ajax_input'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('ajax_input', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('ajax_input', 'required', 'false');
- }
- }
- // Modify the form based on Edit Php Import Setdata access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.php_import_setdata', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.php_import_setdata', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('php_import_setdata', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('php_import_setdata', 'readonly', 'true');
- if (!$form->getValue('php_import_setdata'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('php_import_setdata', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('php_import_setdata', 'required', 'false');
- }
- }
- // Modify the form based on Edit Add Php Getitem access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.add_php_getitem', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.add_php_getitem', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('add_php_getitem', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('add_php_getitem', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('add_php_getitem', 'class', '');
- $form->setFieldAttribute('add_php_getitem', 'class', $class.' disabled no-click');
- if (!$form->getValue('add_php_getitem'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('add_php_getitem', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('add_php_getitem', 'required', 'false');
- }
- }
- // Modify the form based on Edit Php Import Ext access controls.
- if ($id != 0 && (!$user->authorise('admin_view.edit.php_import_ext', 'com_componentbuilder.admin_view.' . (int) $id))
- || ($id == 0 && !$user->authorise('admin_view.edit.php_import_ext', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('php_import_ext', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('php_import_ext', 'readonly', 'true');
- if (!$form->getValue('php_import_ext'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('php_import_ext', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('php_import_ext', 'required', 'false');
- }
- }
// Only load these values if no id is found
if (0 == $id)
{
@@ -2028,7 +689,7 @@ class ComponentbuilderModelAdmin_view extends JModelAdmin
$user = JFactory::getUser();
// The record has been set. Check the record permissions.
- return $user->authorise('core.delete', 'com_componentbuilder.admin_view.' . (int) $record->id);
+ return $user->authorise('admin_view.delete', 'com_componentbuilder.admin_view.' . (int) $record->id);
}
return false;
}
@@ -2050,14 +711,14 @@ class ComponentbuilderModelAdmin_view extends JModelAdmin
if ($recordId)
{
// The record has been set. Check the record permissions.
- $permission = $user->authorise('core.edit.state', 'com_componentbuilder.admin_view.' . (int) $recordId);
+ $permission = $user->authorise('admin_view.edit.state', 'com_componentbuilder.admin_view.' . (int) $recordId);
if (!$permission && !is_null($permission))
{
return false;
}
}
// In the absense of better information, revert to the component permissions.
- return parent::canEditState($record);
+ return $user->authorise('admin_view.edit.state', 'com_componentbuilder');
}
/**
@@ -2074,7 +735,7 @@ class ComponentbuilderModelAdmin_view extends JModelAdmin
// Check specific edit permission then general edit permission.
$user = JFactory::getUser();
- return $user->authorise('core.edit', 'com_componentbuilder.admin_view.'. ((int) isset($data[$key]) ? $data[$key] : 0)) or $user->authorise('core.edit', 'com_componentbuilder');
+ return $user->authorise('admin_view.edit', 'com_componentbuilder.admin_view.'. ((int) isset($data[$key]) ? $data[$key] : 0)) or $user->authorise('admin_view.edit', 'com_componentbuilder');
}
/**
@@ -2362,7 +1023,7 @@ class ComponentbuilderModelAdmin_view extends JModelAdmin
$this->canDo = ComponentbuilderHelper::getActions('admin_view');
}
- if (!$this->canDo->get('core.create') || !$this->canDo->get('core.batch'))
+ if (!$this->canDo->get('admin_view.create') && !$this->canDo->get('admin_view.batch'))
{
return false;
}
@@ -2377,7 +1038,7 @@ class ComponentbuilderModelAdmin_view extends JModelAdmin
{
$values['published'] = 0;
}
- elseif (isset($values['published']) && !$this->canDo->get('core.edit.state'))
+ elseif (isset($values['published']) && !$this->canDo->get('admin_view.edit.state'))
{
$values['published'] = 0;
}
@@ -2394,7 +1055,7 @@ class ComponentbuilderModelAdmin_view extends JModelAdmin
// only allow copy if user may edit this item.
- if (!$this->user->authorise('core.edit', $contexts[$pk]))
+ if (!$this->user->authorise('admin_view.edit', $contexts[$pk]))
{
@@ -2509,14 +1170,14 @@ class ComponentbuilderModelAdmin_view extends JModelAdmin
$this->canDo = ComponentbuilderHelper::getActions('admin_view');
}
- if (!$this->canDo->get('core.edit') && !$this->canDo->get('core.batch'))
+ if (!$this->canDo->get('admin_view.edit') && !$this->canDo->get('admin_view.batch'))
{
$this->setError(JText::_('JLIB_APPLICATION_ERROR_BATCH_CANNOT_EDIT'));
return false;
}
// make sure published only updates if user has the permission.
- if (isset($values['published']) && !$this->canDo->get('core.edit.state'))
+ if (isset($values['published']) && !$this->canDo->get('admin_view.edit.state'))
{
unset($values['published']);
}
@@ -2526,7 +1187,7 @@ class ComponentbuilderModelAdmin_view extends JModelAdmin
// Parent exists so we proceed
foreach ($pks as $pk)
{
- if (!$this->user->authorise('core.edit', $contexts[$pk]))
+ if (!$this->user->authorise('admin_view.edit', $contexts[$pk]))
{
$this->setError(JText::_('JLIB_APPLICATION_ERROR_BATCH_CANNOT_EDIT'));
@@ -2621,6 +1282,90 @@ class ComponentbuilderModelAdmin_view extends JModelAdmin
$data['metadata'] = (string) $metadata;
}
+ // Set the addpermissions items to data.
+ if (isset($data['addpermissions']) && is_array($data['addpermissions']))
+ {
+ $addpermissions = new JRegistry;
+ $addpermissions->loadArray($data['addpermissions']);
+ $data['addpermissions'] = (string) $addpermissions;
+ }
+ elseif (!isset($data['addpermissions']))
+ {
+ // Set the empty addpermissions to data
+ $data['addpermissions'] = '';
+ }
+
+ // Set the addtabs items to data.
+ if (isset($data['addtabs']) && is_array($data['addtabs']))
+ {
+ $addtabs = new JRegistry;
+ $addtabs->loadArray($data['addtabs']);
+ $data['addtabs'] = (string) $addtabs;
+ }
+ elseif (!isset($data['addtabs']))
+ {
+ // Set the empty addtabs to data
+ $data['addtabs'] = '';
+ }
+
+ // Set the addlinked_views items to data.
+ if (isset($data['addlinked_views']) && is_array($data['addlinked_views']))
+ {
+ $addlinked_views = new JRegistry;
+ $addlinked_views->loadArray($data['addlinked_views']);
+ $data['addlinked_views'] = (string) $addlinked_views;
+ }
+ elseif (!isset($data['addlinked_views']))
+ {
+ // Set the empty addlinked_views to data
+ $data['addlinked_views'] = '';
+ }
+
+ // Set the custom_button items to data.
+ if (isset($data['custom_button']) && is_array($data['custom_button']))
+ {
+ $custom_button = new JRegistry;
+ $custom_button->loadArray($data['custom_button']);
+ $data['custom_button'] = (string) $custom_button;
+ }
+ elseif (!isset($data['custom_button']))
+ {
+ // Set the empty custom_button to data
+ $data['custom_button'] = '';
+ }
+
+ // Set the addtables items to data.
+ if (isset($data['addtables']) && is_array($data['addtables']))
+ {
+ $addtables = new JRegistry;
+ $addtables->loadArray($data['addtables']);
+ $data['addtables'] = (string) $addtables;
+ }
+ elseif (!isset($data['addtables']))
+ {
+ // Set the empty addtables to data
+ $data['addtables'] = '';
+ }
+
+ // Set the ajax_input items to data.
+ if (isset($data['ajax_input']) && is_array($data['ajax_input']))
+ {
+ $ajax_input = new JRegistry;
+ $ajax_input->loadArray($data['ajax_input']);
+ $data['ajax_input'] = (string) $ajax_input;
+ }
+ elseif (!isset($data['ajax_input']))
+ {
+ // Set the empty ajax_input to data
+ $data['ajax_input'] = '';
+ }
+
+ // Set the php_getitems string to base64 string.
+ if (isset($data['php_getitems']))
+ {
+ $data['php_getitems'] = base64_encode($data['php_getitems']);
+ }
+
// Set the php_batchmove string to base64 string.
if (isset($data['php_batchmove']))
{
@@ -2657,12 +1402,6 @@ class ComponentbuilderModelAdmin_view extends JModelAdmin
$data['php_after_publish'] = base64_encode($data['php_after_publish']);
}
- // Set the php_getitems string to base64 string.
- if (isset($data['php_getitems']))
- {
- $data['php_getitems'] = base64_encode($data['php_getitems']);
- }
-
// Set the php_import string to base64 string.
if (isset($data['php_import']))
{
@@ -2817,46 +1556,7 @@ class ComponentbuilderModelAdmin_view extends JModelAdmin
if (isset($data['php_import_ext']))
{
$data['php_import_ext'] = base64_encode($data['php_import_ext']);
- }
-
- if (isset($data['addfields']) && ComponentbuilderHelper::checkJson($data['addfields']))
- {
- // Sort fields by 'Tab' ASC, 'Order in Edit' ASC
- $addfields = json_decode($data['addfields'], true);
- if (ComponentbuilderHelper::checkArray($addfields))
- {
- $out = array();
- foreach ($addfields as $key => $subarr)
- {
- if (ComponentbuilderHelper::checkArray($subarr))
- {
- foreach ($subarr as $subkey => $subvalue)
- {
- $out[$subkey][$key] = $subvalue;
- }
- }
- }
- if (ComponentbuilderHelper::checkArray($out))
- {
- // do the actual sort by tab and order_edit
- usort($out, function ($a, $b) {
- $val_a = sprintf('%02u', $a['tab']) . sprintf('%02u', $a['alignment']) . sprintf('%03u', $a['order_edit']);
- $val_b = sprintf('%02u', $b['tab']) . sprintf('%02u', $b['alignment']) . sprintf('%03u', $b['order_edit']);
- return strcmp($val_a, $val_b);
- });
-
- $addfields = array();
- foreach ($out as $key => $subarr)
- {
- foreach ($subarr as $subkey => $subvalue)
- {
- $addfields[$subkey][$key] = $subvalue;
- }
- }
- $data['addfields'] = json_encode($addfields, true);
- }
}
- }
// Set the Params Items to data
if (isset($data['params']) && is_array($data['params']))
diff --git a/admin/models/admin_views.php b/admin/models/admin_views.php
index c30624758..e97139cac 100644
--- a/admin/models/admin_views.php
+++ b/admin/models/admin_views.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version @update number 114 of this MVC
- @build 28th August, 2017
+ @version @update number 192 of this MVC
+ @build 16th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage admin_views.php
@@ -262,6 +262,8 @@ class ComponentbuilderModelAdmin_views extends JModelList
continue;
}
+ // decode php_getitems
+ $item->php_getitems = base64_decode($item->php_getitems);
// decode php_batchmove
$item->php_batchmove = base64_decode($item->php_batchmove);
// decode php_save
@@ -274,8 +276,6 @@ class ComponentbuilderModelAdmin_views extends JModelList
$item->php_allowedit = base64_decode($item->php_allowedit);
// decode php_after_publish
$item->php_after_publish = base64_decode($item->php_after_publish);
- // decode php_getitems
- $item->php_getitems = base64_decode($item->php_getitems);
// decode php_import
$item->php_import = base64_decode($item->php_import);
// decode php_getitems_after_all
diff --git a/admin/models/admins_fields.php b/admin/models/admins_fields.php
new file mode 100644
index 000000000..c87b2bfa0
--- /dev/null
+++ b/admin/models/admins_fields.php
@@ -0,0 +1,256 @@
+
+ @copyright Copyright (C) 2015. All Rights Reserved
+ @license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
+
+ Builds Complex Joomla Components
+
+/-----------------------------------------------------------------------------------------------------------------------------*/
+
+// No direct access to this file
+defined('_JEXEC') or die('Restricted access');
+
+// import the Joomla modellist library
+jimport('joomla.application.component.modellist');
+
+/**
+ * Admins_fields Model
+ */
+class ComponentbuilderModelAdmins_fields extends JModelList
+{
+ public function __construct($config = array())
+ {
+ if (empty($config['filter_fields']))
+ {
+ $config['filter_fields'] = array(
+ 'a.id','id',
+ 'a.published','published',
+ 'a.ordering','ordering',
+ 'a.created_by','created_by',
+ 'a.modified_by','modified_by'
+ );
+ }
+
+ parent::__construct($config);
+ }
+
+ /**
+ * Method to auto-populate the model state.
+ *
+ * @return void
+ */
+ protected function populateState($ordering = null, $direction = null)
+ {
+ $app = JFactory::getApplication();
+
+ // Adjust the context to support modal layouts.
+ if ($layout = $app->input->get('layout'))
+ {
+ $this->context .= '.' . $layout;
+ }
+
+
+ $sorting = $this->getUserStateFromRequest($this->context . '.filter.sorting', 'filter_sorting', 0, 'int');
+ $this->setState('filter.sorting', $sorting);
+
+ $access = $this->getUserStateFromRequest($this->context . '.filter.access', 'filter_access', 0, 'int');
+ $this->setState('filter.access', $access);
+
+ $search = $this->getUserStateFromRequest($this->context . '.filter.search', 'filter_search');
+ $this->setState('filter.search', $search);
+
+ $published = $this->getUserStateFromRequest($this->context . '.filter.published', 'filter_published', '');
+ $this->setState('filter.published', $published);
+
+ $created_by = $this->getUserStateFromRequest($this->context . '.filter.created_by', 'filter_created_by', '');
+ $this->setState('filter.created_by', $created_by);
+
+ $created = $this->getUserStateFromRequest($this->context . '.filter.created', 'filter_created');
+ $this->setState('filter.created', $created);
+
+ // List state information.
+ parent::populateState($ordering, $direction);
+ }
+
+ /**
+ * Method to get an array of data items.
+ *
+ * @return mixed An array of data items on success, false on failure.
+ */
+ public function getItems()
+ {
+ // check in items
+ $this->checkInNow();
+
+ // load parent items
+ $items = parent::getItems();
+
+ // set values to display correctly.
+ if (ComponentbuilderHelper::checkArray($items))
+ {
+ // get user object.
+ $user = JFactory::getUser();
+ foreach ($items as $nr => &$item)
+ {
+ $access = ($user->authorise('admin_fields.access', 'com_componentbuilder.admin_fields.' . (int) $item->id) && $user->authorise('admin_fields.access', 'com_componentbuilder'));
+ if (!$access)
+ {
+ unset($items[$nr]);
+ continue;
+ }
+
+ }
+ }
+
+ // return items
+ return $items;
+ }
+
+ /**
+ * Method to build an SQL query to load the list data.
+ *
+ * @return string An SQL query
+ */
+ protected function getListQuery()
+ {
+ // Get the user object.
+ $user = JFactory::getUser();
+ // Create a new query object.
+ $db = JFactory::getDBO();
+ $query = $db->getQuery(true);
+
+ // Select some fields
+ $query->select('a.*');
+
+ // From the componentbuilder_item table
+ $query->from($db->quoteName('#__componentbuilder_admin_fields', 'a'));
+
+ // From the componentbuilder_admin_view table.
+ $query->select($db->quoteName('g.system_name','admin_view_system_name'));
+ $query->join('LEFT', $db->quoteName('#__componentbuilder_admin_view', 'g') . ' ON (' . $db->quoteName('a.admin_view') . ' = ' . $db->quoteName('g.id') . ')');
+
+ // Filter by published state
+ $published = $this->getState('filter.published');
+ if (is_numeric($published))
+ {
+ $query->where('a.published = ' . (int) $published);
+ }
+ elseif ($published === '')
+ {
+ $query->where('(a.published = 0 OR a.published = 1)');
+ }
+
+ // Join over the asset groups.
+ $query->select('ag.title AS access_level');
+ $query->join('LEFT', '#__viewlevels AS ag ON ag.id = a.access');
+ // Filter by access level.
+ if ($access = $this->getState('filter.access'))
+ {
+ $query->where('a.access = ' . (int) $access);
+ }
+ // Implement View Level Access
+ if (!$user->authorise('core.options', 'com_componentbuilder'))
+ {
+ $groups = implode(',', $user->getAuthorisedViewLevels());
+ $query->where('a.access IN (' . $groups . ')');
+ }
+
+ // Add the list ordering clause.
+ $orderCol = $this->state->get('list.ordering', 'a.id');
+ $orderDirn = $this->state->get('list.direction', 'asc');
+ if ($orderCol != '')
+ {
+ $query->order($db->escape($orderCol . ' ' . $orderDirn));
+ }
+
+ return $query;
+ }
+
+ /**
+ * Method to get a store id based on model configuration state.
+ *
+ * @return string A store id.
+ *
+ */
+ protected function getStoreId($id = '')
+ {
+ // Compile the store id.
+ $id .= ':' . $this->getState('filter.id');
+ $id .= ':' . $this->getState('filter.search');
+ $id .= ':' . $this->getState('filter.published');
+ $id .= ':' . $this->getState('filter.ordering');
+ $id .= ':' . $this->getState('filter.created_by');
+ $id .= ':' . $this->getState('filter.modified_by');
+
+ return parent::getStoreId($id);
+ }
+
+ /**
+ * Build an SQL query to checkin all items left checked out longer then a set time.
+ *
+ * @return a bool
+ *
+ */
+ protected function checkInNow()
+ {
+ // Get set check in time
+ $time = JComponentHelper::getParams('com_componentbuilder')->get('check_in');
+
+ if ($time)
+ {
+
+ // Get a db connection.
+ $db = JFactory::getDbo();
+ // reset query
+ $query = $db->getQuery(true);
+ $query->select('*');
+ $query->from($db->quoteName('#__componentbuilder_admin_fields'));
+ $db->setQuery($query);
+ $db->execute();
+ if ($db->getNumRows())
+ {
+ // Get Yesterdays date
+ $date = JFactory::getDate()->modify($time)->toSql();
+ // reset query
+ $query = $db->getQuery(true);
+
+ // Fields to update.
+ $fields = array(
+ $db->quoteName('checked_out_time') . '=\'0000-00-00 00:00:00\'',
+ $db->quoteName('checked_out') . '=0'
+ );
+
+ // Conditions for which records should be updated.
+ $conditions = array(
+ $db->quoteName('checked_out') . '!=0',
+ $db->quoteName('checked_out_time') . '<\''.$date.'\''
+ );
+
+ // Check table
+ $query->update($db->quoteName('#__componentbuilder_admin_fields'))->set($fields)->where($conditions);
+
+ $db->setQuery($query);
+
+ $db->execute();
+ }
+ }
+
+ return false;
+ }
+}
diff --git a/admin/models/admins_fields_conditions.php b/admin/models/admins_fields_conditions.php
new file mode 100644
index 000000000..72ea7266c
--- /dev/null
+++ b/admin/models/admins_fields_conditions.php
@@ -0,0 +1,256 @@
+
+ @copyright Copyright (C) 2015. All Rights Reserved
+ @license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
+
+ Builds Complex Joomla Components
+
+/-----------------------------------------------------------------------------------------------------------------------------*/
+
+// No direct access to this file
+defined('_JEXEC') or die('Restricted access');
+
+// import the Joomla modellist library
+jimport('joomla.application.component.modellist');
+
+/**
+ * Admins_fields_conditions Model
+ */
+class ComponentbuilderModelAdmins_fields_conditions extends JModelList
+{
+ public function __construct($config = array())
+ {
+ if (empty($config['filter_fields']))
+ {
+ $config['filter_fields'] = array(
+ 'a.id','id',
+ 'a.published','published',
+ 'a.ordering','ordering',
+ 'a.created_by','created_by',
+ 'a.modified_by','modified_by'
+ );
+ }
+
+ parent::__construct($config);
+ }
+
+ /**
+ * Method to auto-populate the model state.
+ *
+ * @return void
+ */
+ protected function populateState($ordering = null, $direction = null)
+ {
+ $app = JFactory::getApplication();
+
+ // Adjust the context to support modal layouts.
+ if ($layout = $app->input->get('layout'))
+ {
+ $this->context .= '.' . $layout;
+ }
+
+
+ $sorting = $this->getUserStateFromRequest($this->context . '.filter.sorting', 'filter_sorting', 0, 'int');
+ $this->setState('filter.sorting', $sorting);
+
+ $access = $this->getUserStateFromRequest($this->context . '.filter.access', 'filter_access', 0, 'int');
+ $this->setState('filter.access', $access);
+
+ $search = $this->getUserStateFromRequest($this->context . '.filter.search', 'filter_search');
+ $this->setState('filter.search', $search);
+
+ $published = $this->getUserStateFromRequest($this->context . '.filter.published', 'filter_published', '');
+ $this->setState('filter.published', $published);
+
+ $created_by = $this->getUserStateFromRequest($this->context . '.filter.created_by', 'filter_created_by', '');
+ $this->setState('filter.created_by', $created_by);
+
+ $created = $this->getUserStateFromRequest($this->context . '.filter.created', 'filter_created');
+ $this->setState('filter.created', $created);
+
+ // List state information.
+ parent::populateState($ordering, $direction);
+ }
+
+ /**
+ * Method to get an array of data items.
+ *
+ * @return mixed An array of data items on success, false on failure.
+ */
+ public function getItems()
+ {
+ // check in items
+ $this->checkInNow();
+
+ // load parent items
+ $items = parent::getItems();
+
+ // set values to display correctly.
+ if (ComponentbuilderHelper::checkArray($items))
+ {
+ // get user object.
+ $user = JFactory::getUser();
+ foreach ($items as $nr => &$item)
+ {
+ $access = ($user->authorise('admin_fields_conditions.access', 'com_componentbuilder.admin_fields_conditions.' . (int) $item->id) && $user->authorise('admin_fields_conditions.access', 'com_componentbuilder'));
+ if (!$access)
+ {
+ unset($items[$nr]);
+ continue;
+ }
+
+ }
+ }
+
+ // return items
+ return $items;
+ }
+
+ /**
+ * Method to build an SQL query to load the list data.
+ *
+ * @return string An SQL query
+ */
+ protected function getListQuery()
+ {
+ // Get the user object.
+ $user = JFactory::getUser();
+ // Create a new query object.
+ $db = JFactory::getDBO();
+ $query = $db->getQuery(true);
+
+ // Select some fields
+ $query->select('a.*');
+
+ // From the componentbuilder_item table
+ $query->from($db->quoteName('#__componentbuilder_admin_fields_conditions', 'a'));
+
+ // From the componentbuilder_admin_view table.
+ $query->select($db->quoteName('g.system_name','admin_view_system_name'));
+ $query->join('LEFT', $db->quoteName('#__componentbuilder_admin_view', 'g') . ' ON (' . $db->quoteName('a.admin_view') . ' = ' . $db->quoteName('g.id') . ')');
+
+ // Filter by published state
+ $published = $this->getState('filter.published');
+ if (is_numeric($published))
+ {
+ $query->where('a.published = ' . (int) $published);
+ }
+ elseif ($published === '')
+ {
+ $query->where('(a.published = 0 OR a.published = 1)');
+ }
+
+ // Join over the asset groups.
+ $query->select('ag.title AS access_level');
+ $query->join('LEFT', '#__viewlevels AS ag ON ag.id = a.access');
+ // Filter by access level.
+ if ($access = $this->getState('filter.access'))
+ {
+ $query->where('a.access = ' . (int) $access);
+ }
+ // Implement View Level Access
+ if (!$user->authorise('core.options', 'com_componentbuilder'))
+ {
+ $groups = implode(',', $user->getAuthorisedViewLevels());
+ $query->where('a.access IN (' . $groups . ')');
+ }
+
+ // Add the list ordering clause.
+ $orderCol = $this->state->get('list.ordering', 'a.id');
+ $orderDirn = $this->state->get('list.direction', 'asc');
+ if ($orderCol != '')
+ {
+ $query->order($db->escape($orderCol . ' ' . $orderDirn));
+ }
+
+ return $query;
+ }
+
+ /**
+ * Method to get a store id based on model configuration state.
+ *
+ * @return string A store id.
+ *
+ */
+ protected function getStoreId($id = '')
+ {
+ // Compile the store id.
+ $id .= ':' . $this->getState('filter.id');
+ $id .= ':' . $this->getState('filter.search');
+ $id .= ':' . $this->getState('filter.published');
+ $id .= ':' . $this->getState('filter.ordering');
+ $id .= ':' . $this->getState('filter.created_by');
+ $id .= ':' . $this->getState('filter.modified_by');
+
+ return parent::getStoreId($id);
+ }
+
+ /**
+ * Build an SQL query to checkin all items left checked out longer then a set time.
+ *
+ * @return a bool
+ *
+ */
+ protected function checkInNow()
+ {
+ // Get set check in time
+ $time = JComponentHelper::getParams('com_componentbuilder')->get('check_in');
+
+ if ($time)
+ {
+
+ // Get a db connection.
+ $db = JFactory::getDbo();
+ // reset query
+ $query = $db->getQuery(true);
+ $query->select('*');
+ $query->from($db->quoteName('#__componentbuilder_admin_fields_conditions'));
+ $db->setQuery($query);
+ $db->execute();
+ if ($db->getNumRows())
+ {
+ // Get Yesterdays date
+ $date = JFactory::getDate()->modify($time)->toSql();
+ // reset query
+ $query = $db->getQuery(true);
+
+ // Fields to update.
+ $fields = array(
+ $db->quoteName('checked_out_time') . '=\'0000-00-00 00:00:00\'',
+ $db->quoteName('checked_out') . '=0'
+ );
+
+ // Conditions for which records should be updated.
+ $conditions = array(
+ $db->quoteName('checked_out') . '!=0',
+ $db->quoteName('checked_out_time') . '<\''.$date.'\''
+ );
+
+ // Check table
+ $query->update($db->quoteName('#__componentbuilder_admin_fields_conditions'))->set($fields)->where($conditions);
+
+ $db->setQuery($query);
+
+ $db->execute();
+ }
+ }
+
+ return false;
+ }
+}
diff --git a/admin/models/ajax.php b/admin/models/ajax.php
index 6e558c1c1..3075281bc 100644
--- a/admin/models/ajax.php
+++ b/admin/models/ajax.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage ajax.php
@@ -177,12 +177,561 @@ class ComponentbuilderModelAjax extends JModelList
}
// Used in admin_view
+
+ protected $viewid = array();
+
+ protected function getViewID($call = 'table')
+ {
+ if (!isset($this->viewid[$call]))
+ {
+ // get the vdm key
+ $jinput = JFactory::getApplication()->input;
+ $vdm = $jinput->get('vdm', null, 'WORD');
+ if ($vdm)
+ {
+ if ($view = ComponentbuilderHelper::get($vdm))
+ {
+ $current = (array) explode('__', $view);
+ if (ComponentbuilderHelper::checkString($current[0]) && isset($current[1]) && is_numeric($current[1]))
+ {
+ // get the view name & id
+ $this->viewid[$call] = array(
+ 'a_id' => (int) $current[1],
+ 'a_view' => $current[0]
+ );
+ }
+ }
+ }
+ }
+ if (isset($this->viewid[$call]))
+ {
+ return $this->viewid[$call];
+ }
+ return false;
+ }
+
+ protected $buttonArray = array(
+ 'admin_fields' => 'admins_fields',
+ 'admin_fields_conditions' => 'admins_fields_conditions',
+ 'field' => 'fields',
+ 'language' => true);
+
+ public function getButton($type)
+ {
+ if (isset($this->buttonArray[$type]))
+ {
+ $user = JFactory::getUser();
+ // only add if user allowed to create
+ if ($user->authorise($type.'.create', 'com_componentbuilder'))
+ {
+ // get the view name & id
+ $values = $this->getViewID();
+ // check if new item
+ $ref = '';
+ if (!is_null($values['a_id']) && $values['a_id'] > 0 && strlen($values['a_view']))
+ {
+ // only load referal if not new item.
+ $ref = '&ref=' . $values['a_view'] . '&refid=' . $values['a_id'];
+ }
+ // build the button
+ $button = '
+
+ ' . ucwords($type) . '
+
+
+
';
+ // return the button attached to input field
+ return $button;
+ }
+ return '';
+ }
+ return false;
+ }
+
+ public function getButtonID($type, $size)
+ {
+ if (isset($this->buttonArray[$type]))
+ {
+ $user = JFactory::getUser();
+ // only add if user allowed to create
+ if ($user->authorise($type.'.create', 'com_componentbuilder'))
+ {
+ // get the view name & id
+ $values = $this->getViewID();
+ // check if new item
+ $ref = '';
+ if (!is_null($values['a_id']) && $values['a_id'] > 0 && strlen($values['a_view']))
+ {
+ // only load referal if not new item.
+ $ref = '&ref=' . $values['a_view'] . '&refid=' . $values['a_id'];
+ // get item id
+ if ($id = ComponentbuilderHelper::getVar($type, $values['a_id'], $values['a_view'], 'id'))
+ {
+ $buttonText = JText::sprintf('COM_COMPONENTBUILDER_EDIT_S_FOR_THIS_S', ComponentbuilderHelper::safeString($type, 'w'), ComponentbuilderHelper::safeString($values['a_view'], 'w'));
+ $buttonTextSmall = JText::_('COM_COMPONENTBUILDER_EDIT');
+ $editThis = 'index.php?option=com_componentbuilder&view='.$this->buttonArray[$type].'&task='.$type.'.edit&id='.$id;
+ $icon = 'icon-apply';
+ }
+ else
+ {
+ $buttonText = JText::sprintf('COM_COMPONENTBUILDER_CREATE_S_FOR_THIS_S', ComponentbuilderHelper::safeString($type, 'w'), ComponentbuilderHelper::safeString($values['a_view'], 'w'));
+ $buttonTextSmall = JText::_('COM_COMPONENTBUILDER_CREATE');
+ $editThis = 'index.php?option=com_componentbuilder&view='.$type.'&layout=edit';
+ $icon = 'icon-new';
+ }
+ // build the button
+ $button = array();
+ if (1 == $size)
+ {
+ $button[] = '';
+ $button[] = '
';
+ $button[] = '' . ComponentbuilderHelper::safeString($type, 'Ww') . ' ';
+ $button[] = '
';
+ $button[] = '
';
+ $button[] = '
';
+ }
+ elseif (2 == $size)
+ {
+ $button[] = ' ';
+ $button[] = $buttonTextSmall;
+ $button[] = '';
+ }
+ // return the button attached to input field
+ return implode("\n", $button);
+ }
+ // only return notice if big button
+ if (1 == $size)
+ {
+ return '' . JText::sprintf('COM_COMPONENTBUILDER_BUTTON_TO_CREATE_S_WILL_SHOW_ONCE_S_IS_SAVED_FOR_THE_FIRST_TIME', ComponentbuilderHelper::safeString($type, 'w'), ComponentbuilderHelper::safeString($values['a_view'], 'w')) . '
';
+ }
+ }
+ }
+ return '';
+ }
+
public static function getImportScripts($type)
{
// get from global helper
return ComponentbuilderHelper::getImportScripts($type);
}
+ protected $functionArray = array(
+ 'field' => 'setFieldsNames',
+ 'list' => 'setYesNo',
+ 'title' => 'setYesNo',
+ 'alias' => 'setYesNo',
+ 'sort' => 'setYesNo',
+ 'search' => 'setYesNo',
+ 'filter' => 'setYesNo',
+ 'link' => 'setYesNo',
+ 'permission' => 'setYesNo',
+ 'tab' => 'setTabName',
+ 'alignment' => 'setAlignmentName',
+ 'target_field' => 'setFieldsNames',
+ 'target_behavior' => 'setTargetBehavior',
+ 'target_relation' => 'setTargetRelation',
+ 'match_field' => 'setFieldsNames',
+ 'match_behavior' => 'setMatchBehavior',
+ 'match_options' => 'setMatchOptions');
+
+ protected function getSubformTable($idName, $data)
+ {
+ // make sure we convert the json to array
+ if (ComponentbuilderHelper::checkJson($data))
+ {
+ $data = json_decode($data, true);
+ }
+ // make sure we have an array
+ if (ComponentbuilderHelper::checkArray($data) && ComponentbuilderHelper::checkString($idName))
+ {
+ // Build heading
+ $head = array();
+ foreach ($data as $headers)
+ {
+ foreach ($headers as $header => $value)
+ {
+ $head[$header] = ' ' . ComponentbuilderHelper::safeString($header, 'Ww');
+ }
+ }
+ // build the rows
+ $rows = array();
+ if (ComponentbuilderHelper::checkArray($data) && ComponentbuilderHelper::checkArray($head))
+ {
+ foreach ($data as $nr => $values)
+ {
+ foreach ($head as $key => $t)
+ {
+ // set the value for the row
+ if (isset($values[$key]))
+ {
+ $this->setSubformRows($nr, $this->setSubformValue($key, $values[$key]), $rows);
+ }
+ else
+ {
+ $this->setSubformRows($nr, $this->setSubformValue($key, ''), $rows);
+ }
+ }
+ }
+ }
+ // build table
+ if (ComponentbuilderHelper::checkArray($rows) && ComponentbuilderHelper::checkArray($head))
+ {
+ // set the number of rows
+ $this->rowNumber = count($rows);
+ // return the table
+ return $this->setSubformTable($head, $rows, $idName);
+ }
+ }
+ return false;
+ }
+
+ protected function setSubformTable($head, $rows, $idName)
+ {
+ $table[] = "";
+ $table[] = "\t
";
+ $table[] = "
";
+ // return the table
+ return implode("\n", $table);
+ }
+
+ protected function setSubformValue($header, $value)
+ {
+ if (array_key_exists($header, $this->functionArray) && method_exists($this, $this->functionArray[$header]))
+ {
+ $value = $this->{$this->functionArray[$header]}($header, $value);
+ }
+ // if no value are set
+ if (!ComponentbuilderHelper::checkString($value))
+ {
+ $value = '-';
+ }
+ return $value;
+ }
+
+ protected function setSubformRows($nr, $value, &$rows)
+ {
+ // build rows
+ if (!isset($rows[$nr]))
+ {
+ $rows[$nr] = ' '.$value.' ';
+ }
+ else
+ {
+ $rows[$nr] .= ''.$value.' ';
+ }
+ }
+
+ protected $ref;
+ protected $fieldsArray = array(
+ 'admin_fields' => 'addfields',
+ 'admin_fields_conditions' => 'addconditions');
+
+ public function getFieldsDisplay($type)
+ {
+ if (isset($this->fieldsArray[$type]))
+ {
+ // set type name
+ $typeName = ComponentbuilderHelper::safeString($type, 'w');
+ // get the view name & id
+ $values = $this->getViewID();
+ // check if we are in the correct view.
+ if (!is_null($values['a_id']) && $values['a_id'] > 0 && strlen($values['a_view']) && $values['a_view'] === 'admin_view')
+ {
+ $this->ref = '&ref=admin_view&refid=' . $values['a_id'];
+ // get the field data
+ if ($fieldsData = ComponentbuilderHelper::getVar($type, (int) $values['a_id'], 'admin_view', $this->fieldsArray[$type]))
+ {
+ // check repeatable conversion
+ $this->checkRepeatableConversion($fieldsData, $type, $values['a_id']);
+ // get the table
+ $table = $this->getSubformTable($type, $fieldsData);
+ // set notice of bad practice
+ $notice = '';
+ if (isset($this->rowNumber) && $this->rowNumber > 50)
+ {
+ $notice = '' . JText::sprintf('COM_COMPONENTBUILDER_YOU_HAVE_S_S_ADDING_MORE_THEN_FIFTY_S_IS_CONSIDERED_BAD_PRACTICE_YOUR_S_PAGE_LOAD_IN_JCB_WILL_SLOWDOWN_YOU_SHOULD_CONSIDER_DECOUPLING_SOME_OF_THESE_S', $this->rowNumber, $typeName, $typeName, $typeName, $typeName) . '
';
+ }
+ elseif (isset($this->rowNumber))
+ {
+ $notice = '' . JText::sprintf('COM_COMPONENTBUILDER_YOU_HAVE_S_S_ADDING_MORE_THEN_FIFTY_S_IS_CONSIDERED_BAD_PRACTICE', $this->rowNumber, $typeName, $typeName) . '
';
+ }
+ // return table
+ return $notice.$table;
+ }
+ }
+ return '' . JText::sprintf('COM_COMPONENTBUILDER_NO_S_HAVE_BEEN_LINKED_TO_THIS_VIEW_SOON_AS_THIS_IS_DONE_IT_WILL_BE_DISPLAYED_HERE', $typeName) . '
';
+ }
+ return '' . JText::_('COM_COMPONENTBUILDER_TYPE_ERROR') . ' ' . JText::_('COM_COMPONENTBUILDER_THERE_HAS_BEEN_AN_ERROR_IF_THIS_CONTINUES_PLEASE_INFORM_YOUR_SYSTEM_ADMINISTRATOR_OF_A_TYPE_ERROR_IN_THE_FIELDS_DISPLAY_REQUEST') . '
';
+ }
+
+ protected $conversionCheck = array(
+ 'addfields' => 'field',
+ 'addconditions' => 'target_field');
+
+ protected function checkRepeatableConversion(&$fieldsData, $type, $id)
+ {
+ if (ComponentbuilderHelper::checkJson($fieldsData))
+ {
+ $fieldsData = json_decode($fieldsData, true);
+ if (isset($fieldsData[$this->conversionCheck[$this->fieldsArray[$type]]]))
+ {
+ $bucket = array();
+ foreach($fieldsData as $option => $values)
+ {
+ foreach($values as $nr => $value)
+ {
+ $bucket[$this->fieldsArray[$type].$nr][$option] = $value;
+ }
+ }
+ $fieldsData = json_encode($bucket);
+ // update the fields
+ $objectUpdate = new stdClass();
+ $objectUpdate->admin_view = (int) $id;
+ $objectUpdate->{$this->fieldsArray[$type]} = $fieldsData;
+ JFactory::getDbo()->updateObject('#__componentbuilder_'.$type, $objectUpdate, 'admin_view');
+ }
+ }
+ }
+
+ protected function setAlignmentName($header, $value)
+ {
+ switch ($value)
+ {
+ case 1:
+ return JText::_('COM_COMPONENTBUILDER_LEFT_IN_TAB');
+ break;
+ case 2:
+ return JText::_('COM_COMPONENTBUILDER_RIGHT_IN_TAB');
+ break;
+ case 3:
+ return JText::_('COM_COMPONENTBUILDER_FULL_WIDTH_IN_TAB');
+ break;
+ case 4:
+ return JText::_('COM_COMPONENTBUILDER_ABOVE_TABS');
+ break;
+ case 5:
+ return JText::_('COM_COMPONENTBUILDER_UNDERNEATH_TABS');
+ break;
+ case 6:
+ return JText::_('COM_COMPONENTBUILDER_LEFT_OF_TABS');
+ break;
+ case 7:
+ return JText::_('COM_COMPONENTBUILDER_RIGHT_OF_TABS');
+ break;
+ }
+ return JText::_('COM_COMPONENTBUILDER_NOT_SET');
+ }
+
+ protected $fieldNames = array();
+
+ protected function setFieldsNames($header, $value)
+ {
+ $bucket = array();
+ if (ComponentbuilderHelper::checkArray($value))
+ {
+ foreach ($value as $field)
+ {
+ if (!isset($this->fieldNames[$field]))
+ {
+ if (!$this->fieldNames[$field] = ComponentbuilderHelper::getVar('field', (int) $field, 'id', 'name'))
+ {
+ $this->fieldNames[$field] = JText::_('COM_COMPONENTBUILDER_NO_FIELD_FOUND');
+ }
+ }
+ $bucket[] = $this->fieldNames[$field] . $this->addEditLink($field, 'field', 'fields');
+ }
+ }
+ elseif (is_numeric($value))
+ {
+ if (!isset($this->fieldNames[$value]))
+ {
+ if (!$this->fieldNames[$value] = ComponentbuilderHelper::getVar('field', (int) $value, 'id', 'name'))
+ {
+ $this->fieldNames[$value] = JText::_('COM_COMPONENTBUILDER_NO_FIELD_FOUND');
+ }
+ }
+ $bucket[] = $this->fieldNames[$value] . $this->addEditLink($value, 'field', 'fields');
+ }
+ // return found fields
+ if (ComponentbuilderHelper::checkArray($bucket))
+ {
+ return implode(' ', $bucket);
+ }
+ return JText::_('COM_COMPONENTBUILDER_NO_FIELD_FOUND');
+ }
+
+ protected function addEditLink($id, $view, $views)
+ {
+ // can edit
+ if ($this->canEdit($id))
+ {
+ $edit = "index.php?option=com_componentbuilder&view=".$views."&task=".$view.".edit&id=".$id.$this->ref;
+ return ' ';
+
+ }
+ return '';
+ }
+
+ protected $user;
+
+ protected function canEdit($id, $view = 'admin_fields')
+ {
+ // load field permission check
+ if (!ComponentbuilderHelper::checkObject($this->user)) // TODO && $this->user instanceof JUser)
+ {
+ $this->user = JFactory::getUser();
+ }
+ return $this->user->authorise($view.'.edit', 'com_componentbuilder.'.$view.'.' . (int) $id);
+ }
+
+ protected $tabNames = array();
+
+ protected function setTabName($header, $value)
+ {
+ if (!ComponentbuilderHelper::checkArray($this->tabNames))
+ {
+ // get the view name & id
+ $values = $this->getViewID();
+ if (!is_null($values['a_id']) && $values['a_id'] > 0 && strlen($values['a_view']) && $values['a_view'] === 'admin_view')
+ {
+ if ($tabs = ComponentbuilderHelper::getVar('admin_view', $values['a_id'], 'id', 'addtabs'))
+ {
+ $tabs = json_decode($tabs, true);
+ if (ComponentbuilderHelper::checkArray($tabs))
+ {
+ $nr = 1;
+ foreach ($tabs as $tab)
+ {
+ if (ComponentbuilderHelper::checkArray($tab) && isset($tab['name']))
+ {
+ $this->tabNames[$nr] = $tab['name'];
+ $nr++;
+ }
+ }
+ }
+ }
+ }
+ }
+ // has it been set
+ if (ComponentbuilderHelper::checkArray($this->tabNames) && isset($this->tabNames[$value]))
+ {
+ return $this->tabNames[$value];
+ }
+ return JText::_('COM_COMPONENTBUILDER_DETAILS');
+ }
+
+ protected function setYesNo($header, $value)
+ {
+ if (1 == $value)
+ {
+ return JText::_('COM_COMPONENTBUILDER_YES');
+ }
+ return JText::_('COM_COMPONENTBUILDER_NO');
+ }
+
+ protected function setTargetBehavior($header, $value)
+ {
+ if (1 == $value)
+ {
+ return JText::_('COM_COMPONENTBUILDER_SHOW');
+ }
+ return JText::_('COM_COMPONENTBUILDER_HIDE');
+ }
+
+ protected function setTargetRelation($header, $value)
+ {
+ switch ($value)
+ {
+ case 0:
+ return JText::_('COM_COMPONENTBUILDER_ISOLATE');
+ break;
+ case 1:
+ return JText::_('COM_COMPONENTBUILDER_CHAIN');
+ break;
+ }
+ return JText::_('COM_COMPONENTBUILDER_NOT_SET');
+ }
+
+ protected function setMatchBehavior($header, $value)
+ {
+ switch ($value)
+ {
+ case 1:
+ return JText::_('COM_COMPONENTBUILDER_IS_ONLY_FOUR_LISTRADIOCHECKBOXES');
+ break;
+ case 2:
+ return JText::_('COM_COMPONENTBUILDER_IS_NOT_ONLY_FOUR_LISTRADIOCHECKBOXES');
+ break;
+ case 3:
+ return JText::_('COM_COMPONENTBUILDER_ANY_SELECTION_ONLY_FOUR_LISTRADIOCHECKBOXESDYNAMIC_LIST');
+ break;
+ case 4:
+ return JText::_('COM_COMPONENTBUILDER_ACTIVE_ONLY_FOUR_TEXT_FIELD');
+ break;
+ case 5:
+ return JText::_('COM_COMPONENTBUILDER_UNACTIVE_ONLY_FOUR_TEXT_FIELD');
+ break;
+ case 6:
+ return JText::_('COM_COMPONENTBUILDER_KEY_WORD_ALL_CASESENSITIVE_ONLY_FOUR_TEXT_FIELD');
+ break;
+ case 7:
+ return JText::_('COM_COMPONENTBUILDER_KEY_WORD_ANY_CASESENSITIVE_ONLY_FOUR_TEXT_FIELD');
+ break;
+ case 8:
+ return JText::_('COM_COMPONENTBUILDER_KEY_WORD_ALL_CASEINSENSITIVE_ONLY_FOUR_TEXT_FIELD');
+ break;
+ case 9:
+ return JText::_('COM_COMPONENTBUILDER_KEY_WORD_ANY_CASEINSENSITIVE_ONLY_FOUR_TEXT_FIELD');
+ break;
+ case 10:
+ return JText::_('COM_COMPONENTBUILDER_MIN_LENGTH_ONLY_FOUR_TEXT_FIELD');
+ break;
+ case 11:
+ return JText::_('COM_COMPONENTBUILDER_MAX_LENGTH_ONLY_FOUR_TEXT_FIELD');
+ break;
+ case 12:
+ return JText::_('COM_COMPONENTBUILDER_EXACT_LENGTH_ONLY_FOUR_TEXT_FIELD');
+ break;
+ }
+ return JText::_('COM_COMPONENTBUILDER_NOT_SET');
+ }
+
+ protected function setMatchOptions($header, $value)
+ {
+ return str_replace("\n", " ", $value);
+ }
+
public function getFieldSelectOptions($id)
{
// Get a db connection.
@@ -374,17 +923,18 @@ class ComponentbuilderModelAjax extends JModelList
}
// Used in dynamic_get
- public function getViewTableColumns($id, $as, $type)
+ public function getViewTableColumns($admin_view, $as, $type)
{
// Get a db connection.
$db = JFactory::getDbo();
// Create a new query object.
$query = $db->getQuery(true);
- $query->select($db->quoteName(array('addfields', 'name_single')));
- $query->from($db->quoteName('#__componentbuilder_admin_view'));
- $query->where($db->quoteName('published') . ' = 1');
- $query->where($db->quoteName('id') . ' = '. $id);
+ $query->select($db->quoteName(array('a.addfields', 'b.name_single')));
+ $query->from($db->quoteName('#__componentbuilder_admin_fields', 'a'));
+ $query->join('LEFT', $db->quoteName('#__componentbuilder_admin_view', 'b') . ' ON (' . $db->quoteName('a.admin_view') . ' = ' . $db->quoteName('b.id') . ')');
+ $query->where($db->quoteName('b.published') . ' = 1');
+ $query->where($db->quoteName('a.admin_view') . ' = '. (int) $admin_view);
// Reset the query using our newly populated query object.
$db->setQuery($query);
@@ -403,29 +953,17 @@ class ComponentbuilderModelAjax extends JModelList
{
$fields = array();
// get data
- foreach ($addfields as $option => $values)
+ foreach ($addfields as $nr => $value)
{
- foreach ($values as $nr => $value)
+ $tmp = $this->getFieldData((int) $value['field']);
+ if (ComponentbuilderHelper::checkArray($tmp))
{
- if ($option == 'field')
- {
- $value = $this->getFieldData((int) $value);
- if (ComponentbuilderHelper::checkArray($value))
- {
- $field[$nr] = $value;
- }
- }
- elseif ($option == 'alias')
- {
- if ($value == 1)
- {
- $name[$nr] = 'alias';
- }
- else
- {
- $name[$nr] = '';
- }
- }
+ $field[$nr] = $tmp;
+ }
+ // insure it is set to alias if needed
+ if ($value['alias'] == 1)
+ {
+ $field[$nr]['name'] = 'alias';
}
}
// add the basic defaults
@@ -436,10 +974,6 @@ class ComponentbuilderModelAjax extends JModelList
{
if (ComponentbuilderHelper::checkArray($f))
{
- if (ComponentbuilderHelper::checkString($name[$n]))
- {
- $f['name'] = $name[$n];
- }
$fields[] = $as.".".$f['name']." AS ".$tableName.$f['name'];
}
}
@@ -635,7 +1169,7 @@ class ComponentbuilderModelAjax extends JModelList
unset($result->php_calculation);
}
// name the main var based on view
- if ($view == 'template')
+ if ('template' === $view || 'site_view' === $view)
{
switch ($result->gettype)
{
@@ -745,7 +1279,7 @@ class ComponentbuilderModelAjax extends JModelList
return false;
}
- protected function setListMethodName($names,$table,$as,$type)
+ protected function setListMethodName($names, $table, $as, $type)
{
$methodNames = array();
if (ComponentbuilderHelper::checkArray($names))
@@ -792,21 +1326,10 @@ class ComponentbuilderModelAjax extends JModelList
protected function getViewName($id)
{
- // Get a db connection.
- $db = JFactory::getDbo();
-
- // Create a new query object.
- $query = $db->getQuery(true);
- $query->select($db->quoteName(array('name_single')));
- $query->from($db->quoteName('#__componentbuilder_admin_view'));
- $query->where($db->quoteName('id') . ' = '. (int) $id);
-
- // Reset the query using our newly populated query object.
- $db->setQuery($query);
- $db->execute();
- if ($db->getNumRows())
+ // Get the view name
+ if ($name = ComponentbuilderHelper::getVar('admin_view', (int) $id, 'id', 'name_single'))
{
- return $db->loadResult();
+ return $name;
}
return '';
}
@@ -911,7 +1434,7 @@ class ComponentbuilderModelAjax extends JModelList
$query['a']['select'] = array('id', 'system_name', 'php_preflight_install','php_postflight_install',
'php_preflight_update','php_postflight_update','php_method_uninstall',
'php_helper_admin','php_admin_event','php_helper_both','php_helper_site',
- 'php_site_event','php_dashboard_methods','dashboard_tab');
+ 'php_site_event','php_dashboard_methods','dashboard_tab','javascript');
$query['a']['not_base64'] = array('dashboard_tab' => 'json');
$query['a']['name'] = 'system_name';
@@ -1024,81 +1547,5 @@ class ComponentbuilderModelAjax extends JModelList
return $field;
}
return false;
- }
-
- // Used in language_translation
-
- protected $viewid = array();
-
- protected function getViewID($call = 'table')
- {
- if (!isset($this->viewid[$call]))
- {
- // get the vdm key
- $jinput = JFactory::getApplication()->input;
- $vdm = $jinput->get('vdm', null, 'WORD');
- if ($vdm)
- {
- if ($view = ComponentbuilderHelper::get($vdm))
- {
- $current = (array) explode('__', $view);
- if (ComponentbuilderHelper::checkString($current[0]) && isset($current[1]) && is_numeric($current[1]))
- {
- // get the view name & id
- $this->viewid[$call] = array(
- 'a_id' => (int) $current[1],
- 'a_view' => $current[0]
- );
- }
- }
- }
- }
- if (isset($this->viewid[$call]))
- {
- return $this->viewid[$call];
- }
- return false;
- }
-
- protected $buttonArray = array(
- 'language' => true);
-
- public function getButton($type)
- {
- if (isset($this->buttonArray[$type]))
- {
- $user = JFactory::getUser();
- // only add if user allowed to create
- if ($user->authorise($type.'.create', 'com_componentbuilder'))
- {
- // get the input from url
- $jinput = JFactory::getApplication()->input;
- // get the view name & id
- $values = $this->getViewID();
- // check if new item
- $ref = '';
- if (!is_null($values['a_id']) && $values['a_id'] > 0 && strlen($values['a_view']))
- {
- // only load referal if not new item.
- $ref = '&ref=' . $values['a_view'] . '&refid=' . $values['a_id'];
- }
- // build the button
- $button = '
-
- ' . ucwords($type) . '
-
-
-
';
- // return the button attached to input field
- return $button;
- }
- return '';
- }
- return false;
}
}
diff --git a/admin/models/compiler.php b/admin/models/compiler.php
index 434ac8f16..8210c6aea 100644
--- a/admin/models/compiler.php
+++ b/admin/models/compiler.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version @update number 55 of this MVC
- @build 13th September, 2017
+ @version @update number 57 of this MVC
+ @build 13th October, 2017
@created 1st February, 2017
@package Component Builder
@subpackage compiler.php
diff --git a/admin/models/componentbuilder.php b/admin/models/componentbuilder.php
index a479053d4..d815ef3e4 100644
--- a/admin/models/componentbuilder.php
+++ b/admin/models/componentbuilder.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage componentbuilder.php
@@ -49,11 +49,13 @@ class ComponentbuilderModelComponentbuilder extends JModelList
$viewAccess = array(
'compiler.submenu' => 'compiler.submenu',
'compiler.dashboard_list' => 'compiler.dashboard_list',
+ 'joomla_component.create' => 'joomla_component.create',
'joomla_components.access' => 'joomla_component.access',
'joomla_component.access' => 'joomla_component.access',
'joomla_components.submenu' => 'joomla_component.submenu',
'joomla_components.dashboard_list' => 'joomla_component.dashboard_list',
'joomla_component.dashboard_add' => 'joomla_component.dashboard_add',
+ 'admin_view.create' => 'admin_view.create',
'admin_views.access' => 'admin_view.access',
'admin_view.access' => 'admin_view.access',
'admin_views.submenu' => 'admin_view.submenu',
@@ -126,7 +128,13 @@ class ComponentbuilderModelComponentbuilder extends JModelList
'help_document.access' => 'help_document.access',
'help_documents.submenu' => 'help_document.submenu',
'help_documents.dashboard_list' => 'help_document.dashboard_list',
- 'help_document.dashboard_add' => 'help_document.dashboard_add');
+ 'help_document.dashboard_add' => 'help_document.dashboard_add',
+ 'admin_fields.create' => 'admin_fields.create',
+ 'admins_fields.access' => 'admin_fields.access',
+ 'admin_fields.access' => 'admin_fields.access',
+ 'admin_fields_conditions.create' => 'admin_fields_conditions.create',
+ 'admins_fields_conditions.access' => 'admin_fields_conditions.access',
+ 'admin_fields_conditions.access' => 'admin_fields_conditions.access');
foreach($viewGroups as $group => $views)
{
$i = 0;
diff --git a/admin/models/custom_admin_view.php b/admin/models/custom_admin_view.php
index 83baf65c1..eac01ceb5 100644
--- a/admin/models/custom_admin_view.php
+++ b/admin/models/custom_admin_view.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version @update number 27 of this MVC
- @build 27th September, 2017
+ @version @update number 32 of this MVC
+ @build 20th October, 2017
@created 13th August, 2015
@package Component Builder
@subpackage custom_admin_view.php
@@ -103,6 +103,14 @@ class ComponentbuilderModelCustom_admin_view extends JModelAdmin
$item->custom_get = $custom_get->toArray();
}
+ if (!empty($item->custom_button))
+ {
+ // Convert the custom_button field to an array.
+ $custom_button = new Registry;
+ $custom_button->loadString($item->custom_button);
+ $item->custom_button = $custom_button->toArray();
+ }
+
if (!empty($item->php_controller))
{
// base64 Decode php_controller.
@@ -161,6 +169,27 @@ class ComponentbuilderModelCustom_admin_view extends JModelAdmin
{
// base64 Decode css.
$item->css = base64_decode($item->css);
+ }
+
+ // check what type of custom_button array we have here (should be subform... but just incase)
+ // This could happen due to huge data sets
+ if (isset($item->custom_button) && isset($item->custom_button['name']))
+ {
+ $bucket = array();
+ foreach($item->custom_button as $option => $values)
+ {
+ foreach($values as $nr => $value)
+ {
+ $bucket['custom_button'.$nr][$option] = $value;
+ }
+ }
+ $item->custom_button = $bucket;
+ // update the fields
+ $objectUpdate = new stdClass();
+ $objectUpdate->id = (int) $item->id;
+ $objectUpdate->custom_button = json_encode($bucket);
+ // be sure to update the table if we found repeatable fields that are still not converted
+ $this->_db->updateObject('#__componentbuilder_custom_admin_view', $objectUpdate, 'id');
}
if (!empty($item->id))
@@ -169,7 +198,7 @@ class ComponentbuilderModelCustom_admin_view extends JModelAdmin
$item->tags->getTagIds($item->id, 'com_componentbuilder.custom_admin_view');
}
}
- $this->addcustom_admin_viewsvvwb = $item->id;
+ $this->addcustom_admin_viewsvvwa = $item->id;
return $item;
}
@@ -179,7 +208,7 @@ class ComponentbuilderModelCustom_admin_view extends JModelAdmin
*
* @return mixed An array of data items on success, false on failure.
*/
- public function getVyklinked_components()
+ public function getVyjlinked_components()
{
// Get the user object.
$user = JFactory::getUser();
@@ -219,15 +248,32 @@ class ComponentbuilderModelCustom_admin_view extends JModelAdmin
{
$items = $db->loadObjectList();
- // Filter by addcustom_admin_viewsvvwb in this Repetable Field
- if (ComponentbuilderHelper::checkArray($items) && isset($this->addcustom_admin_viewsvvwb))
+ // set values to display correctly.
+ if (ComponentbuilderHelper::checkArray($items))
+ {
+ // get user object.
+ $user = JFactory::getUser();
+ foreach ($items as $nr => &$item)
+ {
+ $access = ($user->authorise('joomla_component.access', 'com_componentbuilder.joomla_component.' . (int) $item->id) && $user->authorise('joomla_component.access', 'com_componentbuilder'));
+ if (!$access)
+ {
+ unset($items[$nr]);
+ continue;
+ }
+
+ }
+ }
+
+ // Filter by addcustom_admin_viewsvvwa in this Repetable Field
+ if (ComponentbuilderHelper::checkArray($items) && isset($this->addcustom_admin_viewsvvwa))
{
foreach ($items as $nr => &$item)
{
if (isset($item->addcustom_admin_views) && ComponentbuilderHelper::checkJson($item->addcustom_admin_views))
{
$tmpArray = json_decode($item->addcustom_admin_views,true);
- if (!isset($tmpArray['customadminview']) || !ComponentbuilderHelper::checkArray($tmpArray['customadminview']) || !in_array($this->addcustom_admin_viewsvvwb, $tmpArray['customadminview']))
+ if (!isset($tmpArray['customadminview']) || !ComponentbuilderHelper::checkArray($tmpArray['customadminview']) || !in_array($this->addcustom_admin_viewsvvwa, $tmpArray['customadminview']))
{
unset($items[$nr]);
continue;
@@ -975,6 +1021,19 @@ class ComponentbuilderModelCustom_admin_view extends JModelAdmin
$data['custom_get'] = '';
}
+ // Set the custom_button items to data.
+ if (isset($data['custom_button']) && is_array($data['custom_button']))
+ {
+ $custom_button = new JRegistry;
+ $custom_button->loadArray($data['custom_button']);
+ $data['custom_button'] = (string) $custom_button;
+ }
+ elseif (!isset($data['custom_button']))
+ {
+ // Set the empty custom_button to data
+ $data['custom_button'] = '';
+ }
+
// Set the php_controller string to base64 string.
if (isset($data['php_controller']))
{
diff --git a/admin/models/custom_admin_views.php b/admin/models/custom_admin_views.php
index cd0c73eb1..0287d9644 100644
--- a/admin/models/custom_admin_views.php
+++ b/admin/models/custom_admin_views.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version @update number 27 of this MVC
- @build 27th September, 2017
+ @version @update number 32 of this MVC
+ @build 20th October, 2017
@created 13th August, 2015
@package Component Builder
@subpackage custom_admin_views.php
diff --git a/admin/models/custom_code.php b/admin/models/custom_code.php
index 854277316..ff8535e42 100644
--- a/admin/models/custom_code.php
+++ b/admin/models/custom_code.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version @update number 82 of this MVC
- @build 4th October, 2017
+ @version @update number 84 of this MVC
+ @build 13th October, 2017
@created 11th October, 2016
@package Component Builder
@subpackage custom_code.php
diff --git a/admin/models/custom_codes.php b/admin/models/custom_codes.php
index a2bb144a4..34fe22303 100644
--- a/admin/models/custom_codes.php
+++ b/admin/models/custom_codes.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version @update number 82 of this MVC
- @build 4th October, 2017
+ @version @update number 84 of this MVC
+ @build 13th October, 2017
@created 11th October, 2016
@package Component Builder
@subpackage custom_codes.php
diff --git a/admin/models/dynamic_get.php b/admin/models/dynamic_get.php
index 548deab14..0c561c3a0 100644
--- a/admin/models/dynamic_get.php
+++ b/admin/models/dynamic_get.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version @update number 94 of this MVC
- @build 27th September, 2017
+ @version @update number 98 of this MVC
+ @build 20th October, 2017
@created 21st May, 2015
@package Component Builder
@subpackage dynamic_get.php
diff --git a/admin/models/dynamic_gets.php b/admin/models/dynamic_gets.php
index 86c3fbdc7..5ecc96b95 100644
--- a/admin/models/dynamic_gets.php
+++ b/admin/models/dynamic_gets.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version @update number 94 of this MVC
- @build 27th September, 2017
+ @version @update number 98 of this MVC
+ @build 20th October, 2017
@created 21st May, 2015
@package Component Builder
@subpackage dynamic_gets.php
diff --git a/admin/models/field.php b/admin/models/field.php
index b9ae4aaa2..9a63f570c 100644
--- a/admin/models/field.php
+++ b/admin/models/field.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version @update number 38 of this MVC
- @build 28th May, 2017
+ @version @update number 40 of this MVC
+ @build 18th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage field.php
@@ -130,102 +130,9 @@ class ComponentbuilderModelField extends JModelAdmin
$item->tags = new JHelperTags;
$item->tags->getTagIds($item->id, 'com_componentbuilder.field');
}
- }
- $this->addfieldsvvwd = $item->id;
+ }
return $item;
- }
-
- /**
- * Method to get list data.
- *
- * @return mixed An array of data items on success, false on failure.
- */
- public function getWaclinked_admin_views()
- {
- // Get the user object.
- $user = JFactory::getUser();
- // Create a new query object.
- $db = JFactory::getDBO();
- $query = $db->getQuery(true);
-
- // Select some fields
- $query->select('a.*');
-
- // From the componentbuilder_admin_view table
- $query->from($db->quoteName('#__componentbuilder_admin_view', 'a'));
-
- // Join over the asset groups.
- $query->select('ag.title AS access_level');
- $query->join('LEFT', '#__viewlevels AS ag ON ag.id = a.access');
- // Filter by access level.
- if ($access = $this->getState('filter.access'))
- {
- $query->where('a.access = ' . (int) $access);
- }
- // Implement View Level Access
- if (!$user->authorise('core.options', 'com_componentbuilder'))
- {
- $groups = implode(',', $user->getAuthorisedViewLevels());
- $query->where('a.access IN (' . $groups . ')');
- }
-
- // Order the results by ordering
- $query->order('a.published ASC');
- $query->order('a.ordering ASC');
-
- // Load the items
- $db->setQuery($query);
- $db->execute();
- if ($db->getNumRows())
- {
- $items = $db->loadObjectList();
-
- // set values to display correctly.
- if (ComponentbuilderHelper::checkArray($items))
- {
- // get user object.
- $user = JFactory::getUser();
- foreach ($items as $nr => &$item)
- {
- $access = ($user->authorise('admin_view.access', 'com_componentbuilder.admin_view.' . (int) $item->id) && $user->authorise('admin_view.access', 'com_componentbuilder'));
- if (!$access)
- {
- unset($items[$nr]);
- continue;
- }
-
- }
- }
-
- // Filter by addfieldsvvwd in this Repetable Field
- if (ComponentbuilderHelper::checkArray($items) && isset($this->addfieldsvvwd))
- {
- foreach ($items as $nr => &$item)
- {
- if (isset($item->addfields) && ComponentbuilderHelper::checkJson($item->addfields))
- {
- $tmpArray = json_decode($item->addfields,true);
- if (!isset($tmpArray['field']) || !ComponentbuilderHelper::checkArray($tmpArray['field']) || !in_array($this->addfieldsvvwd, $tmpArray['field']))
- {
- unset($items[$nr]);
- continue;
- }
- }
- else
- {
- unset($items[$nr]);
- continue;
- }
- }
- }
- else
- {
- return false;
- }
- return $items;
- }
- return false;
}
/**
diff --git a/admin/models/fields.php b/admin/models/fields.php
index fd02aa0b8..cc5717896 100644
--- a/admin/models/fields.php
+++ b/admin/models/fields.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version @update number 38 of this MVC
- @build 28th May, 2017
+ @version @update number 40 of this MVC
+ @build 18th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage fields.php
diff --git a/admin/models/fields/adminviewfolderlist.php b/admin/models/fields/adminviewfolderlist.php
index d7a0b7779..948ab3331 100644
--- a/admin/models/fields/adminviewfolderlist.php
+++ b/admin/models/fields/adminviewfolderlist.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage adminviewfolderlist.php
diff --git a/admin/models/fields/adminviews.php b/admin/models/fields/adminviews.php
index 9ef2e0894..720337861 100644
--- a/admin/models/fields/adminviews.php
+++ b/admin/models/fields/adminviews.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage adminviews.php
@@ -79,7 +79,7 @@ class JFormFieldAdminviews extends JFormFieldList
}
$user = JFactory::getUser();
// only add if user allowed to create admin_view
- if ($user->authorise('core.create', 'com_componentbuilder') && $app->isAdmin()) // TODO for now only in admin area.
+ if ($user->authorise('admin_view.create', 'com_componentbuilder') && $app->isAdmin()) // TODO for now only in admin area.
{
// build Create button
$buttonNamee = trim($buttonName);
@@ -92,7 +92,7 @@ class JFormFieldAdminviews extends JFormFieldList
';
}
// only add if user allowed to edit admin_view
- if (($buttonName === 'admin_view' || $buttonName === 'admin_views') && $user->authorise('core.edit', 'com_componentbuilder') && $app->isAdmin()) // TODO for now only in admin area.
+ if (($buttonName === 'admin_view' || $buttonName === 'admin_views') && $user->authorise('admin_view.edit', 'com_componentbuilder') && $app->isAdmin()) // TODO for now only in admin area.
{
// build edit button
$buttonNamee = trim($buttonName);
diff --git a/admin/models/fields/articles.php b/admin/models/fields/articles.php
index 8c237a1f6..49c387925 100644
--- a/admin/models/fields/articles.php
+++ b/admin/models/fields/articles.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage articles.php
diff --git a/admin/models/fields/component.php b/admin/models/fields/component.php
index ae516c9c3..907468023 100644
--- a/admin/models/fields/component.php
+++ b/admin/models/fields/component.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage component.php
@@ -79,7 +79,7 @@ class JFormFieldComponent extends JFormFieldList
}
$user = JFactory::getUser();
// only add if user allowed to create joomla_component
- if ($user->authorise('core.create', 'com_componentbuilder') && $app->isAdmin()) // TODO for now only in admin area.
+ if ($user->authorise('joomla_component.create', 'com_componentbuilder') && $app->isAdmin()) // TODO for now only in admin area.
{
// build Create button
$buttonNamee = trim($buttonName);
@@ -92,7 +92,7 @@ class JFormFieldComponent extends JFormFieldList
';
}
// only add if user allowed to edit joomla_component
- if (($buttonName === 'joomla_component' || $buttonName === 'joomla_components') && $user->authorise('core.edit', 'com_componentbuilder') && $app->isAdmin()) // TODO for now only in admin area.
+ if (($buttonName === 'joomla_component' || $buttonName === 'joomla_components') && $user->authorise('joomla_component.edit', 'com_componentbuilder') && $app->isAdmin()) // TODO for now only in admin area.
{
// build edit button
$buttonNamee = trim($buttonName);
diff --git a/admin/models/fields/components.php b/admin/models/fields/components.php
index 7e1ad247e..0e8712c79 100644
--- a/admin/models/fields/components.php
+++ b/admin/models/fields/components.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage components.php
@@ -79,7 +79,7 @@ class JFormFieldComponents extends JFormFieldList
}
$user = JFactory::getUser();
// only add if user allowed to create joomla_component
- if ($user->authorise('core.create', 'com_componentbuilder') && $app->isAdmin()) // TODO for now only in admin area.
+ if ($user->authorise('joomla_component.create', 'com_componentbuilder') && $app->isAdmin()) // TODO for now only in admin area.
{
// build Create button
$buttonNamee = trim($buttonName);
@@ -92,7 +92,7 @@ class JFormFieldComponents extends JFormFieldList
';
}
// only add if user allowed to edit joomla_component
- if (($buttonName === 'joomla_component' || $buttonName === 'joomla_components') && $user->authorise('core.edit', 'com_componentbuilder') && $app->isAdmin()) // TODO for now only in admin area.
+ if (($buttonName === 'joomla_component' || $buttonName === 'joomla_components') && $user->authorise('joomla_component.edit', 'com_componentbuilder') && $app->isAdmin()) // TODO for now only in admin area.
{
// build edit button
$buttonNamee = trim($buttonName);
diff --git a/admin/models/fields/customadminviews.php b/admin/models/fields/customadminviews.php
index f269d5bfe..ef032fc95 100644
--- a/admin/models/fields/customadminviews.php
+++ b/admin/models/fields/customadminviews.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage customadminviews.php
diff --git a/admin/models/fields/customfilelist.php b/admin/models/fields/customfilelist.php
index 25a4fab00..bebe5e3f3 100644
--- a/admin/models/fields/customfilelist.php
+++ b/admin/models/fields/customfilelist.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage customfilelist.php
diff --git a/admin/models/fields/customfolderlist.php b/admin/models/fields/customfolderlist.php
index 0e3685ed4..0e2cce6b8 100644
--- a/admin/models/fields/customfolderlist.php
+++ b/admin/models/fields/customfolderlist.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage customfolderlist.php
diff --git a/admin/models/fields/customgets.php b/admin/models/fields/customgets.php
index d9d89c0ed..452988d33 100644
--- a/admin/models/fields/customgets.php
+++ b/admin/models/fields/customgets.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage customgets.php
diff --git a/admin/models/fields/dbtables.php b/admin/models/fields/dbtables.php
index 3ad08c46d..86b027ccc 100644
--- a/admin/models/fields/dbtables.php
+++ b/admin/models/fields/dbtables.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage dbtables.php
diff --git a/admin/models/fields/dynamicget.php b/admin/models/fields/dynamicget.php
index f3de392d3..90f70d3f3 100644
--- a/admin/models/fields/dynamicget.php
+++ b/admin/models/fields/dynamicget.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage dynamicget.php
diff --git a/admin/models/fields/dynamicgets.php b/admin/models/fields/dynamicgets.php
index a3fbbef60..fa24590dc 100644
--- a/admin/models/fields/dynamicgets.php
+++ b/admin/models/fields/dynamicgets.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage dynamicgets.php
diff --git a/admin/models/fields/fields.php b/admin/models/fields/fields.php
index 5d00a70e0..f37c14ab7 100644
--- a/admin/models/fields/fields.php
+++ b/admin/models/fields/fields.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage fields.php
diff --git a/admin/models/fields/fieldtypes.php b/admin/models/fields/fieldtypes.php
index cd3b2629c..98c2e8746 100644
--- a/admin/models/fields/fieldtypes.php
+++ b/admin/models/fields/fieldtypes.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage fieldtypes.php
diff --git a/admin/models/fields/ftps.php b/admin/models/fields/ftps.php
index 2e2a83614..045b42153 100644
--- a/admin/models/fields/ftps.php
+++ b/admin/models/fields/ftps.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage ftps.php
diff --git a/admin/models/fields/lang.php b/admin/models/fields/lang.php
index 6095d037d..d025e410c 100644
--- a/admin/models/fields/lang.php
+++ b/admin/models/fields/lang.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage lang.php
diff --git a/admin/models/fields/maingets.php b/admin/models/fields/maingets.php
index 18bc93dc4..a3bdccab3 100644
--- a/admin/models/fields/maingets.php
+++ b/admin/models/fields/maingets.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage maingets.php
diff --git a/admin/models/fields/fieldsmulti.php b/admin/models/fields/matchfield.php
similarity index 78%
rename from admin/models/fields/fieldsmulti.php
rename to admin/models/fields/matchfield.php
index 436810fc9..4b143d0a2 100644
--- a/admin/models/fields/fieldsmulti.php
+++ b/admin/models/fields/matchfield.php
@@ -10,11 +10,11 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
- @subpackage fieldsmulti.php
+ @subpackage matchfield.php
@author Llewellyn van der Merwe
@copyright Copyright (C) 2015. All Rights Reserved
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
@@ -31,16 +31,16 @@ jimport('joomla.form.helper');
JFormHelper::loadFieldClass('list');
/**
- * Fieldsmulti Form Field class for the Componentbuilder component
+ * Matchfield Form Field class for the Componentbuilder component
*/
-class JFormFieldFieldsmulti extends JFormFieldList
+class JFormFieldMatchfield extends JFormFieldList
{
/**
- * The fieldsmulti field type.
+ * The matchfield field type.
*
* @var string
*/
- public $type = 'fieldsmulti';
+ public $type = 'matchfield';
/**
* Override to add new button
*
@@ -149,23 +149,68 @@ class JFormFieldFieldsmulti extends JFormFieldList
*/
public function getOptions()
{
- $db = JFactory::getDBO();
- $query = $db->getQuery(true);
- $query->select($db->quoteName(array('a.id','a.name'),array('id','target_field_name')));
- $query->from($db->quoteName('#__componentbuilder_field', 'a'));
- $query->where($db->quoteName('a.published') . ' = 1');
- $query->order('a.name ASC');
- $db->setQuery((string)$query);
- $items = $db->loadObjectList();
- $options = array();
- if ($items)
- {
- $options[] = JHtml::_('select.option', '', 'Select an option');
- foreach($items as $item)
- {
- $options[] = JHtml::_('select.option', $item->id, $item->target_field_name);
- }
- }
+ // load the db opbject
+ $db = JFactory::getDBO();
+ // get the input from url
+ $jinput = JFactory::getApplication()->input;
+ // get the id
+ $ID = $jinput->getInt('id', 0);
+ // rest the fields ids
+ $fieldIds = array();
+ if (is_numeric($ID) && $ID >= 1)
+ {
+ // get the admin view ID
+ $adminView = ComponentbuilderHelper::getVar('admin_fields_conditions', (int) $ID, 'id', 'admin_view');
+ }
+ else
+ {
+ // get the admin view ID
+ $adminView = $jinput->getInt('refid', 0);
+ }
+ 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)
+ {
+ if (isset($addField['field']))
+ {
+ $fieldIds[] = (int) $addField['field'];
+ }
+ }
+ }
+ }
+ }
+ }
+ $query = $db->getQuery(true);
+ $query->select($db->quoteName(array('a.id','a.name'),array('id','name')));
+ $query->from($db->quoteName('#__componentbuilder_field', 'a'));
+ $query->where($db->quoteName('a.published') . ' >= 1');
+ // filter by fields linked
+ if (ComponentbuilderHelper::checkArray($fieldIds))
+ {
+ // 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', '', 'Select an option');
+ foreach($items as $item)
+ {
+ $options[] = JHtml::_('select.option', $item->id, $item->name);
+ }
+ }
+
return $options;
}
}
diff --git a/admin/models/fields/siteviewfolderlist.php b/admin/models/fields/siteviewfolderlist.php
index b043e9dd4..b86f93a79 100644
--- a/admin/models/fields/siteviewfolderlist.php
+++ b/admin/models/fields/siteviewfolderlist.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage siteviewfolderlist.php
diff --git a/admin/models/fields/siteviews.php b/admin/models/fields/siteviews.php
index b72f11fd6..4c128b10c 100644
--- a/admin/models/fields/siteviews.php
+++ b/admin/models/fields/siteviews.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage siteviews.php
diff --git a/admin/models/fields/snippets.php b/admin/models/fields/snippets.php
index 119083765..9975c16af 100644
--- a/admin/models/fields/snippets.php
+++ b/admin/models/fields/snippets.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage snippets.php
diff --git a/admin/models/fields/targetfields.php b/admin/models/fields/targetfields.php
new file mode 100644
index 000000000..20f358dd6
--- /dev/null
+++ b/admin/models/fields/targetfields.php
@@ -0,0 +1,215 @@
+
+ @copyright Copyright (C) 2015. All Rights Reserved
+ @license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
+
+ Builds Complex Joomla Components
+
+/-----------------------------------------------------------------------------------------------------------------------------*/
+
+// No direct access to this file
+defined('_JEXEC') or die('Restricted access');
+
+// import the list field type
+jimport('joomla.form.helper');
+JFormHelper::loadFieldClass('list');
+
+/**
+ * Targetfields Form Field class for the Componentbuilder component
+ */
+class JFormFieldTargetfields extends JFormFieldList
+{
+ /**
+ * The targetfields field type.
+ *
+ * @var string
+ */
+ public $type = 'targetfields';
+ /**
+ * Override to add new button
+ *
+ * @return string The field input markup.
+ *
+ * @since 3.2
+ */
+ protected function getInput()
+ {
+ // see if we should add buttons
+ $setButton = $this->getAttribute('button');
+ // get html
+ $html = parent::getInput();
+ // if true set button
+ if ($setButton === 'true')
+ {
+ $button = array();
+ $script = array();
+ $buttonName = $this->getAttribute('name');
+ // get the input from url
+ $app = JFactory::getApplication();
+ $jinput = $app->input;
+ // get the view name & id
+ $values = $jinput->getArray(array(
+ 'id' => 'int',
+ 'view' => 'word'
+ ));
+ // check if new item
+ $ref = '';
+ $refJ = '';
+ if (!is_null($values['id']) && strlen($values['view']))
+ {
+ // only load referal if not new item.
+ $ref = '&ref=' . $values['view'] . '&refid=' . $values['id'];
+ $refJ = '&ref=' . $values['view'] . '&refid=' . $values['id'];
+ }
+ $user = JFactory::getUser();
+ // only add if user allowed to create field
+ if ($user->authorise('field.create', 'com_componentbuilder') && $app->isAdmin()) // TODO for now only in admin area.
+ {
+ // build Create button
+ $buttonNamee = trim($buttonName);
+ $buttonNamee = preg_replace('/_+/', ' ', $buttonNamee);
+ $buttonNamee = preg_replace('/\s+/', ' ', $buttonNamee);
+ $buttonNamee = preg_replace("/[^A-Za-z ]/", '', $buttonNamee);
+ $buttonNamee = ucfirst(strtolower($buttonNamee));
+ $button[] = '
+ ';
+ }
+ // only add if user allowed to edit field
+ if (($buttonName === 'field' || $buttonName === 'fields') && $user->authorise('field.edit', 'com_componentbuilder') && $app->isAdmin()) // TODO for now only in admin area.
+ {
+ // build edit button
+ $buttonNamee = trim($buttonName);
+ $buttonNamee = preg_replace('/_+/', ' ', $buttonNamee);
+ $buttonNamee = preg_replace('/\s+/', ' ', $buttonNamee);
+ $buttonNamee = preg_replace("/[^A-Za-z ]/", '', $buttonNamee);
+ $buttonNamee = ucfirst(strtolower($buttonNamee));
+ $button[] = '
+ ';
+ // build script
+ $script[] = "
+ jQuery(document).ready(function() {
+ jQuery('#adminForm').on('change', '#jform_".$buttonName."',function (e) {
+ e.preventDefault();
+ var ".$buttonName."Value = jQuery('#jform_".$buttonName."').val();
+ ".$buttonName."Button(".$buttonName."Value);
+ });
+ var ".$buttonName."Value = jQuery('#jform_".$buttonName."').val();
+ ".$buttonName."Button(".$buttonName."Value);
+ });
+ function ".$buttonName."Button(value) {
+ if (value > 0) {
+ // hide the create button
+ jQuery('#".$buttonName."Create').hide();
+ // show edit button
+ jQuery('#".$buttonName."Edit').show();
+ var url = 'index.php?option=com_componentbuilder&view=fields&task=field.edit&id='+value+'".$refJ."';
+ jQuery('#".$buttonName."Edit').attr('href', url);
+ } else {
+ // show the create button
+ jQuery('#".$buttonName."Create').show();
+ // hide edit button
+ jQuery('#".$buttonName."Edit').hide();
+ }
+ }";
+ }
+ // check if button was created for field field.
+ if (is_array($button) && count($button) > 0)
+ {
+ // Load the needed script.
+ $document = JFactory::getDocument();
+ $document->addScriptDeclaration(implode(' ',$script));
+ // return the button attached to input field.
+ return '' .$html . implode('',$button).'
';
+ }
+ }
+ return $html;
+ }
+
+ /**
+ * Method to get a list of options for a list input.
+ *
+ * @return array An array of JHtml options.
+ */
+ public function getOptions()
+ {
+ // load the db opbject
+ $db = JFactory::getDBO();
+ // get the input from url
+ $jinput = JFactory::getApplication()->input;
+ // get the id
+ $ID = $jinput->getInt('id', 0);
+ // rest the fields ids
+ $fieldIds = array();
+ if (is_numeric($ID) && $ID >= 1)
+ {
+ // get the admin view ID
+ $adminView = ComponentbuilderHelper::getVar('admin_fields_conditions', (int) $ID, 'id', 'admin_view');
+ }
+ else
+ {
+ // get the admin view ID
+ $adminView = $jinput->getInt('refid', 0);
+ }
+ 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)
+ {
+ if (isset($addField['field']))
+ {
+ $fieldIds[] = (int) $addField['field'];
+ }
+ }
+ }
+ }
+ }
+ }
+ $query = $db->getQuery(true);
+ $query->select($db->quoteName(array('a.id','a.name'),array('id','name')));
+ $query->from($db->quoteName('#__componentbuilder_field', 'a'));
+ $query->where($db->quoteName('a.published') . ' >= 1');
+ // filter by fields linked
+ if (ComponentbuilderHelper::checkArray($fieldIds))
+ {
+ // 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)
+ {
+ foreach($items as $item)
+ {
+ $options[] = JHtml::_('select.option', $item->id, $item->name);
+ }
+ }
+
+ return $options;
+ }
+}
diff --git a/admin/models/fields/viewtabs.php b/admin/models/fields/viewtabs.php
new file mode 100644
index 000000000..ec6b94c81
--- /dev/null
+++ b/admin/models/fields/viewtabs.php
@@ -0,0 +1,183 @@
+
+ @copyright Copyright (C) 2015. All Rights Reserved
+ @license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
+
+ Builds Complex Joomla Components
+
+/-----------------------------------------------------------------------------------------------------------------------------*/
+
+// No direct access to this file
+defined('_JEXEC') or die('Restricted access');
+
+// import the list field type
+jimport('joomla.form.helper');
+JFormHelper::loadFieldClass('list');
+
+/**
+ * Viewtabs Form Field class for the Componentbuilder component
+ */
+class JFormFieldViewtabs extends JFormFieldList
+{
+ /**
+ * The viewtabs field type.
+ *
+ * @var string
+ */
+ public $type = 'viewtabs';
+ /**
+ * Override to add new button
+ *
+ * @return string The field input markup.
+ *
+ * @since 3.2
+ */
+ protected function getInput()
+ {
+ // see if we should add buttons
+ $setButton = $this->getAttribute('button');
+ // get html
+ $html = parent::getInput();
+ // if true set button
+ if ($setButton === 'true')
+ {
+ $button = array();
+ $script = array();
+ $buttonName = $this->getAttribute('name');
+ // get the input from url
+ $app = JFactory::getApplication();
+ $jinput = $app->input;
+ // get the view name & id
+ $values = $jinput->getArray(array(
+ 'id' => 'int',
+ 'view' => 'word'
+ ));
+ // check if new item
+ $ref = '';
+ $refJ = '';
+ if (!is_null($values['id']) && strlen($values['view']))
+ {
+ // only load referal if not new item.
+ $ref = '&ref=' . $values['view'] . '&refid=' . $values['id'];
+ $refJ = '&ref=' . $values['view'] . '&refid=' . $values['id'];
+ }
+ $user = JFactory::getUser();
+ // only add if user allowed to create admin_view
+ if ($user->authorise('admin_view.create', 'com_componentbuilder') && $app->isAdmin()) // TODO for now only in admin area.
+ {
+ // build Create button
+ $buttonNamee = trim($buttonName);
+ $buttonNamee = preg_replace('/_+/', ' ', $buttonNamee);
+ $buttonNamee = preg_replace('/\s+/', ' ', $buttonNamee);
+ $buttonNamee = preg_replace("/[^A-Za-z ]/", '', $buttonNamee);
+ $buttonNamee = ucfirst(strtolower($buttonNamee));
+ $button[] = '
+ ';
+ }
+ // only add if user allowed to edit admin_view
+ if (($buttonName === 'admin_view' || $buttonName === 'admin_views') && $user->authorise('admin_view.edit', 'com_componentbuilder') && $app->isAdmin()) // TODO for now only in admin area.
+ {
+ // build edit button
+ $buttonNamee = trim($buttonName);
+ $buttonNamee = preg_replace('/_+/', ' ', $buttonNamee);
+ $buttonNamee = preg_replace('/\s+/', ' ', $buttonNamee);
+ $buttonNamee = preg_replace("/[^A-Za-z ]/", '', $buttonNamee);
+ $buttonNamee = ucfirst(strtolower($buttonNamee));
+ $button[] = '
+ ';
+ // build script
+ $script[] = "
+ jQuery(document).ready(function() {
+ jQuery('#adminForm').on('change', '#jform_".$buttonName."',function (e) {
+ e.preventDefault();
+ var ".$buttonName."Value = jQuery('#jform_".$buttonName."').val();
+ ".$buttonName."Button(".$buttonName."Value);
+ });
+ var ".$buttonName."Value = jQuery('#jform_".$buttonName."').val();
+ ".$buttonName."Button(".$buttonName."Value);
+ });
+ function ".$buttonName."Button(value) {
+ if (value > 0) {
+ // hide the create button
+ jQuery('#".$buttonName."Create').hide();
+ // show edit button
+ jQuery('#".$buttonName."Edit').show();
+ var url = 'index.php?option=com_componentbuilder&view=admin_views&task=admin_view.edit&id='+value+'".$refJ."';
+ jQuery('#".$buttonName."Edit').attr('href', url);
+ } else {
+ // show the create button
+ jQuery('#".$buttonName."Create').show();
+ // hide edit button
+ jQuery('#".$buttonName."Edit').hide();
+ }
+ }";
+ }
+ // check if button was created for admin_view field.
+ if (is_array($button) && count($button) > 0)
+ {
+ // Load the needed script.
+ $document = JFactory::getDocument();
+ $document->addScriptDeclaration(implode(' ',$script));
+ // return the button attached to input field.
+ return '' .$html . implode('',$button).'
';
+ }
+ }
+ return $html;
+ }
+
+ /**
+ * Method to get a list of options for a list input.
+ *
+ * @return array An array of JHtml options.
+ */
+ public function getOptions()
+ {
+ // get the input from url
+ $jinput = JFactory::getApplication()->input;
+ // get the view name & id
+ $fieldsID = $jinput->getInt('id', 0);
+ $db = JFactory::getDBO();
+ $query = $db->getQuery(true);
+ $query->select($db->quoteName(array('a.id','a.addtabs'),array('id','addtabs')));
+ $query->from($db->quoteName('#__componentbuilder_admin_view', 'a'));
+ $query->join('LEFT', $db->quoteName('#__componentbuilder_admin_fields', 'b') . ' ON (' . $db->quoteName('a.id') . ' = ' . $db->quoteName('b.admin_view') . ')');
+ $query->where($db->quoteName('a.published') . ' >= 1');
+ $query->where($db->quoteName('b.id') . ' = ' . (int) $fieldsID);
+ $query->order('a.addtabs ASC');
+ $db->setQuery((string)$query);
+ $item = $db->loadObject();
+ $options = array();
+ if (isset($item->addtabs) && strlen($item->addtabs) > 5)
+ {
+ $items = json_decode($item->addtabs, true);
+ $nr = 1;
+ foreach($items as $itemName)
+ {
+ $options[] = JHtml::_('select.option', $nr, $itemName['name']);
+ $nr++;
+ }
+ }
+ else
+ {
+ $options[] = JHtml::_('select.option', 1, JText::_('COM_COMPONENTBUILDER_DETAILS'));
+ }
+ return $options;
+ }
+}
diff --git a/admin/models/fieldtype.php b/admin/models/fieldtype.php
index ebcb29d20..83026ce2d 100644
--- a/admin/models/fieldtype.php
+++ b/admin/models/fieldtype.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version @update number 15 of this MVC
- @build 17th September, 2017
+ @version @update number 16 of this MVC
+ @build 13th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage fieldtype.php
@@ -101,6 +101,26 @@ class ComponentbuilderModelFieldtype extends JModelAdmin
$properties = new Registry;
$properties->loadString($item->properties);
$item->properties = $properties->toArray();
+ }
+
+ // check what type of properties array we have here (should be subform... but just incase)
+ // This could happen due to huge data sets
+ if (isset($item->properties) && isset($item->properties['name']))
+ {
+ $bucket = array();
+ foreach($item->properties as $option => $values)
+ {
+ foreach($values as $nr => $value)
+ {
+ $bucket['addfields'.$nr][$option] = $value;
+ }
+ }
+ $item->properties = $bucket;
+ // be sure to update the value in the db
+ $objectUpdate = new stdClass();
+ $objectUpdate->id = (int) $item->id;
+ $objectUpdate->properties = json_encode($bucket);
+ $this->db->updateObject('#__componentbuilder_fieldtype', $objectUpdate, 'id');
}
if (!empty($item->id))
@@ -109,7 +129,7 @@ class ComponentbuilderModelFieldtype extends JModelAdmin
$item->tags->getTagIds($item->id, 'com_componentbuilder.fieldtype');
}
}
- $this->fieldtypevvwe = $item->id;
+ $this->fieldtypevvwc = $item->id;
return $item;
}
@@ -119,7 +139,7 @@ class ComponentbuilderModelFieldtype extends JModelAdmin
*
* @return mixed An array of data items on success, false on failure.
*/
- public function getWadfields()
+ public function getWabfields()
{
// Get the user object.
$user = JFactory::getUser();
@@ -139,15 +159,15 @@ class ComponentbuilderModelFieldtype extends JModelAdmin
$query->select($db->quoteName('g.name','fieldtype_name'));
$query->join('LEFT', $db->quoteName('#__componentbuilder_fieldtype', 'g') . ' ON (' . $db->quoteName('a.fieldtype') . ' = ' . $db->quoteName('g.id') . ')');
- // Filter by fieldtypevvwe global.
- $fieldtypevvwe = $this->fieldtypevvwe;
- if (is_numeric($fieldtypevvwe ))
+ // Filter by fieldtypevvwc global.
+ $fieldtypevvwc = $this->fieldtypevvwc;
+ if (is_numeric($fieldtypevvwc ))
{
- $query->where('a.fieldtype = ' . (int) $fieldtypevvwe );
+ $query->where('a.fieldtype = ' . (int) $fieldtypevvwc );
}
- elseif (is_string($fieldtypevvwe))
+ elseif (is_string($fieldtypevvwc))
{
- $query->where('a.fieldtype = ' . $db->quote($fieldtypevvwe));
+ $query->where('a.fieldtype = ' . $db->quote($fieldtypevvwc));
}
else
{
@@ -203,13 +223,13 @@ class ComponentbuilderModelFieldtype extends JModelAdmin
foreach ($items as $nr => &$item)
{
// convert datatype
- $item->datatype = $this->selectionTranslationWadfields($item->datatype, 'datatype');
+ $item->datatype = $this->selectionTranslationWabfields($item->datatype, 'datatype');
// convert indexes
- $item->indexes = $this->selectionTranslationWadfields($item->indexes, 'indexes');
+ $item->indexes = $this->selectionTranslationWabfields($item->indexes, 'indexes');
// convert null_switch
- $item->null_switch = $this->selectionTranslationWadfields($item->null_switch, 'null_switch');
+ $item->null_switch = $this->selectionTranslationWabfields($item->null_switch, 'null_switch');
// convert store
- $item->store = $this->selectionTranslationWadfields($item->store, 'store');
+ $item->store = $this->selectionTranslationWabfields($item->store, 'store');
}
}
@@ -223,7 +243,7 @@ class ComponentbuilderModelFieldtype extends JModelAdmin
*
* @return translatable string
*/
- public function selectionTranslationWadfields($value,$name)
+ public function selectionTranslationWabfields($value,$name)
{
// Array of datatype language strings
if ($name === 'datatype')
diff --git a/admin/models/fieldtypes.php b/admin/models/fieldtypes.php
index e0bd6aa57..96f3186ed 100644
--- a/admin/models/fieldtypes.php
+++ b/admin/models/fieldtypes.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version @update number 15 of this MVC
- @build 17th September, 2017
+ @version @update number 16 of this MVC
+ @build 13th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage fieldtypes.php
diff --git a/admin/models/forms/admin_fields.js b/admin/models/forms/admin_fields.js
new file mode 100644
index 000000000..f132f8860
--- /dev/null
+++ b/admin/models/forms/admin_fields.js
@@ -0,0 +1,25 @@
+/*--------------------------------------------------------------------------------------------------------| www.vdm.io |------/
+ __ __ _ _____ _ _ __ __ _ _ _
+ \ \ / / | | | __ \ | | | | | \/ | | | | | | |
+ \ \ / /_ _ ___| |_ | | | | _____ _____| | ___ _ __ _ __ ___ ___ _ __ | |_ | \ / | ___| |_| |__ ___ __| |
+ \ \/ / _` / __| __| | | | |/ _ \ \ / / _ \ |/ _ \| '_ \| '_ ` _ \ / _ \ '_ \| __| | |\/| |/ _ \ __| '_ \ / _ \ / _` |
+ \ / (_| \__ \ |_ | |__| | __/\ V / __/ | (_) | |_) | | | | | | __/ | | | |_ | | | | __/ |_| | | | (_) | (_| |
+ \/ \__,_|___/\__| |_____/ \___| \_/ \___|_|\___/| .__/|_| |_| |_|\___|_| |_|\__| |_| |_|\___|\__|_| |_|\___/ \__,_|
+ | |
+ |_|
+/-------------------------------------------------------------------------------------------------------------------------------/
+
+ @version @update number 23 of this MVC
+ @build 16th October, 2017
+ @created 12th October, 2017
+ @package Component Builder
+ @subpackage admin_fields.js
+ @author Llewellyn van der Merwe
+ @copyright Copyright (C) 2015. All Rights Reserved
+ @license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
+
+ Builds Complex Joomla Components
+
+/-----------------------------------------------------------------------------------------------------------------------------*/
+
+
diff --git a/admin/models/forms/admin_fields.xml b/admin/models/forms/admin_fields.xml
new file mode 100644
index 000000000..c161bc2d3
--- /dev/null
+++ b/admin/models/forms/admin_fields.xml
@@ -0,0 +1,305 @@
+
+
\ No newline at end of file
diff --git a/admin/models/forms/admin_fields_conditions.js b/admin/models/forms/admin_fields_conditions.js
new file mode 100644
index 000000000..3d87f7918
--- /dev/null
+++ b/admin/models/forms/admin_fields_conditions.js
@@ -0,0 +1,57 @@
+/*--------------------------------------------------------------------------------------------------------| www.vdm.io |------/
+ __ __ _ _____ _ _ __ __ _ _ _
+ \ \ / / | | | __ \ | | | | | \/ | | | | | | |
+ \ \ / /_ _ ___| |_ | | | | _____ _____| | ___ _ __ _ __ ___ ___ _ __ | |_ | \ / | ___| |_| |__ ___ __| |
+ \ \/ / _` / __| __| | | | |/ _ \ \ / / _ \ |/ _ \| '_ \| '_ ` _ \ / _ \ '_ \| __| | |\/| |/ _ \ __| '_ \ / _ \ / _` |
+ \ / (_| \__ \ |_ | |__| | __/\ V / __/ | (_) | |_) | | | | | | __/ | | | |_ | | | | __/ |_| | | | (_) | (_| |
+ \/ \__,_|___/\__| |_____/ \___| \_/ \___|_|\___/| .__/|_| |_| |_|\___|_| |_|\__| |_| |_|\___|\__|_| |_|\___/ \__,_|
+ | |
+ |_|
+/-------------------------------------------------------------------------------------------------------------------------------/
+
+ @version @update number 16 of this MVC
+ @build 16th October, 2017
+ @created 12th October, 2017
+ @package Component Builder
+ @subpackage admin_fields_conditions.js
+ @author Llewellyn van der Merwe
+ @copyright Copyright (C) 2015. All Rights Reserved
+ @license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
+
+ Builds Complex Joomla Components
+
+/-----------------------------------------------------------------------------------------------------------------------------*/
+
+
+
+function getFieldSelectOptions_server(fieldId){
+ var getUrl = "index.php?option=com_componentbuilder&task=ajax.fieldSelectOptions&format=json";
+ if(token.length > 0 && fieldId > 0){
+ var request = 'token='+token+'&id='+fieldId;
+ }
+ return jQuery.ajax({
+ type: 'GET',
+ url: getUrl,
+ dataType: 'jsonp',
+ data: request,
+ jsonp: 'callback'
+ });
+}
+
+function getFieldSelectOptions(fieldKey, table_, nr_){
+ // first check if the field is set
+ if(jQuery("#jform_addconditions"+table_+"_addconditions"+fieldKey+nr_+"_match_field").length) {
+ var fieldId = jQuery("#jform_addconditions"+table_+"_addconditions"+fieldKey+nr_+"_match_field option:selected").val();
+ getFieldSelectOptions_server(fieldId).done(function(result) {
+ if(result){
+ jQuery('textarea#jform_addconditions'+table_+'_addconditions'+fieldKey+nr_+'_match_options').val(result);
+ }
+ else
+ {
+ jQuery('textarea#jform_addconditions'+table_+'_addconditions'+fieldKey+nr_+'_match_options').val('');
+ }
+ });
+ }
+}
+
+
diff --git a/admin/models/forms/admin_fields_conditions.xml b/admin/models/forms/admin_fields_conditions.xml
new file mode 100644
index 000000000..be2a9ef8e
--- /dev/null
+++ b/admin/models/forms/admin_fields_conditions.xml
@@ -0,0 +1,247 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ JPUBLISHED
+
+ JUNPUBLISHED
+
+ JARCHIVED
+
+ JTRASHED
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ COM_COMPONENTBUILDER_ADMIN_FIELDS_CONDITIONS_SHOW
+
+ COM_COMPONENTBUILDER_ADMIN_FIELDS_CONDITIONS_HIDE
+
+
+
+
+
+ COM_COMPONENTBUILDER_ADMIN_FIELDS_CONDITIONS_ISOLATE
+
+ COM_COMPONENTBUILDER_ADMIN_FIELDS_CONDITIONS_CHAIN
+
+
+
+
+
+
+
+ COM_COMPONENTBUILDER_ADMIN_FIELDS_CONDITIONS_IS_ONLY_FOUR_LISTRADIOCHECKBOXES
+
+ COM_COMPONENTBUILDER_ADMIN_FIELDS_CONDITIONS_IS_NOT_ONLY_FOUR_LISTRADIOCHECKBOXES
+
+ COM_COMPONENTBUILDER_ADMIN_FIELDS_CONDITIONS_ANY_SELECTION_ONLY_FOUR_LISTRADIOCHECKBOXESDYNAMIC_LIST
+
+ COM_COMPONENTBUILDER_ADMIN_FIELDS_CONDITIONS_ACTIVE_ONLY_FOUR_TEXT_FIELD
+
+ COM_COMPONENTBUILDER_ADMIN_FIELDS_CONDITIONS_UNACTIVE_ONLY_FOUR_TEXT_FIELD
+
+ COM_COMPONENTBUILDER_ADMIN_FIELDS_CONDITIONS_KEY_WORD_ALL_CASESENSITIVE_ONLY_FOUR_TEXT_FIELD
+
+ COM_COMPONENTBUILDER_ADMIN_FIELDS_CONDITIONS_KEY_WORD_ANY_CASESENSITIVE_ONLY_FOUR_TEXT_FIELD
+
+ COM_COMPONENTBUILDER_ADMIN_FIELDS_CONDITIONS_KEY_WORD_ALL_CASEINSENSITIVE_ONLY_FOUR_TEXT_FIELD
+
+ COM_COMPONENTBUILDER_ADMIN_FIELDS_CONDITIONS_KEY_WORD_ANY_CASEINSENSITIVE_ONLY_FOUR_TEXT_FIELD
+
+ COM_COMPONENTBUILDER_ADMIN_FIELDS_CONDITIONS_MIN_LENGTH_ONLY_FOUR_TEXT_FIELD
+
+ COM_COMPONENTBUILDER_ADMIN_FIELDS_CONDITIONS_MAX_LENGTH_ONLY_FOUR_TEXT_FIELD
+
+ COM_COMPONENTBUILDER_ADMIN_FIELDS_CONDITIONS_EXACT_LENGTH_ONLY_FOUR_TEXT_FIELD
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/admin/models/forms/admin_view.js b/admin/models/forms/admin_view.js
index 5ee0ff272..581816193 100644
--- a/admin/models/forms/admin_view.js
+++ b/admin/models/forms/admin_view.js
@@ -9,8 +9,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version @update number 114 of this MVC
- @build 28th August, 2017
+ @version @update number 192 of this MVC
+ @build 16th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage admin_view.js
@@ -340,7 +340,7 @@ function vvvvvxd(add_php_ajax_vvvvvxd)
// set the function logic
if (add_php_ajax_vvvvvxd == 1)
{
- jQuery('#jform_ajax_input').closest('.control-group').show();
+ jQuery('#jform_ajax_input-lbl').closest('.control-group').show();
jQuery('#jform_php_ajaxmethod').closest('.control-group').show();
if (jform_vvvvvxdvwx_required)
{
@@ -354,7 +354,7 @@ function vvvvvxd(add_php_ajax_vvvvvxd)
}
else
{
- jQuery('#jform_ajax_input').closest('.control-group').hide();
+ jQuery('#jform_ajax_input-lbl').closest('.control-group').hide();
jQuery('#jform_php_ajaxmethod').closest('.control-group').hide();
if (!jform_vvvvvxdvwx_required)
{
@@ -900,11 +900,11 @@ function vvvvvxw(source_vvvvvxw,add_sql_vvvvvxw)
// set the function logic
if (source_vvvvvxw == 1 && add_sql_vvvvvxw == 1)
{
- jQuery('#jform_addtables').closest('.control-group').show();
+ jQuery('#jform_addtables-lbl').closest('.control-group').show();
}
else
{
- jQuery('#jform_addtables').closest('.control-group').hide();
+ jQuery('#jform_addtables-lbl').closest('.control-group').hide();
}
}
@@ -1056,7 +1056,7 @@ function vvvvvya(add_custom_button_vvvvvya)
// set the function logic
if (add_custom_button_vvvvvya == 1)
{
- jQuery('#jform_custom_button').closest('.control-group').show();
+ jQuery('#jform_custom_button-lbl').closest('.control-group').show();
jQuery('#jform_php_controller').closest('.control-group').show();
if (jform_vvvvvyavxv_required)
{
@@ -1100,7 +1100,7 @@ function vvvvvya(add_custom_button_vvvvvya)
}
else
{
- jQuery('#jform_custom_button').closest('.control-group').hide();
+ jQuery('#jform_custom_button-lbl').closest('.control-group').hide();
jQuery('#jform_php_controller').closest('.control-group').hide();
if (!jform_vvvvvyavxv_required)
{
@@ -1177,15 +1177,34 @@ function isSet(val)
}
jQuery(document).ready(function()
-{
+{
+ // set button
+ addButtonID('admin_fields','create_edit_buttons', 1); // <-- first
var valueSwitch = jQuery("#jform_add_custom_import input[type='radio']:checked").val();
getImportScripts(valueSwitch);
+ // now load the fields
+ getFieldsDisplay('admin_fields');
+ getFieldsDisplay('admin_fields_conditions');
+ // set button
+ addButtonID('admin_fields_conditions','create_edit_buttons', 1); // <-- second
+ // set button to add more languages
+ addButton('field','create_edit_buttons'); // <-- third
});
-function getFieldSelectOptions_server(fieldId){
- var getUrl = "index.php?option=com_componentbuilder&task=ajax.fieldSelectOptions&format=json";
- if(token.length > 0 && fieldId > 0){
- var request = 'token='+token+'&id='+fieldId;
+function getFieldsDisplay(type){
+ getFieldsDisplay_server(type).done(function(result) {
+ if(result){
+ jQuery('#display_'+type).html(result);
+ }
+ // set button
+ addButtonID(type,'header_'+type+'_buttons', 2); // <-- little edit button
+ });
+}
+
+function getFieldsDisplay_server(type){
+ var getUrl = "index.php?option=com_componentbuilder&task=ajax.getFieldsDisplay&format=json&vdm="+vastDevMod;
+ if(token.length > 0 && type.length > 0){
+ var request = 'token='+token+'&type=' + type;
}
return jQuery.ajax({
type: 'GET',
@@ -1196,17 +1215,55 @@ function getFieldSelectOptions_server(fieldId){
});
}
-function getFieldSelectOptions(id,fieldKey){
- getFieldSelectOptions_server(id).done(function(result) {
+function addData(result,where){
+ jQuery(where).closest('.control-group').parent().append(result);
+}
+
+function addButtonID_server(type, size){
+ var getUrl = JRouter("index.php?option=com_componentbuilder&task=ajax.getButtonID&format=json&vdm="+vastDevMod);
+ if(token.length > 0 && type.length > 0 && size > 0){
+ var request = 'token='+token+'&type='+type+'&size='+size;
+ }
+ return jQuery.ajax({
+ type: 'GET',
+ url: getUrl,
+ dataType: 'jsonp',
+ data: request,
+ jsonp: 'callback'
+ });
+}
+function addButtonID(type, where, size){
+ addButtonID_server(type, size).done(function(result) {
if(result){
- jQuery('textarea#'+fieldKey+'-jform_addconditions_fields_match_options').val(result);
+ if (1 == size) {
+ addData(result, '#jform_'+where);
+ } else if (2 == size) {
+ jQuery('#'+where).html(result);
+ }
}
- else
- {
- jQuery('textarea#'+fieldKey+'-jform_addconditions_fields_match_options').val('');
+ });
+}
+
+function addButton_server(type){
+ var getUrl = JRouter("index.php?option=com_componentbuilder&task=ajax.getButton&format=json&vdm="+vastDevMod);
+ if(token.length > 0 && type.length > 0){
+ var request = 'token='+token+'&type='+type;
+ }
+ return jQuery.ajax({
+ type: 'GET',
+ url: getUrl,
+ dataType: 'jsonp',
+ data: request,
+ jsonp: 'callback'
+ });
+}
+function addButton(type,where){
+ addButton_server(type).done(function(result) {
+ if(result){
+ addData(result,'#jform_'+where);
}
})
-}
+}
function getTableColumns_server(tableName){
var getUrl = "index.php?option=com_componentbuilder&task=ajax.tableColumns&format=json";
@@ -1222,16 +1279,21 @@ function getTableColumns_server(tableName){
});
}
-function getTableColumns(tableName,fieldKey){
- getTableColumns_server(tableName).done(function(result) {
- if(result){
- jQuery('textarea#'+fieldKey+'-jform_addtables_fields_sourcemap').val(result);
- }
- else
- {
- jQuery('textarea#'+fieldKey+'-jform_addtables_fields_sourcemap').val('');
- }
- })
+function getTableColumns(fieldKey, table_, nr_){
+ // first check if the field is set
+ if(jQuery("#jform_addtables_"+table_+"addtables"+fieldKey+nr_+"_table").length) {
+ // get options
+ var tableName = jQuery("#jform_addtables_"+table_+"addtables"+fieldKey+nr_+"_table option:selected").val();
+ getTableColumns_server(tableName).done(function(result) {
+ if(result){
+ jQuery("textarea#jform_addtables_"+table_+"addtables"+fieldKey+nr_+"_sourcemap").val(result);
+ }
+ else
+ {
+ jQuery("textarea#jform_addtables_"+table_+"addtables"+fieldKey+nr_+"_sourcemap").val('');
+ }
+ });
+ }
}
function getImportScripts_server(typpe){
diff --git a/admin/models/forms/admin_view.xml b/admin/models/forms/admin_view.xml
index af259205a..833893642 100644
--- a/admin/models/forms/admin_view.xml
+++ b/admin/models/forms/admin_view.xml
@@ -149,6 +149,19 @@
message="Error! Please add some short description here."
hint="COM_COMPONENTBUILDER_ADMIN_VIEW_SHORT_DESCRIPTION_HINT"
/>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
COM_COMPONENTBUILDER_ADMIN_VIEW_READONLY
-
+
@@ -202,19 +293,19 @@
filter="HTML"
hint="COM_COMPONENTBUILDER_ADMIN_VIEW_DESCRIPTION_HINT"
/>
-
+
+ type="radio"
+ name="source"
+ label="COM_COMPONENTBUILDER_ADMIN_VIEW_SOURCE_LABEL"
+ class="btn-group btn-group-yesno"
+ required="true">
+
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_TABLE
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_DUMP
+
COM_COMPONENTBUILDER_ADMIN_VIEW_REMOVE
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_TABLE
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_DUMP
-
-
-
-
+
-
-
-
-
-
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_COREEDIT
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_COREEDITOWN
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_COREEDITSTATE
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_COREEDITCREATED_BY
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_COREEDITCREATED
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_CORECREATE
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_COREDELETE
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_VIEWEDIT
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_VIEWEDITOWN
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_VIEWEDITSTATE
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_VIEWEDITCREATED_BY
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_VIEWEDITCREATED
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_VIEWCREATE
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_VIEWDELETE
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_VIEWACCESS
-
-
-
-
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_IN_RELATION_TO_EACH_RECORD
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_IN_RELATION_TO_THE_WHOLE_VIEW
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_BOTH
-
-
-
-
-
-
+ type="hidden"
+ name="not_required"
+ default="[]"
+ />
+
+
-
+
-
-
-
-
-
-
+ maximum="20">
+
+
+
+
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_COREEDIT
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_COREEDITOWN
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_COREEDITSTATE
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_COREEDITCREATED_BY
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_COREEDITCREATED
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_CORECREATE
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_COREDELETE
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_VIEWEDIT
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_VIEWEDITOWN
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_VIEWEDITSTATE
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_VIEWEDITCREATED_BY
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_VIEWEDITCREATED
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_VIEWCREATE
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_VIEWDELETE
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_VIEWACCESS
+
+
+
+
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_IN_RELATION_TO_EACH_RECORD
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_IN_RELATION_TO_THE_WHOLE_VIEW
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_BOTH
+
+
-
-
+
+
-
+
-
-
-
-
-
-
-
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_SHOW
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_HIDE
-
-
-
-
-
-
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_YES
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_NO
-
-
-
-
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_YES
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_NO
-
-
-
-
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_YES
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_NO
-
-
-
-
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_YES
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_NO
-
-
-
-
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_YES
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_NO
-
-
-
-
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_YES
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_NO
-
-
-
-
-
-
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_LEFT_IN_TAB
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_RIGHT_IN_TAB
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_FULL_WIDTH_IN_TAB
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_ABOVE_TABS
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_UNDERNEATH_TABS
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_LEFT_OF_TABS
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_RIGHT_OF_TABS
-
-
-
-
-
-
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_NONE
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_EDITING
-
-
-
+ maximum="15">
+
+
+
+
-
-
+
+
-
+
-
-
-
-
-
-
-
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_SHOW
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_HIDE
-
-
-
-
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_ISOLATE
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_CHAIN
-
-
-
-
-
-
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_IS_ONLY_FOUR_LISTRADIOCHECKBOXES
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_IS_NOT_ONLY_FOUR_LISTRADIOCHECKBOXES
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_ANY_SELECTION_ONLY_FOUR_LISTRADIOCHECKBOXESDYNAMIC_LIST
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_ACTIVE_ONLY_FOUR_TEXT_FIELD
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_UNACTIVE_ONLY_FOUR_TEXT_FIELD
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_KEY_WORD_ALL_CASESENSITIVE_ONLY_FOUR_TEXT_FIELD
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_KEY_WORD_ANY_CASESENSITIVE_ONLY_FOUR_TEXT_FIELD
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_KEY_WORD_ALL_CASEINSENSITIVE_ONLY_FOUR_TEXT_FIELD
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_KEY_WORD_ANY_CASEINSENSITIVE_ONLY_FOUR_TEXT_FIELD
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_MIN_LENGTH_ONLY_FOUR_TEXT_FIELD
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_MAX_LENGTH_ONLY_FOUR_TEXT_FIELD
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_EXACT_LENGTH_ONLY_FOUR_TEXT_FIELD
-
-
-
-
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_IS_ONLY_FOUR_LISTRADIOCHECKBOXES
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_IS_NOT_ONLY_FOUR_LISTRADIOCHECKBOXES
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_ANY_SELECTION_ONLY_FOUR_LISTRADIOCHECKBOXESDYNAMIC_LIST
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_ACTIVE_ONLY_FOUR_TEXT_FIELD
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_UNACTIVE_ONLY_FOUR_TEXT_FIELD
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_KEY_WORD_ALL_CASESENSITIVE_ONLY_FOUR_TEXT_FIELD
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_KEY_WORD_ANY_CASESENSITIVE_ONLY_FOUR_TEXT_FIELD
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_KEY_WORD_ALL_CASEINSENSITIVE_ONLY_FOUR_TEXT_FIELD
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_KEY_WORD_ANY_CASEINSENSITIVE_ONLY_FOUR_TEXT_FIELD
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_MIN_LENGTH_ONLY_FOUR_TEXT_FIELD
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_MAX_LENGTH_ONLY_FOUR_TEXT_FIELD
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_EXACT_LENGTH_ONLY_FOUR_TEXT_FIELD
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_YES
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_NO
-
-
-
-
+
+
-
-
+
+
-
-
+
+
COM_COMPONENTBUILDER_ADMIN_VIEW_NO
-
+
-
-
-
-
-
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_JOOMLA
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_ADDRESS
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_PENCIL
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_ARCHIVE
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_ARROW_DOWN_TWO
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_ARROW_DOWN_THREE
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_ARROW_DOWN_FOUR
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_ARROW_FIRST
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_ARROW_LAST
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_ARROW_LEFT_TWO
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_ARROW_LEFT_THREE
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_ARROW_LEFT_FOUR
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_ARROW_RIGHT_TWO
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_ARROW_RIGHT_THREE
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_ARROW_RIGHT_FOUR
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_ARROW_UP_TWO
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_ARROW_UP_THREE
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_ARROW_UP_FOUR
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_ATTACHMENT
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_REPLY
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_BACKWARD_CIRCLE
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_BAN_CIRCLE
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_BARS
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_BASKET
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_BOOK
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_BOOKMARK
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_BOOKMARK_TWO
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_BOX_ADD
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_BOX_REMOVE
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_BRIEFCASE
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_WIFI
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_BRUSH
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_CALENDAR
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_CALENDAR_TWO
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_CALENDAR_THREE
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_CAMERA
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_CAMERA_TWO_VIDEO
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_CANCEL_CIRCLE
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_CART
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_CHART
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_CHECKBOX_PARTIAL
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_CHECKBOX_UNCHECKED
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_LOCK
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_CHECKBOX
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_CHECKMARK_TWO
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_CHECKMARK_CIRCLE
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_ARROW_DOWN
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_ARROW_LEFT
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_ARROW_RIGHT
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_ARROW_UP
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_CIRCLE
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_CLOCK
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_COGS
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_COMMENT
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_COMMENTS_TWO
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_COMPASS
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_CONTRACT
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_CONTRACT_TWO
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_CREDIT
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_CREDIT_TWO
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_CUBE
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_DASHBOARD
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_DATABASE
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_DELETE
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_DOWNLOAD
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_ENTER
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_ENVELOPE
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_ENVELOPE_OPENED
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_EQUALIZER
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_EXIT
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_EXPAND
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_EXPAND_TWO
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_EXPIRED
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_EYE_CLOSE
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_EYE_OPEN
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_FEATURED
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_FEED
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_FILE
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_FILE_TWO
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_FILE_ADD
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_FILE_CHECK
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_FILE_MINUS
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_FILE_REMOVE
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_FILTER
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_FIRST
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_FLAG
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_FLAG_THREE
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_FOLDER_THREE
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_FOLDER_CLOSE
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_FOLDER_MINUS
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_FOLDER_OPEN
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_FOLDER_PLUS
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_FOLDER_PLUS_TWO
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_FOLDER_REMOVE
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_FORWARD_TWO
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_FORWARD_CIRCLE
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_GRID
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_GRID_TWO
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_HEALTH
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_HEART
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_HEART_TWO
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_HOME
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_HOME_TWO
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_INFO
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_INFO_CIRCLE
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_KEY
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_LAMP
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_LAST
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_FLASH
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_LINK
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_LIST
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_LIST_TWO
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_LOCATION
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_LOOP
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_MENU
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_MENU_TWO
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_MENU_THREE
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_MINUS
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_MINUS_SIGN
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_MOBILE
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_MOVE
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_MUSIC
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_PLUS
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_NEXT
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_NOTIFICATION
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_NOTIFICATION_CIRCLE
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_COG
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_NEW_TAB
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_NEW_TAB_TWO
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_PALETTE
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_PARAGRAPH_CENTER
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_PARAGRAPH_JUSTIFY
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_PARAGRAPH_LEFT
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_PARAGRAPH_RIGHT
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_PAUSE
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_PAUSE_CIRCLE
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_PENCIL_TWO
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_WARNING
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_PHONE
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_PHONE_TWO
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_IMAGE
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_IMAGES
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_PIE
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_PIN
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_PLAY
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_YOUTUBE
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_PLAY_CIRCLE
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_PLUS_CIRCLE
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_POWER_CORD
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_PREVIOUS
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_PRINT
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_PUBLISH
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_PURGE
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_PUZZLE
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_QUESTION
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_QUESTION_TWO
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_QUOTES_LEFT
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_QUOTES_RIGHT
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_BUBBLE_QUOTE
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_GENERIC
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_RADIO_UNCHECKED
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_SAVE_COPY
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_SAVE_NEW
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_SCISSORS
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_SCREEN
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_SCREWDRIVER
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_SEARCH
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_SHARE
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_SHARE_ALT
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_SHIELD
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_SHUFFLE
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_SIGNUP
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_SMILEY
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_SMILEY_TWO
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_SMILEY_NEUTRAL
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_SMILEY_NEUTRAL_TWO
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_SMILEY_SAD
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_SMILEY_SAD_TWO
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_SQUARE
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_STACK
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_STAR_TWO
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_STOP
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_STOP_CIRCLE
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_SUPPORT
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_SWITCH
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_TABLET
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_TAG
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_TAG_TWO
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_TAGS
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_TAGS_TWO
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_THUMBS_DOWN
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_THUMBS_UP
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_TREE
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_TREE_TWO
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_UNARCHIVE
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_UNBLOCK
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_UNDO
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_UNDO_TWO
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_UNFEATURED
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_UNLOCK
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_UNPUBLISH
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_UPLOAD
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_USER
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_USERS
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_VCARD
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_WAND
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_WARNING_CIRCLE
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_WRENCH
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_ZOOM_IN
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_ZOOM_OUT
-
-
-
-
-
-
-
-
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_SINGLE
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_LIST
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_BOTH
-
-
-
-
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_DEFAULT
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_SELECTION
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_ONLY_FUNCTION
-
-
-
+
+
+
+
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_JOOMLA
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_ADDRESS
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_PENCIL
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_ARCHIVE
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_ARROW_DOWN_TWO
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_ARROW_DOWN_THREE
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_ARROW_DOWN_FOUR
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_ARROW_FIRST
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_ARROW_LAST
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_ARROW_LEFT_TWO
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_ARROW_LEFT_THREE
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_ARROW_LEFT_FOUR
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_ARROW_RIGHT_TWO
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_ARROW_RIGHT_THREE
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_ARROW_RIGHT_FOUR
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_ARROW_UP_TWO
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_ARROW_UP_THREE
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_ARROW_UP_FOUR
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_ATTACHMENT
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_REPLY
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_BACKWARD_CIRCLE
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_BAN_CIRCLE
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_BARS
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_BASKET
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_BOOK
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_BOOKMARK
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_BOOKMARK_TWO
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_BOX_ADD
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_BOX_REMOVE
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_BRIEFCASE
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_WIFI
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_BRUSH
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_CALENDAR
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_CALENDAR_TWO
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_CALENDAR_THREE
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_CAMERA
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_CAMERA_TWO_VIDEO
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_CANCEL_CIRCLE
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_CART
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_CHART
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_CHECKBOX_PARTIAL
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_CHECKBOX_UNCHECKED
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_LOCK
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_CHECKBOX
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_CHECKMARK_TWO
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_CHECKMARK_CIRCLE
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_ARROW_DOWN
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_ARROW_LEFT
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_ARROW_RIGHT
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_ARROW_UP
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_CIRCLE
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_CLOCK
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_COGS
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_COMMENT
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_COMMENTS_TWO
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_COMPASS
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_CONTRACT
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_CONTRACT_TWO
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_CREDIT
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_CREDIT_TWO
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_CUBE
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_DASHBOARD
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_DATABASE
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_DELETE
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_DOWNLOAD
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_ENTER
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_ENVELOPE
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_ENVELOPE_OPENED
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_EQUALIZER
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_EXIT
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_EXPAND
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_EXPAND_TWO
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_EXPIRED
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_EYE_CLOSE
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_EYE_OPEN
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_FEATURED
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_FEED
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_FILE
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_FILE_TWO
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_FILE_ADD
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_FILE_CHECK
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_FILE_MINUS
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_FILE_REMOVE
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_FILTER
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_FIRST
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_FLAG
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_FLAG_THREE
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_FOLDER_THREE
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_FOLDER_CLOSE
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_FOLDER_MINUS
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_FOLDER_OPEN
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_FOLDER_PLUS
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_FOLDER_PLUS_TWO
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_FOLDER_REMOVE
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_FORWARD_TWO
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_FORWARD_CIRCLE
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_GRID
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_GRID_TWO
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_HEALTH
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_HEART
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_HEART_TWO
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_HOME
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_HOME_TWO
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_INFO
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_INFO_CIRCLE
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_KEY
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_LAMP
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_LAST
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_FLASH
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_LINK
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_LIST
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_LIST_TWO
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_LOCATION
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_LOOP
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_MENU
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_MENU_TWO
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_MENU_THREE
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_MINUS
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_MINUS_SIGN
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_MOBILE
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_MOVE
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_MUSIC
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_PLUS
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_NEXT
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_NOTIFICATION
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_NOTIFICATION_CIRCLE
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_COG
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_NEW_TAB
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_NEW_TAB_TWO
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_PALETTE
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_PARAGRAPH_CENTER
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_PARAGRAPH_JUSTIFY
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_PARAGRAPH_LEFT
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_PARAGRAPH_RIGHT
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_PAUSE
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_PAUSE_CIRCLE
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_PENCIL_TWO
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_WARNING
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_PHONE
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_PHONE_TWO
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_IMAGE
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_IMAGES
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_PIE
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_PIN
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_PLAY
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_YOUTUBE
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_PLAY_CIRCLE
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_PLUS_CIRCLE
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_POWER_CORD
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_PREVIOUS
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_PRINT
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_PUBLISH
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_PURGE
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_PUZZLE
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_QUESTION
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_QUESTION_TWO
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_QUOTES_LEFT
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_QUOTES_RIGHT
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_BUBBLE_QUOTE
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_GENERIC
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_RADIO_UNCHECKED
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_SAVE_COPY
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_SAVE_NEW
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_SCISSORS
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_SCREEN
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_SCREWDRIVER
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_SEARCH
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_SHARE
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_SHARE_ALT
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_SHIELD
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_SHUFFLE
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_SIGNUP
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_SMILEY
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_SMILEY_TWO
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_SMILEY_NEUTRAL
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_SMILEY_NEUTRAL_TWO
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_SMILEY_SAD
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_SMILEY_SAD_TWO
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_SQUARE
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_STACK
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_STAR_TWO
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_STOP
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_STOP_CIRCLE
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_SUPPORT
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_SWITCH
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_TABLET
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_TAG
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_TAG_TWO
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_TAGS
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_TAGS_TWO
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_THUMBS_DOWN
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_THUMBS_UP
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_TREE
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_TREE_TWO
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_UNARCHIVE
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_UNBLOCK
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_UNDO
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_UNDO_TWO
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_UNFEATURED
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_UNLOCK
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_UNPUBLISH
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_UPLOAD
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_USER
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_USERS
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_VCARD
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_WAND
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_WARNING_CIRCLE
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_WRENCH
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_ZOOM_IN
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_ZOOM_OUT
+
+
+
+
+
+
+
+
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_SINGLE
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_LIST
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_BOTH
+
+
+
+
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_DEFAULT
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_SELECTION
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_ONLY_FUNCTION
+
+
-
+
-
-
-
-
-
-
-
-
+
+
+
+
+
+
-
+
-
-
-
-
-
-
-
-
-
-
-
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_INT
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_UINT
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_FLOAT
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_BOOLEAN
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_WORD
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_ALNUM
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_CMD
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_BASESIXTY_FOUR
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_STRING
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_HTML
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_ARRAY
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_PATH
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_USERNAME
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_RAW
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_UNKNOWN
-
-
-
-
-
-
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_YES
-
- COM_COMPONENTBUILDER_ADMIN_VIEW_NO
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_INT
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_UINT
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_FLOAT
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_BOOLEAN
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_WORD
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_ALNUM
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_CMD
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_BASESIXTY_FOUR
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_STRING
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_HTML
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_ARRAY
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_PATH
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_USERNAME
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_RAW
+
+ COM_COMPONENTBUILDER_ADMIN_VIEW_UNKNOWN
+
+
+
+
+
+
-
+
-
-
-
-
-
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_JOOMLA
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_ADDRESS
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_PENCIL
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_ARCHIVE
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_ARROW_DOWN_TWO
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_ARROW_DOWN_THREE
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_ARROW_DOWN_FOUR
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_ARROW_FIRST
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_ARROW_LAST
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_ARROW_LEFT_TWO
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_ARROW_LEFT_THREE
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_ARROW_LEFT_FOUR
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_ARROW_RIGHT_TWO
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_ARROW_RIGHT_THREE
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_ARROW_RIGHT_FOUR
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_ARROW_UP_TWO
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_ARROW_UP_THREE
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_ARROW_UP_FOUR
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_ATTACHMENT
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_REPLY
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_BACKWARD_CIRCLE
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_BAN_CIRCLE
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_BARS
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_BASKET
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_BOOK
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_BOOKMARK
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_BOOKMARK_TWO
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_BOX_ADD
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_BOX_REMOVE
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_BRIEFCASE
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_WIFI
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_BRUSH
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_CALENDAR
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_CALENDAR_TWO
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_CALENDAR_THREE
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_CAMERA
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_CAMERA_TWO_VIDEO
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_CANCEL_CIRCLE
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_CART
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_CHART
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_CHECKBOX_PARTIAL
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_CHECKBOX_UNCHECKED
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_LOCK
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_CHECKBOX
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_CHECKMARK_TWO
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_CHECKMARK_CIRCLE
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_ARROW_DOWN
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_ARROW_LEFT
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_ARROW_RIGHT
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_ARROW_UP
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_CIRCLE
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_CLOCK
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_COGS
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_COMMENT
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_COMMENTS_TWO
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_COMPASS
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_CONTRACT
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_CONTRACT_TWO
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_CREDIT
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_CREDIT_TWO
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_CUBE
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_DASHBOARD
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_DATABASE
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_DELETE
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_DOWNLOAD
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_ENTER
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_ENVELOPE
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_ENVELOPE_OPENED
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_EQUALIZER
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_EXIT
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_EXPAND
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_EXPAND_TWO
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_EXPIRED
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_EYE_CLOSE
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_EYE_OPEN
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_FEATURED
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_FEED
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_FILE
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_FILE_TWO
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_FILE_ADD
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_FILE_CHECK
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_FILE_MINUS
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_FILE_REMOVE
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_FILTER
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_FIRST
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_FLAG
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_FLAG_THREE
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_FOLDER_THREE
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_FOLDER_CLOSE
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_FOLDER_MINUS
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_FOLDER_OPEN
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_FOLDER_PLUS
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_FOLDER_PLUS_TWO
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_FOLDER_REMOVE
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_FORWARD_TWO
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_FORWARD_CIRCLE
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_GRID
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_GRID_TWO
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_HEALTH
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_HEART
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_HEART_TWO
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_HOME
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_HOME_TWO
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_INFO
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_INFO_CIRCLE
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_KEY
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_LAMP
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_LAST
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_FLASH
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_LINK
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_LIST
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_LIST_TWO
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_LOCATION
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_LOOP
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_MENU
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_MENU_TWO
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_MENU_THREE
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_MINUS
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_MINUS_SIGN
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_MOBILE
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_MOVE
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_MUSIC
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_PLUS
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_NEXT
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_NOTIFICATION
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_NOTIFICATION_CIRCLE
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_COG
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_NEW_TAB
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_NEW_TAB_TWO
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_PALETTE
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_PARAGRAPH_CENTER
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_PARAGRAPH_JUSTIFY
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_PARAGRAPH_LEFT
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_PARAGRAPH_RIGHT
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_PAUSE
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_PAUSE_CIRCLE
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_PENCIL_TWO
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_WARNING
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_PHONE
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_PHONE_TWO
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_IMAGE
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_IMAGES
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_PIE
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_PIN
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_PLAY
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_YOUTUBE
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_PLAY_CIRCLE
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_PLUS_CIRCLE
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_POWER_CORD
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_PREVIOUS
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_PRINT
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_PUBLISH
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_PURGE
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_PUZZLE
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_QUESTION
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_QUESTION_TWO
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_QUOTES_LEFT
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_QUOTES_RIGHT
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_BUBBLE_QUOTE
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_GENERIC
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_RADIO_UNCHECKED
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_SAVE_COPY
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_SAVE_NEW
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_SCISSORS
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_SCREEN
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_SCREWDRIVER
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_SEARCH
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_SHARE
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_SHARE_ALT
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_SHIELD
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_SHUFFLE
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_SIGNUP
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_SMILEY
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_SMILEY_TWO
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_SMILEY_NEUTRAL
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_SMILEY_NEUTRAL_TWO
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_SMILEY_SAD
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_SMILEY_SAD_TWO
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_SQUARE
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_STACK
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_STAR_TWO
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_STOP
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_STOP_CIRCLE
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_SUPPORT
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_SWITCH
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_TABLET
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_TAG
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_TAG_TWO
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_TAGS
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_TAGS_TWO
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_THUMBS_DOWN
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_THUMBS_UP
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_TREE
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_TREE_TWO
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_UNARCHIVE
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_UNBLOCK
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_UNDO
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_UNDO_TWO
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_UNFEATURED
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_UNLOCK
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_UNPUBLISH
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_UPLOAD
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_USER
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_USERS
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_VCARD
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_WAND
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_WARNING_CIRCLE
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_WRENCH
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_ZOOM_IN
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_ZOOM_OUT
-
-
-
-
-
-
-
-
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_SINGLE
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_LIST
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_BOTH
-
-
-
-
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_DEFAULT
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_SELECTION
-
- COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_ONLY_FUNCTION
-
-
-
+
+
+
+
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_JOOMLA
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_ADDRESS
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_PENCIL
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_ARCHIVE
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_ARROW_DOWN_TWO
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_ARROW_DOWN_THREE
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_ARROW_DOWN_FOUR
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_ARROW_FIRST
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_ARROW_LAST
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_ARROW_LEFT_TWO
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_ARROW_LEFT_THREE
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_ARROW_LEFT_FOUR
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_ARROW_RIGHT_TWO
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_ARROW_RIGHT_THREE
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_ARROW_RIGHT_FOUR
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_ARROW_UP_TWO
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_ARROW_UP_THREE
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_ARROW_UP_FOUR
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_ATTACHMENT
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_REPLY
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_BACKWARD_CIRCLE
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_BAN_CIRCLE
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_BARS
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_BASKET
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_BOOK
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_BOOKMARK
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_BOOKMARK_TWO
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_BOX_ADD
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_BOX_REMOVE
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_BRIEFCASE
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_WIFI
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_BRUSH
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_CALENDAR
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_CALENDAR_TWO
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_CALENDAR_THREE
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_CAMERA
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_CAMERA_TWO_VIDEO
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_CANCEL_CIRCLE
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_CART
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_CHART
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_CHECKBOX_PARTIAL
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_CHECKBOX_UNCHECKED
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_LOCK
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_CHECKBOX
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_CHECKMARK_TWO
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_CHECKMARK_CIRCLE
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_ARROW_DOWN
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_ARROW_LEFT
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_ARROW_RIGHT
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_ARROW_UP
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_CIRCLE
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_CLOCK
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_COGS
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_COMMENT
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_COMMENTS_TWO
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_COMPASS
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_CONTRACT
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_CONTRACT_TWO
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_CREDIT
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_CREDIT_TWO
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_CUBE
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_DASHBOARD
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_DATABASE
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_DELETE
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_DOWNLOAD
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_ENTER
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_ENVELOPE
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_ENVELOPE_OPENED
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_EQUALIZER
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_EXIT
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_EXPAND
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_EXPAND_TWO
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_EXPIRED
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_EYE_CLOSE
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_EYE_OPEN
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_FEATURED
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_FEED
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_FILE
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_FILE_TWO
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_FILE_ADD
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_FILE_CHECK
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_FILE_MINUS
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_FILE_REMOVE
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_FILTER
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_FIRST
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_FLAG
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_FLAG_THREE
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_FOLDER_THREE
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_FOLDER_CLOSE
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_FOLDER_MINUS
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_FOLDER_OPEN
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_FOLDER_PLUS
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_FOLDER_PLUS_TWO
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_FOLDER_REMOVE
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_FORWARD_TWO
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_FORWARD_CIRCLE
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_GRID
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_GRID_TWO
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_HEALTH
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_HEART
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_HEART_TWO
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_HOME
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_HOME_TWO
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_INFO
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_INFO_CIRCLE
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_KEY
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_LAMP
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_LAST
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_FLASH
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_LINK
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_LIST
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_LIST_TWO
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_LOCATION
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_LOOP
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_MENU
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_MENU_TWO
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_MENU_THREE
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_MINUS
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_MINUS_SIGN
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_MOBILE
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_MOVE
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_MUSIC
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_PLUS
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_NEXT
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_NOTIFICATION
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_NOTIFICATION_CIRCLE
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_COG
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_NEW_TAB
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_NEW_TAB_TWO
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_PALETTE
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_PARAGRAPH_CENTER
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_PARAGRAPH_JUSTIFY
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_PARAGRAPH_LEFT
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_PARAGRAPH_RIGHT
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_PAUSE
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_PAUSE_CIRCLE
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_PENCIL_TWO
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_WARNING
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_PHONE
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_PHONE_TWO
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_IMAGE
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_IMAGES
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_PIE
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_PIN
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_PLAY
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_YOUTUBE
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_PLAY_CIRCLE
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_PLUS_CIRCLE
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_POWER_CORD
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_PREVIOUS
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_PRINT
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_PUBLISH
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_PURGE
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_PUZZLE
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_QUESTION
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_QUESTION_TWO
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_QUOTES_LEFT
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_QUOTES_RIGHT
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_BUBBLE_QUOTE
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_GENERIC
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_RADIO_UNCHECKED
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_SAVE_COPY
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_SAVE_NEW
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_SCISSORS
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_SCREEN
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_SCREWDRIVER
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_SEARCH
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_SHARE
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_SHARE_ALT
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_SHIELD
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_SHUFFLE
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_SIGNUP
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_SMILEY
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_SMILEY_TWO
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_SMILEY_NEUTRAL
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_SMILEY_NEUTRAL_TWO
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_SMILEY_SAD
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_SMILEY_SAD_TWO
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_SQUARE
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_STACK
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_STAR_TWO
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_STOP
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_STOP_CIRCLE
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_SUPPORT
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_SWITCH
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_TABLET
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_TAG
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_TAG_TWO
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_TAGS
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_TAGS_TWO
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_THUMBS_DOWN
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_THUMBS_UP
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_TREE
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_TREE_TWO
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_UNARCHIVE
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_UNBLOCK
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_UNDO
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_UNDO_TWO
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_UNFEATURED
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_UNLOCK
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_UNPUBLISH
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_UPLOAD
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_USER
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_USERS
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_VCARD
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_WAND
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_WARNING_CIRCLE
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_WRENCH
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_ZOOM_IN
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_ZOOM_OUT
+
+
+
+
+
+
+
+
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_SINGLE
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_LIST
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_BOTH
+
+
+
+
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_DEFAULT
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_SELECTION
+
+ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_ONLY_FUNCTION
+
+
+
+
+
+
+
+
-
+
+
+
+
+
+
+
+ JGLOBAL_USE_GLOBAL
+ JGLOBAL_INDEX_FOLLOW
+ JGLOBAL_NOINDEX_FOLLOW
+ JGLOBAL_INDEX_NOFOLLOW
+ JGLOBAL_NOINDEX_NOFOLLOW
+
+
+
+
+
+
+
diff --git a/admin/models/forms/language_translation.js b/admin/models/forms/language_translation.js
index 416274992..e1470b7e0 100644
--- a/admin/models/forms/language_translation.js
+++ b/admin/models/forms/language_translation.js
@@ -9,8 +9,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version @update number 43 of this MVC
- @build 16th September, 2017
+ @version @update number 45 of this MVC
+ @build 14th October, 2017
@created 3rd April, 2017
@package Component Builder
@subpackage language_translation.js
@@ -29,6 +29,10 @@ jQuery(document).ready(function($)
// set button to add more languages
addButton('language','components');
});
+function addData(result,where){
+ jQuery(where).closest('.control-group').parent().append(result);
+}
+
function addButton_server(type){
var getUrl = JRouter("index.php?option=com_componentbuilder&task=ajax.getButton&format=json&vdm="+vastDevMod);
if(token.length > 0 && type.length > 0){
@@ -42,13 +46,10 @@ function addButton_server(type){
jsonp: 'callback'
});
}
-function addButton(type, where){
+function addButton(type,where){
addButton_server(type).done(function(result) {
if(result){
- setButton(result, '#jform_'+where);
+ addData(result,'#jform_'+where);
}
- });
-}
-function setButton(result, where){
- jQuery(where).closest('.control-group').append(result);
-}
+ })
+}
diff --git a/admin/models/forms/layout.js b/admin/models/forms/layout.js
index 86cc72b82..9ec0a3fb6 100644
--- a/admin/models/forms/layout.js
+++ b/admin/models/forms/layout.js
@@ -23,42 +23,42 @@
/-----------------------------------------------------------------------------------------------------------------------------*/
// Some Global Values
-jform_vvvvvytvyx_required = false;
+jform_vvvvvyuvyw_required = false;
// Initial Script
jQuery(document).ready(function()
{
- var add_php_view_vvvvvyt = jQuery("#jform_add_php_view input[type='radio']:checked").val();
- vvvvvyt(add_php_view_vvvvvyt);
+ var add_php_view_vvvvvyu = jQuery("#jform_add_php_view input[type='radio']:checked").val();
+ vvvvvyu(add_php_view_vvvvvyu);
});
-// the vvvvvyt function
-function vvvvvyt(add_php_view_vvvvvyt)
+// the vvvvvyu function
+function vvvvvyu(add_php_view_vvvvvyu)
{
// set the function logic
- if (add_php_view_vvvvvyt == 1)
+ if (add_php_view_vvvvvyu == 1)
{
jQuery('#jform_php_view').closest('.control-group').show();
- if (jform_vvvvvytvyx_required)
+ if (jform_vvvvvyuvyw_required)
{
updateFieldRequired('php_view',0);
jQuery('#jform_php_view').prop('required','required');
jQuery('#jform_php_view').attr('aria-required',true);
jQuery('#jform_php_view').addClass('required');
- jform_vvvvvytvyx_required = false;
+ jform_vvvvvyuvyw_required = false;
}
}
else
{
jQuery('#jform_php_view').closest('.control-group').hide();
- if (!jform_vvvvvytvyx_required)
+ if (!jform_vvvvvyuvyw_required)
{
updateFieldRequired('php_view',1);
jQuery('#jform_php_view').removeAttr('required');
jQuery('#jform_php_view').removeAttr('aria-required');
jQuery('#jform_php_view').removeClass('required');
- jform_vvvvvytvyx_required = true;
+ jform_vvvvvyuvyw_required = true;
}
}
}
diff --git a/admin/models/forms/site_view.js b/admin/models/forms/site_view.js
index 1c85162af..74f730bf1 100644
--- a/admin/models/forms/site_view.js
+++ b/admin/models/forms/site_view.js
@@ -9,8 +9,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version @update number 54 of this MVC
- @build 27th September, 2017
+ @version @update number 63 of this MVC
+ @build 20th October, 2017
@created 29th May, 2015
@package Component Builder
@subpackage site_view.js
@@ -23,16 +23,16 @@
/-----------------------------------------------------------------------------------------------------------------------------*/
// Some Global Values
-jform_vvvvvyjvyl_required = false;
-jform_vvvvvykvym_required = false;
-jform_vvvvvylvyn_required = false;
-jform_vvvvvymvyo_required = false;
-jform_vvvvvynvyp_required = false;
-jform_vvvvvyovyq_required = false;
-jform_vvvvvypvyr_required = false;
-jform_vvvvvyqvys_required = false;
+jform_vvvvvyjvyk_required = false;
+jform_vvvvvykvyl_required = false;
+jform_vvvvvylvym_required = false;
+jform_vvvvvymvyn_required = false;
+jform_vvvvvynvyo_required = false;
+jform_vvvvvyovyp_required = false;
+jform_vvvvvypvyq_required = false;
+jform_vvvvvyqvyr_required = false;
+jform_vvvvvyrvys_required = false;
jform_vvvvvyrvyt_required = false;
-jform_vvvvvyrvyu_required = false;
// Initial Script
jQuery(document).ready(function()
@@ -63,6 +63,9 @@ jQuery(document).ready(function()
var add_custom_button_vvvvvyr = jQuery("#jform_add_custom_button input[type='radio']:checked").val();
vvvvvyr(add_custom_button_vvvvvyr);
+
+ var button_position_vvvvvys = jQuery("#jform_button_position").val();
+ vvvvvys(button_position_vvvvvys);
});
// the vvvvvyj function
@@ -72,26 +75,26 @@ function vvvvvyj(add_php_view_vvvvvyj)
if (add_php_view_vvvvvyj == 1)
{
jQuery('#jform_php_view').closest('.control-group').show();
- if (jform_vvvvvyjvyl_required)
+ if (jform_vvvvvyjvyk_required)
{
updateFieldRequired('php_view',0);
jQuery('#jform_php_view').prop('required','required');
jQuery('#jform_php_view').attr('aria-required',true);
jQuery('#jform_php_view').addClass('required');
- jform_vvvvvyjvyl_required = false;
+ jform_vvvvvyjvyk_required = false;
}
}
else
{
jQuery('#jform_php_view').closest('.control-group').hide();
- if (!jform_vvvvvyjvyl_required)
+ if (!jform_vvvvvyjvyk_required)
{
updateFieldRequired('php_view',1);
jQuery('#jform_php_view').removeAttr('required');
jQuery('#jform_php_view').removeAttr('aria-required');
jQuery('#jform_php_view').removeClass('required');
- jform_vvvvvyjvyl_required = true;
+ jform_vvvvvyjvyk_required = true;
}
}
}
@@ -103,26 +106,26 @@ function vvvvvyk(add_php_jview_display_vvvvvyk)
if (add_php_jview_display_vvvvvyk == 1)
{
jQuery('#jform_php_jview_display').closest('.control-group').show();
- if (jform_vvvvvykvym_required)
+ if (jform_vvvvvykvyl_required)
{
updateFieldRequired('php_jview_display',0);
jQuery('#jform_php_jview_display').prop('required','required');
jQuery('#jform_php_jview_display').attr('aria-required',true);
jQuery('#jform_php_jview_display').addClass('required');
- jform_vvvvvykvym_required = false;
+ jform_vvvvvykvyl_required = false;
}
}
else
{
jQuery('#jform_php_jview_display').closest('.control-group').hide();
- if (!jform_vvvvvykvym_required)
+ if (!jform_vvvvvykvyl_required)
{
updateFieldRequired('php_jview_display',1);
jQuery('#jform_php_jview_display').removeAttr('required');
jQuery('#jform_php_jview_display').removeAttr('aria-required');
jQuery('#jform_php_jview_display').removeClass('required');
- jform_vvvvvykvym_required = true;
+ jform_vvvvvykvyl_required = true;
}
}
}
@@ -134,26 +137,26 @@ function vvvvvyl(add_php_jview_vvvvvyl)
if (add_php_jview_vvvvvyl == 1)
{
jQuery('#jform_php_jview').closest('.control-group').show();
- if (jform_vvvvvylvyn_required)
+ if (jform_vvvvvylvym_required)
{
updateFieldRequired('php_jview',0);
jQuery('#jform_php_jview').prop('required','required');
jQuery('#jform_php_jview').attr('aria-required',true);
jQuery('#jform_php_jview').addClass('required');
- jform_vvvvvylvyn_required = false;
+ jform_vvvvvylvym_required = false;
}
}
else
{
jQuery('#jform_php_jview').closest('.control-group').hide();
- if (!jform_vvvvvylvyn_required)
+ if (!jform_vvvvvylvym_required)
{
updateFieldRequired('php_jview',1);
jQuery('#jform_php_jview').removeAttr('required');
jQuery('#jform_php_jview').removeAttr('aria-required');
jQuery('#jform_php_jview').removeClass('required');
- jform_vvvvvylvyn_required = true;
+ jform_vvvvvylvym_required = true;
}
}
}
@@ -165,26 +168,26 @@ function vvvvvym(add_php_document_vvvvvym)
if (add_php_document_vvvvvym == 1)
{
jQuery('#jform_php_document').closest('.control-group').show();
- if (jform_vvvvvymvyo_required)
+ if (jform_vvvvvymvyn_required)
{
updateFieldRequired('php_document',0);
jQuery('#jform_php_document').prop('required','required');
jQuery('#jform_php_document').attr('aria-required',true);
jQuery('#jform_php_document').addClass('required');
- jform_vvvvvymvyo_required = false;
+ jform_vvvvvymvyn_required = false;
}
}
else
{
jQuery('#jform_php_document').closest('.control-group').hide();
- if (!jform_vvvvvymvyo_required)
+ if (!jform_vvvvvymvyn_required)
{
updateFieldRequired('php_document',1);
jQuery('#jform_php_document').removeAttr('required');
jQuery('#jform_php_document').removeAttr('aria-required');
jQuery('#jform_php_document').removeClass('required');
- jform_vvvvvymvyo_required = true;
+ jform_vvvvvymvyn_required = true;
}
}
}
@@ -196,26 +199,26 @@ function vvvvvyn(add_css_document_vvvvvyn)
if (add_css_document_vvvvvyn == 1)
{
jQuery('#jform_css_document').closest('.control-group').show();
- if (jform_vvvvvynvyp_required)
+ if (jform_vvvvvynvyo_required)
{
updateFieldRequired('css_document',0);
jQuery('#jform_css_document').prop('required','required');
jQuery('#jform_css_document').attr('aria-required',true);
jQuery('#jform_css_document').addClass('required');
- jform_vvvvvynvyp_required = false;
+ jform_vvvvvynvyo_required = false;
}
}
else
{
jQuery('#jform_css_document').closest('.control-group').hide();
- if (!jform_vvvvvynvyp_required)
+ if (!jform_vvvvvynvyo_required)
{
updateFieldRequired('css_document',1);
jQuery('#jform_css_document').removeAttr('required');
jQuery('#jform_css_document').removeAttr('aria-required');
jQuery('#jform_css_document').removeClass('required');
- jform_vvvvvynvyp_required = true;
+ jform_vvvvvynvyo_required = true;
}
}
}
@@ -227,26 +230,26 @@ function vvvvvyo(add_js_document_vvvvvyo)
if (add_js_document_vvvvvyo == 1)
{
jQuery('#jform_js_document').closest('.control-group').show();
- if (jform_vvvvvyovyq_required)
+ if (jform_vvvvvyovyp_required)
{
updateFieldRequired('js_document',0);
jQuery('#jform_js_document').prop('required','required');
jQuery('#jform_js_document').attr('aria-required',true);
jQuery('#jform_js_document').addClass('required');
- jform_vvvvvyovyq_required = false;
+ jform_vvvvvyovyp_required = false;
}
}
else
{
jQuery('#jform_js_document').closest('.control-group').hide();
- if (!jform_vvvvvyovyq_required)
+ if (!jform_vvvvvyovyp_required)
{
updateFieldRequired('js_document',1);
jQuery('#jform_js_document').removeAttr('required');
jQuery('#jform_js_document').removeAttr('aria-required');
jQuery('#jform_js_document').removeClass('required');
- jform_vvvvvyovyq_required = true;
+ jform_vvvvvyovyp_required = true;
}
}
}
@@ -258,26 +261,26 @@ function vvvvvyp(add_css_vvvvvyp)
if (add_css_vvvvvyp == 1)
{
jQuery('#jform_css').closest('.control-group').show();
- if (jform_vvvvvypvyr_required)
+ if (jform_vvvvvypvyq_required)
{
updateFieldRequired('css',0);
jQuery('#jform_css').prop('required','required');
jQuery('#jform_css').attr('aria-required',true);
jQuery('#jform_css').addClass('required');
- jform_vvvvvypvyr_required = false;
+ jform_vvvvvypvyq_required = false;
}
}
else
{
jQuery('#jform_css').closest('.control-group').hide();
- if (!jform_vvvvvypvyr_required)
+ if (!jform_vvvvvypvyq_required)
{
updateFieldRequired('css',1);
jQuery('#jform_css').removeAttr('required');
jQuery('#jform_css').removeAttr('aria-required');
jQuery('#jform_css').removeClass('required');
- jform_vvvvvypvyr_required = true;
+ jform_vvvvvypvyq_required = true;
}
}
}
@@ -288,29 +291,29 @@ function vvvvvyq(add_php_ajax_vvvvvyq)
// set the function logic
if (add_php_ajax_vvvvvyq == 1)
{
- jQuery('#jform_ajax_input').closest('.control-group').show();
+ jQuery('#jform_ajax_input-lbl').closest('.control-group').show();
jQuery('#jform_php_ajaxmethod').closest('.control-group').show();
- if (jform_vvvvvyqvys_required)
+ if (jform_vvvvvyqvyr_required)
{
updateFieldRequired('php_ajaxmethod',0);
jQuery('#jform_php_ajaxmethod').prop('required','required');
jQuery('#jform_php_ajaxmethod').attr('aria-required',true);
jQuery('#jform_php_ajaxmethod').addClass('required');
- jform_vvvvvyqvys_required = false;
+ jform_vvvvvyqvyr_required = false;
}
}
else
{
- jQuery('#jform_ajax_input').closest('.control-group').hide();
+ jQuery('#jform_ajax_input-lbl').closest('.control-group').hide();
jQuery('#jform_php_ajaxmethod').closest('.control-group').hide();
- if (!jform_vvvvvyqvys_required)
+ if (!jform_vvvvvyqvyr_required)
{
updateFieldRequired('php_ajaxmethod',1);
jQuery('#jform_php_ajaxmethod').removeAttr('required');
jQuery('#jform_php_ajaxmethod').removeAttr('aria-required');
jQuery('#jform_php_ajaxmethod').removeClass('required');
- jform_vvvvvyqvys_required = true;
+ jform_vvvvvyqvyr_required = true;
}
}
}
@@ -321,52 +324,90 @@ function vvvvvyr(add_custom_button_vvvvvyr)
// set the function logic
if (add_custom_button_vvvvvyr == 1)
{
- jQuery('#jform_custom_button').closest('.control-group').show();
+ jQuery('#jform_custom_button-lbl').closest('.control-group').show();
jQuery('#jform_php_controller').closest('.control-group').show();
- if (jform_vvvvvyrvyt_required)
+ if (jform_vvvvvyrvys_required)
{
updateFieldRequired('php_controller',0);
jQuery('#jform_php_controller').prop('required','required');
jQuery('#jform_php_controller').attr('aria-required',true);
jQuery('#jform_php_controller').addClass('required');
- jform_vvvvvyrvyt_required = false;
+ jform_vvvvvyrvys_required = false;
}
jQuery('#jform_php_model').closest('.control-group').show();
- if (jform_vvvvvyrvyu_required)
+ if (jform_vvvvvyrvyt_required)
{
updateFieldRequired('php_model',0);
jQuery('#jform_php_model').prop('required','required');
jQuery('#jform_php_model').attr('aria-required',true);
jQuery('#jform_php_model').addClass('required');
- jform_vvvvvyrvyu_required = false;
+ jform_vvvvvyrvyt_required = false;
}
}
else
{
- jQuery('#jform_custom_button').closest('.control-group').hide();
+ jQuery('#jform_custom_button-lbl').closest('.control-group').hide();
jQuery('#jform_php_controller').closest('.control-group').hide();
- if (!jform_vvvvvyrvyt_required)
+ if (!jform_vvvvvyrvys_required)
{
updateFieldRequired('php_controller',1);
jQuery('#jform_php_controller').removeAttr('required');
jQuery('#jform_php_controller').removeAttr('aria-required');
jQuery('#jform_php_controller').removeClass('required');
- jform_vvvvvyrvyt_required = true;
+ jform_vvvvvyrvys_required = true;
}
jQuery('#jform_php_model').closest('.control-group').hide();
- if (!jform_vvvvvyrvyu_required)
+ if (!jform_vvvvvyrvyt_required)
{
updateFieldRequired('php_model',1);
jQuery('#jform_php_model').removeAttr('required');
jQuery('#jform_php_model').removeAttr('aria-required');
jQuery('#jform_php_model').removeClass('required');
- jform_vvvvvyrvyu_required = true;
+ jform_vvvvvyrvyt_required = true;
}
}
}
+// the vvvvvys function
+function vvvvvys(button_position_vvvvvys)
+{
+ if (isSet(button_position_vvvvvys) && button_position_vvvvvys.constructor !== Array)
+ {
+ var temp_vvvvvys = button_position_vvvvvys;
+ var button_position_vvvvvys = [];
+ button_position_vvvvvys.push(temp_vvvvvys);
+ }
+ else if (!isSet(button_position_vvvvvys))
+ {
+ var button_position_vvvvvys = [];
+ }
+ var button_position = button_position_vvvvvys.some(button_position_vvvvvys_SomeFunc);
+
+
+ // set this function logic
+ if (button_position)
+ {
+ jQuery('.note_custom_toolbar_placeholder').closest('.control-group').show();
+ }
+ else
+ {
+ jQuery('.note_custom_toolbar_placeholder').closest('.control-group').hide();
+ }
+}
+
+// the vvvvvys Some function
+function button_position_vvvvvys_SomeFunc(button_position_vvvvvys)
+{
+ // set the function logic
+ if (button_position_vvvvvys == 5)
+ {
+ return true;
+ }
+ return false;
+}
+
// update required fields
function updateFieldRequired(name,status)
{
diff --git a/admin/models/forms/site_view.xml b/admin/models/forms/site_view.xml
index c249239fb..1b07c1145 100644
--- a/admin/models/forms/site_view.xml
+++ b/admin/models/forms/site_view.xml
@@ -388,6 +388,152 @@
COM_COMPONENTBUILDER_SITE_VIEW_NO
+
+
+
+
+ COM_COMPONENTBUILDER_SITE_VIEW_YES
+
+ COM_COMPONENTBUILDER_SITE_VIEW_NO
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ COM_COMPONENTBUILDER_SITE_VIEW_INT
+
+ COM_COMPONENTBUILDER_SITE_VIEW_UINT
+
+ COM_COMPONENTBUILDER_SITE_VIEW_FLOAT
+
+ COM_COMPONENTBUILDER_SITE_VIEW_BOOLEAN
+
+ COM_COMPONENTBUILDER_SITE_VIEW_WORD
+
+ COM_COMPONENTBUILDER_SITE_VIEW_ALNUM
+
+ COM_COMPONENTBUILDER_SITE_VIEW_CMD
+
+ COM_COMPONENTBUILDER_SITE_VIEW_BASESIXTY_FOUR
+
+ COM_COMPONENTBUILDER_SITE_VIEW_STRING
+
+ COM_COMPONENTBUILDER_SITE_VIEW_HTML
+
+ COM_COMPONENTBUILDER_SITE_VIEW_ARRAY
+
+ COM_COMPONENTBUILDER_SITE_VIEW_PATH
+
+ COM_COMPONENTBUILDER_SITE_VIEW_USERNAME
+
+ COM_COMPONENTBUILDER_SITE_VIEW_RAW
+
+ COM_COMPONENTBUILDER_SITE_VIEW_UNKNOWN
+
+
+
+
+
+
+
COM_COMPONENTBUILDER_SITE_VIEW_CUSTOM
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- COM_COMPONENTBUILDER_SITE_VIEW_INT
-
- COM_COMPONENTBUILDER_SITE_VIEW_UINT
-
- COM_COMPONENTBUILDER_SITE_VIEW_FLOAT
-
- COM_COMPONENTBUILDER_SITE_VIEW_BOOLEAN
-
- COM_COMPONENTBUILDER_SITE_VIEW_WORD
-
- COM_COMPONENTBUILDER_SITE_VIEW_ALNUM
-
- COM_COMPONENTBUILDER_SITE_VIEW_CMD
-
- COM_COMPONENTBUILDER_SITE_VIEW_BASESIXTY_FOUR
-
- COM_COMPONENTBUILDER_SITE_VIEW_STRING
-
- COM_COMPONENTBUILDER_SITE_VIEW_HTML
-
- COM_COMPONENTBUILDER_SITE_VIEW_ARRAY
-
- COM_COMPONENTBUILDER_SITE_VIEW_PATH
-
- COM_COMPONENTBUILDER_SITE_VIEW_USERNAME
-
- COM_COMPONENTBUILDER_SITE_VIEW_RAW
-
- COM_COMPONENTBUILDER_SITE_VIEW_UNKNOWN
-
-
-
-
-
-
-
- COM_COMPONENTBUILDER_SITE_VIEW_YES
-
- COM_COMPONENTBUILDER_SITE_VIEW_NO
-
-
-
-
-
-
-
-
- COM_COMPONENTBUILDER_SITE_VIEW_YES
-
- COM_COMPONENTBUILDER_SITE_VIEW_NO
-
-
+
-
-
-
-
-
-
- COM_COMPONENTBUILDER_SITE_VIEW_JOOMLA
-
- COM_COMPONENTBUILDER_SITE_VIEW_ADDRESS
-
- COM_COMPONENTBUILDER_SITE_VIEW_PENCIL
-
- COM_COMPONENTBUILDER_SITE_VIEW_ARCHIVE
-
- COM_COMPONENTBUILDER_SITE_VIEW_ARROW_DOWN_TWO
-
- COM_COMPONENTBUILDER_SITE_VIEW_ARROW_DOWN_THREE
-
- COM_COMPONENTBUILDER_SITE_VIEW_ARROW_DOWN_FOUR
-
- COM_COMPONENTBUILDER_SITE_VIEW_ARROW_FIRST
-
- COM_COMPONENTBUILDER_SITE_VIEW_ARROW_LAST
-
- COM_COMPONENTBUILDER_SITE_VIEW_ARROW_LEFT_TWO
-
- COM_COMPONENTBUILDER_SITE_VIEW_ARROW_LEFT_THREE
-
- COM_COMPONENTBUILDER_SITE_VIEW_ARROW_LEFT_FOUR
-
- COM_COMPONENTBUILDER_SITE_VIEW_ARROW_RIGHT_TWO
-
- COM_COMPONENTBUILDER_SITE_VIEW_ARROW_RIGHT_THREE
-
- COM_COMPONENTBUILDER_SITE_VIEW_ARROW_RIGHT_FOUR
-
- COM_COMPONENTBUILDER_SITE_VIEW_ARROW_UP_TWO
-
- COM_COMPONENTBUILDER_SITE_VIEW_ARROW_UP_THREE
-
- COM_COMPONENTBUILDER_SITE_VIEW_ARROW_UP_FOUR
-
- COM_COMPONENTBUILDER_SITE_VIEW_ATTACHMENT
-
- COM_COMPONENTBUILDER_SITE_VIEW_REPLY
-
- COM_COMPONENTBUILDER_SITE_VIEW_BACKWARD_CIRCLE
-
- COM_COMPONENTBUILDER_SITE_VIEW_BAN_CIRCLE
-
- COM_COMPONENTBUILDER_SITE_VIEW_BARS
-
- COM_COMPONENTBUILDER_SITE_VIEW_BASKET
-
- COM_COMPONENTBUILDER_SITE_VIEW_BOOK
-
- COM_COMPONENTBUILDER_SITE_VIEW_BOOKMARK
-
- COM_COMPONENTBUILDER_SITE_VIEW_BOOKMARK_TWO
-
- COM_COMPONENTBUILDER_SITE_VIEW_BOX_ADD
-
- COM_COMPONENTBUILDER_SITE_VIEW_BOX_REMOVE
-
- COM_COMPONENTBUILDER_SITE_VIEW_BRIEFCASE
-
- COM_COMPONENTBUILDER_SITE_VIEW_WIFI
-
- COM_COMPONENTBUILDER_SITE_VIEW_BRUSH
-
- COM_COMPONENTBUILDER_SITE_VIEW_CALENDAR
-
- COM_COMPONENTBUILDER_SITE_VIEW_CALENDAR_TWO
-
- COM_COMPONENTBUILDER_SITE_VIEW_CALENDAR_THREE
-
- COM_COMPONENTBUILDER_SITE_VIEW_CAMERA
-
- COM_COMPONENTBUILDER_SITE_VIEW_CAMERA_TWO_VIDEO
-
- COM_COMPONENTBUILDER_SITE_VIEW_CANCEL_CIRCLE
-
- COM_COMPONENTBUILDER_SITE_VIEW_CART
-
- COM_COMPONENTBUILDER_SITE_VIEW_CHART
-
- COM_COMPONENTBUILDER_SITE_VIEW_CHECKBOX_PARTIAL
-
- COM_COMPONENTBUILDER_SITE_VIEW_CHECKBOX_UNCHECKED
-
- COM_COMPONENTBUILDER_SITE_VIEW_LOCK
-
- COM_COMPONENTBUILDER_SITE_VIEW_CHECKBOX
-
- COM_COMPONENTBUILDER_SITE_VIEW_CHECKMARK_TWO
-
- COM_COMPONENTBUILDER_SITE_VIEW_CHECKMARK_CIRCLE
-
- COM_COMPONENTBUILDER_SITE_VIEW_ARROW_DOWN
-
- COM_COMPONENTBUILDER_SITE_VIEW_ARROW_LEFT
-
- COM_COMPONENTBUILDER_SITE_VIEW_ARROW_RIGHT
-
- COM_COMPONENTBUILDER_SITE_VIEW_ARROW_UP
-
- COM_COMPONENTBUILDER_SITE_VIEW_CIRCLE
-
- COM_COMPONENTBUILDER_SITE_VIEW_CLOCK
-
- COM_COMPONENTBUILDER_SITE_VIEW_COGS
-
- COM_COMPONENTBUILDER_SITE_VIEW_COMMENT
-
- COM_COMPONENTBUILDER_SITE_VIEW_COMMENTS_TWO
-
- COM_COMPONENTBUILDER_SITE_VIEW_COMPASS
-
- COM_COMPONENTBUILDER_SITE_VIEW_CONTRACT
-
- COM_COMPONENTBUILDER_SITE_VIEW_CONTRACT_TWO
-
- COM_COMPONENTBUILDER_SITE_VIEW_CREDIT
-
- COM_COMPONENTBUILDER_SITE_VIEW_CREDIT_TWO
-
- COM_COMPONENTBUILDER_SITE_VIEW_CUBE
-
- COM_COMPONENTBUILDER_SITE_VIEW_DASHBOARD
-
- COM_COMPONENTBUILDER_SITE_VIEW_DATABASE
-
- COM_COMPONENTBUILDER_SITE_VIEW_DELETE
-
- COM_COMPONENTBUILDER_SITE_VIEW_DOWNLOAD
-
- COM_COMPONENTBUILDER_SITE_VIEW_ENTER
-
- COM_COMPONENTBUILDER_SITE_VIEW_ENVELOPE
-
- COM_COMPONENTBUILDER_SITE_VIEW_ENVELOPE_OPENED
-
- COM_COMPONENTBUILDER_SITE_VIEW_EQUALIZER
-
- COM_COMPONENTBUILDER_SITE_VIEW_EXIT
-
- COM_COMPONENTBUILDER_SITE_VIEW_EXPAND
-
- COM_COMPONENTBUILDER_SITE_VIEW_EXPAND_TWO
-
- COM_COMPONENTBUILDER_SITE_VIEW_EXPIRED
-
- COM_COMPONENTBUILDER_SITE_VIEW_EYE_CLOSE
-
- COM_COMPONENTBUILDER_SITE_VIEW_EYE_OPEN
-
- COM_COMPONENTBUILDER_SITE_VIEW_FEATURED
-
- COM_COMPONENTBUILDER_SITE_VIEW_FEED
-
- COM_COMPONENTBUILDER_SITE_VIEW_FILE
-
- COM_COMPONENTBUILDER_SITE_VIEW_FILE_TWO
-
- COM_COMPONENTBUILDER_SITE_VIEW_FILE_ADD
-
- COM_COMPONENTBUILDER_SITE_VIEW_FILE_CHECK
-
- COM_COMPONENTBUILDER_SITE_VIEW_FILE_MINUS
-
- COM_COMPONENTBUILDER_SITE_VIEW_FILE_REMOVE
-
- COM_COMPONENTBUILDER_SITE_VIEW_FILTER
-
- COM_COMPONENTBUILDER_SITE_VIEW_FIRST
-
- COM_COMPONENTBUILDER_SITE_VIEW_FLAG
-
- COM_COMPONENTBUILDER_SITE_VIEW_FLAG_THREE
-
- COM_COMPONENTBUILDER_SITE_VIEW_FOLDER_THREE
-
- COM_COMPONENTBUILDER_SITE_VIEW_FOLDER_CLOSE
-
- COM_COMPONENTBUILDER_SITE_VIEW_FOLDER_MINUS
-
- COM_COMPONENTBUILDER_SITE_VIEW_FOLDER_OPEN
-
- COM_COMPONENTBUILDER_SITE_VIEW_FOLDER_PLUS
-
- COM_COMPONENTBUILDER_SITE_VIEW_FOLDER_PLUS_TWO
-
- COM_COMPONENTBUILDER_SITE_VIEW_FOLDER_REMOVE
-
- COM_COMPONENTBUILDER_SITE_VIEW_FORWARD_TWO
-
- COM_COMPONENTBUILDER_SITE_VIEW_FORWARD_CIRCLE
-
- COM_COMPONENTBUILDER_SITE_VIEW_GRID
-
- COM_COMPONENTBUILDER_SITE_VIEW_GRID_TWO
-
- COM_COMPONENTBUILDER_SITE_VIEW_HEALTH
-
- COM_COMPONENTBUILDER_SITE_VIEW_HEART
-
- COM_COMPONENTBUILDER_SITE_VIEW_HEART_TWO
-
- COM_COMPONENTBUILDER_SITE_VIEW_HOME
-
- COM_COMPONENTBUILDER_SITE_VIEW_HOME_TWO
-
- COM_COMPONENTBUILDER_SITE_VIEW_INFO
-
- COM_COMPONENTBUILDER_SITE_VIEW_INFO_CIRCLE
-
- COM_COMPONENTBUILDER_SITE_VIEW_KEY
-
- COM_COMPONENTBUILDER_SITE_VIEW_LAMP
-
- COM_COMPONENTBUILDER_SITE_VIEW_LAST
-
- COM_COMPONENTBUILDER_SITE_VIEW_FLASH
-
- COM_COMPONENTBUILDER_SITE_VIEW_LINK
-
- COM_COMPONENTBUILDER_SITE_VIEW_LIST
-
- COM_COMPONENTBUILDER_SITE_VIEW_LIST_TWO
-
- COM_COMPONENTBUILDER_SITE_VIEW_LOCATION
-
- COM_COMPONENTBUILDER_SITE_VIEW_LOOP
-
- COM_COMPONENTBUILDER_SITE_VIEW_MENU
-
- COM_COMPONENTBUILDER_SITE_VIEW_MENU_TWO
-
- COM_COMPONENTBUILDER_SITE_VIEW_MENU_THREE
-
- COM_COMPONENTBUILDER_SITE_VIEW_MINUS
-
- COM_COMPONENTBUILDER_SITE_VIEW_MINUS_SIGN
-
- COM_COMPONENTBUILDER_SITE_VIEW_MOBILE
-
- COM_COMPONENTBUILDER_SITE_VIEW_MOVE
-
- COM_COMPONENTBUILDER_SITE_VIEW_MUSIC
-
- COM_COMPONENTBUILDER_SITE_VIEW_PLUS
-
- COM_COMPONENTBUILDER_SITE_VIEW_NEXT
-
- COM_COMPONENTBUILDER_SITE_VIEW_NOTIFICATION
-
- COM_COMPONENTBUILDER_SITE_VIEW_NOTIFICATION_CIRCLE
-
- COM_COMPONENTBUILDER_SITE_VIEW_COG
-
- COM_COMPONENTBUILDER_SITE_VIEW_NEW_TAB
-
- COM_COMPONENTBUILDER_SITE_VIEW_NEW_TAB_TWO
-
- COM_COMPONENTBUILDER_SITE_VIEW_PALETTE
-
- COM_COMPONENTBUILDER_SITE_VIEW_PARAGRAPH_CENTER
-
- COM_COMPONENTBUILDER_SITE_VIEW_PARAGRAPH_JUSTIFY
-
- COM_COMPONENTBUILDER_SITE_VIEW_PARAGRAPH_LEFT
-
- COM_COMPONENTBUILDER_SITE_VIEW_PARAGRAPH_RIGHT
-
- COM_COMPONENTBUILDER_SITE_VIEW_PAUSE
-
- COM_COMPONENTBUILDER_SITE_VIEW_PAUSE_CIRCLE
-
- COM_COMPONENTBUILDER_SITE_VIEW_PENCIL_TWO
-
- COM_COMPONENTBUILDER_SITE_VIEW_WARNING
-
- COM_COMPONENTBUILDER_SITE_VIEW_PHONE
-
- COM_COMPONENTBUILDER_SITE_VIEW_PHONE_TWO
-
- COM_COMPONENTBUILDER_SITE_VIEW_IMAGE
-
- COM_COMPONENTBUILDER_SITE_VIEW_IMAGES
-
- COM_COMPONENTBUILDER_SITE_VIEW_PIE
-
- COM_COMPONENTBUILDER_SITE_VIEW_PIN
-
- COM_COMPONENTBUILDER_SITE_VIEW_PLAY
-
- COM_COMPONENTBUILDER_SITE_VIEW_YOUTUBE
-
- COM_COMPONENTBUILDER_SITE_VIEW_PLAY_CIRCLE
-
- COM_COMPONENTBUILDER_SITE_VIEW_PLUS_CIRCLE
-
- COM_COMPONENTBUILDER_SITE_VIEW_POWER_CORD
-
- COM_COMPONENTBUILDER_SITE_VIEW_PREVIOUS
-
- COM_COMPONENTBUILDER_SITE_VIEW_PRINT
-
- COM_COMPONENTBUILDER_SITE_VIEW_PUBLISH
-
- COM_COMPONENTBUILDER_SITE_VIEW_PURGE
-
- COM_COMPONENTBUILDER_SITE_VIEW_PUZZLE
-
- COM_COMPONENTBUILDER_SITE_VIEW_QUESTION
-
- COM_COMPONENTBUILDER_SITE_VIEW_QUESTION_TWO
-
- COM_COMPONENTBUILDER_SITE_VIEW_QUOTES_LEFT
-
- COM_COMPONENTBUILDER_SITE_VIEW_QUOTES_RIGHT
-
- COM_COMPONENTBUILDER_SITE_VIEW_BUBBLE_QUOTE
-
- COM_COMPONENTBUILDER_SITE_VIEW_GENERIC
-
- COM_COMPONENTBUILDER_SITE_VIEW_RADIO_UNCHECKED
-
- COM_COMPONENTBUILDER_SITE_VIEW_SAVE_COPY
-
- COM_COMPONENTBUILDER_SITE_VIEW_SAVE_NEW
-
- COM_COMPONENTBUILDER_SITE_VIEW_SCISSORS
-
- COM_COMPONENTBUILDER_SITE_VIEW_SCREEN
-
- COM_COMPONENTBUILDER_SITE_VIEW_SCREWDRIVER
-
- COM_COMPONENTBUILDER_SITE_VIEW_SEARCH
-
- COM_COMPONENTBUILDER_SITE_VIEW_SHARE
-
- COM_COMPONENTBUILDER_SITE_VIEW_SHARE_ALT
-
- COM_COMPONENTBUILDER_SITE_VIEW_SHIELD
-
- COM_COMPONENTBUILDER_SITE_VIEW_SHUFFLE
-
- COM_COMPONENTBUILDER_SITE_VIEW_SIGNUP
-
- COM_COMPONENTBUILDER_SITE_VIEW_SMILEY
-
- COM_COMPONENTBUILDER_SITE_VIEW_SMILEY_TWO
-
- COM_COMPONENTBUILDER_SITE_VIEW_SMILEY_NEUTRAL
-
- COM_COMPONENTBUILDER_SITE_VIEW_SMILEY_NEUTRAL_TWO
-
- COM_COMPONENTBUILDER_SITE_VIEW_SMILEY_SAD
-
- COM_COMPONENTBUILDER_SITE_VIEW_SMILEY_SAD_TWO
-
- COM_COMPONENTBUILDER_SITE_VIEW_SQUARE
-
- COM_COMPONENTBUILDER_SITE_VIEW_STACK
-
- COM_COMPONENTBUILDER_SITE_VIEW_STAR_TWO
-
- COM_COMPONENTBUILDER_SITE_VIEW_STOP
-
- COM_COMPONENTBUILDER_SITE_VIEW_STOP_CIRCLE
-
- COM_COMPONENTBUILDER_SITE_VIEW_SUPPORT
-
- COM_COMPONENTBUILDER_SITE_VIEW_SWITCH
-
- COM_COMPONENTBUILDER_SITE_VIEW_TABLET
-
- COM_COMPONENTBUILDER_SITE_VIEW_TAG
-
- COM_COMPONENTBUILDER_SITE_VIEW_TAG_TWO
-
- COM_COMPONENTBUILDER_SITE_VIEW_TAGS
-
- COM_COMPONENTBUILDER_SITE_VIEW_TAGS_TWO
-
- COM_COMPONENTBUILDER_SITE_VIEW_THUMBS_DOWN
-
- COM_COMPONENTBUILDER_SITE_VIEW_THUMBS_UP
-
- COM_COMPONENTBUILDER_SITE_VIEW_TREE
-
- COM_COMPONENTBUILDER_SITE_VIEW_TREE_TWO
-
- COM_COMPONENTBUILDER_SITE_VIEW_UNARCHIVE
-
- COM_COMPONENTBUILDER_SITE_VIEW_UNBLOCK
-
- COM_COMPONENTBUILDER_SITE_VIEW_UNDO
-
- COM_COMPONENTBUILDER_SITE_VIEW_UNDO_TWO
-
- COM_COMPONENTBUILDER_SITE_VIEW_UNFEATURED
-
- COM_COMPONENTBUILDER_SITE_VIEW_UNLOCK
-
- COM_COMPONENTBUILDER_SITE_VIEW_UNPUBLISH
-
- COM_COMPONENTBUILDER_SITE_VIEW_UPLOAD
-
- COM_COMPONENTBUILDER_SITE_VIEW_USER
-
- COM_COMPONENTBUILDER_SITE_VIEW_USERS
-
- COM_COMPONENTBUILDER_SITE_VIEW_VCARD
-
- COM_COMPONENTBUILDER_SITE_VIEW_WAND
-
- COM_COMPONENTBUILDER_SITE_VIEW_WARNING_CIRCLE
-
- COM_COMPONENTBUILDER_SITE_VIEW_WRENCH
-
- COM_COMPONENTBUILDER_SITE_VIEW_ZOOM_IN
-
- COM_COMPONENTBUILDER_SITE_VIEW_ZOOM_OUT
-
-
-
-
-
-
-
-
-
- COM_COMPONENTBUILDER_SITE_VIEW_SINGLE
-
- COM_COMPONENTBUILDER_SITE_VIEW_LIST
-
- COM_COMPONENTBUILDER_SITE_VIEW_BOTH
-
-
-
-
-
- COM_COMPONENTBUILDER_SITE_VIEW_DEFAULT
-
- COM_COMPONENTBUILDER_SITE_VIEW_SELECTION
-
- COM_COMPONENTBUILDER_SITE_VIEW_ONLY_FUNCTION
-
-
-
+
+
+
+
+
+ COM_COMPONENTBUILDER_SITE_VIEW_JOOMLA
+
+ COM_COMPONENTBUILDER_SITE_VIEW_ADDRESS
+
+ COM_COMPONENTBUILDER_SITE_VIEW_PENCIL
+
+ COM_COMPONENTBUILDER_SITE_VIEW_ARCHIVE
+
+ COM_COMPONENTBUILDER_SITE_VIEW_ARROW_DOWN_TWO
+
+ COM_COMPONENTBUILDER_SITE_VIEW_ARROW_DOWN_THREE
+
+ COM_COMPONENTBUILDER_SITE_VIEW_ARROW_DOWN_FOUR
+
+ COM_COMPONENTBUILDER_SITE_VIEW_ARROW_FIRST
+
+ COM_COMPONENTBUILDER_SITE_VIEW_ARROW_LAST
+
+ COM_COMPONENTBUILDER_SITE_VIEW_ARROW_LEFT_TWO
+
+ COM_COMPONENTBUILDER_SITE_VIEW_ARROW_LEFT_THREE
+
+ COM_COMPONENTBUILDER_SITE_VIEW_ARROW_LEFT_FOUR
+
+ COM_COMPONENTBUILDER_SITE_VIEW_ARROW_RIGHT_TWO
+
+ COM_COMPONENTBUILDER_SITE_VIEW_ARROW_RIGHT_THREE
+
+ COM_COMPONENTBUILDER_SITE_VIEW_ARROW_RIGHT_FOUR
+
+ COM_COMPONENTBUILDER_SITE_VIEW_ARROW_UP_TWO
+
+ COM_COMPONENTBUILDER_SITE_VIEW_ARROW_UP_THREE
+
+ COM_COMPONENTBUILDER_SITE_VIEW_ARROW_UP_FOUR
+
+ COM_COMPONENTBUILDER_SITE_VIEW_ATTACHMENT
+
+ COM_COMPONENTBUILDER_SITE_VIEW_REPLY
+
+ COM_COMPONENTBUILDER_SITE_VIEW_BACKWARD_CIRCLE
+
+ COM_COMPONENTBUILDER_SITE_VIEW_BAN_CIRCLE
+
+ COM_COMPONENTBUILDER_SITE_VIEW_BARS
+
+ COM_COMPONENTBUILDER_SITE_VIEW_BASKET
+
+ COM_COMPONENTBUILDER_SITE_VIEW_BOOK
+
+ COM_COMPONENTBUILDER_SITE_VIEW_BOOKMARK
+
+ COM_COMPONENTBUILDER_SITE_VIEW_BOOKMARK_TWO
+
+ COM_COMPONENTBUILDER_SITE_VIEW_BOX_ADD
+
+ COM_COMPONENTBUILDER_SITE_VIEW_BOX_REMOVE
+
+ COM_COMPONENTBUILDER_SITE_VIEW_BRIEFCASE
+
+ COM_COMPONENTBUILDER_SITE_VIEW_WIFI
+
+ COM_COMPONENTBUILDER_SITE_VIEW_BRUSH
+
+ COM_COMPONENTBUILDER_SITE_VIEW_CALENDAR
+
+ COM_COMPONENTBUILDER_SITE_VIEW_CALENDAR_TWO
+
+ COM_COMPONENTBUILDER_SITE_VIEW_CALENDAR_THREE
+
+ COM_COMPONENTBUILDER_SITE_VIEW_CAMERA
+
+ COM_COMPONENTBUILDER_SITE_VIEW_CAMERA_TWO_VIDEO
+
+ COM_COMPONENTBUILDER_SITE_VIEW_CANCEL_CIRCLE
+
+ COM_COMPONENTBUILDER_SITE_VIEW_CART
+
+ COM_COMPONENTBUILDER_SITE_VIEW_CHART
+
+ COM_COMPONENTBUILDER_SITE_VIEW_CHECKBOX_PARTIAL
+
+ COM_COMPONENTBUILDER_SITE_VIEW_CHECKBOX_UNCHECKED
+
+ COM_COMPONENTBUILDER_SITE_VIEW_LOCK
+
+ COM_COMPONENTBUILDER_SITE_VIEW_CHECKBOX
+
+ COM_COMPONENTBUILDER_SITE_VIEW_CHECKMARK_TWO
+
+ COM_COMPONENTBUILDER_SITE_VIEW_CHECKMARK_CIRCLE
+
+ COM_COMPONENTBUILDER_SITE_VIEW_ARROW_DOWN
+
+ COM_COMPONENTBUILDER_SITE_VIEW_ARROW_LEFT
+
+ COM_COMPONENTBUILDER_SITE_VIEW_ARROW_RIGHT
+
+ COM_COMPONENTBUILDER_SITE_VIEW_ARROW_UP
+
+ COM_COMPONENTBUILDER_SITE_VIEW_CIRCLE
+
+ COM_COMPONENTBUILDER_SITE_VIEW_CLOCK
+
+ COM_COMPONENTBUILDER_SITE_VIEW_COGS
+
+ COM_COMPONENTBUILDER_SITE_VIEW_COMMENT
+
+ COM_COMPONENTBUILDER_SITE_VIEW_COMMENTS_TWO
+
+ COM_COMPONENTBUILDER_SITE_VIEW_COMPASS
+
+ COM_COMPONENTBUILDER_SITE_VIEW_CONTRACT
+
+ COM_COMPONENTBUILDER_SITE_VIEW_CONTRACT_TWO
+
+ COM_COMPONENTBUILDER_SITE_VIEW_CREDIT
+
+ COM_COMPONENTBUILDER_SITE_VIEW_CREDIT_TWO
+
+ COM_COMPONENTBUILDER_SITE_VIEW_CUBE
+
+ COM_COMPONENTBUILDER_SITE_VIEW_DASHBOARD
+
+ COM_COMPONENTBUILDER_SITE_VIEW_DATABASE
+
+ COM_COMPONENTBUILDER_SITE_VIEW_DELETE
+
+ COM_COMPONENTBUILDER_SITE_VIEW_DOWNLOAD
+
+ COM_COMPONENTBUILDER_SITE_VIEW_ENTER
+
+ COM_COMPONENTBUILDER_SITE_VIEW_ENVELOPE
+
+ COM_COMPONENTBUILDER_SITE_VIEW_ENVELOPE_OPENED
+
+ COM_COMPONENTBUILDER_SITE_VIEW_EQUALIZER
+
+ COM_COMPONENTBUILDER_SITE_VIEW_EXIT
+
+ COM_COMPONENTBUILDER_SITE_VIEW_EXPAND
+
+ COM_COMPONENTBUILDER_SITE_VIEW_EXPAND_TWO
+
+ COM_COMPONENTBUILDER_SITE_VIEW_EXPIRED
+
+ COM_COMPONENTBUILDER_SITE_VIEW_EYE_CLOSE
+
+ COM_COMPONENTBUILDER_SITE_VIEW_EYE_OPEN
+
+ COM_COMPONENTBUILDER_SITE_VIEW_FEATURED
+
+ COM_COMPONENTBUILDER_SITE_VIEW_FEED
+
+ COM_COMPONENTBUILDER_SITE_VIEW_FILE
+
+ COM_COMPONENTBUILDER_SITE_VIEW_FILE_TWO
+
+ COM_COMPONENTBUILDER_SITE_VIEW_FILE_ADD
+
+ COM_COMPONENTBUILDER_SITE_VIEW_FILE_CHECK
+
+ COM_COMPONENTBUILDER_SITE_VIEW_FILE_MINUS
+
+ COM_COMPONENTBUILDER_SITE_VIEW_FILE_REMOVE
+
+ COM_COMPONENTBUILDER_SITE_VIEW_FILTER
+
+ COM_COMPONENTBUILDER_SITE_VIEW_FIRST
+
+ COM_COMPONENTBUILDER_SITE_VIEW_FLAG
+
+ COM_COMPONENTBUILDER_SITE_VIEW_FLAG_THREE
+
+ COM_COMPONENTBUILDER_SITE_VIEW_FOLDER_THREE
+
+ COM_COMPONENTBUILDER_SITE_VIEW_FOLDER_CLOSE
+
+ COM_COMPONENTBUILDER_SITE_VIEW_FOLDER_MINUS
+
+ COM_COMPONENTBUILDER_SITE_VIEW_FOLDER_OPEN
+
+ COM_COMPONENTBUILDER_SITE_VIEW_FOLDER_PLUS
+
+ COM_COMPONENTBUILDER_SITE_VIEW_FOLDER_PLUS_TWO
+
+ COM_COMPONENTBUILDER_SITE_VIEW_FOLDER_REMOVE
+
+ COM_COMPONENTBUILDER_SITE_VIEW_FORWARD_TWO
+
+ COM_COMPONENTBUILDER_SITE_VIEW_FORWARD_CIRCLE
+
+ COM_COMPONENTBUILDER_SITE_VIEW_GRID
+
+ COM_COMPONENTBUILDER_SITE_VIEW_GRID_TWO
+
+ COM_COMPONENTBUILDER_SITE_VIEW_HEALTH
+
+ COM_COMPONENTBUILDER_SITE_VIEW_HEART
+
+ COM_COMPONENTBUILDER_SITE_VIEW_HEART_TWO
+
+ COM_COMPONENTBUILDER_SITE_VIEW_HOME
+
+ COM_COMPONENTBUILDER_SITE_VIEW_HOME_TWO
+
+ COM_COMPONENTBUILDER_SITE_VIEW_INFO
+
+ COM_COMPONENTBUILDER_SITE_VIEW_INFO_CIRCLE
+
+ COM_COMPONENTBUILDER_SITE_VIEW_KEY
+
+ COM_COMPONENTBUILDER_SITE_VIEW_LAMP
+
+ COM_COMPONENTBUILDER_SITE_VIEW_LAST
+
+ COM_COMPONENTBUILDER_SITE_VIEW_FLASH
+
+ COM_COMPONENTBUILDER_SITE_VIEW_LINK
+
+ COM_COMPONENTBUILDER_SITE_VIEW_LIST
+
+ COM_COMPONENTBUILDER_SITE_VIEW_LIST_TWO
+
+ COM_COMPONENTBUILDER_SITE_VIEW_LOCATION
+
+ COM_COMPONENTBUILDER_SITE_VIEW_LOOP
+
+ COM_COMPONENTBUILDER_SITE_VIEW_MENU
+
+ COM_COMPONENTBUILDER_SITE_VIEW_MENU_TWO
+
+ COM_COMPONENTBUILDER_SITE_VIEW_MENU_THREE
+
+ COM_COMPONENTBUILDER_SITE_VIEW_MINUS
+
+ COM_COMPONENTBUILDER_SITE_VIEW_MINUS_SIGN
+
+ COM_COMPONENTBUILDER_SITE_VIEW_MOBILE
+
+ COM_COMPONENTBUILDER_SITE_VIEW_MOVE
+
+ COM_COMPONENTBUILDER_SITE_VIEW_MUSIC
+
+ COM_COMPONENTBUILDER_SITE_VIEW_PLUS
+
+ COM_COMPONENTBUILDER_SITE_VIEW_NEXT
+
+ COM_COMPONENTBUILDER_SITE_VIEW_NOTIFICATION
+
+ COM_COMPONENTBUILDER_SITE_VIEW_NOTIFICATION_CIRCLE
+
+ COM_COMPONENTBUILDER_SITE_VIEW_COG
+
+ COM_COMPONENTBUILDER_SITE_VIEW_NEW_TAB
+
+ COM_COMPONENTBUILDER_SITE_VIEW_NEW_TAB_TWO
+
+ COM_COMPONENTBUILDER_SITE_VIEW_PALETTE
+
+ COM_COMPONENTBUILDER_SITE_VIEW_PARAGRAPH_CENTER
+
+ COM_COMPONENTBUILDER_SITE_VIEW_PARAGRAPH_JUSTIFY
+
+ COM_COMPONENTBUILDER_SITE_VIEW_PARAGRAPH_LEFT
+
+ COM_COMPONENTBUILDER_SITE_VIEW_PARAGRAPH_RIGHT
+
+ COM_COMPONENTBUILDER_SITE_VIEW_PAUSE
+
+ COM_COMPONENTBUILDER_SITE_VIEW_PAUSE_CIRCLE
+
+ COM_COMPONENTBUILDER_SITE_VIEW_PENCIL_TWO
+
+ COM_COMPONENTBUILDER_SITE_VIEW_WARNING
+
+ COM_COMPONENTBUILDER_SITE_VIEW_PHONE
+
+ COM_COMPONENTBUILDER_SITE_VIEW_PHONE_TWO
+
+ COM_COMPONENTBUILDER_SITE_VIEW_IMAGE
+
+ COM_COMPONENTBUILDER_SITE_VIEW_IMAGES
+
+ COM_COMPONENTBUILDER_SITE_VIEW_PIE
+
+ COM_COMPONENTBUILDER_SITE_VIEW_PIN
+
+ COM_COMPONENTBUILDER_SITE_VIEW_PLAY
+
+ COM_COMPONENTBUILDER_SITE_VIEW_YOUTUBE
+
+ COM_COMPONENTBUILDER_SITE_VIEW_PLAY_CIRCLE
+
+ COM_COMPONENTBUILDER_SITE_VIEW_PLUS_CIRCLE
+
+ COM_COMPONENTBUILDER_SITE_VIEW_POWER_CORD
+
+ COM_COMPONENTBUILDER_SITE_VIEW_PREVIOUS
+
+ COM_COMPONENTBUILDER_SITE_VIEW_PRINT
+
+ COM_COMPONENTBUILDER_SITE_VIEW_PUBLISH
+
+ COM_COMPONENTBUILDER_SITE_VIEW_PURGE
+
+ COM_COMPONENTBUILDER_SITE_VIEW_PUZZLE
+
+ COM_COMPONENTBUILDER_SITE_VIEW_QUESTION
+
+ COM_COMPONENTBUILDER_SITE_VIEW_QUESTION_TWO
+
+ COM_COMPONENTBUILDER_SITE_VIEW_QUOTES_LEFT
+
+ COM_COMPONENTBUILDER_SITE_VIEW_QUOTES_RIGHT
+
+ COM_COMPONENTBUILDER_SITE_VIEW_BUBBLE_QUOTE
+
+ COM_COMPONENTBUILDER_SITE_VIEW_GENERIC
+
+ COM_COMPONENTBUILDER_SITE_VIEW_RADIO_UNCHECKED
+
+ COM_COMPONENTBUILDER_SITE_VIEW_SAVE_COPY
+
+ COM_COMPONENTBUILDER_SITE_VIEW_SAVE_NEW
+
+ COM_COMPONENTBUILDER_SITE_VIEW_SCISSORS
+
+ COM_COMPONENTBUILDER_SITE_VIEW_SCREEN
+
+ COM_COMPONENTBUILDER_SITE_VIEW_SCREWDRIVER
+
+ COM_COMPONENTBUILDER_SITE_VIEW_SEARCH
+
+ COM_COMPONENTBUILDER_SITE_VIEW_SHARE
+
+ COM_COMPONENTBUILDER_SITE_VIEW_SHARE_ALT
+
+ COM_COMPONENTBUILDER_SITE_VIEW_SHIELD
+
+ COM_COMPONENTBUILDER_SITE_VIEW_SHUFFLE
+
+ COM_COMPONENTBUILDER_SITE_VIEW_SIGNUP
+
+ COM_COMPONENTBUILDER_SITE_VIEW_SMILEY
+
+ COM_COMPONENTBUILDER_SITE_VIEW_SMILEY_TWO
+
+ COM_COMPONENTBUILDER_SITE_VIEW_SMILEY_NEUTRAL
+
+ COM_COMPONENTBUILDER_SITE_VIEW_SMILEY_NEUTRAL_TWO
+
+ COM_COMPONENTBUILDER_SITE_VIEW_SMILEY_SAD
+
+ COM_COMPONENTBUILDER_SITE_VIEW_SMILEY_SAD_TWO
+
+ COM_COMPONENTBUILDER_SITE_VIEW_SQUARE
+
+ COM_COMPONENTBUILDER_SITE_VIEW_STACK
+
+ COM_COMPONENTBUILDER_SITE_VIEW_STAR_TWO
+
+ COM_COMPONENTBUILDER_SITE_VIEW_STOP
+
+ COM_COMPONENTBUILDER_SITE_VIEW_STOP_CIRCLE
+
+ COM_COMPONENTBUILDER_SITE_VIEW_SUPPORT
+
+ COM_COMPONENTBUILDER_SITE_VIEW_SWITCH
+
+ COM_COMPONENTBUILDER_SITE_VIEW_TABLET
+
+ COM_COMPONENTBUILDER_SITE_VIEW_TAG
+
+ COM_COMPONENTBUILDER_SITE_VIEW_TAG_TWO
+
+ COM_COMPONENTBUILDER_SITE_VIEW_TAGS
+
+ COM_COMPONENTBUILDER_SITE_VIEW_TAGS_TWO
+
+ COM_COMPONENTBUILDER_SITE_VIEW_THUMBS_DOWN
+
+ COM_COMPONENTBUILDER_SITE_VIEW_THUMBS_UP
+
+ COM_COMPONENTBUILDER_SITE_VIEW_TREE
+
+ COM_COMPONENTBUILDER_SITE_VIEW_TREE_TWO
+
+ COM_COMPONENTBUILDER_SITE_VIEW_UNARCHIVE
+
+ COM_COMPONENTBUILDER_SITE_VIEW_UNBLOCK
+
+ COM_COMPONENTBUILDER_SITE_VIEW_UNDO
+
+ COM_COMPONENTBUILDER_SITE_VIEW_UNDO_TWO
+
+ COM_COMPONENTBUILDER_SITE_VIEW_UNFEATURED
+
+ COM_COMPONENTBUILDER_SITE_VIEW_UNLOCK
+
+ COM_COMPONENTBUILDER_SITE_VIEW_UNPUBLISH
+
+ COM_COMPONENTBUILDER_SITE_VIEW_UPLOAD
+
+ COM_COMPONENTBUILDER_SITE_VIEW_USER
+
+ COM_COMPONENTBUILDER_SITE_VIEW_USERS
+
+ COM_COMPONENTBUILDER_SITE_VIEW_VCARD
+
+ COM_COMPONENTBUILDER_SITE_VIEW_WAND
+
+ COM_COMPONENTBUILDER_SITE_VIEW_WARNING_CIRCLE
+
+ COM_COMPONENTBUILDER_SITE_VIEW_WRENCH
+
+ COM_COMPONENTBUILDER_SITE_VIEW_ZOOM_IN
+
+ COM_COMPONENTBUILDER_SITE_VIEW_ZOOM_OUT
+
+
+
+
+
+
+
+
+
+ COM_COMPONENTBUILDER_SITE_VIEW_SINGLE
+
+ COM_COMPONENTBUILDER_SITE_VIEW_LIST
+
+ COM_COMPONENTBUILDER_SITE_VIEW_BOTH
+
+
+
+
+
+ COM_COMPONENTBUILDER_SITE_VIEW_DEFAULT
+
+ COM_COMPONENTBUILDER_SITE_VIEW_SELECTION
+
+ COM_COMPONENTBUILDER_SITE_VIEW_ONLY_FUNCTION
+
+
tags->getTagIds($item->id, 'com_componentbuilder.ftp');
}
}
- $this->sales_server_ftpupdate_server_ftp_vvwf = $item->id;
+ $this->sales_server_ftpupdate_server_ftp_vvwd = $item->id;
return $item;
}
@@ -122,7 +122,7 @@ class ComponentbuilderModelFtp extends JModelAdmin
*
* @return mixed An array of data items on success, false on failure.
*/
- public function getWaelinked_components()
+ public function getWaclinked_components()
{
// Get the user object.
$user = JFactory::getUser();
@@ -136,15 +136,15 @@ class ComponentbuilderModelFtp extends JModelAdmin
// From the componentbuilder_joomla_component table
$query->from($db->quoteName('#__componentbuilder_joomla_component', 'a'));
- // Filter by sales_server_ftpupdate_server_ftp_vvwf global.
- $sales_server_ftpupdate_server_ftp_vvwf = $this->sales_server_ftpupdate_server_ftp_vvwf;
- if (is_numeric($sales_server_ftpupdate_server_ftp_vvwf ))
+ // Filter by sales_server_ftpupdate_server_ftp_vvwd global.
+ $sales_server_ftpupdate_server_ftp_vvwd = $this->sales_server_ftpupdate_server_ftp_vvwd;
+ if (is_numeric($sales_server_ftpupdate_server_ftp_vvwd ))
{
- $query->where('a.sales_server_ftp = ' . (int) $sales_server_ftpupdate_server_ftp_vvwf . ' OR a.update_server_ftp = ' . (int) $sales_server_ftpupdate_server_ftp_vvwf, ' OR');
+ $query->where('a.sales_server_ftp = ' . (int) $sales_server_ftpupdate_server_ftp_vvwd . ' OR a.update_server_ftp = ' . (int) $sales_server_ftpupdate_server_ftp_vvwd, ' OR');
}
- elseif (is_string($sales_server_ftpupdate_server_ftp_vvwf))
+ elseif (is_string($sales_server_ftpupdate_server_ftp_vvwd))
{
- $query->where('a.sales_server_ftp = ' . $db->quote($sales_server_ftpupdate_server_ftp_vvwf) . ' OR a.update_server_ftp = ' . $db->quote($sales_server_ftpupdate_server_ftp_vvwf), ' OR');
+ $query->where('a.sales_server_ftp = ' . $db->quote($sales_server_ftpupdate_server_ftp_vvwd) . ' OR a.update_server_ftp = ' . $db->quote($sales_server_ftpupdate_server_ftp_vvwd), ' OR');
}
else
{
@@ -176,6 +176,23 @@ class ComponentbuilderModelFtp extends JModelAdmin
if ($db->getNumRows())
{
$items = $db->loadObjectList();
+
+ // set values to display correctly.
+ if (ComponentbuilderHelper::checkArray($items))
+ {
+ // get user object.
+ $user = JFactory::getUser();
+ foreach ($items as $nr => &$item)
+ {
+ $access = ($user->authorise('joomla_component.access', 'com_componentbuilder.joomla_component.' . (int) $item->id) && $user->authorise('joomla_component.access', 'com_componentbuilder'));
+ if (!$access)
+ {
+ unset($items[$nr]);
+ continue;
+ }
+
+ }
+ }
return $items;
}
return false;
diff --git a/admin/models/ftps.php b/admin/models/ftps.php
index 57057dcc0..a6ac2d4d0 100644
--- a/admin/models/ftps.php
+++ b/admin/models/ftps.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version @update number 10 of this MVC
- @build 24th August, 2017
+ @version @update number 11 of this MVC
+ @build 16th October, 2017
@created 23rd August, 2017
@package Component Builder
@subpackage ftps.php
diff --git a/admin/models/help_documents.php b/admin/models/help_documents.php
index 76cc18fdd..507d2fcdb 100644
--- a/admin/models/help_documents.php
+++ b/admin/models/help_documents.php
@@ -240,6 +240,21 @@ class ComponentbuilderModelHelp_documents extends JModelList
{
$query->where('(a.published = 0 OR a.published = 1)');
}
+
+ // Join over the asset groups.
+ $query->select('ag.title AS access_level');
+ $query->join('LEFT', '#__viewlevels AS ag ON ag.id = a.access');
+ // Filter by access level.
+ if ($access = $this->getState('filter.access'))
+ {
+ $query->where('a.access = ' . (int) $access);
+ }
+ // Implement View Level Access
+ if (!$user->authorise('core.options', 'com_componentbuilder'))
+ {
+ $groups = implode(',', $user->getAuthorisedViewLevels());
+ $query->where('a.access IN (' . $groups . ')');
+ }
// Filter by search.
$search = $this->getState('filter.search');
if (!empty($search))
@@ -311,6 +326,12 @@ class ComponentbuilderModelHelp_documents extends JModelList
// From the componentbuilder_help_document table
$query->from($db->quoteName('#__componentbuilder_help_document', 'a'));
$query->where('a.id IN (' . implode(',',$pks) . ')');
+ // Implement View Level Access
+ if (!$user->authorise('core.options', 'com_componentbuilder'))
+ {
+ $groups = implode(',', $user->getAuthorisedViewLevels());
+ $query->where('a.access IN (' . $groups . ')');
+ }
// Order the results by ordering
$query->order('a.ordering ASC');
diff --git a/admin/models/import.php b/admin/models/import.php
index 3095cf240..2bddbf916 100644
--- a/admin/models/import.php
+++ b/admin/models/import.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage import.php
diff --git a/admin/models/import_joomla_components.php b/admin/models/import_joomla_components.php
index 943f4ed76..dfedd2285 100644
--- a/admin/models/import_joomla_components.php
+++ b/admin/models/import_joomla_components.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage import_joomla_components.php
@@ -81,15 +81,18 @@ class ComponentbuilderModelImport_joomla_components extends JModelLegacy
}
protected $app;
- protected $target = false;
- protected $newID = array();
- protected $forceUpdate = 0;
- protected $hasKey = 0;
- protected $sleutle = null;
- protected $updateAfter = array('field' => array(), 'adminview' => array());
- protected $fieldTypes = array();
- protected $isMultiple = array();
- protected $specialValue = false;
+ protected $dir = false;
+ protected $data = false;
+ protected $target = false;
+ protected $newID = array();
+ protected $forceUpdate = 0;
+ protected $hasKey = 0;
+ protected $sleutle = null;
+ protected $updateAfter = array('field' => array(), 'adminview' => array());
+ protected $divergedDataMover = array();
+ protected $fieldTypes = array();
+ protected $isMultiple = array();
+ protected $specialValue = false;
/**
* Import an spreadsheet from either folder, url or upload.
@@ -240,11 +243,11 @@ class ComponentbuilderModelImport_joomla_components extends JModelLegacy
// get the zip adapter
$zip = JArchive::getAdapter('zip');
// set the directory name
- $dir = JFile::stripExt($package['dir']);
+ $this->dir = JFile::stripExt($package['dir']);
// unzip the package
- $zip->extract($package['dir'], $dir);
+ $zip->extract($package['dir'], $this->dir);
// check for database file
- $infoFile = $dir . '/info.vdm';
+ $infoFile = $this->dir . '/info.vdm';
if (JFile::exists($infoFile))
{
// load the data
@@ -263,7 +266,7 @@ class ComponentbuilderModelImport_joomla_components extends JModelLegacy
}
}
}
- ComponentbuilderHelper::removeFolder($dir);
+ ComponentbuilderHelper::removeFolder($this->dir);
}
}
return false;
@@ -548,15 +551,15 @@ class ComponentbuilderModelImport_joomla_components extends JModelLegacy
if (JFile::exists($package['dir']))
{
// set the directory name
- $dir = JFile::stripExt($package['dir']);
+ $this->dir = JFile::stripExt($package['dir']);
// check for database file
- $dbFile = $dir . '/db.vdm';
+ $dbFile = $this->dir . '/db.vdm';
if (!JFile::exists($dbFile))
{
// get the zip adapter
$zip = JArchive::getAdapter('zip');
// unzip the package
- $zip->extract($package['dir'], $dir);
+ $zip->extract($package['dir'], $this->dir);
}
// check again
if (JFile::exists($dbFile))
@@ -565,21 +568,21 @@ class ComponentbuilderModelImport_joomla_components extends JModelLegacy
if ($data = @file_get_contents($dbFile))
{
// prep the data
- if ($data = $this->extractData($data))
+ if ($this->extractData($data))
{
- if (isset($data['joomla_component']) && ComponentbuilderHelper::checkArray($data['joomla_component']))
+ if (isset($this->data['joomla_component']) && ComponentbuilderHelper::checkArray($this->data['joomla_component']))
{
// save the smart data
- if ($this->saveSmartComponents($data, $dir))
+ if ($this->saveSmartComponents())
{
- ComponentbuilderHelper::removeFolder($dir);
+ ComponentbuilderHelper::removeFolder($this->dir);
return true;
}
}
}
}
}
- ComponentbuilderHelper::removeFolder($dir);
+ ComponentbuilderHelper::removeFolder($this->dir);
}
}
}
@@ -616,7 +619,9 @@ class ComponentbuilderModelImport_joomla_components extends JModelLegacy
$data = @unserialize($data);
if ($data !== false)
{
- return $data;
+ // set the data global
+ $this->data = $data;
+ return true;
}
$this->app->enqueueMessage(JText::_('COM_COMPONENTBUILDER_HTWODATA_IS_CORRUPTHTWOTHIS_COULD_BE_DUE_TO_KEY_ERROR_OR_BROKEN_PACKAGE'), 'error');
return false;
@@ -628,86 +633,96 @@ class ComponentbuilderModelImport_joomla_components extends JModelLegacy
/**
* Save the smart components
*
- * @param array $data The values to save
- *
* @return boolean false on failure
*
**/
- protected function saveSmartComponents($data, $dir)
+ protected function saveSmartComponents()
{
// get user object
$this->user = JFactory::getUser();
// set some defaults
$this->today = JFactory::getDate()->toSql();
// we first store the fieldtype
- if (!$this->saveSmartItems($data, 'fieldtype'))
+ if (!$this->saveSmartItems('fieldtype'))
{
return false;
}
// we then store the field
- if (!$this->saveSmartItems($data, 'field'))
+ if (!$this->saveSmartItems('field'))
{
return false;
}
// we then store the admin_view
- if (!$this->saveSmartItems($data, 'admin_view'))
+ if (!$this->saveSmartItems('admin_view'))
{
return false;
}
// we then store the snippet
- if (!$this->saveSmartItems($data, 'snippet'))
+ if (!$this->saveSmartItems('snippet'))
{
return false;
}
// we then store the dynamic_get
- if (!$this->saveSmartItems($data, 'dynamic_get'))
+ if (!$this->saveSmartItems('dynamic_get'))
{
return false;
}
// we then store the custom_admin_view
- if (!$this->saveSmartItems($data, 'custom_admin_view'))
+ if (!$this->saveSmartItems('custom_admin_view'))
{
return false;
}
// we then store the site_view
- if (!$this->saveSmartItems($data, 'site_view'))
+ if (!$this->saveSmartItems('site_view'))
{
return false;
}
// we then store the template
- if (!$this->saveSmartItems($data, 'template'))
+ if (!$this->saveSmartItems('template'))
{
return false;
}
// we then store the layout
- if (!$this->saveSmartItems($data, 'layout'))
+ if (!$this->saveSmartItems('layout'))
{
return false;
}
// we then store the components
- if (!$this->saveSmartItems($data, 'joomla_component'))
+ if (!$this->saveSmartItems('joomla_component'))
{
return false;
}
// we then store the languages
- if (!$this->saveSmartItems($data, 'language'))
+ if (!$this->saveSmartItems('language'))
{
return false;
}
// we then store the language translations
- if (!$this->saveSmartItems($data, 'language_translation'))
+ if (!$this->saveSmartItems('language_translation'))
{
return false;
}
// we then store the custom_code
- if (!$this->saveSmartItems($data, 'custom_code'))
+ if (!$this->saveSmartItems('custom_code'))
+ {
+ return false;
+ }
+ // we then store the admin_fields
+ if (!$this->saveSmartItems('admin_fields'))
+ {
+ return false;
+ }
+ // we then store the admin_fields_conditions
+ if (!$this->saveSmartItems('admin_fields_conditions'))
{
return false;
}
// do a after all run on all items that need it
$this->updateAfter();
+ // finally move the old datasets
+ $this->moveDivergedData();
// lets move all the files to its correct location
- if (!$this->moveSmartStuff($dir))
+ if (!$this->moveSmartStuff())
{
return false;
}
@@ -715,17 +730,102 @@ class ComponentbuilderModelImport_joomla_components extends JModelLegacy
}
/**
- * Move the smart content (files & folders) into place
+ * Save the smart items
*
- * @param string $dir The path to the folders
+ * @param string $type The type of values
*
* @return boolean false on failure
*
**/
- protected function moveSmartStuff($dir)
+ protected function saveSmartItems($table)
+ {
+ $success = true;
+ if (isset($this->data[$table]) && ComponentbuilderHelper::checkArray($this->data[$table]))
+ {
+ // get global action permissions
+ $canDo = ComponentbuilderHelper::getActions($table);
+ $canEdit = $canDo->get('core.edit');
+ $canState = $canDo->get('core.edit.state');
+ $canCreate = $canDo->get('core.create');
+ // set id keeper
+ if (!isset($this->newID[$table]))
+ {
+ $this->newID[$table] = array();
+ }
+ foreach ($this->data[$table] as $item)
+ {
+ $oldID = (int) $item->id;
+ // first check if exist
+ if ($local = $this->getLocalItem($item, $table, 1))
+ {
+ $dbDate = strtotime($item->modified);
+ $localDate = strtotime($local->modified);
+ // okay we have it local (check if the version is newer)
+ if ($this->forceUpdate == 1 || $dbDate > $localDate)
+ {
+ // add some local values to item to combine
+ if ($table === 'language_translation')
+ {
+ $item->localComponents = $local->components;
+ $item->localTranslation = $local->translation;
+ }
+ // make sure we have the correct ID set
+ $item->id = $local->id;
+ // yes it is newer, lets update (or is being forced)
+ if ($canEdit && $id = $this->updateLocalItem($item, $table, $canState))
+ {
+ // we had success in
+ $this->newID[$table][$oldID] = (int) $id;
+ // to debug if your mismatching is to much (TODO) we can add a debugging switch later
+ // $this->app->enqueueMessage(JText::sprintf('COM_COMPONENTBUILDER_BSB_HAS_BEEN_UPDATED', $table.' id:'.$oldID . '->' . $id), 'success');
+ }
+ else
+ {
+ $notice = '!';
+ if (!$canEdit)
+ {
+ $notice = JText::sprintf("COM_COMPONENTBUILDER__SINCE_YOU_DONT_HAVE_PERMISSION_TO_EDIT_S", $table);
+ }
+ $this->app->enqueueMessage(JText::sprintf('COM_COMPONENTBUILDER_BSB_COULD_NOT_BE_IMPORTEDS', $table.' id:'.$oldID, $notice), 'error');
+ }
+ }
+ // insure to load the local ID to link imported values with it
+ if (!isset($this->newID[$table][$oldID]))
+ {
+ $this->newID[$table][$oldID] = (int) $local->id;
+ }
+ }
+ elseif ($canCreate && $id = $this->addLocalItem($item, $table))
+ {
+ // not found in local db so add
+ $this->newID[$table][$oldID] = (int) $id;
+ // to debug if your mismatching is to much
+ // $this->app->enqueueMessage(JText::sprintf('COM_COMPONENTBUILDER_BSB_HAS_BEEN_IMPORTED', $table.' id:'.$oldID . '->' . $id), 'success');
+ }
+ else
+ {
+ $notice = '!';
+ if (!$canCreate)
+ {
+ $notice = JText::sprintf("COM_COMPONENTBUILDER__SINCE_YOU_DONT_HAVE_PERMISSION_TO_CREATE_S", $table);
+ }
+ $this->app->enqueueMessage(JText::sprintf('COM_COMPONENTBUILDER_BSB_COULD_NOT_BE_IMPORTEDS', $table.' id:'.$oldID, $notice), 'error');
+ }
+ }
+ }
+ return $success;
+ }
+
+ /**
+ * Move the smart content (files & folders) into place
+ *
+ * @return boolean false on failure
+ *
+ **/
+ protected function moveSmartStuff()
{
// make sure to first unlock files
- $this->unLockFiles($dir);
+ $this->unLockFiles($this->dir);
// set params
$params = JComponentHelper::getParams('com_componentbuilder');
// set custom folder path
@@ -733,7 +833,7 @@ class ComponentbuilderModelImport_joomla_components extends JModelLegacy
$imagesPath = str_replace('//', '/', JPATH_SITE . '/images');
$success = true;
// check if we have custom files
- $customDir = str_replace('//', '/', $dir . '/custom');
+ $customDir = str_replace('//', '/', $this->dir . '/custom');
if (JFolder::exists($customDir))
{
// great we have some custom stuff lets move it
@@ -744,7 +844,7 @@ class ComponentbuilderModelImport_joomla_components extends JModelLegacy
}
}
// check if we have images
- $imageDir = str_replace('//', '/', $dir . '/images');
+ $imageDir = str_replace('//', '/', $this->dir . '/images');
if (JFolder::exists($imageDir))
{
// great we have some images lets move them
@@ -762,7 +862,7 @@ class ComponentbuilderModelImport_joomla_components extends JModelLegacy
*
* @return void
*/
- protected function unLockFiles(&$dir)
+ protected function unLockFiles()
{
// lock the data if set
if(ComponentbuilderHelper::checkString($this->sleutle) && strlen($this->sleutle) == 32)
@@ -771,14 +871,14 @@ class ComponentbuilderModelImport_joomla_components extends JModelLegacy
// we must first store the current working directory
$joomla = getcwd();
// setup the type path
- $customPath = str_replace('//', '/', $dir . '/custom');
+ $customPath = str_replace('//', '/', $this->dir . '/custom');
// go to the custom folder if found
if (JFolder::exists($customPath))
{
$this->unlock($customPath, $unlocker);
}
// setup the type path
- $imagesPath = str_replace('//', '/', $dir . '/images');
+ $imagesPath = str_replace('//', '/', $this->dir . '/images');
// go to the custom folder if found
if (JFolder::exists($imagesPath))
{
@@ -817,92 +917,9 @@ class ComponentbuilderModelImport_joomla_components extends JModelLegacy
}
}
- /**
- * Save the smart items
- *
- * @param array $items The values to save
- * @param string $type The type of values
- *
- * @return boolean false on failure
- *
- **/
- protected function saveSmartItems(&$items, $type)
- {
- $success = true;
- if (isset($items[$type]) && ComponentbuilderHelper::checkArray($items[$type]))
- {
- // get global action permissions
- $canDo = ComponentbuilderHelper::getActions($type);
- $canEdit = $canDo->get('core.edit');
- $canState = $canDo->get('core.edit.state');
- $canCreate = $canDo->get('core.create');
- // set id keeper
- if (!isset($this->newID[$type]))
- {
- $this->newID[$type] = array();
- }
- foreach ($items[$type] as $item)
- {
- $oldID = $item->id;
- // first check if exist
- if ($local = $this->getLocalItem($item, $type, 1))
- {
- $dbDate = strtotime($item->modified);
- $localDate = strtotime($local->modified);
- // okay we have it local (check if the version is newer)
- if ($this->forceUpdate == 1 || $dbDate > $localDate)
- {
- // add some local values to item to combine
- if ($type === 'language_translation')
- {
- $item->localComponents = $local->components;
- $item->localTranslation = $local->translation;
- }
- // make sure we have the correct ID set
- $item->id = $local->id;
- // yes it is newer, lets update (or is being forced)
- if ($canEdit && $id = $this->updateLocalItem($item, $type, $canState))
- {
- $this->newID[$type][$oldID] = $id;
- }
- else
- {
- $notice = '!';
- if (!$canEdit)
- {
- $notice = JText::sprintf("COM_COMPONENTBUILDER__SINCE_YOU_DONT_HAVE_PERMISSION_TO_EDIT_S", $type);
- }
- $this->app->enqueueMessage(JText::sprintf('COM_COMPONENTBUILDER_BSB_COULD_NOT_BE_IMPORTEDS', $type.' id:'.$oldID, $notice), 'error');
- }
- }
- else
- {
- $this->newID[$type][$oldID] = $local->id;
- }
- }
- elseif ($canCreate && $id = $this->addLocalItem($item, $type))
- {
- // not found in local db so add
- $this->newID[$type][$oldID] = $id;
- }
- else
- {
- $notice = '!';
- if (!$canCreate)
- {
- $notice = JText::sprintf("COM_COMPONENTBUILDER__SINCE_YOU_DONT_HAVE_PERMISSION_TO_CREATE_S", $type);
- }
- $this->app->enqueueMessage(JText::sprintf('COM_COMPONENTBUILDER_BSB_COULD_NOT_BE_IMPORTEDS', $type.' id:'.$oldID, $notice), 'error');
- }
- }
- }
- return $success;
- }
-
/**
* Update some items after all
*
- *
* @return void
*
**/
@@ -941,13 +958,13 @@ class ComponentbuilderModelImport_joomla_components extends JModelLegacy
$bucket = array();
foreach ($fieldsSets as $id)
{
- if (isset($this->newID['field'][$id]))
+ if (isset($this->newID['field'][(int) $id]))
{
- $bucket[] = $this->newID['field'][$id];
+ $bucket[] = $this->newID['field'][(int) $id];
}
else
{
- $this->app->enqueueMessage(JText::sprintf('COM_COMPONENTBUILDER_BREPEATABLEB_IDS_MISMATCH_IN_BFIELDSB_AND_WAS_EMREMOVEDEM_FROM_THE_FIELD', $id, $field), 'warning');
+ $this->app->enqueueMessage(JText::sprintf('COM_COMPONENTBUILDER_BMULTIPLE_FIELD_REPEATABLE_MODEB_IDS_MISMATCH_IN_BFIELDSB_AND_WAS_EMREMOVEDEM_FROM_THE_FIELD', $id, $field), 'warning');
}
}
if (ComponentbuilderHelper::checkArray($bucket))
@@ -975,37 +992,59 @@ class ComponentbuilderModelImport_joomla_components extends JModelLegacy
// update the addlinked_views
foreach ($this->updateAfter['adminview'] as $adminview)
{
- if (isset($this->newID['admin_view'][$adminview]))
+ if (isset($this->newID['admin_view'][(int) $adminview]))
{
- $adminview = $this->newID['admin_view'][$adminview];
+ $adminview = $this->newID['admin_view'][(int) $adminview];
}
// get the field from db
if ($addlinked_views = ComponentbuilderHelper::getVar('admin_view', $adminview, 'id', 'addlinked_views'))
- {
+ {
if (ComponentbuilderHelper::checkJson($addlinked_views))
{
$addlinked_views = json_decode($addlinked_views, true);
- if (ComponentbuilderHelper::checkArray($addlinked_views['adminview']))
+ // convert Repetable Fields
+ if (ComponentbuilderHelper::checkArray($addlinked_views) && isset($addlinked_views['adminview']))
{
- foreach ($addlinked_views['adminview'] as $nr => $admin)
- {
- if (isset($this->newID['admin_view'][$admin]))
- {
- $addlinked_views['adminview'][$nr] = $this->newID['admin_view'][$admin];
- }
- else
- {
- $addlinked_views['adminview'][$nr] = '';
- $this->app->enqueueMessage(JText::sprintf('COM_COMPONENTBUILDER_BLINKED_VIEWB_IDS_MISMATCH_IN_BADMIN_VIEWSB_AND_WAS_EMREMOVEDEM_FROM_THE_LINKED_VIEWS', $admin, $adminview), 'warning');
- }
- }
- // update the fields
- $object = new stdClass;
- $object->id = $adminview;
- $object->addlinked_views = json_encode($addlinked_views);
- // update the admin view
- $this->_db->updateObject('#__componentbuilder_admin_view', $object, 'id');
+ $addlinked_views = $this->convertRepeatable($addlinked_views, 'addlinked_views');
}
+ // update the view IDs
+ if (ComponentbuilderHelper::checkArray($addlinked_views))
+ {
+ // only update the view IDs
+ $addlinked_views = $this->updateSubformIDs($addlinked_views, 'admin_view', array('adminview' => 'admin_view'));
+ }
+ // update the fields
+ $object = new stdClass;
+ $object->id = $adminview;
+ $object->addlinked_views = json_encode($addlinked_views);
+ // update the admin view
+ $this->_db->updateObject('#__componentbuilder_admin_view', $object, 'id');
+ }
+ }
+ }
+ }
+ }
+
+ /**
+ * Moving of diverged data
+ *
+ * @return void
+ *
+ **/
+ protected function moveDivergedData()
+ {
+ // check if there is data to move
+ if (ComponentbuilderHelper::checkArray($this->divergedDataMover))
+ {
+ foreach($this->divergedDataMover as $table => $values)
+ {
+ foreach($values as $value)
+ {
+ // first check if exist (only add if it does not)
+ if (!$this->getLocalItem($value, $table, 1))
+ {
+ // add the diverged data
+ $this->addLocalItem($value, $table);
}
}
}
@@ -1013,28 +1052,292 @@ class ComponentbuilderModelImport_joomla_components extends JModelLegacy
}
/*
- * Convert repeatable field
+ * Convert repeatable field to subform
*
- * @param array $array The array
- * @param string $name The main field name
+ * @param array $item The array to convert
+ * @param string $name The main field name
+ * @param array $updater The updater (dynamic) option
*
* @return array
*/
- protected function convertRepeatable($array, $name)
+ protected function convertRepeatable($item, $name)
{
- $bucket = array();
- foreach ($array as $key => $values)
+ // continue only if we have an array
+ if (ComponentbuilderHelper::checkArray($item))
{
- foreach ($values as $nr => $value)
+ $bucket = array();
+ foreach ($item as $key => $values)
{
- if (!isset($bucket[$name . $nr]) || !ComponentbuilderHelper::checkArray($bucket[$name . $nr]))
+ foreach ($values as $nr => $value)
{
- $bucket[$name . $nr] = array();
+ if (!isset($bucket[$name . $nr]) || !ComponentbuilderHelper::checkArray($bucket[$name . $nr]))
+ {
+ $bucket[$name . $nr] = array();
+ }
+ $bucket[$name . $nr][$key] = $value;
}
- $bucket[$name . $nr][$key] = $value;
+ }
+ return $bucket;
+ }
+ return $item;
+ }
+
+ /*
+ * Convert repeatable field to subform
+ *
+ * @param object $item The item to update
+ * @param json $updater The fields to check and update
+ *
+ * @return void
+ */
+ protected function convertRepeatableFields($object, $updater)
+ {
+ // update the repeatable fields
+ foreach ($updater as $up => $sleutel)
+ {
+ if (isset($object->{$up}) && ComponentbuilderHelper::checkJson($object->{$up}))
+ {
+ $updateArray = json_decode($object->{$up}, true);
+ // check if this is old values for repeatable fields
+ if (ComponentbuilderHelper::checkArray($updateArray) && isset($updateArray[$sleutel]))
+ {
+ // load it back
+ $object->{$up} = json_encode($this->convertRepeatable($updateArray, $up));
+ }
+ }
+ elseif (isset($object->{$up}))
+ {
+ unset($object->{$up});
}
}
- return $bucket;
+ return $object;
+ }
+
+ /**
+ * Update Many Subform IDs
+ *
+ * @param array $values The values to update the IDs in
+ * @param string $table The table these values belong to
+ * @param array $targets The target to update and its type
+ *
+ * @return void
+ */
+ protected function updateSubformsIDs(&$item, $table, $targets)
+ {
+ // update the repeatable fields
+ foreach ($targets as $field => $targetArray)
+ {
+ if (isset($item->{$field}) && ComponentbuilderHelper::checkJson($item->{$field}))
+ {
+ $updateArray = json_decode($item->{$field}, true);
+ if (ComponentbuilderHelper::checkArray($updateArray))
+ {
+ // load it back
+ $item->{$field} = json_encode($this->updateSubformIDs($updateArray, $table, $targetArray));
+ }
+ }
+ }
+ }
+
+ /**
+ * Update One Subform IDs
+ *
+ * @param array $values The values to update the IDs in
+ * @param string $table The table these values belong to
+ * @param array $targets The target to update and its type
+ *
+ * @return void
+ */
+ protected function updateSubformIDs($values, $table, $targets)
+ {
+ $isJson = false;
+ if (ComponentbuilderHelper::checkJson($values))
+ {
+ $values = json_decode($values, true);
+ $isJson = true;
+ }
+ // now update the fields
+ if (ComponentbuilderHelper::checkArray($values))
+ {
+ foreach ($values as $nr => &$value)
+ {
+ foreach ($targets as $target => $target_type)
+ {
+ if (isset($value[$target]))
+ {
+ $value = $this->setNewID($value, $target, $target_type, $table);
+ }
+ }
+ }
+ }
+ if ($isJson)
+ {
+ return json_encode($values);
+ }
+ return $values;
+ }
+
+ /**
+ * Set the new ID
+ *
+ * @param array $item The values to update the IDs in
+ * @param string $target The target field
+ * @param string $type The table of that field
+ * @param string $table The table these values belong to
+ *
+ * @return boolean True on success
+ *
+ */
+ protected function setNewID($item, $target, $type, $table)
+ {
+ $isJson = false;
+ if (ComponentbuilderHelper::checkJson($item))
+ {
+ $item = json_decode($item, true);
+ $isJson = true;
+ }
+ if (ComponentbuilderHelper::checkArray($item))
+ {
+ // set item ID
+ $itemId = (isset($item['id'])) ? $item['id'] : 'newItem';
+ // check if it is json
+ $isJsonTarget = false;
+ if (ComponentbuilderHelper::checkJson($item[$target]))
+ {
+ $item[$target] = json_decode($item[$target], true);
+ $isJsonTarget = true;
+ }
+ // update the target
+ if (ComponentbuilderHelper::checkString($item[$target]) || is_numeric($item[$target]))
+ {
+ if ($item[$target] == 0)
+ {
+ $item[$target] = '';
+ }
+ elseif (isset($this->newID[$type][(int) $item[$target]]))
+ {
+ $item[$target] = $this->newID[$type][(int) $item[$target]];
+ }
+ else
+ {
+ $this->enqueueIdMismatchMessage($item[$target], $itemId, $target, $type, $table);
+ $item[$target] = '';
+ }
+ }
+ elseif (ComponentbuilderHelper::checkArray($item[$target]))
+ {
+ // the bucket to load the items back
+ $bucket = array();
+ foreach ($item[$target] as $nr => $id)
+ {
+ if ($id == 0)
+ {
+ continue;
+ }
+ elseif ((ComponentbuilderHelper::checkString($id) || is_numeric($id)) && isset($this->newID[$type][(int) $id]))
+ {
+ $bucket[] = $this->newID[$type][(int) $id];
+ }
+ else
+ {
+ $this->enqueueIdMismatchMessage($id, $itemId, $target, $type, $table);
+ }
+ }
+ // set ids back
+ if (ComponentbuilderHelper::checkArray($bucket))
+ {
+ $item[$target] = $bucket;
+ }
+ }
+ // convert back to json
+ if ($isJsonTarget)
+ {
+ $item[$target] = json_encode($item[$target]);
+ }
+ }
+ elseif (ComponentbuilderHelper::checkObject($item))
+ {
+ // set item ID
+ $itemId = (isset($item->id)) ? $item->id : 'newItem';
+ // check if it is json
+ $isJsonTarget = false;
+ if (ComponentbuilderHelper::checkJson($item->{$target}))
+ {
+ $item->{$target} = json_decode($item->{$target}, true);
+ $isJsonTarget = true;
+ }
+ // update the target
+ if (ComponentbuilderHelper::checkString($item->{$target}) || is_numeric($item->{$target}))
+ {
+ if ($item->{$target} == 0)
+ {
+ $item->{$target} = '';
+ }
+ elseif (isset($this->newID[$type][(int) $item->{$target}]))
+ {
+ $item->{$target} = $this->newID[$type][(int) $item->{$target}];
+ }
+ else
+ {
+ $this->enqueueIdMismatchMessage($item->{$target}, $itemId, $target, $type, $table);
+ $item->{$target} = '';
+ }
+ }
+ elseif (ComponentbuilderHelper::checkArray($item->{$target}))
+ {
+ // the bucket to load the items back
+ $bucket = array();
+ foreach ($item->{$target} as $id)
+ {
+ if ($id == 0)
+ {
+ continue;
+ }
+ elseif ((ComponentbuilderHelper::checkString($id) || is_numeric($id)) && isset($this->newID[$type][(int) $id]))
+ {
+ $bucket[] = $this->newID[$type][(int) $id];
+ }
+ else
+ {
+ $this->enqueueIdMismatchMessage($id, $itemId, $target, $type, $table);
+ $bucket[] = '';
+ }
+ }
+ // set ids back
+ if (ComponentbuilderHelper::checkArray($bucket))
+ {
+ $item->{$target} = $bucket;
+ }
+ }
+ // convert back to json
+ if ($isJsonTarget)
+ {
+ $item->{$target} = json_encode($item->{$target});
+ }
+ }
+ // return as json if received as json
+ if ($isJson)
+ {
+ return json_encode($item);
+ }
+ return $item;
+ }
+
+ /**
+ * Set the new ID
+ *
+ * @param int $id The field ID
+ * @param int $itemId The item ID
+ * @param string $target The target field
+ * @param string $type The table of that field
+ * @param string $table The table these values belong to
+ *
+ * @return void
+ *
+ */
+ protected function enqueueIdMismatchMessage($id, $itemId, $target, $type, $table)
+ {
+ $this->app->enqueueMessage(JText::sprintf('COM_COMPONENTBUILDER_BSBS_IN_BSB_HAS_ID_MISMATCH_SO_THE_BSB_WAS_REMOVED', ComponentbuilderHelper::safeString($type, 'Ww'), ComponentbuilderHelper::safeString($target, 'Ww') , ComponentbuilderHelper::safeString($table, 'w').':'.$itemId, $type . ':' . $id), 'warning');
}
/**
@@ -1066,11 +1369,20 @@ class ComponentbuilderModelImport_joomla_components extends JModelLegacy
// do the id fix for the new ids
switch($type)
{
+ case 'fieldtype':
+ // repeatable fields to update
+ $updaterR = array(
+ // repeatablefield => checker
+ 'properties' => 'name'
+ );
+ // update the repeatable fields
+ $item = $this->convertRepeatableFields($item, $updaterR);
+ break;
case 'field':
// update the fieldtype
- if (isset($item->fieldtype) && is_numeric($item->fieldtype) && $item->fieldtype > 0 && isset($this->newID['fieldtype'][$item->fieldtype]))
+ if (isset($item->fieldtype) && is_numeric($item->fieldtype) && $item->fieldtype > 0 && isset($this->newID['fieldtype'][(int) $item->fieldtype]))
{
- $item->fieldtype = $this->newID['fieldtype'][$item->fieldtype];
+ $item->fieldtype = $this->newID['fieldtype'][(int) $item->fieldtype];
// update multi field values
if ($this->checkMultiFields($item->fieldtype))
{
@@ -1090,54 +1402,14 @@ class ComponentbuilderModelImport_joomla_components extends JModelLegacy
break;
case 'dynamic_get':
// update the view_table_main ID
- if (isset($item->main_source) && $item->main_source == 1 && isset($item->view_table_main) && is_numeric($item->view_table_main) && $item->view_table_main > 0)
+ if (isset($item->main_source) && $item->main_source == 1)
{
- if (isset($this->newID['admin_view'][$item->view_table_main]))
- {
- $item->view_table_main = $this->newID['admin_view'][$item->view_table_main];
- }
- else
- {
- $this->app->enqueueMessage(JText::sprintf('COM_COMPONENTBUILDER_BVIEW_TABLE_MAINB_IDS_MISMATCH_IN_BSB', $item->view_table_main, ComponentbuilderHelper::safeString($type, 'w').':'.$item->id), 'error');
- return false;
- }
- }
- // update the join_view_table
- if (isset($item->join_view_table) && ComponentbuilderHelper::checkJson($item->join_view_table))
- {
- $join_view_table = json_decode($item->join_view_table, true);
- // check if this is old values for repeatable fields
- if (isset($join_view_table['view_table']))
- {
- $join_view_table = $this->convertRepeatable($join_view_table, 'join_view_table');
- }
- foreach ($join_view_table as $nr => $join_values)
- {
- $id = $join_values['view_table'];
- if (!is_numeric($id))
- {
- continue;
- }
- // update the id's with local id's
- if (isset($this->newID['admin_view'][$id]))
- {
- $join_view_table[$nr]['view_table'] = $this->newID['admin_view'][$id];
- }
- else
- {
- $this->app->enqueueMessage(JText::sprintf('COM_COMPONENTBUILDER_BJOIN_VIEW_TABLE_IN_SB_HAS_ID_MISMATCH_OF_SELECTED_BJOIN_VIEW_TABLEB_SO_THE_IDS_WAS_REMOVED', '('.ComponentbuilderHelper::safeString($type, 'w').':'.$item->id.')', $id), 'warning');
- $join_values['view_table'] = '';
- }
- }
- // load it back
- $item->join_view_table = json_encode($join_view_table);
- }
- else
- {
- unset($item->join_view_table);
+ $item = $this->setNewID($item, 'view_table_main', 'admin_view', $type);
}
// repeatable fields to update
$updaterR = array(
+ // repeatablefield => checker
+ 'join_view_table' => 'view_table',
'join_db_table' => 'db_table',
'order' => 'table_key',
'where' => 'table_key',
@@ -1145,136 +1417,40 @@ class ComponentbuilderModelImport_joomla_components extends JModelLegacy
'filter' => 'filter_type'
);
// update the repeatable fields
- foreach ($updaterR as $up => $sleutel)
- {
- if (isset($item->{$up}) && ComponentbuilderHelper::checkJson($item->{$up}))
- {
- $updateArray = json_decode($item->{$up}, true);
- // check if this is old values for repeatable fields
- if (isset($updateArray[$sleutel]))
- {
- $updateArray = $this->convertRepeatable($updateArray, $up);
- }
- // load it back
- $item->{$up} = json_encode($updateArray);
- }
- else
- {
- unset($item->{$up});
- }
- }
+ $item = $this->convertRepeatableFields($item, $updaterR);
+ // subform fields to target
+ $updaterT = array(
+ // subformfield => field => type_value
+ 'join_view_table' => array('view_table' => 'admin_view')
+ );
+ // update the subform ids
+ $this->updateSubformsIDs($item, 'dynamic_get', $updaterT);
break;
case 'layout':
case 'template':
// update the dynamic_get
- if (isset($item->dynamic_get) && is_numeric($item->dynamic_get) && $item->dynamic_get > 0 && isset($this->newID['dynamic_get'][$item->dynamic_get]))
- {
- $item->dynamic_get = $this->newID['dynamic_get'][$item->dynamic_get];
- }
- elseif (!is_numeric($item->dynamic_get) || $item->dynamic_get == 0)
- {
- unset($item->dynamic_get);
- }
- else
- {
- $this->app->enqueueMessage(JText::sprintf('COM_COMPONENTBUILDER_BDYNAMIC_GETB_IDS_MISMATCH_IN_BSB', $item->dynamic_get, ComponentbuilderHelper::safeString($type, 'w').':'.$item->id), 'warning');
- unset($item->dynamic_get);
- }
+ $item = $this->setNewID($item, 'dynamic_get', 'dynamic_get', $type);
// update the snippet
- if (isset($item->snippet) && is_numeric($item->snippet) && $item->snippet > 0 && isset($this->newID['snippet'][$item->snippet]))
- {
- $item->snippet = $this->newID['snippet'][$item->snippet];
- }
- elseif (!is_numeric($item->snippet) || $item->snippet == 0)
- {
- unset($item->snippet);
- }
- else
- {
- // $this->app->enqueueMessage(JText::sprintf('COM_COMPONENTBUILDER_BSNIPPETB_IDS_MISMATCH_IN_BSB', $item->snippet, ComponentbuilderHelper::safeString($type, 'w').':'.$item->id), 'warning');
- // unset($item->snippet);
- }
+ $item = $this->setNewID($item, 'snippet', 'snippet', $type);
break;
case 'custom_admin_view':
case 'site_view':
// update the main_get
- if (isset($item->main_get) && is_numeric($item->main_get) && $item->main_get > 0 && isset($this->newID['dynamic_get'][$item->main_get]))
- {
- $item->main_get = $this->newID['dynamic_get'][$item->main_get];
- }
- elseif (!is_numeric($item->main_get) || $item->main_get == 0)
- {
- $this->app->enqueueMessage(JText::sprintf('COM_COMPONENTBUILDER_BMAIN_GETB_NOT_SET_FOR_BSB', ComponentbuilderHelper::safeString($type, 'w').':'.$item->id), 'warning');
- unset($item->main_get);
- }
- else
- {
- $this->app->enqueueMessage(JText::sprintf('COM_COMPONENTBUILDER_BMAIN_GETB_IDS_MISMATCH_IN_BSB', $item->main_get, ComponentbuilderHelper::safeString($type, 'w').':'.$item->id), 'error');
- return false;
- }
+ $item = $this->setNewID($item, 'main_get', 'dynamic_get', $type);
// update the dynamic_get
- if (isset($item->dynamic_get) && is_numeric($item->dynamic_get) && $item->dynamic_get > 0 && isset($this->newID['dynamic_get'][$item->dynamic_get]))
- {
- $item->dynamic_get = $this->newID['dynamic_get'][$item->dynamic_get];
- }
- elseif (!is_numeric($item->dynamic_get) || $item->dynamic_get == 0)
- {
- unset($item->dynamic_get);
- }
- else
- {
- $this->app->enqueueMessage(JText::sprintf('COM_COMPONENTBUILDER_BDYNAMIC_GETB_IDS_MISMATCH_IN_BSB', $item->dynamic_get, ComponentbuilderHelper::safeString($type, 'w').':'.$item->id), 'warning');
- unset($item->dynamic_get);
- }
+ $item = $this->setNewID($item, 'dynamic_get', 'dynamic_get', $type);
// update the custom_get
- if (isset($item->custom_get) && ComponentbuilderHelper::checkJson($item->custom_get))
- {
- $custom_get = json_decode($item->custom_get, true);
- foreach ($custom_get as $nr => $get)
- {
- if (!is_numeric($get))
- {
- continue;
- }
- // update the custom_get
- if (isset($this->newID['dynamic_get'][$get]))
- {
- $custom_get[$nr] = $this->newID['dynamic_get'][$get];
- }
- else
- {
- $this->app->enqueueMessage(JText::sprintf('COM_COMPONENTBUILDER_BCUSTOM_GET_IN_SB_HAS_ID_MISMATCH_OF_SELECTED_BDYNAMIC_GETB_SO_THE_IDS_WAS_REMOVED', '('.ComponentbuilderHelper::safeString($type, 'w').':'.$item->id.')', $get), 'warning');
- unset($custom_get[$nr]);
- }
- }
- // load it back if there is any remaining
- if (ComponentbuilderHelper::checkArray($custom_get))
- {
- $item->custom_get = json_encode( (object) $custom_get);
- }
- else
- {
- unset($item->custom_get);
- }
- }
- else
- {
- unset($item->custom_get);
- }
+ $item = $this->setNewID($item, 'custom_get', 'dynamic_get', $type);
// update the snippet
- if (isset($item->snippet) && is_numeric($item->snippet) && $item->snippet > 0 && isset($this->newID['snippet'][$item->snippet]))
- {
- $item->snippet = $this->newID['snippet'][$item->snippet];
- }
- elseif (!is_numeric($item->snippet) || $item->snippet == 0)
- {
- unset($item->snippet);
- }
- else
- {
- // $this->app->enqueueMessage(JText::sprintf('COM_COMPONENTBUILDER_BSNIPPETB_IDS_MISMATCH_IN_BSB', $item->snippet, ComponentbuilderHelper::safeString($type, 'w').':'.$item->id), 'warning');
- // unset($item->snippet);
- }
+ $item = $this->setNewID($item, 'snippet', 'snippet', $type);
+ // repeatable fields to update
+ $updaterR = array(
+ // repeatablefield => checker
+ 'ajax_input' => 'value_name',
+ 'custom_button' => 'name'
+ );
+ // update the repeatable fields
+ $item = $this->convertRepeatableFields($item, $updaterR);
break;
case 'admin_view':
// we must clear the demo content (since it was not moved as far as we know) TODO
@@ -1285,31 +1461,17 @@ class ComponentbuilderModelImport_joomla_components extends JModelLegacy
unset($item->source);
unset($item->addtables);
}
- // update the addfields
+ // update the addfields (old dataset)
if (isset($item->addfields) && ComponentbuilderHelper::checkJson($item->addfields))
{
- $addfields = json_decode($item->addfields, true);
- foreach ($addfields['field'] as $nr => $id)
- {
- if (!is_numeric($id))
- {
- continue;
- }
- // update the addfields
- if (isset($this->newID['field'][$id]))
- {
- $addfields['field'][$nr] = $this->newID['field'][$id];
- }
- else
- {
- $this->app->enqueueMessage(JText::sprintf('COM_COMPONENTBUILDER_BFIELD_IN_SB_HAS_ID_MISMATCH_OF_SELECTED_BFIELDB_SO_THE_IDS_WAS_REMOVED', '('.ComponentbuilderHelper::safeString($type, 'w').':'.$item->id.')', $id), 'warning');
- $addfields['field'][$nr] = '';
- }
- }
- // load it back
- $item->addfields = json_encode($addfields);
+ // set the anchors getters
+ $getter = array('admin_view' => $item->id);
+ // move the old data
+ $this->setDivergedDataMover($item->addfields, 'admin_fields', 'addfields', $getter);
+ // remove from this dataset
+ unset($item->addfields);
}
- else
+ elseif (isset($item->addfields))
{
unset($item->addfields);
}
@@ -1318,59 +1480,36 @@ class ComponentbuilderModelImport_joomla_components extends JModelLegacy
{
$this->updateAfter['adminview'][$item->id] = $item->id; // addlinked_views
}
- else
+ elseif (isset($item->addlinked_views))
{
unset($item->addlinked_views);
}
- // update the addconditions
+ // update the addconditions (old dataset)
if (isset($item->addconditions) && ComponentbuilderHelper::checkJson($item->addconditions))
{
- $addconditions = json_decode($item->addconditions, true);
- $targets = array('target_field', 'match_field');
- foreach ($targets as $target)
- {
- foreach ($addconditions[$target] as $nr => $ids)
- {
- // update the addconditions
- if (!ComponentbuilderHelper::checkArray($ids))
- {
- $ids = array((int) $ids);
- }
- // the bucket to load the items back
- $bucket = array();
- foreach ($ids as $id)
- {
- if (!is_numeric($id))
- {
- continue;
- }
- if (isset($this->newID['field'][$id]))
- {
- $bucket[] = $this->newID['field'][$id];
- }
- else
- {
- $this->app->enqueueMessage(JText::sprintf('COM_COMPONENTBUILDER_BSB_HAS_ID_MISMATCH_OF_SELECTED_BFIELDB_SO_THE_IDS_WAS_REMOVED', ComponentbuilderHelper::safeString($target, 'Ww') . ' in ('.ComponentbuilderHelper::safeString($type, 'w').':'.$item->id.')', $id), 'warning');
- $bucket[] = '';
- }
- }
- if (count($bucket) == 1)
- {
- $addconditions[$target][$nr] = $bucket[0];
- }
- elseif (count($bucket) > 1)
- {
- $addconditions[$target][$nr] = $bucket;
- }
- }
- }
- // load it back
- $item->addconditions = json_encode($addconditions);
+ // set the getters anchors
+ $getter = array('admin_view' => $item->id);
+ // move the old data
+ $this->setDivergedDataMover($item->addconditions, 'admin_fields_conditions', 'addconditions', $getter);
+ // remove from this dataset
+ unset($item->addconditions);
}
- else
+ elseif (isset($item->addconditions))
{
unset($item->addconditions);
}
+ // repeatable fields to update
+ $updaterR = array(
+ // repeatablefield => checker
+ 'ajax_input' => 'value_name',
+ 'custom_button' => 'name',
+ 'addtables' => 'table',
+ 'addlinked_views' => 'adminview',
+ 'addtabs' => 'name',
+ 'addpermissions' => 'action'
+ );
+ // update the repeatable fields
+ $item = $this->convertRepeatableFields($item, $updaterR);
break;
case 'joomla_component':
// update the addconfig
@@ -1384,9 +1523,9 @@ class ComponentbuilderModelImport_joomla_components extends JModelLegacy
continue;
}
// update the addconfig
- if (isset($this->newID['field'][$id]))
+ if (isset($this->newID['field'][(int) $id]))
{
- $addconfig['field'][$nr] = $this->newID['field'][$id];
+ $addconfig['field'][$nr] = $this->newID['field'][(int) $id];
}
else
{
@@ -1408,9 +1547,9 @@ class ComponentbuilderModelImport_joomla_components extends JModelLegacy
continue;
}
// update the addadmin_views
- if (isset($this->newID['admin_view'][$id]))
+ if (isset($this->newID['admin_view'][(int) $id]))
{
- $addadmin_views['adminview'][$nr] = $this->newID['admin_view'][$id];
+ $addadmin_views['adminview'][$nr] = $this->newID['admin_view'][(int) $id];
}
else
{
@@ -1436,9 +1575,9 @@ class ComponentbuilderModelImport_joomla_components extends JModelLegacy
continue;
}
// update the addcustom_admin_views
- if (isset($this->newID['custom_admin_view'][$id]))
+ if (isset($this->newID['custom_admin_view'][(int) $id]))
{
- $addcustom_admin_views['customadminview'][$nr] = $this->newID['custom_admin_view'][$id];
+ $addcustom_admin_views['customadminview'][$nr] = $this->newID['custom_admin_view'][(int) $id];
}
else
{
@@ -1460,9 +1599,9 @@ class ComponentbuilderModelImport_joomla_components extends JModelLegacy
continue;
}
// update the addsite_views
- if (isset($this->newID['site_view'][$id]))
+ if (isset($this->newID['site_view'][(int) $id]))
{
- $addsite_views['siteview'][$nr] = $this->newID['site_view'][$id];
+ $addsite_views['siteview'][$nr] = $this->newID['site_view'][(int) $id];
}
else
{
@@ -1476,47 +1615,18 @@ class ComponentbuilderModelImport_joomla_components extends JModelLegacy
break;
case 'custom_code':
// update the component ID where needed
- if (isset($item->component) && $item->component > 0)
- {
- if (isset($this->newID['joomla_component'][$item->component]))
- {
- $item->component = $this->newID['joomla_component'][$item->component];
- }
- else
- {
- $this->app->enqueueMessage(JText::sprintf('COM_COMPONENTBUILDER_BCOMPONENT_IN_SB_HAS_ID_MISMATCH_OF_SELECTED_BCOMPONENTB_SO_THE_IDS_WAS_REMOVED', '('.ComponentbuilderHelper::safeString($type, 'w').':'.$item->id.')', $item->component), 'warning');
- unset($item->component);
- }
- }
+ $item = $this->setNewID($item, 'component', 'joomla_component', $type);
break;
case 'language_translation':
// update the component ID where needed
- if (isset($item->components) && ComponentbuilderHelper::checkJson($item->components))
- {
- $components = json_decode($item->components, true);
- foreach ($components as $nr => $id)
- {
- if (!is_numeric($id))
- {
- continue;
- }
- // update the components
- if (isset($this->newID['joomla_component'][$id]))
- {
- $components[$nr] = $this->newID['joomla_component'][$id];
- }
- else
- {
- unset($components[$nr]);
- }
- }
- }
+ $item = $this->setNewID($item, 'component', 'joomla_component', $type);
// load the local components if found
if (isset($item->localComponents) && ComponentbuilderHelper::checkJson($item->localComponents))
{
- if (!isset($components))
+ $components = array();
+ if (isset($item->components) && ComponentbuilderHelper::checkJson($item->components))
{
- $components= array();
+ $components = json_decode($item->components, true);
}
$localComponents = json_decode($item->localComponents, true);
foreach ($localComponents as $lid)
@@ -1616,6 +1726,48 @@ class ComponentbuilderModelImport_joomla_components extends JModelLegacy
unset($item->localTranslation);
}
break;
+ case 'admin_fields':
+ case 'admin_fields_conditions':
+ // update the admin_view ID where needed
+ $item = $this->setNewID($item, 'admin_view', 'admin_view', $type);
+ // set the updater
+ if ('admin_fields' === $type)
+ {
+ // repeatable fields to update
+ $updaterR = array(
+ // repeatablefield => checker
+ 'addfields' => 'field'
+ );
+ // subform fields to target
+ $updaterT = array(
+ // subformfield => field => type_value
+ 'addfields' => array('field' => 'field')
+ );
+ // little tweak... oops
+ if (isset($item->addconditions))
+ {
+ unset($item->addconditions);
+ }
+ }
+ else
+ {
+ // repeatable fields to update
+ $updaterR = array(
+ // repeatablefield => checker
+ 'addconditions' => 'target_field'
+ );
+ // subform fields to target
+ $updaterT = array(
+ // subformfield => field => type_value
+ 'addconditions' => array('target_field' => 'field', 'match_field' => 'field')
+ );
+ }
+
+ // update the repeatable fields
+ $item = $this->convertRepeatableFields($item, $updaterR);
+
+ // update the subform ids
+ $this->updateSubformsIDs($item, $type, $updaterT);
}
// final action prep
switch($action)
@@ -1633,7 +1785,10 @@ class ComponentbuilderModelImport_joomla_components extends JModelLegacy
break;
case 'add':
// remove the ID
- unset($item->id);
+ if (isset($item->id))
+ {
+ unset($item->id);
+ }
// set values to follow the adding conventions
$item->created_by = $this->user->id;
$item->modified_by = $this->user->id;
@@ -1645,7 +1800,44 @@ class ComponentbuilderModelImport_joomla_components extends JModelLegacy
return false;
}
-
+ /**
+ * Set the data that should be moved
+ *
+ * @param array/json $values The values/data to move
+ * @param string $table The table to move the values to
+ * @param string $type The type of values
+ * @param array $getters The get values used to anchor the values to the new table
+ *
+ * @return bool
+ */
+ protected function setDivergedDataMover($values, $table, $type, $getters)
+ {
+ // we need to move this to the new $table based on anchors
+ if (ComponentbuilderHelper::checkArray($getters))
+ {
+ if (!isset($this->divergedDataMover[$table]))
+ {
+ $this->divergedDataMover[$table] = array();
+ }
+ // set unique key
+ $uniqueKey = md5(serialize($getters));
+ if (!isset($this->divergedDataMover[$table][$uniqueKey]))
+ {
+ $this->divergedDataMover[$table][$uniqueKey] = new stdClass;
+ foreach ($getters as $name => $value)
+ {
+ $this->divergedDataMover[$table][$uniqueKey]->{$name} = $value;
+ }
+ }
+ // add the data to the mover
+ $this->divergedDataMover[$table][$uniqueKey]->{$type} = $values;
+ // success
+ return true;
+ }
+ $this->app->enqueueMessage(JText::sprintf('COM_COMPONENTBUILDER_WE_FAILED_TO_MOVE_BSB', ComponentbuilderHelper::safeString($type, 'Ww') . ' to ('.ComponentbuilderHelper::safeString($table, 'w').')'), 'warning');
+ // failure
+ return false;
+ }
/**
* Check if a field has multiple fields
@@ -1727,9 +1919,9 @@ class ComponentbuilderModelImport_joomla_components extends JModelLegacy
/**
* Update the local item
*
- * @param object $item The item to update
- * @param string $type The type of values
- * @param bool $canState The switch to set state
+ * @param object $item The item to update
+ * @param string $type The type of values
+ * @param bool $canState The switch to set state
*
* @return mixed false on failure
* ID int on success
@@ -1800,19 +1992,22 @@ class ComponentbuilderModelImport_joomla_components extends JModelLegacy
$query = $this->_db->getQuery(true);
$query->select('a.*');
$query->from($this->_db->quoteName('#__componentbuilder_' . $type, 'a'));
- if ($get == 1)
+ // only run query if where is set
+ $runQuery = false;
+ if ($get == 1 && isset($item->created) && isset($item->id))
{
$query->where($this->_db->quoteName('a.created') . ' = '. $this->_db->quote($item->created));
$query->where($this->_db->quoteName('a.id') .' = '. (int) $item->id);
+ $runQuery = true;
}
elseif (componentbuilderHelper::checkArray($get))
{
foreach ($get as $field)
{
- if (isset($item->$field))
+ if (isset($item->{$field}))
{
// set the value
- $value = $item->$field;
+ $value = $item->{$field};
// check if we have special value
if ($this->specialValue && ComponentbuilderHelper::checkArray($this->specialValue) && isset($this->specialValue[$field]))
{
@@ -1835,6 +2030,7 @@ class ComponentbuilderModelImport_joomla_components extends JModelLegacy
{
return false;
}
+ $runQuery = true;
}
else
{
@@ -1842,21 +2038,22 @@ class ComponentbuilderModelImport_joomla_components extends JModelLegacy
}
}
}
- elseif (isset($item->$get) && componentbuilderHelper::checkString($item->$get)) // do not allow empty strings (since it could be major mis match)
+ elseif (isset($item->{$get}) && componentbuilderHelper::checkString($item->{$get})) // do not allow empty strings (since it could be major mis match)
{
// set the value
- $value = $item->$get;
+ $value = $item->{$get};
// check if we have special value
if ($this->specialValue && ComponentbuilderHelper::checkArray($this->specialValue) && isset($this->specialValue[$get]))
{
$value = $this->specialValue[$get];
}
$query->where($this->_db->quoteName('a.' . $get) . ' = '. $this->_db->quote($value));
+ $runQuery = true;
}
- elseif (isset($item->$get) && is_numeric($item->$get))
+ elseif (isset($item->{$get}) && is_numeric($item->{$get}))
{
// set the value
- $value = $item->$get;
+ $value = $item->{$get};
// check if we have special value
if ($this->specialValue && ComponentbuilderHelper::checkArray($this->specialValue) && isset($this->specialValue[$get]))
{
@@ -1875,25 +2072,34 @@ class ComponentbuilderModelImport_joomla_components extends JModelLegacy
{
return false; // really not needed but who knows for sure...
}
+ $runQuery = true;
}
- else
+ // since where has been set run the query
+ if ($runQuery)
{
- return false;
+ // see if we get an item
+ $this->_db->setQuery($query);
+ $this->_db->execute();
+ if ($this->_db->getNumRows())
+ {
+ return $this->_db->loadObject();
+ }
}
- // see if we get an item
- $this->_db->setQuery($query);
- $this->_db->execute();
- if ($this->_db->getNumRows())
- {
- return $this->_db->loadObject();
- }
- elseif ($retry)
+ // retry to get the item
+ if ($retry)
{
$retryAgain = false;
$this->specialValue = false;
// set the getter
switch ($type)
{
+ case 'admin_fields':
+ case 'admin_fields_conditions':
+ // get by admin_view (since there should only be one of each name)
+ $getter = array('admin_view');
+ $this->specialValue = array();
+ $this->specialValue['admin_view'] = $this->newID['admin_view'][(int) $item->admin_view];
+ break;
case 'fieldtype':
// get by name (since there should only be one of each name)
$getter = 'name';
@@ -1910,11 +2116,11 @@ class ComponentbuilderModelImport_joomla_components extends JModelLegacy
// get by id name..
$getter = array('name','datatype','store','indexes','null_switch');
// lets try to add the fieldtype
- if (isset($item->fieldtype) && is_numeric($item->fieldtype) && $item->fieldtype > 0 && isset($this->newID['fieldtype'][$item->fieldtype]) && $this->newID['fieldtype'][$item->fieldtype] > 0)
+ if (isset($item->fieldtype) && is_numeric($item->fieldtype) && $item->fieldtype > 0 && isset($this->newID['fieldtype'][(int) $item->fieldtype]) && $this->newID['fieldtype'][(int) $item->fieldtype] > 0)
{
$getter[] = 'fieldtype';
$this->specialValue = array();
- $this->specialValue['fieldtype'] = $this->newID['fieldtype'][$item->fieldtype];
+ $this->specialValue['fieldtype'] = $this->newID['fieldtype'][(int) $item->fieldtype];
$retryAgain = 2;
}
else
@@ -1928,11 +2134,11 @@ class ComponentbuilderModelImport_joomla_components extends JModelLegacy
// get by name, system_name and codename
$getter = array('name', 'system_name', 'codename');
// lets try to add the main_get
- if (isset($item->main_get) && is_numeric($item->main_get) && $item->main_get > 0 && isset($this->newID['dynamic_get'][$item->main_get]) && $this->newID['dynamic_get'][$item->main_get] > 0)
+ if (isset($item->main_get) && is_numeric($item->main_get) && $item->main_get > 0 && isset($this->newID['dynamic_get'][(int) $item->main_get]) && $this->newID['dynamic_get'][(int) $item->main_get] > 0)
{
$getter[] = 'main_get';
$this->specialValue = array();
- $this->specialValue['main_get'] = $this->newID['dynamic_get'][$item->main_get];
+ $this->specialValue['main_get'] = $this->newID['dynamic_get'][(int) $item->main_get];
}
break;
case 'template':
diff --git a/admin/models/joomla_component.php b/admin/models/joomla_component.php
index e04429e9b..e278b814d 100644
--- a/admin/models/joomla_component.php
+++ b/admin/models/joomla_component.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version @update number 385 of this MVC
- @build 6th October, 2017
+ @version @update number 473 of this MVC
+ @build 20th October, 2017
@created 6th May, 2015
@package Component Builder
@subpackage joomla_component.php
@@ -679,8 +679,8 @@ class ComponentbuilderModelJoomla_component extends JModelAdmin
// Check for existing item.
// Modify the form based on Edit State access controls.
- if ($id != 0 && (!$user->authorise('core.edit.state', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('core.edit.state', 'com_componentbuilder')))
+ if ($id != 0 && (!$user->authorise('joomla_component.edit.state', 'com_componentbuilder.joomla_component.' . (int) $id))
+ || ($id == 0 && !$user->authorise('joomla_component.edit.state', 'com_componentbuilder')))
{
// Disable fields for display.
$form->setFieldAttribute('ordering', 'disabled', 'true');
@@ -696,7 +696,8 @@ class ComponentbuilderModelJoomla_component extends JModelAdmin
$form->setValue('created_by', null, $user->id);
}
// Modify the form based on Edit Creaded By access controls.
- if (!$user->authorise('core.edit.created_by', 'com_componentbuilder'))
+ if ($id != 0 && (!$user->authorise('joomla_component.edit.created_by', 'com_componentbuilder.joomla_component.' . (int) $id))
+ || ($id == 0 && !$user->authorise('joomla_component.edit.created_by', 'com_componentbuilder')))
{
// Disable fields for display.
$form->setFieldAttribute('created_by', 'disabled', 'true');
@@ -706,1391 +707,14 @@ class ComponentbuilderModelJoomla_component extends JModelAdmin
$form->setFieldAttribute('created_by', 'filter', 'unset');
}
// Modify the form based on Edit Creaded Date access controls.
- if (!$user->authorise('core.edit.created', 'com_componentbuilder'))
+ if ($id != 0 && (!$user->authorise('joomla_component.edit.created', 'com_componentbuilder.joomla_component.' . (int) $id))
+ || ($id == 0 && !$user->authorise('joomla_component.edit.created', 'com_componentbuilder')))
{
// Disable fields for display.
$form->setFieldAttribute('created', 'disabled', 'true');
// Disable fields while saving.
$form->setFieldAttribute('created', 'filter', 'unset');
}
- // Modify the form based on Edit System Name access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.system_name', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.system_name', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('system_name', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('system_name', 'readonly', 'true');
- if (!$form->getValue('system_name'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('system_name', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('system_name', 'required', 'false');
- }
- }
- // Modify the form based on Edit Name Code access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.name_code', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.name_code', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('name_code', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('name_code', 'readonly', 'true');
- if (!$form->getValue('name_code'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('name_code', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('name_code', 'required', 'false');
- }
- }
- // Modify the form based on Edit Component Version access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.component_version', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.component_version', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('component_version', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('component_version', 'readonly', 'true');
- if (!$form->getValue('component_version'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('component_version', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('component_version', 'required', 'false');
- }
- }
- // Modify the form based on Edit Short Description access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.short_description', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.short_description', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('short_description', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('short_description', 'readonly', 'true');
- if (!$form->getValue('short_description'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('short_description', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('short_description', 'required', 'false');
- }
- }
- // Modify the form based on Edit Companyname access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.companyname', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.companyname', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('companyname', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('companyname', 'readonly', 'true');
- if (!$form->getValue('companyname'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('companyname', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('companyname', 'required', 'false');
- }
- }
- // Modify the form based on Edit Author access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.author', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.author', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('author', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('author', 'readonly', 'true');
- if (!$form->getValue('author'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('author', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('author', 'required', 'false');
- }
- }
- // Modify the form based on Edit Sql access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.sql', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.sql', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('sql', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('sql', 'readonly', 'true');
- if (!$form->getValue('sql'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('sql', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('sql', 'required', 'false');
- }
- }
- // Modify the form based on Edit Add Css access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.add_css', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.add_css', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('add_css', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('add_css', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('add_css', 'class', '');
- $form->setFieldAttribute('add_css', 'class', $class.' disabled no-click');
- if (!$form->getValue('add_css'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('add_css', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('add_css', 'required', 'false');
- }
- }
- // Modify the form based on Edit Description access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.description', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.description', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('description', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('description', 'readonly', 'true');
- if (!$form->getValue('description'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('description', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('description', 'required', 'false');
- }
- }
- // Modify the form based on Edit Add Admin Event access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.add_admin_event', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.add_admin_event', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('add_admin_event', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('add_admin_event', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('add_admin_event', 'class', '');
- $form->setFieldAttribute('add_admin_event', 'class', $class.' disabled no-click');
- if (!$form->getValue('add_admin_event'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('add_admin_event', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('add_admin_event', 'required', 'false');
- }
- }
- // Modify the form based on Edit Copyright access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.copyright', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.copyright', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('copyright', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('copyright', 'readonly', 'true');
- if (!$form->getValue('copyright'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('copyright', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('copyright', 'required', 'false');
- }
- }
- // Modify the form based on Edit Php Preflight Update access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.php_preflight_update', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.php_preflight_update', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('php_preflight_update', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('php_preflight_update', 'readonly', 'true');
- if (!$form->getValue('php_preflight_update'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('php_preflight_update', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('php_preflight_update', 'required', 'false');
- }
- }
- // Modify the form based on Edit Debug Linenr access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.debug_linenr', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.debug_linenr', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('debug_linenr', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('debug_linenr', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('debug_linenr', 'class', '');
- $form->setFieldAttribute('debug_linenr', 'class', $class.' disabled no-click');
- if (!$form->getValue('debug_linenr'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('debug_linenr', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('debug_linenr', 'required', 'false');
- }
- }
- // Modify the form based on Edit Mvc Versiondate access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.mvc_versiondate', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.mvc_versiondate', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('mvc_versiondate', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('mvc_versiondate', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('mvc_versiondate', 'class', '');
- $form->setFieldAttribute('mvc_versiondate', 'class', $class.' disabled no-click');
- if (!$form->getValue('mvc_versiondate'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('mvc_versiondate', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('mvc_versiondate', 'required', 'false');
- }
- }
- // Modify the form based on Edit Add Site Event access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.add_site_event', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.add_site_event', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('add_site_event', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('add_site_event', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('add_site_event', 'class', '');
- $form->setFieldAttribute('add_site_event', 'class', $class.' disabled no-click');
- if (!$form->getValue('add_site_event'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('add_site_event', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('add_site_event', 'required', 'false');
- }
- }
- // Modify the form based on Edit Name access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.name', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.name', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('name', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('name', 'readonly', 'true');
- if (!$form->getValue('name'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('name', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('name', 'required', 'false');
- }
- }
- // Modify the form based on Edit Dashboard Tab access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.dashboard_tab', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.dashboard_tab', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('dashboard_tab', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('dashboard_tab', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('dashboard_tab', 'class', '');
- $form->setFieldAttribute('dashboard_tab', 'class', $class.' disabled no-click');
- if (!$form->getValue('dashboard_tab'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('dashboard_tab', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('dashboard_tab', 'required', 'false');
- }
- }
- // Modify the form based on Edit Creatuserhelper access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.creatuserhelper', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.creatuserhelper', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('creatuserhelper', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('creatuserhelper', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('creatuserhelper', 'class', '');
- $form->setFieldAttribute('creatuserhelper', 'class', $class.' disabled no-click');
- if (!$form->getValue('creatuserhelper'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('creatuserhelper', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('creatuserhelper', 'required', 'false');
- }
- }
- // Modify the form based on Edit Php Postflight Update access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.php_postflight_update', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.php_postflight_update', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('php_postflight_update', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('php_postflight_update', 'readonly', 'true');
- if (!$form->getValue('php_postflight_update'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('php_postflight_update', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('php_postflight_update', 'required', 'false');
- }
- }
- // Modify the form based on Edit Add Php Helper Both access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.add_php_helper_both', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.add_php_helper_both', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('add_php_helper_both', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('add_php_helper_both', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('add_php_helper_both', 'class', '');
- $form->setFieldAttribute('add_php_helper_both', 'class', $class.' disabled no-click');
- if (!$form->getValue('add_php_helper_both'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('add_php_helper_both', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('add_php_helper_both', 'required', 'false');
- }
- }
- // Modify the form based on Edit Version Update access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.version_update', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.version_update', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('version_update', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('version_update', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('version_update', 'class', '');
- $form->setFieldAttribute('version_update', 'class', $class.' disabled no-click');
- if (!$form->getValue('version_update'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('version_update', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('version_update', 'required', 'false');
- }
- }
- // Modify the form based on Edit Email access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.email', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.email', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('email', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('email', 'readonly', 'true');
- if (!$form->getValue('email'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('email', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('email', 'required', 'false');
- }
- }
- // Modify the form based on Edit Sales Server Ftp access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.sales_server_ftp', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.sales_server_ftp', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('sales_server_ftp', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('sales_server_ftp', 'readonly', 'true');
- if (!$form->getValue('sales_server_ftp'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('sales_server_ftp', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('sales_server_ftp', 'required', 'false');
- }
- }
- // Modify the form based on Edit Website access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.website', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.website', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('website', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('website', 'readonly', 'true');
- if (!$form->getValue('website'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('website', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('website', 'required', 'false');
- }
- }
- // Modify the form based on Edit Export Package Link access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.export_package_link', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.export_package_link', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('export_package_link', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('export_package_link', 'readonly', 'true');
- if (!$form->getValue('export_package_link'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('export_package_link', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('export_package_link', 'required', 'false');
- }
- }
- // Modify the form based on Edit Add License access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.add_license', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.add_license', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('add_license', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('add_license', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('add_license', 'class', '');
- $form->setFieldAttribute('add_license', 'class', $class.' disabled no-click');
- if (!$form->getValue('add_license'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('add_license', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('add_license', 'required', 'false');
- }
- }
- // Modify the form based on Edit Addfootable access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.addfootable', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.addfootable', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('addfootable', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('addfootable', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('addfootable', 'class', '');
- $form->setFieldAttribute('addfootable', 'class', $class.' disabled no-click');
- if (!$form->getValue('addfootable'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('addfootable', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('addfootable', 'required', 'false');
- }
- }
- // Modify the form based on Edit License Type access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.license_type', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.license_type', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('license_type', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('license_type', 'readonly', 'true');
- if (!$form->getValue('license_type'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('license_type', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('license_type', 'required', 'false');
- }
- }
- // Modify the form based on Edit Add Php Helper Admin access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.add_php_helper_admin', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.add_php_helper_admin', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('add_php_helper_admin', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('add_php_helper_admin', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('add_php_helper_admin', 'class', '');
- $form->setFieldAttribute('add_php_helper_admin', 'class', $class.' disabled no-click');
- if (!$form->getValue('add_php_helper_admin'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('add_php_helper_admin', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('add_php_helper_admin', 'required', 'false');
- }
- }
- // Modify the form based on Edit Add Php Helper Site access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.add_php_helper_site', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.add_php_helper_site', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('add_php_helper_site', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('add_php_helper_site', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('add_php_helper_site', 'class', '');
- $form->setFieldAttribute('add_php_helper_site', 'class', $class.' disabled no-click');
- if (!$form->getValue('add_php_helper_site'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('add_php_helper_site', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('add_php_helper_site', 'required', 'false');
- }
- }
- // Modify the form based on Edit Whmcs Key access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.whmcs_key', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.whmcs_key', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('whmcs_key', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('whmcs_key', 'readonly', 'true');
- if (!$form->getValue('whmcs_key'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('whmcs_key', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('whmcs_key', 'required', 'false');
- }
- }
- // Modify the form based on Edit Add Javascript access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.add_javascript', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.add_javascript', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('add_javascript', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('add_javascript', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('add_javascript', 'class', '');
- $form->setFieldAttribute('add_javascript', 'class', $class.' disabled no-click');
- if (!$form->getValue('add_javascript'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('add_javascript', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('add_javascript', 'required', 'false');
- }
- }
- // Modify the form based on Edit Whmcs Url access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.whmcs_url', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.whmcs_url', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('whmcs_url', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('whmcs_url', 'readonly', 'true');
- if (!$form->getValue('whmcs_url'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('whmcs_url', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('whmcs_url', 'required', 'false');
- }
- }
- // Modify the form based on Edit Add Php Dashboard Methods access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.add_php_dashboard_methods', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.add_php_dashboard_methods', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('add_php_dashboard_methods', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('add_php_dashboard_methods', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('add_php_dashboard_methods', 'class', '');
- $form->setFieldAttribute('add_php_dashboard_methods', 'class', $class.' disabled no-click');
- if (!$form->getValue('add_php_dashboard_methods'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('add_php_dashboard_methods', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('add_php_dashboard_methods', 'required', 'false');
- }
- }
- // Modify the form based on Edit License access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.license', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.license', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('license', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('license', 'readonly', 'true');
- if (!$form->getValue('license'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('license', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('license', 'required', 'false');
- }
- }
- // Modify the form based on Edit Php Preflight Install access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.php_preflight_install', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.php_preflight_install', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('php_preflight_install', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('php_preflight_install', 'readonly', 'true');
- if (!$form->getValue('php_preflight_install'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('php_preflight_install', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('php_preflight_install', 'required', 'false');
- }
- }
- // Modify the form based on Edit Bom access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.bom', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.bom', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('bom', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('bom', 'readonly', 'true');
- if (!$form->getValue('bom'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('bom', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('bom', 'required', 'false');
- }
- }
- // Modify the form based on Edit Php Postflight Install access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.php_postflight_install', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.php_postflight_install', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('php_postflight_install', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('php_postflight_install', 'readonly', 'true');
- if (!$form->getValue('php_postflight_install'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('php_postflight_install', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('php_postflight_install', 'required', 'false');
- }
- }
- // Modify the form based on Edit Image access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.image', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.image', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('image', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('image', 'readonly', 'true');
- if (!$form->getValue('image'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('image', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('image', 'required', 'false');
- }
- }
- // Modify the form based on Edit Php Method Uninstall access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.php_method_uninstall', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.php_method_uninstall', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('php_method_uninstall', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('php_method_uninstall', 'readonly', 'true');
- if (!$form->getValue('php_method_uninstall'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('php_method_uninstall', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('php_method_uninstall', 'required', 'false');
- }
- }
- // Modify the form based on Edit Add Update Server access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.add_update_server', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.add_update_server', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('add_update_server', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('add_update_server', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('add_update_server', 'class', '');
- $form->setFieldAttribute('add_update_server', 'class', $class.' disabled no-click');
- if (!$form->getValue('add_update_server'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('add_update_server', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('add_update_server', 'required', 'false');
- }
- }
- // Modify the form based on Edit Readme access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.readme', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.readme', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('readme', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('readme', 'readonly', 'true');
- if (!$form->getValue('readme'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('readme', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('readme', 'required', 'false');
- }
- }
- // Modify the form based on Edit Update Server Target access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.update_server_target', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.update_server_target', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('update_server_target', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('update_server_target', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('update_server_target', 'class', '');
- $form->setFieldAttribute('update_server_target', 'class', $class.' disabled no-click');
- if (!$form->getValue('update_server_target'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('update_server_target', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('update_server_target', 'required', 'false');
- }
- }
- // Modify the form based on Edit Update Server Ftp access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.update_server_ftp', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.update_server_ftp', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('update_server_ftp', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('update_server_ftp', 'readonly', 'true');
- if (!$form->getValue('update_server_ftp'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('update_server_ftp', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('update_server_ftp', 'required', 'false');
- }
- }
- // Modify the form based on Edit Addadmin Views access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.addadmin_views', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.addadmin_views', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('addadmin_views', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('addadmin_views', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('addadmin_views', 'class', '');
- $form->setFieldAttribute('addadmin_views', 'class', $class.' disabled no-click');
- if (!$form->getValue('addadmin_views'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('addadmin_views', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('addadmin_views', 'required', 'false');
- }
- }
- // Modify the form based on Edit Buildcomp access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.buildcomp', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.buildcomp', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('buildcomp', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('buildcomp', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('buildcomp', 'class', '');
- $form->setFieldAttribute('buildcomp', 'class', $class.' disabled no-click');
- if (!$form->getValue('buildcomp'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('buildcomp', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('buildcomp', 'required', 'false');
- }
- }
- // Modify the form based on Edit Addcustom Admin Views access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.addcustom_admin_views', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.addcustom_admin_views', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('addcustom_admin_views', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('addcustom_admin_views', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('addcustom_admin_views', 'class', '');
- $form->setFieldAttribute('addcustom_admin_views', 'class', $class.' disabled no-click');
- if (!$form->getValue('addcustom_admin_views'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('addcustom_admin_views', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('addcustom_admin_views', 'required', 'false');
- }
- }
- // Modify the form based on Edit Export Key access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.export_key', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.export_key', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('export_key', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('export_key', 'readonly', 'true');
- if (!$form->getValue('export_key'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('export_key', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('export_key', 'required', 'false');
- }
- }
- // Modify the form based on Edit Addsite Views access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.addsite_views', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.addsite_views', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('addsite_views', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('addsite_views', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('addsite_views', 'class', '');
- $form->setFieldAttribute('addsite_views', 'class', $class.' disabled no-click');
- if (!$form->getValue('addsite_views'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('addsite_views', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('addsite_views', 'required', 'false');
- }
- }
- // Modify the form based on Edit Export Buy Link access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.export_buy_link', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.export_buy_link', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('export_buy_link', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('export_buy_link', 'readonly', 'true');
- if (!$form->getValue('export_buy_link'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('export_buy_link', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('export_buy_link', 'required', 'false');
- }
- }
- // Modify the form based on Edit Adduikit access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.adduikit', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.adduikit', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('adduikit', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('adduikit', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('adduikit', 'class', '');
- $form->setFieldAttribute('adduikit', 'class', $class.' disabled no-click');
- if (!$form->getValue('adduikit'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('adduikit', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('adduikit', 'required', 'false');
- }
- }
- // Modify the form based on Edit Add Email Helper access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.add_email_helper', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.add_email_helper', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('add_email_helper', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('add_email_helper', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('add_email_helper', 'class', '');
- $form->setFieldAttribute('add_email_helper', 'class', $class.' disabled no-click');
- if (!$form->getValue('add_email_helper'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('add_email_helper', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('add_email_helper', 'required', 'false');
- }
- }
- // Modify the form based on Edit Sql Tweak access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.sql_tweak', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.sql_tweak', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('sql_tweak', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('sql_tweak', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('sql_tweak', 'class', '');
- $form->setFieldAttribute('sql_tweak', 'class', $class.' disabled no-click');
- if (!$form->getValue('sql_tweak'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('sql_tweak', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('sql_tweak', 'required', 'false');
- }
- }
- // Modify the form based on Edit Php Helper Both access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.php_helper_both', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.php_helper_both', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('php_helper_both', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('php_helper_both', 'readonly', 'true');
- if (!$form->getValue('php_helper_both'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('php_helper_both', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('php_helper_both', 'required', 'false');
- }
- }
- // Modify the form based on Edit Php Helper Admin access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.php_helper_admin', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.php_helper_admin', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('php_helper_admin', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('php_helper_admin', 'readonly', 'true');
- if (!$form->getValue('php_helper_admin'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('php_helper_admin', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('php_helper_admin', 'required', 'false');
- }
- }
- // Modify the form based on Edit Php Admin Event access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.php_admin_event', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.php_admin_event', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('php_admin_event', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('php_admin_event', 'readonly', 'true');
- if (!$form->getValue('php_admin_event'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('php_admin_event', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('php_admin_event', 'required', 'false');
- }
- }
- // Modify the form based on Edit Addcustommenus access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.addcustommenus', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.addcustommenus', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('addcustommenus', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('addcustommenus', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('addcustommenus', 'class', '');
- $form->setFieldAttribute('addcustommenus', 'class', $class.' disabled no-click');
- if (!$form->getValue('addcustommenus'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('addcustommenus', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('addcustommenus', 'required', 'false');
- }
- }
- // Modify the form based on Edit Php Helper Site access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.php_helper_site', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.php_helper_site', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('php_helper_site', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('php_helper_site', 'readonly', 'true');
- if (!$form->getValue('php_helper_site'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('php_helper_site', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('php_helper_site', 'required', 'false');
- }
- }
- // Modify the form based on Edit Php Site Event access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.php_site_event', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.php_site_event', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('php_site_event', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('php_site_event', 'readonly', 'true');
- if (!$form->getValue('php_site_event'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('php_site_event', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('php_site_event', 'required', 'false');
- }
- }
- // Modify the form based on Edit Javascript access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.javascript', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.javascript', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('javascript', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('javascript', 'readonly', 'true');
- if (!$form->getValue('javascript'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('javascript', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('javascript', 'required', 'false');
- }
- }
- // Modify the form based on Edit Addconfig access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.addconfig', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.addconfig', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('addconfig', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('addconfig', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('addconfig', 'class', '');
- $form->setFieldAttribute('addconfig', 'class', $class.' disabled no-click');
- if (!$form->getValue('addconfig'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('addconfig', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('addconfig', 'required', 'false');
- }
- }
- // Modify the form based on Edit Css access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.css', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.css', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('css', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('css', 'readonly', 'true');
- if (!$form->getValue('css'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('css', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('css', 'required', 'false');
- }
- }
- // Modify the form based on Edit Php Dashboard Methods access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.php_dashboard_methods', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.php_dashboard_methods', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('php_dashboard_methods', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('php_dashboard_methods', 'readonly', 'true');
- if (!$form->getValue('php_dashboard_methods'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('php_dashboard_methods', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('php_dashboard_methods', 'required', 'false');
- }
- }
- // Modify the form based on Edit Addcontributors access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.addcontributors', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.addcontributors', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('addcontributors', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('addcontributors', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('addcontributors', 'class', '');
- $form->setFieldAttribute('addcontributors', 'class', $class.' disabled no-click');
- if (!$form->getValue('addcontributors'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('addcontributors', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('addcontributors', 'required', 'false');
- }
- }
- // Modify the form based on Edit Add Php Preflight Install access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.add_php_preflight_install', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.add_php_preflight_install', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('add_php_preflight_install', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('add_php_preflight_install', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('add_php_preflight_install', 'class', '');
- $form->setFieldAttribute('add_php_preflight_install', 'class', $class.' disabled no-click');
- if (!$form->getValue('add_php_preflight_install'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('add_php_preflight_install', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('add_php_preflight_install', 'required', 'false');
- }
- }
- // Modify the form based on Edit Emptycontributors access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.emptycontributors', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.emptycontributors', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('emptycontributors', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('emptycontributors', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('emptycontributors', 'class', '');
- $form->setFieldAttribute('emptycontributors', 'class', $class.' disabled no-click');
- if (!$form->getValue('emptycontributors'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('emptycontributors', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('emptycontributors', 'required', 'false');
- }
- }
- // Modify the form based on Edit Add Php Preflight Update access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.add_php_preflight_update', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.add_php_preflight_update', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('add_php_preflight_update', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('add_php_preflight_update', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('add_php_preflight_update', 'class', '');
- $form->setFieldAttribute('add_php_preflight_update', 'class', $class.' disabled no-click');
- if (!$form->getValue('add_php_preflight_update'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('add_php_preflight_update', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('add_php_preflight_update', 'required', 'false');
- }
- }
- // Modify the form based on Edit Number access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.number', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.number', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('number', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('number', 'readonly', 'true');
- if (!$form->getValue('number'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('number', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('number', 'required', 'false');
- }
- }
- // Modify the form based on Edit Add Php Postflight Install access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.add_php_postflight_install', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.add_php_postflight_install', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('add_php_postflight_install', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('add_php_postflight_install', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('add_php_postflight_install', 'class', '');
- $form->setFieldAttribute('add_php_postflight_install', 'class', $class.' disabled no-click');
- if (!$form->getValue('add_php_postflight_install'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('add_php_postflight_install', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('add_php_postflight_install', 'required', 'false');
- }
- }
- // Modify the form based on Edit Add Php Postflight Update access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.add_php_postflight_update', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.add_php_postflight_update', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('add_php_postflight_update', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('add_php_postflight_update', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('add_php_postflight_update', 'class', '');
- $form->setFieldAttribute('add_php_postflight_update', 'class', $class.' disabled no-click');
- if (!$form->getValue('add_php_postflight_update'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('add_php_postflight_update', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('add_php_postflight_update', 'required', 'false');
- }
- }
- // Modify the form based on Edit Add Php Method Uninstall access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.add_php_method_uninstall', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.add_php_method_uninstall', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('add_php_method_uninstall', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('add_php_method_uninstall', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('add_php_method_uninstall', 'class', '');
- $form->setFieldAttribute('add_php_method_uninstall', 'class', $class.' disabled no-click');
- if (!$form->getValue('add_php_method_uninstall'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('add_php_method_uninstall', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('add_php_method_uninstall', 'required', 'false');
- }
- }
- // Modify the form based on Edit Addfiles access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.addfiles', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.addfiles', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('addfiles', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('addfiles', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('addfiles', 'class', '');
- $form->setFieldAttribute('addfiles', 'class', $class.' disabled no-click');
- if (!$form->getValue('addfiles'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('addfiles', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('addfiles', 'required', 'false');
- }
- }
- // Modify the form based on Edit Add Sql access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.add_sql', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.add_sql', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('add_sql', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('add_sql', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('add_sql', 'class', '');
- $form->setFieldAttribute('add_sql', 'class', $class.' disabled no-click');
- if (!$form->getValue('add_sql'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('add_sql', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('add_sql', 'required', 'false');
- }
- }
- // Modify the form based on Edit Addreadme access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.addreadme', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.addreadme', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('addreadme', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('addreadme', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('addreadme', 'class', '');
- $form->setFieldAttribute('addreadme', 'class', $class.' disabled no-click');
- if (!$form->getValue('addreadme'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('addreadme', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('addreadme', 'required', 'false');
- }
- }
- // Modify the form based on Edit Addfolders access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.addfolders', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.addfolders', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('addfolders', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('addfolders', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('addfolders', 'class', '');
- $form->setFieldAttribute('addfolders', 'class', $class.' disabled no-click');
- if (!$form->getValue('addfolders'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('addfolders', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('addfolders', 'required', 'false');
- }
- }
- // Modify the form based on Edit Update Server access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.update_server', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.update_server', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('update_server', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('update_server', 'readonly', 'true');
- if (!$form->getValue('update_server'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('update_server', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('update_server', 'required', 'false');
- }
- }
- // Modify the form based on Edit Toignore access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.toignore', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.toignore', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('toignore', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('toignore', 'readonly', 'true');
- if (!$form->getValue('toignore'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('toignore', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('toignore', 'required', 'false');
- }
- }
- // Modify the form based on Edit Add Sales Server access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.add_sales_server', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.add_sales_server', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('add_sales_server', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('add_sales_server', 'readonly', 'true');
- // Disable radio button for display.
- $class = $form->getFieldAttribute('add_sales_server', 'class', '');
- $form->setFieldAttribute('add_sales_server', 'class', $class.' disabled no-click');
- if (!$form->getValue('add_sales_server'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('add_sales_server', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('add_sales_server', 'required', 'false');
- }
- }
- // Modify the form based on Edit Buildcompsql access controls.
- if ($id != 0 && (!$user->authorise('joomla_component.edit.buildcompsql', 'com_componentbuilder.joomla_component.' . (int) $id))
- || ($id == 0 && !$user->authorise('joomla_component.edit.buildcompsql', 'com_componentbuilder')))
- {
- // Disable fields for display.
- $form->setFieldAttribute('buildcompsql', 'disabled', 'true');
- // Disable fields for display.
- $form->setFieldAttribute('buildcompsql', 'readonly', 'true');
- if (!$form->getValue('buildcompsql'))
- {
- // Disable fields while saving.
- $form->setFieldAttribute('buildcompsql', 'filter', 'unset');
- // Disable fields while saving.
- $form->setFieldAttribute('buildcompsql', 'required', 'false');
- }
- }
// Only load these values if no id is found
if (0 == $id)
{
@@ -2138,7 +762,7 @@ class ComponentbuilderModelJoomla_component extends JModelAdmin
$user = JFactory::getUser();
// The record has been set. Check the record permissions.
- return $user->authorise('core.delete', 'com_componentbuilder.joomla_component.' . (int) $record->id);
+ return $user->authorise('joomla_component.delete', 'com_componentbuilder.joomla_component.' . (int) $record->id);
}
return false;
}
@@ -2160,14 +784,14 @@ class ComponentbuilderModelJoomla_component extends JModelAdmin
if ($recordId)
{
// The record has been set. Check the record permissions.
- $permission = $user->authorise('core.edit.state', 'com_componentbuilder.joomla_component.' . (int) $recordId);
+ $permission = $user->authorise('joomla_component.edit.state', 'com_componentbuilder.joomla_component.' . (int) $recordId);
if (!$permission && !is_null($permission))
{
return false;
}
}
// In the absense of better information, revert to the component permissions.
- return parent::canEditState($record);
+ return $user->authorise('joomla_component.edit.state', 'com_componentbuilder');
}
/**
@@ -2182,8 +806,9 @@ class ComponentbuilderModelJoomla_component extends JModelAdmin
protected function allowEdit($data = array(), $key = 'id')
{
// Check specific edit permission then general edit permission.
+ $user = JFactory::getUser();
- return JFactory::getUser()->authorise('core.edit', 'com_componentbuilder.joomla_component.'. ((int) isset($data[$key]) ? $data[$key] : 0)) or parent::allowEdit($data, $key);
+ return $user->authorise('joomla_component.edit', 'com_componentbuilder.joomla_component.'. ((int) isset($data[$key]) ? $data[$key] : 0)) or $user->authorise('joomla_component.edit', 'com_componentbuilder');
}
/**
@@ -2471,7 +1096,7 @@ class ComponentbuilderModelJoomla_component extends JModelAdmin
$this->canDo = ComponentbuilderHelper::getActions('joomla_component');
}
- if (!$this->canDo->get('core.create') || !$this->canDo->get('core.batch'))
+ if (!$this->canDo->get('joomla_component.create') && !$this->canDo->get('joomla_component.batch'))
{
return false;
}
@@ -2486,7 +1111,7 @@ class ComponentbuilderModelJoomla_component extends JModelAdmin
{
$values['published'] = 0;
}
- elseif (isset($values['published']) && !$this->canDo->get('core.edit.state'))
+ elseif (isset($values['published']) && !$this->canDo->get('joomla_component.edit.state'))
{
$values['published'] = 0;
}
@@ -2503,7 +1128,7 @@ class ComponentbuilderModelJoomla_component extends JModelAdmin
// only allow copy if user may edit this item.
- if (!$this->user->authorise('core.edit', $contexts[$pk]))
+ if (!$this->user->authorise('joomla_component.edit', $contexts[$pk]))
{
@@ -2620,14 +1245,14 @@ class ComponentbuilderModelJoomla_component extends JModelAdmin
$this->canDo = ComponentbuilderHelper::getActions('joomla_component');
}
- if (!$this->canDo->get('core.edit') && !$this->canDo->get('core.batch'))
+ if (!$this->canDo->get('joomla_component.edit') && !$this->canDo->get('joomla_component.batch'))
{
$this->setError(JText::_('JLIB_APPLICATION_ERROR_BATCH_CANNOT_EDIT'));
return false;
}
// make sure published only updates if user has the permission.
- if (isset($values['published']) && !$this->canDo->get('core.edit.state'))
+ if (isset($values['published']) && !$this->canDo->get('joomla_component.edit.state'))
{
unset($values['published']);
}
@@ -2637,7 +1262,7 @@ class ComponentbuilderModelJoomla_component extends JModelAdmin
// Parent exists so we proceed
foreach ($pks as $pk)
{
- if (!$this->user->authorise('core.edit', $contexts[$pk]))
+ if (!$this->user->authorise('joomla_component.edit', $contexts[$pk]))
{
$this->setError(JText::_('JLIB_APPLICATION_ERROR_BATCH_CANNOT_EDIT'));
diff --git a/admin/models/joomla_components.php b/admin/models/joomla_components.php
index 1f3e230d6..35bdc87b1 100644
--- a/admin/models/joomla_components.php
+++ b/admin/models/joomla_components.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version @update number 385 of this MVC
- @build 6th October, 2017
+ @version @update number 473 of this MVC
+ @build 20th October, 2017
@created 6th May, 2015
@package Component Builder
@subpackage joomla_components.php
@@ -81,12 +81,10 @@ class ComponentbuilderModelJoomla_components extends JModelList
protected $tempPath;
protected $customPath;
protected $smartExport = array();
- protected $templateIds = array();
- protected $layoutIds = array();
- protected $customCodeIds = array();
+ protected $exportIDs = array();
protected $customCodeM = array();
- protected $fieldTypes = array();
- protected $isMultiple = array();
+ protected $fieldTypes = array();
+ protected $isMultiple = array();
/**
* Method to build the export package
@@ -261,13 +259,13 @@ class ComponentbuilderModelJoomla_components extends JModelList
// component image
$this->moveIt(array('image' => array($item->image)), 'image');
// add config fields
- $this->setData('field', $item->addconfig, 'field');
+ $this->setData('field', $this->getIds($item->addconfig, 'repeatable', 'field'), 'id');
// add admin views
- $this->setData('admin_view', $item->addadmin_views, 'adminview');
+ $this->setData('admin_view', $this->getIds($item->addadmin_views, 'repeatable', 'adminview'), 'id');
// add custom admin views
- $this->setData('custom_admin_view', $item->addcustom_admin_views, 'customadminview');
+ $this->setData('custom_admin_view', $this->getIds($item->addcustom_admin_views, 'repeatable', 'customadminview'), 'id');
// add site views
- $this->setData('site_view', $item->addsite_views, 'siteview');
+ $this->setData('site_view', $this->getIds($item->addsite_views, 'repeatable', 'siteview'), 'id');
// set the custom code ID's
$this->setCustomCodeIds($item, 'joomla_component');
// set the language strings for this component
@@ -275,23 +273,44 @@ class ComponentbuilderModelJoomla_components extends JModelList
// load to global object
$this->smartExport['joomla_component'][$item->id] = $item;
}
- // add templates
- if (ComponentbuilderHelper::checkArray($this->templateIds))
+ // add fields and conditions
+ if (isset($this->exportIDs['admin_view']) && ComponentbuilderHelper::checkArray($this->exportIDs['admin_view']))
{
- $this->setData('template', array('template' => $this->templateIds), 'template');
+ $this->setData('admin_fields', array_values($this->exportIDs['admin_view']), 'admin_view');
+ $this->setData('admin_fields_conditions', array_values($this->exportIDs['admin_view']), 'admin_view');
+ }
+ // add field types
+ if (isset($this->exportIDs['fieldtype']) && ComponentbuilderHelper::checkArray($this->exportIDs['fieldtype']))
+ {
+ $this->setData('fieldtype', array_values($this->exportIDs['fieldtype']), 'id');
+ }
+ // add templates
+ if (isset($this->exportIDs['template']) && ComponentbuilderHelper::checkArray($this->exportIDs['template']))
+ {
+ $this->setData('template', array_values($this->exportIDs['template']), 'id');
}
// add layouts
- if (ComponentbuilderHelper::checkArray($this->layoutIds))
+ if (isset($this->exportIDs['layout']) && ComponentbuilderHelper::checkArray($this->exportIDs['layout']))
{
- $this->setData('layout', array('layout' => $this->layoutIds), 'layout');
+ $this->setData('layout', array_values($this->exportIDs['layout']), 'id');
+ }
+ // add dynamic get
+ if (isset($this->exportIDs['dynamic_get']) && ComponentbuilderHelper::checkArray($this->exportIDs['dynamic_get']))
+ {
+ $this->setData('dynamic_get', array_values($this->exportIDs['dynamic_get']), 'id');
+ }
+ // add snippets
+ if (isset($this->exportIDs['snippet']) && ComponentbuilderHelper::checkArray($this->exportIDs['snippet']))
+ {
+ $this->setData('snippet', array_values($this->exportIDs['snippet']), 'id');
}
// add custom code
- if (ComponentbuilderHelper::checkArray($this->customCodeIds))
+ if (isset($this->exportIDs['custom_code']) && ComponentbuilderHelper::checkArray($this->exportIDs['custom_code']))
{
- $this->setData('custom_code', array('custom_code' => $this->customCodeIds), 'custom_code');
+ $this->setData('custom_code', array_values($this->exportIDs['custom_code']), 'id');
}
// has any data been set
- if (ComponentbuilderHelper::checkArray($this->smartExport['joomla_component']))
+ if (isset($this->smartExport['joomla_component']) && ComponentbuilderHelper::checkArray($this->smartExport['joomla_component']))
{
// set the folder and move the files of each component to the folder
return $this->smartExportBuilder();
@@ -302,6 +321,265 @@ class ComponentbuilderModelJoomla_components extends JModelList
return false;
}
+ /**
+ * Set export IDs.
+ *
+ * @return void.
+ */
+ protected function setExportIDs($value, $table)
+ {
+ // check if table has been set
+ if (!isset($this->exportIDs[$table]))
+ {
+ $this->exportIDs[$table] = array();
+ }
+ // convert if value is in json
+ if (ComponentbuilderHelper::checkJson($value))
+ {
+ $value = json_decode($value, true);
+ }
+ // now update the fields
+ if (ComponentbuilderHelper::checkArray($value))
+ {
+ foreach ($value as $id)
+ {
+ if ((ComponentbuilderHelper::checkString($id) || is_numeric($id)) && 0 !== (int) $id)
+ {
+ $this->exportIDs[$table][(int) $id] = (int) $id;
+ }
+ }
+ }
+ elseif ((ComponentbuilderHelper::checkString($value) || is_numeric($value)) && 0 !== (int) $value)
+ {
+ $this->exportIDs[$table][(int) $value] = (int) $value;
+ }
+ }
+
+ /**
+ * Method to get ids.
+ *
+ * @return mixed An array of ids on success, false on failure.
+ */
+ protected function getIds($values, $type, $key = null)
+ {
+ // the ids bucket
+ $bucket = array();
+ // if json convert to array
+ if (ComponentbuilderHelper::checkJson($values))
+ {
+ $values = json_decode($values, true);
+ }
+ // check that the array has values
+ if (ComponentbuilderHelper::checkArray($values))
+ {
+ // check if the key is an array (targeting subform)
+ if ('subform' === $type && $key)
+ {
+ foreach ($values as $value)
+ {
+ if (isset($value[$key]))
+ {
+ if (is_numeric($value[$key]))
+ {
+ $bucket[] = $value[$key];
+ }
+ elseif (ComponentbuilderHelper::checkString($value[$key]))
+ {
+ $bucket[] = $this->_db->quote($value[$key]);
+ }
+ }
+ }
+ // only return if we set the ids
+ if (ComponentbuilderHelper::checkArray($bucket))
+ {
+ // now set the values back
+ return array_unique($bucket);
+ }
+ }
+ // check if the key is an array (targeting subform)
+ if ('repeatable' === $type && $key)
+ {
+ if (isset($values[$key]))
+ {
+ return array_map(function($id) {
+ if (is_numeric($id))
+ {
+ return $id;
+ }
+ elseif (ComponentbuilderHelper::checkString($id))
+ {
+ return $this->_db->quote($id);
+ }
+ }, array_unique($values[$key]) );
+ }
+ }
+ }
+ return false;
+ }
+
+ /**
+ * Method to get data of a given table.
+ *
+ * @return mixed An array of data items on success, false on failure.
+ */
+ protected function setData($table, $values, $key)
+ {
+ // make sure we have an array of values
+ if (!ComponentbuilderHelper::checkArray($values) || !ComponentbuilderHelper::checkString($table) || !ComponentbuilderHelper::checkString($key))
+ {
+ return false;
+ }
+ // start the query
+ $query = $this->_db->getQuery(true);
+
+ // Select some fields
+ $query->select(array('a.*'));
+
+ // From the componentbuilder_ANY table
+ $query->from($this->_db->quoteName('#__componentbuilder_'. $table, 'a'));
+ // set the where query
+ $query->where('a.'.$key.' IN (' . implode(',',$values) . ')');
+ // Implement View Level Access
+ if (!$this->user->authorise('core.options', 'com_componentbuilder'))
+ {
+ $groups = implode(',', $this->user->getAuthorisedViewLevels());
+ $query->where('a.access IN (' . $groups . ')');
+ }
+
+ // Order the results by ordering
+ $query->order('a.ordering ASC');
+
+ // Load the items
+ $this->_db->setQuery($query);
+ $this->_db->execute();
+ if ($this->_db->getNumRows())
+ {
+ $items = $this->_db->loadObjectList();
+ // check if we have items
+ if (ComponentbuilderHelper::checkArray($items))
+ {
+ // set search array
+ if ('site_view' === $table || 'custom_admin_view' === $table)
+ {
+ $searchArray = array('php_view','php_jview','php_jview_display','php_document','js_document','css_document','css');
+ }
+ // reset the global array
+ if ('template' === $table)
+ {
+ $this->exportIDs['template'] = array();
+ }
+ elseif ('layout' === $table)
+ {
+ $this->exportIDs['layout'] = array();
+ }
+ // start loading the data
+ if (!isset($this->smartExport[$table]))
+ {
+ $this->smartExport[$table] = array();
+ }
+ // start loading the found items
+ foreach ($items as $nr => &$item)
+ {
+ // set the data per id only once
+ if (!isset($item->id) || 0 === (int) $item->id || isset($this->smartExport[$table][$item->id]))
+ {
+ continue;
+ }
+ // load to global object
+ $this->smartExport[$table][$item->id] = $item;
+ // set the custom code ID's
+ $this->setCustomCodeIds($item, $table);
+ // actions to take if table is admin_view
+ if ('admin_view' === $table)
+ {
+ // add fields & conditions
+ $this->setExportIDs($item->id, 'admin_view');
+ // admin icon
+ $this->moveIt(array('image' => array($item->icon)), 'image');
+ // admin icon_add
+ $this->moveIt(array('image' => array($item->icon_add)), 'image');
+ // admin icon_category
+ $this->moveIt(array('image' => array($item->icon_category)), 'image');
+ }
+ // actions to take if table is admin_fields
+ if ('admin_fields' === $table)
+ {
+ // add fields
+ $this->setData('field', $this->getIds($item->addfields, 'subform', 'field'), 'id');
+ }
+ // actions to take if table is field
+ if ('field' === $table)
+ {
+ // add field types
+ $this->setExportIDs($item->fieldtype, 'fieldtype');
+ // check if this field has multiple fields
+ if ($this->checkMultiFields($item->fieldtype))
+ {
+ $fields = ComponentbuilderHelper::getBetween(json_decode($item->xml), 'fields="', '"');
+ $fieldsSets = array();
+ if (strpos($fields, ',') !== false)
+ {
+ // multiple fields
+ $fieldsSets = (array) explode(',', $fields);
+ }
+ elseif (is_numeric($fields))
+ {
+ // single field
+ $fieldsSets[] = (int) $fields;
+ }
+ // get fields
+ if (ComponentbuilderHelper::checkArray($fieldsSets))
+ {
+ $this->setData('field', $fieldsSets, 'id');
+ }
+ }
+ }
+ // actions to take if table is site_view and custom_admin_view
+ if ('site_view' === $table || 'custom_admin_view' === $table)
+ {
+ // search for templates & layouts
+ $this->getTemplateLayout(base64_decode($item->default));
+ // add search array templates and layouts
+ foreach ($searchArray as $scripter)
+ {
+ if (isset($item->{'add_'.$scripter}) && $item->{'add_'.$scripter} == 1)
+ {
+ $this->getTemplateLayout($item->{$scripter});
+ }
+ }
+ // add dynamic gets
+ $this->setExportIDs($item->main_get, 'dynamic_get');
+ $this->setExportIDs($item->custom_get, 'dynamic_get');
+ $this->setExportIDs($item->dynamic_get, 'dynamic_get');
+ // move the icon
+ if ('custom_admin_view' === $table && isset($item->icon))
+ {
+ // view icon
+ $this->moveIt(array('image' => array($item->icon)), 'image');
+ }
+ // add snippets
+ $this->setExportIDs((int) $item->snippet, 'snippet');
+ }
+ // actions to take if table is template and layout
+ if ('layout' === $table || 'template' === $table)
+ {
+ // add snippets
+ $this->setExportIDs((int) $item->snippet, 'snippet');
+ // search for templates & layouts
+ $this->getTemplateLayout(base64_decode($item->$table), $this->user);
+ // add search array templates and layouts
+ if (isset($item->add_php_view) && $item->add_php_view == 1)
+ {
+ $this->getTemplateLayout($item->php_view, $this->user);
+ }
+ // add dynamic gets
+ $this->setExportIDs((int) $item->dynamic_get, 'dynamic_get');
+ }
+ }
+ }
+ }
+ }
+
/**
* Method to build the package to export
*
@@ -518,213 +796,6 @@ class ComponentbuilderModelJoomla_components extends JModelList
return true;
}
- /**
- * Method to get data of a given table.
- *
- * @return mixed An array of data items on success, false on failure.
- */
- protected function setData($table, $values, $key)
- {
- // if json convert to array
- if (ComponentbuilderHelper::checkJson($values))
- {
- $values = json_decode($values, true);
- }
- // check if the key is an array (targeting subform)
- if (ComponentbuilderHelper::checkArray($key) && isset($key['subform']) && ComponentbuilderHelper::checkArray($values))
- {
- $subform = $key['subform'];
- $key = $key['key'];
- $tmpBucket = array($key => array());
- foreach ($values as $value)
- {
- if (isset($value[$subform]))
- {
- if ('language' === $subform)
- {
- $tmpBucket[$key][] = (int) ComponentbuilderHelper::getVar('language', $value[$subform], 'langtag', 'id');
- }
- else
- {
- $tmpBucket[$key][] = $value[$subform];
- }
- }
- }
- if (ComponentbuilderHelper::checkArray($tmpBucket[$key]))
- {
- // now set the values back
- $values = $tmpBucket;
- }
- else
- {
- return false;
- }
- }
- elseif (ComponentbuilderHelper::checkArray($key))
- {
- return false;
- }
- // make sure we have an array
- if (('custom_code' !== $table && 'component' !== $key && 'custom_get' !== $key) && (!ComponentbuilderHelper::checkArray($values) || !isset($values[$key]) || !ComponentbuilderHelper::checkArray($values[$key])))
- {
- return false;
- }
- elseif (!ComponentbuilderHelper::checkArray($values))
- {
- return false;
- }
- $query = $this->_db->getQuery(true);
-
- // Select some fields
- $query->select(array('a.*'));
-
- // From the componentbuilder_ANY table
- $query->from($this->_db->quoteName('#__componentbuilder_'. $table, 'a'));
- if ('custom_code' === $table && 'component' === $key)
- {
- $query->where('a.component IN (' . implode(',',$values) . ')');
- }
- elseif ('custom_get' === $key)
- {
- $query->where('a.id IN (' . implode(',',$values) . ')');
- }
- else
- {
- $query->where('a.id IN (' . implode(',',$values[$key]) . ')');
- }
-
- // Implement View Level Access
- if (!$this->user->authorise('core.options', 'com_componentbuilder'))
- {
- $groups = implode(',', $this->user->getAuthorisedViewLevels());
- $query->where('a.access IN (' . $groups . ')');
- }
-
- // Order the results by ordering
- $query->order('a.ordering ASC');
-
- // Load the items
- $this->_db->setQuery($query);
- $this->_db->execute();
- if ($this->_db->getNumRows())
- {
- $items = $this->_db->loadObjectList();
- // check if we have items
- if (ComponentbuilderHelper::checkArray($items))
- {
- // set search array
- if ('site_view' === $table || 'custom_admin_view' === $table)
- {
- $searchArray = array('php_view','php_jview','php_jview_display','php_document','js_document','css_document','css');
- }
- // reset the global array
- if ('template' === $table)
- {
- $this->templateIds = array();
- }
- elseif ('layout' === $table)
- {
- $this->layoutIds = array();
- }
- // start loading the data
- if (!isset($this->smartExport[$table]))
- {
- $this->smartExport[$table] = array();
- }
- foreach ($items as $nr => &$item)
- {
- // set the data per id only once
- if (isset($this->smartExport[$table][$item->id]))
- {
- continue;
- }
- // load to global object
- $this->smartExport[$table][$item->id] = $item;
- // set the custom code ID's
- $this->setCustomCodeIds($item, $table);
- // actions to take if table is admin_view
- if ('admin_view' === $table)
- {
- // add fields
- $this->setData('field', $item->addfields, 'field');
- // admin icon
- $this->moveIt(array('image' => array($item->icon)), 'image');
- // admin icon_add
- $this->moveIt(array('image' => array($item->icon_add)), 'image');
- // admin icon_category
- $this->moveIt(array('image' => array($item->icon_category)), 'image');
- }
- // actions to take if table is field
- if ('field' === $table)
- {
- // add field types
- $this->setData('fieldtype', array('fieldtype' => array($item->fieldtype)), 'fieldtype');
- // check if this field has multiple fields
- if ($this->checkMultiFields($item->fieldtype))
- {
- $fields = ComponentbuilderHelper::getBetween(json_decode($item->xml), 'fields="', '"');
- $fieldsSets = array();
- if (strpos($fields, ',') !== false)
- {
- // multiple fields
- $fieldsSets = (array) explode(',', $fields);
- }
- elseif (is_numeric($fields))
- {
- // single field
- $fieldsSets[] = (int) $fields;
- }
- // get fields
- if (ComponentbuilderHelper::checkArray($fieldsSets))
- {
- $this->setData('field', array('field' => $fieldsSets), 'field');
- }
- }
- }
- // actions to take if table is site_view and custom_admin_view
- if ('site_view' === $table || 'custom_admin_view' === $table)
- {
- // search for templates & layouts
- $this->getTemplateLayout(base64_decode($item->default));
- // add search array templates and layouts
- foreach ($searchArray as $scripter)
- {
- if (isset($item->{'add_'.$scripter}) && $item->{'add_'.$scripter} == 1)
- {
- $this->getTemplateLayout($item->$scripter);
- }
- }
- // add dynamic gets
- $this->setData('dynamic_get', array('dynamic_get' => array($item->main_get)), 'dynamic_get');
- $this->setData('dynamic_get', $item->custom_get, 'custom_get');
- if ('custom_admin_view' === $table && isset($item->icon))
- {
- // view icon
- $this->moveIt(array('image' => array($item->icon)), 'image');
- }
- // add snippets
- $this->setData('snippet', array('snippet' => array($item->snippet)), 'snippet');
- }
- // actions to take if table is template and layout
- if ('layout' === $table || 'template' === $table)
- {
- // search for templates & layouts
- $this->getTemplateLayout(base64_decode($item->$table), $this->user);
- // add search array templates and layouts
- if (isset($item->add_php_view) && $item->add_php_view == 1)
- {
- $this->getTemplateLayout($item->php_view, $this->user);
- }
- // add dynamic gets
- $this->setData('dynamic_get', array('dynamic_get' => $item->dynamic_get), 'dynamic_get');
- // add snippets
- $this->setData('snippet', array('snippet' => array($item->snippet)), 'snippet');
- }
- }
- }
- }
- }
-
/**
* Check if a field has multiple fields
*
@@ -833,9 +904,9 @@ class ComponentbuilderModelJoomla_components extends JModelList
$data = $this->getDataWithAlias($template, 'template');
if (ComponentbuilderHelper::checkArray($data))
{
- if (!isset($this->templateIds[$data['id']]))
+ if (!isset($this->exportIDs['template']) || !isset($this->exportIDs['template'][$data['id']]))
{
- $this->templateIds[$data['id']] = $data['id'];
+ $this->setExportIDs($data['id'], 'template');
// call self to get child data
$again[] = $data['html'];
$again[] = $data['php_view'];
@@ -868,9 +939,9 @@ class ComponentbuilderModelJoomla_components extends JModelList
$data = $this->getDataWithAlias($layout, 'layout');
if (ComponentbuilderHelper::checkArray($data))
{
- if (!isset($this->layoutIds[$data['id']]))
+ if (!isset($this->exportIDs['layout']) && !isset($this->exportIDs['layout'][$data['id']]))
{
- $this->layoutIds[$data['id']] = $data['id'];
+ $this->setExportIDs($data['id'], 'layout');
// call self to get child data
$again[] = $data['html'];
$again[] = $data['php_view'];
@@ -889,14 +960,14 @@ class ComponentbuilderModelJoomla_components extends JModelList
if ($user)
{
// add templates
- if (ComponentbuilderHelper::checkArray($this->templateIds))
+ if (isset($this->exportIDs['template']) && ComponentbuilderHelper::checkArray($this->exportIDs['template']))
{
- $this->setData('template', array('template' => $this->templateIds), 'template');
+ $this->setData('template', array_values($this->exportIDs['template']), 'id');
}
// add layouts
- if (ComponentbuilderHelper::checkArray($this->layoutIds))
+ if (isset($this->exportIDs['layout']) && ComponentbuilderHelper::checkArray($this->exportIDs['layout']))
{
- $this->setData('layout', array('layout' => $this->layoutIds), 'layout');
+ $this->setData('layout', array_values($this->exportIDs['layout']), 'id');
}
}
}
@@ -980,13 +1051,13 @@ class ComponentbuilderModelJoomla_components extends JModelList
// if numeric add to ids
if (is_numeric($func))
{
- $this->customCodeIds[$func] = (int) $func;
+ $this->setExportIDs($func, 'custom_code');
}
elseif (ComponentbuilderHelper::checkString($func))
{
if ($funcID = ComponentbuilderHelper::getVar('custom_code', $func, 'function_name', 'id'))
{
- $this->customCodeIds[$funcID] = (int) $funcID;
+ $this->setExportIDs($funcID, 'custom_code');
}
}
}
@@ -1045,7 +1116,7 @@ class ComponentbuilderModelJoomla_components extends JModelList
// add languages
if (isset($item->translation))
{
- $this->setData('language', $item->translation, array('key' => 'language', 'subform' => 'language'));
+ $this->setData('language', $this->getIds($item->translation, 'subform', 'language'), 'langtag');
}
}
}
@@ -1212,7 +1283,24 @@ class ComponentbuilderModelJoomla_components extends JModelList
$this->checkInNow();
// load parent items
- $items = parent::getItems();
+ $items = parent::getItems();
+
+ // set values to display correctly.
+ if (ComponentbuilderHelper::checkArray($items))
+ {
+ // get user object.
+ $user = JFactory::getUser();
+ foreach ($items as $nr => &$item)
+ {
+ $access = ($user->authorise('joomla_component.access', 'com_componentbuilder.joomla_component.' . (int) $item->id) && $user->authorise('joomla_component.access', 'com_componentbuilder'));
+ if (!$access)
+ {
+ unset($items[$nr]);
+ continue;
+ }
+
+ }
+ }
// return items
return $items;
@@ -1348,8 +1436,17 @@ class ComponentbuilderModelJoomla_components extends JModelList
// set values to display correctly.
if (ComponentbuilderHelper::checkArray($items))
{
+ // get user object.
+ $user = JFactory::getUser();
foreach ($items as $nr => &$item)
{
+ $access = ($user->authorise('joomla_component.access', 'com_componentbuilder.joomla_component.' . (int) $item->id) && $user->authorise('joomla_component.access', 'com_componentbuilder'));
+ if (!$access)
+ {
+ unset($items[$nr]);
+ continue;
+ }
+
// decode sql
$item->sql = base64_decode($item->sql);
// decode php_preflight_update
diff --git a/admin/models/language_translation.php b/admin/models/language_translation.php
index 134b89aef..1d0941a43 100644
--- a/admin/models/language_translation.php
+++ b/admin/models/language_translation.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version @update number 43 of this MVC
- @build 16th September, 2017
+ @version @update number 45 of this MVC
+ @build 14th October, 2017
@created 3rd April, 2017
@package Component Builder
@subpackage language_translation.php
diff --git a/admin/models/language_translations.php b/admin/models/language_translations.php
index bf2ce2320..c68957715 100644
--- a/admin/models/language_translations.php
+++ b/admin/models/language_translations.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version @update number 43 of this MVC
- @build 16th September, 2017
+ @version @update number 45 of this MVC
+ @build 14th October, 2017
@created 3rd April, 2017
@package Component Builder
@subpackage language_translations.php
diff --git a/admin/models/site_view.php b/admin/models/site_view.php
index 1bf39c15c..1667d48c9 100644
--- a/admin/models/site_view.php
+++ b/admin/models/site_view.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version @update number 54 of this MVC
- @build 27th September, 2017
+ @version @update number 63 of this MVC
+ @build 20th October, 2017
@created 29th May, 2015
@package Component Builder
@subpackage site_view.php
@@ -103,6 +103,22 @@ class ComponentbuilderModelSite_view extends JModelAdmin
$item->custom_get = $custom_get->toArray();
}
+ if (!empty($item->ajax_input))
+ {
+ // Convert the ajax_input field to an array.
+ $ajax_input = new Registry;
+ $ajax_input->loadString($item->ajax_input);
+ $item->ajax_input = $ajax_input->toArray();
+ }
+
+ if (!empty($item->custom_button))
+ {
+ // Convert the custom_button field to an array.
+ $custom_button = new Registry;
+ $custom_button->loadString($item->custom_button);
+ $item->custom_button = $custom_button->toArray();
+ }
+
if (!empty($item->css))
{
// base64 Decode css.
@@ -167,6 +183,45 @@ class ComponentbuilderModelSite_view extends JModelAdmin
{
// base64 Decode php_jview.
$item->php_jview = base64_decode($item->php_jview);
+ }
+
+ // update the fields
+ $objectUpdate = new stdClass();
+ $objectUpdate->id = (int) $item->id;
+ // check what type of custom_button array we have here (should be subform... but just incase)
+ // This could happen due to huge data sets
+ if (isset($item->custom_button) && isset($item->custom_button['name']))
+ {
+ $bucket = array();
+ foreach($item->custom_button as $option => $values)
+ {
+ foreach($values as $nr => $value)
+ {
+ $bucket['custom_button'.$nr][$option] = $value;
+ }
+ }
+ $item->custom_button = $bucket;
+ $objectUpdate->custom_button = json_encode($bucket);
+ }
+ // check what type of ajax_input array we have here (should be subform... but just incase)
+ // This could happen due to huge data sets
+ if (isset($item->ajax_input) && isset($item->ajax_input['value_name']))
+ {
+ $bucket = array();
+ foreach($item->ajax_input as $option => $values)
+ {
+ foreach($values as $nr => $value)
+ {
+ $bucket['ajax_input'.$nr][$option] = $value;
+ }
+ }
+ $item->ajax_input = $bucket;
+ $objectUpdate->ajax_input = json_encode($bucket);
+ }
+ // be sure to update the table if we found repeatable fields that are still not converted
+ if (count((array) $objectUpdate) > 1)
+ {
+ $this->_db->updateObject('#__componentbuilder_site_view', $objectUpdate, 'id');
}
if (!empty($item->id))
@@ -175,7 +230,7 @@ class ComponentbuilderModelSite_view extends JModelAdmin
$item->tags->getTagIds($item->id, 'com_componentbuilder.site_view');
}
}
- $this->addsite_viewsvvwc = $item->id;
+ $this->addsite_viewsvvwb = $item->id;
return $item;
}
@@ -185,7 +240,7 @@ class ComponentbuilderModelSite_view extends JModelAdmin
*
* @return mixed An array of data items on success, false on failure.
*/
- public function getVyvlinked_components()
+ public function getVyulinked_components()
{
// Get the user object.
$user = JFactory::getUser();
@@ -225,15 +280,32 @@ class ComponentbuilderModelSite_view extends JModelAdmin
{
$items = $db->loadObjectList();
- // Filter by addsite_viewsvvwc in this Repetable Field
- if (ComponentbuilderHelper::checkArray($items) && isset($this->addsite_viewsvvwc))
+ // set values to display correctly.
+ if (ComponentbuilderHelper::checkArray($items))
+ {
+ // get user object.
+ $user = JFactory::getUser();
+ foreach ($items as $nr => &$item)
+ {
+ $access = ($user->authorise('joomla_component.access', 'com_componentbuilder.joomla_component.' . (int) $item->id) && $user->authorise('joomla_component.access', 'com_componentbuilder'));
+ if (!$access)
+ {
+ unset($items[$nr]);
+ continue;
+ }
+
+ }
+ }
+
+ // Filter by addsite_viewsvvwb in this Repetable Field
+ if (ComponentbuilderHelper::checkArray($items) && isset($this->addsite_viewsvvwb))
{
foreach ($items as $nr => &$item)
{
if (isset($item->addsite_views) && ComponentbuilderHelper::checkJson($item->addsite_views))
{
$tmpArray = json_decode($item->addsite_views,true);
- if (!isset($tmpArray['siteview']) || !ComponentbuilderHelper::checkArray($tmpArray['siteview']) || !in_array($this->addsite_viewsvvwc, $tmpArray['siteview']))
+ if (!isset($tmpArray['siteview']) || !ComponentbuilderHelper::checkArray($tmpArray['siteview']) || !in_array($this->addsite_viewsvvwb, $tmpArray['siteview']))
{
unset($items[$nr]);
continue;
@@ -981,6 +1053,32 @@ class ComponentbuilderModelSite_view extends JModelAdmin
$data['custom_get'] = '';
}
+ // Set the ajax_input items to data.
+ if (isset($data['ajax_input']) && is_array($data['ajax_input']))
+ {
+ $ajax_input = new JRegistry;
+ $ajax_input->loadArray($data['ajax_input']);
+ $data['ajax_input'] = (string) $ajax_input;
+ }
+ elseif (!isset($data['ajax_input']))
+ {
+ // Set the empty ajax_input to data
+ $data['ajax_input'] = '';
+ }
+
+ // Set the custom_button items to data.
+ if (isset($data['custom_button']) && is_array($data['custom_button']))
+ {
+ $custom_button = new JRegistry;
+ $custom_button->loadArray($data['custom_button']);
+ $data['custom_button'] = (string) $custom_button;
+ }
+ elseif (!isset($data['custom_button']))
+ {
+ // Set the empty custom_button to data
+ $data['custom_button'] = '';
+ }
+
// Set the css string to base64 string.
if (isset($data['css']))
{
diff --git a/admin/models/site_views.php b/admin/models/site_views.php
index d5ea57292..7a08c7ffb 100644
--- a/admin/models/site_views.php
+++ b/admin/models/site_views.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version @update number 54 of this MVC
- @build 27th September, 2017
+ @version @update number 63 of this MVC
+ @build 20th October, 2017
@created 29th May, 2015
@package Component Builder
@subpackage site_views.php
diff --git a/admin/sql/install.mysql.utf8.sql b/admin/sql/install.mysql.utf8.sql
index cef63858a..4b1e96e8c 100644
--- a/admin/sql/install.mysql.utf8.sql
+++ b/admin/sql/install.mysql.utf8.sql
@@ -94,6 +94,9 @@ CREATE TABLE IF NOT EXISTS `#__componentbuilder_joomla_component` (
`hits` INT(10) unsigned NOT NULL DEFAULT 0,
`access` INT(10) unsigned NOT NULL DEFAULT 0,
`ordering` INT(11) NOT NULL DEFAULT 0,
+ `metakey` TEXT NOT NULL DEFAULT '',
+ `metadesc` TEXT NOT NULL DEFAULT '',
+ `metadata` TEXT NOT NULL DEFAULT '',
PRIMARY KEY (`id`),
KEY `idx_access` (`access`),
KEY `idx_checkout` (`checked_out`),
@@ -161,8 +164,6 @@ CREATE TABLE IF NOT EXISTS `#__componentbuilder_admin_view` (
`add_php_postsavehook` TINYINT(1) NOT NULL DEFAULT 0,
`add_php_save` TINYINT(1) NOT NULL DEFAULT 0,
`add_sql` TINYINT(1) NOT NULL DEFAULT 0,
- `addconditions` TEXT NOT NULL,
- `addfields` TEXT NOT NULL,
`addlinked_views` TEXT NOT NULL,
`addpermissions` TEXT NOT NULL,
`addtables` TEXT NOT NULL,
@@ -234,8 +235,8 @@ CREATE TABLE IF NOT EXISTS `#__componentbuilder_admin_view` (
KEY `idx_name_single` (`name_single`),
KEY `idx_name_list` (`name_list`),
KEY `idx_type` (`type`),
- KEY `idx_add_fadein` (`add_fadein`),
KEY `idx_source` (`source`),
+ KEY `idx_add_fadein` (`add_fadein`),
KEY `idx_add_css_view` (`add_css_view`),
KEY `idx_add_php_getitems` (`add_php_getitems`),
KEY `idx_add_css_views` (`add_css_views`),
@@ -392,8 +393,8 @@ CREATE TABLE IF NOT EXISTS `#__componentbuilder_site_view` (
KEY `idx_dynamic_get` (`dynamic_get`),
KEY `idx_add_css` (`add_css`),
KEY `idx_add_php_ajax` (`add_php_ajax`),
- KEY `idx_button_position` (`button_position`),
- KEY `idx_add_custom_button` (`add_custom_button`)
+ KEY `idx_add_custom_button` (`add_custom_button`),
+ KEY `idx_button_position` (`button_position`)
) ENGINE=MyISAM AUTO_INCREMENT=0 DEFAULT CHARSET=utf8;
CREATE TABLE IF NOT EXISTS `#__componentbuilder_template` (
@@ -795,8 +796,10 @@ CREATE TABLE IF NOT EXISTS `#__componentbuilder_help_document` (
`checked_out_time` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
`version` INT(10) unsigned NOT NULL DEFAULT 1,
`hits` INT(10) unsigned NOT NULL DEFAULT 0,
+ `access` INT(10) unsigned NOT NULL DEFAULT 0,
`ordering` INT(11) NOT NULL DEFAULT 0,
PRIMARY KEY (`id`),
+ KEY `idx_access` (`access`),
KEY `idx_checkout` (`checked_out`),
KEY `idx_createdby` (`created_by`),
KEY `idx_modifiedby` (`modified_by`),
@@ -809,6 +812,58 @@ CREATE TABLE IF NOT EXISTS `#__componentbuilder_help_document` (
KEY `idx_article` (`article`)
) ENGINE=MyISAM AUTO_INCREMENT=0 DEFAULT CHARSET=utf8;
+CREATE TABLE IF NOT EXISTS `#__componentbuilder_admin_fields` (
+ `id` INT(11) NOT NULL AUTO_INCREMENT,
+ `asset_id` INT(10) unsigned NOT NULL DEFAULT 0 COMMENT 'FK to the #__assets table.',
+ `addfields` MEDIUMTEXT NOT NULL,
+ `admin_view` INT(11) NOT NULL DEFAULT 0,
+ `params` text NOT NULL DEFAULT '',
+ `published` TINYINT(3) NOT NULL DEFAULT 1,
+ `created_by` INT(10) unsigned NOT NULL DEFAULT 0,
+ `modified_by` INT(10) unsigned NOT NULL DEFAULT 0,
+ `created` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
+ `modified` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
+ `checked_out` int(11) unsigned NOT NULL DEFAULT 0,
+ `checked_out_time` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
+ `version` INT(10) unsigned NOT NULL DEFAULT 1,
+ `hits` INT(10) unsigned NOT NULL DEFAULT 0,
+ `access` INT(10) unsigned NOT NULL DEFAULT 0,
+ `ordering` INT(11) NOT NULL DEFAULT 0,
+ PRIMARY KEY (`id`),
+ KEY `idx_access` (`access`),
+ KEY `idx_checkout` (`checked_out`),
+ KEY `idx_createdby` (`created_by`),
+ KEY `idx_modifiedby` (`modified_by`),
+ KEY `idx_state` (`published`),
+ KEY `idx_admin_view` (`admin_view`)
+) ENGINE=MyISAM AUTO_INCREMENT=0 DEFAULT CHARSET=utf8;
+
+CREATE TABLE IF NOT EXISTS `#__componentbuilder_admin_fields_conditions` (
+ `id` INT(11) NOT NULL AUTO_INCREMENT,
+ `asset_id` INT(10) unsigned NOT NULL DEFAULT 0 COMMENT 'FK to the #__assets table.',
+ `addconditions` MEDIUMTEXT NOT NULL,
+ `admin_view` INT(11) NOT NULL DEFAULT 0,
+ `params` text NOT NULL DEFAULT '',
+ `published` TINYINT(3) NOT NULL DEFAULT 1,
+ `created_by` INT(10) unsigned NOT NULL DEFAULT 0,
+ `modified_by` INT(10) unsigned NOT NULL DEFAULT 0,
+ `created` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
+ `modified` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
+ `checked_out` int(11) unsigned NOT NULL DEFAULT 0,
+ `checked_out_time` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
+ `version` INT(10) unsigned NOT NULL DEFAULT 1,
+ `hits` INT(10) unsigned NOT NULL DEFAULT 0,
+ `access` INT(10) unsigned NOT NULL DEFAULT 0,
+ `ordering` INT(11) NOT NULL DEFAULT 0,
+ PRIMARY KEY (`id`),
+ KEY `idx_access` (`access`),
+ KEY `idx_checkout` (`checked_out`),
+ KEY `idx_createdby` (`created_by`),
+ KEY `idx_modifiedby` (`modified_by`),
+ KEY `idx_state` (`published`),
+ KEY `idx_admin_view` (`admin_view`)
+) ENGINE=MyISAM AUTO_INCREMENT=0 DEFAULT CHARSET=utf8;
+
--
-- Dumping data for table `#__componentbuilder_joomla_component`
--
@@ -820,8 +875,8 @@ INSERT INTO `#__componentbuilder_joomla_component` (`id`, `add_license`, `licens
-- Dumping data for table `#__componentbuilder_admin_view`
--
-INSERT INTO `#__componentbuilder_admin_view` (`id`, `add_css_view`, `add_css_views`, `add_custom_button`, `add_custom_import`, `add_fadein`, `add_javascript_view_file`, `add_javascript_view_footer`, `add_javascript_views_file`, `add_javascript_views_footer`, `add_php_ajax`, `add_php_allowedit`, `add_php_batchcopy`, `add_php_batchmove`, `add_php_getitem`, `add_php_getitems`, `add_php_getitems_after_all`, `add_php_getlistquery`, `add_php_postsavehook`, `add_php_save`, `add_sql`, `addconditions`, `addfields`, `addlinked_views`, `addpermissions`, `addtables`, `addtabs`, `add_php_before_delete`, `add_php_before_publish`, `add_php_document`, `add_php_after_delete`, `add_php_after_publish`, `php_before_delete`, `php_before_publish`, `php_controller`, `php_document`, `php_after_delete`, `php_after_publish`, `ajax_input`, `css_view`, `css_views`, `custom_button`, `description`, `html_import_view`, `icon`, `icon_add`, `icon_category`, `javascript_view_file`, `javascript_view_footer`, `javascript_views_file`, `javascript_views_footer`, `name_list`, `system_name`, `name_single`, `not_required`, `php_ajaxmethod`, `php_allowedit`, `php_batchcopy`, `php_batchmove`, `php_getitem`, `php_getitems`, `php_getitems_after_all`, `php_getlistquery`, `php_import`, `php_import_display`, `php_import_save`, `php_import_setdata`, `php_model`, `php_postsavehook`, `php_save`, `short_description`, `source`, `sql`, `type`, `params`, `published`, `created`, `modified`, `version`, `hits`, `ordering`) VALUES
-(109, '', '', '', '', 1, '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '{\"target_field\":[[\"1011\",\"100\",\"158\",\"196\",\"280\"]],\"target_behavior\":[\"1\"],\"target_relation\":[\"0\"],\"match_field\":[\"682\"],\"match_behavior\":[\"1\"],\"match_options\":[\"1|Yes\"]}', '{\"field\":[\"199\",\"23\",\"84\",\"682\",\"100\",\"196\",\"1011\",\"158\",\"280\",\"203\"],\"list\":[\"1\",\"0\",\"1\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\"],\"order_list\":[\"1\",\"0\",\"2\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\"],\"title\":[\"1\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\"],\"alias\":[\"0\",\"1\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\"],\"sort\":[\"1\",\"0\",\"1\",\"1\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\"],\"search\":[\"1\",\"1\",\"1\",\"1\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\"],\"filter\":[\"0\",\"0\",\"0\",\"1\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\"],\"link\":[\"1\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\"],\"tab\":[\"1\",\"1\",\"1\",\"2\",\"2\",\"2\",\"2\",\"2\",\"2\",\"1\"],\"alignment\":[\"4\",\"4\",\"3\",\"1\",\"2\",\"2\",\"2\",\"2\",\"2\",\"5\"],\"order_edit\":[\"1\",\"2\",\"1\",\"1\",\"1\",\"2\",\"3\",\"4\",\"5\",\"1\"],\"permission\":[\"1\",\"1\",\"1\",\"1\",\"1\",\"1\",\"1\",\"1\",\"1\",\"0\"]}', '{\"adminview\":[],\"tab\":[],\"key\":[],\"parentkey\":[],\"addnew\":[]}', '{\"action\":[\"view.edit\",\"view.edit.own\",\"view.edit.state\",\"view.edit.created_by\",\"view.edit.created\",\"view.create\",\"view.delete\",\"view.access\"],\"implementation\":[\"3\",\"3\",\"3\",\"3\",\"3\",\"3\",\"3\",\"3\"]}', '', '{\"name\":[\"Details\",\"More\"]}', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', 'images/WoodMannequin-icon.png', 'images/WoodMannequin-icon-plus.png', '', '', '', '', '', 'Looks', 'Look', 'Look', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', 'The demo view', '', '', 1, '', 1, '2016-10-18 11:44:46', '2016-10-20 19:23:57', 12, '', 16);
+INSERT INTO `#__componentbuilder_admin_view` (`id`, `add_css_view`, `add_css_views`, `add_custom_button`, `add_custom_import`, `add_fadein`, `add_javascript_view_file`, `add_javascript_view_footer`, `add_javascript_views_file`, `add_javascript_views_footer`, `add_php_ajax`, `add_php_allowedit`, `add_php_batchcopy`, `add_php_batchmove`, `add_php_getitem`, `add_php_getitems`, `add_php_getitems_after_all`, `add_php_getlistquery`, `add_php_postsavehook`, `add_php_save`, `add_sql`, `addlinked_views`, `addpermissions`, `addtables`, `addtabs`, `add_php_before_delete`, `add_php_before_publish`, `add_php_document`, `add_php_after_delete`, `add_php_after_publish`, `php_before_delete`, `php_before_publish`, `php_controller`, `php_document`, `php_after_delete`, `php_after_publish`, `ajax_input`, `css_view`, `css_views`, `custom_button`, `description`, `html_import_view`, `icon`, `icon_add`, `icon_category`, `javascript_view_file`, `javascript_view_footer`, `javascript_views_file`, `javascript_views_footer`, `name_list`, `system_name`, `name_single`, `not_required`, `php_ajaxmethod`, `php_allowedit`, `php_batchcopy`, `php_batchmove`, `php_getitem`, `php_getitems`, `php_getitems_after_all`, `php_getlistquery`, `php_import`, `php_import_display`, `php_import_save`, `php_import_setdata`, `php_model`, `php_postsavehook`, `php_save`, `short_description`, `source`, `sql`, `type`, `params`, `published`, `created`, `modified`, `version`, `hits`, `ordering`) VALUES
+(109, '', '', '', '', 1, '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '{\"addpermissions0\":{\"action\":\"view.edit\",\"implementation\":\"3\"},\"addpermissions1\":{\"action\":\"view.edit.own\",\"implementation\":\"3\"},\"addpermissions2\":{\"action\":\"view.edit.state\",\"implementation\":\"3\"},\"addpermissions3\":{\"action\":\"view.edit.created_by\",\"implementation\":\"3\"},\"addpermissions4\":{\"action\":\"view.edit.created\",\"implementation\":\"3\"},\"addpermissions5\":{\"action\":\"view.create\",\"implementation\":\"3\"},\"addpermissions6\":{\"action\":\"view.delete\",\"implementation\":\"3\"},\"addpermissions7\":{\"action\":\"view.access\",\"implementation\":\"3\"}}', '', '{\"addtabs0\":{\"name\":\"Details\"},\"addtabs1\":{\"name\":\"More\"}}', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', 'images/WoodMannequin-icon.png', 'images/WoodMannequin-icon-plus.png', '', '', '', '', '', 'Looks', 'Look', 'Look', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', 'The demo view', '', '', 1, '', 1, '2016-10-18 11:44:46', '2016-10-20 19:23:57', 12, '', 16);
@@ -831,7 +886,7 @@ INSERT INTO `#__componentbuilder_admin_view` (`id`, `add_css_view`, `add_css_vie
INSERT INTO `#__componentbuilder_site_view` (`id`, `add_css_document`, `add_css`, `add_js_document`, `add_php_document`, `add_php_jview`, `add_php_jview_display`, `add_php_view`, `add_php_ajax`, `add_custom_button`, `custom_button`, `button_position`, `php_controller`, `php_model`, `ajax_input`, `php_ajaxmethod`, `codename`, `css_document`, `css`, `custom_get`, `default`, `description`, `dynamic_get`, `js_document`, `main_get`, `name`, `system_name`, `not_required`, `php_document`, `php_jview`, `php_jview_display`, `php_view`, `snippet`, `params`, `published`, `created`, `modified`, `version`, `hits`, `ordering`) VALUES
(23, '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', 'looks', '', '', '', 'PHRhYmxlIGNsYXNzPSJ1ay10YWJsZSB1ay10YWJsZS1ob3ZlciI+DQogICAgPGNhcHRpb24+PD9waHAgZWNobyBKVGV4dDo6XygnTGlzdCBvZiBhbGwgbG9va3MnKTsgPz48L2NhcHRpb24+DQogICAgPHRoZWFkPg0KICAgICAgICA8dHI+DQogICAgICAgICAgICA8dGg+PD9waHAgZWNobyBKVGV4dDo6XygnTmFtZScpOyA/PjwvdGg+DQogICAgICAgICAgICA8dGg+PD9waHAgZWNobyBKVGV4dDo6XygnRGVzY3JpcHRpb24nKTsgPz48L3RoPg0KICAgICAgICA8L3RyPg0KICAgIDwvdGhlYWQ+DQogICAgPHRib2R5Pg0KICAgICAgICA8P3BocCBmb3JlYWNoICgkdGhpcy0+aXRlbXMgYXMgJGl0ZW0pOiA/Pg0KICAgICAgICA8dHI+DQogICAgICAgICAgICA8dGQ+PGEgaHJlZj0iPD9waHAgZWNobyAgW1tbQ29tcG9uZW50XV1dSGVscGVyUm91dGU6OmdldExvb2tpbmdSb3V0ZSgkaXRlbS0+c2x1Zyk7ID8+IiA+PD9waHAgZWNobyAkaXRlbS0+bmFtZTsgPz48L2E+PC90ZD4NCiAgICAgICAgICAgIDx0ZD48P3BocCBlY2hvICR0aGlzLT5lc2NhcGUoJGl0ZW0tPmRlc2NyaXB0aW9uLCB0cnVlLCAxMjApOyA/Pjw/cGhwIGVjaG8gJGl0ZW0tPmVkaXRMaW5rOyA/PjwvdGQ+DQogICAgICAgIDwvdHI+DQogICAgICAgIDw/cGhwIGVuZGZvcmVhY2g7ID8+DQogICAgPC90Ym9keT4NCjwvdGFibGU+', 'The List of all published looks', 36, '', 36, 'Looks', 'Looks', '', '', '', '', '', 20, '', 1, '2016-04-05 14:31:59', '2016-10-20 15:57:24', 9, '', 14),
-(25, '', '', '', '', 1, 1, '', '', '', '{\"icomoon\":[],\"name\":[],\"method\":[],\"target\":[]}', 1, '', '', '', '', 'looking', '', '', '', 'PGFydGljbGUgY2xhc3M9InVrLWNvbW1lbnQiPg0KICAgIDxoZWFkZXIgY2xhc3M9InVrLWNvbW1lbnQtaGVhZGVyIj4NCiAgICAgICAgPGltZyBjbGFzcz0idWstY29tbWVudC1hdmF0YXIiIHNyYz0ie2ltYWdldXJsfSIgYWx0PSIiPg0KICAgICAgICA8aDQgY2xhc3M9InVrLWNvbW1lbnQtdGl0bGUiPjw/cGhwIGVjaG8gJHRoaXMtPmVzY2FwZSgkdGhpcy0+aXRlbS0+bmFtZSk7ID8+PC9oND4NCiAgICAgICAgPGRpdiBjbGFzcz0idWstY29tbWVudC1tZXRhIj48P3BocCBlY2hvIEpUZXh0OjpfKCdIaXRzJyk7ID8+OiA8P3BocCBlY2hvICR0aGlzLT5pdGVtLT5oaXRzOyA/PjwvZGl2Pg0KICAgIDwvaGVhZGVyPg0KICAgIDxkaXYgY2xhc3M9InVrLWNvbW1lbnQtYm9keSI+DQogICAgICAgIDw/cGhwIGVjaG8gJHRoaXMtPml0ZW0tPmRlc2NyaXB0aW9uOyA/Pg0KICAgICAgICA8P3BocCBpZiAoJHRoaXMtPml0ZW0tPmFkZCk6ID8+DQogICAgICAgICAgICA8YnIgLz4NCiAgICAgICAgICAgIDwhLS0gVGhpcyBpcyBhIGJ1dHRvbiB0b2dnbGluZyB0aGUgbW9kYWwgLS0+DQogICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJ1ay1idXR0b24iIGRhdGEtdWstbW9kYWw9Int0YXJnZXQ6JyNtb3JlLWRldGFpbHMtMDkwJ30iPjw/cGhwIGVjaG8gSlRleHQ6Ol8oJ01vcmUgRGV0YWlscycpOyA/PjwvYnV0dG9uPg0KICAgICAgICA8P3BocCBlbmRpZjsgPz4NCiAgICA8L2Rpdj4NCjwvYXJ0aWNsZT4NCjw/cGhwIGlmICgkdGhpcy0+aXRlbS0+YWRkKTogPz4NCjwhLS0gVGhpcyBpcyB0aGUgbW9kYWwgLS0+DQo8ZGl2IGlkPSJtb3JlLWRldGFpbHMtMDkwIiBjbGFzcz0idWstbW9kYWwiPg0KICAgIDxkaXYgY2xhc3M9InVrLW1vZGFsLWRpYWxvZyI+DQogICAgICAgIDxhIGNsYXNzPSJ1ay1tb2RhbC1jbG9zZSB1ay1jbG9zZSI+PC9hPg0KICAgICAgICA8ZGwgY2xhc3M9InVrLWRlc2NyaXB0aW9uLWxpc3QtaG9yaXpvbnRhbCI+DQogICAgICAgIDw/cGhwIGlmIChbW1tDb21wb25lbnRdXV1IZWxwZXI6OmNoZWNrU3RyaW5nKCR0aGlzLT5pdGVtLT5kYXRlb2ZiaXJ0aCkpOiA/Pg0KICAgICAgICAgICAgPGR0Pjw/cGhwIGVjaG8gSlRleHQ6Ol8oJ0JpcnRoIGRheScpOyA/PjwvZHQ+PGRkPjw/cGhwIGVjaG8gW1tbQ29tcG9uZW50XV1dSGVscGVyOjpmYW5jeURhdGUoJHRoaXMtPmVzY2FwZSgkdGhpcy0+aXRlbS0+ZGF0ZW9mYmlydGgpKTsgPz48L2RkPg0KICAgICAgICA8P3BocCBlbmRpZjsgPz4NCiAgICAgICAgPD9waHAgaWYgKFtbW0NvbXBvbmVudF1dXUhlbHBlcjo6Y2hlY2tTdHJpbmcoJHRoaXMtPml0ZW0tPmVtYWlsKSk6ID8+DQogICAgICAgICAgICA8ZHQ+PD9waHAgZWNobyBKVGV4dDo6XygnRW1haWwnKTsgPz48L2R0PjxkZD48P3BocCBlY2hvICR0aGlzLT5lc2NhcGUoJHRoaXMtPml0ZW0tPmVtYWlsKTsgPz48L2RkPg0KICAgICAgICA8P3BocCBlbmRpZjsgPz4NCiAgICAgICAgPD9waHAgaWYgKFtbW0NvbXBvbmVudF1dXUhlbHBlcjo6Y2hlY2tTdHJpbmcoJHRoaXMtPml0ZW0tPm1vYmlsZV9waG9uZSkpOiA/Pg0KICAgICAgICAgICAgPGR0Pjw/cGhwIGVjaG8gSlRleHQ6Ol8oJ01vYmlsZScpOyA/PjwvZHQ+PGRkPjw/cGhwIGVjaG8gJHRoaXMtPmVzY2FwZSgkdGhpcy0+aXRlbS0+bW9iaWxlX3Bob25lKTsgPz48L2RkPg0KICAgICAgICA8P3BocCBlbmRpZjsgPz4NCiAgICAgICAgPD9waHAgaWYgKFtbW0NvbXBvbmVudF1dXUhlbHBlcjo6Y2hlY2tTdHJpbmcoJHRoaXMtPml0ZW0tPndlYnNpdGUpKTogPz4NCiAgICAgICAgICAgIDxkdD48P3BocCBlY2hvIEpUZXh0OjpfKCdXZWJzaXRlJyk7ID8+PC9kdD48ZGQ+PD9waHAgZWNobyAkdGhpcy0+ZXNjYXBlKCR0aGlzLT5pdGVtLT53ZWJzaXRlKTsgPz48L2RkPg0KICAgICAgICA8P3BocCBlbmRpZjsgPz4NCiAgICAgICAgPC9kbD4NCiAgICA8L2Rpdj4NCjwvZGl2Pg0KPD9waHAgZW5kaWY7ID8+', 'Looking at a look', 39, '', 39, 'Looking', 'Looking', '', '', 'CSAvKioNCgkgKiBJbmNyZW1lbnQgdGhlIGhpdCBjb3VudGVyIGZvciB0aGUgcHJlYWNoZXIuDQoJICoNCgkgKiBAcGFyYW0gICBpbnRlZ2VyICAkcGsgIFByaW1hcnkga2V5IG9mIHRoZSBwcmVhY2hlciB0byBpbmNyZW1lbnQuDQoJICoNCgkgKiBAcmV0dXJuICBib29sZWFuICBUcnVlIGlmIHN1Y2Nlc3NmdWw7DQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGhpdCgkcGsgPSAwKQ0KCXsNCgkJaWYgKCRwaykNCgkJew0KCQkJJGRiID0gSkZhY3Rvcnk6OmdldERibygpOw0KCQkJJHF1ZXJ5ID0gJGRiLT5nZXRRdWVyeSh0cnVlKTsNCg0KCQkJLy8gRmllbGRzIHRvIHVwZGF0ZS4NCgkJCSRmaWVsZHMgPSBhcnJheSgNCgkJCSAgICAkZGItPnF1b3RlTmFtZSgnaGl0cycpIC4gJyA9ICcuJGRiLT5xdW90ZU5hbWUoJ2hpdHMnKS4nICsgMScNCgkJCSk7DQoNCgkJCS8vIENvbmRpdGlvbnMgZm9yIHdoaWNoIHJlY29yZHMgc2hvdWxkIGJlIHVwZGF0ZWQuDQoJCQkkY29uZGl0aW9ucyA9IGFycmF5KA0KCQkJICAgICRkYi0+cXVvdGVOYW1lKCdpZCcpIC4gJyA9ICcgLiAkcGsNCgkJCSk7DQoNCgkJCSRxdWVyeS0+dXBkYXRlKCRkYi0+cXVvdGVOYW1lKCcjX19bW1tjb21wb25lbnRdXV1fbG9vaycpKS0+c2V0KCRmaWVsZHMpLT53aGVyZSgkY29uZGl0aW9ucyk7DQoNCgkJCSRkYi0+c2V0UXVlcnkoJHF1ZXJ5KTsNCgkJCXJldHVybiAkZGItPmV4ZWN1dGUoKTsNCgkJfQ0KCQlyZXR1cm4gZmFsc2U7DQoJfQ==', 'Ly8gYWRkIGEgaGl0IHRvIHRoZSBsb29rDQppZiAoJHRoaXMtPmhpdCgkdGhpcy0+aXRlbS0+aWQpKQ0Kew0KCSR0aGlzLT5pdGVtLT5oaXRzKys7DQp9', '', 19, '', 1, '2016-10-20 15:11:29', '2016-10-20 17:10:58', 16, '', 14);
+(25, '', '', '', '', 1, 1, '', '', '', '', 1, '', '', '', '', 'looking', '', '', '', 'PGFydGljbGUgY2xhc3M9InVrLWNvbW1lbnQiPg0KICAgIDxoZWFkZXIgY2xhc3M9InVrLWNvbW1lbnQtaGVhZGVyIj4NCiAgICAgICAgPGltZyBjbGFzcz0idWstY29tbWVudC1hdmF0YXIiIHNyYz0ie2ltYWdldXJsfSIgYWx0PSIiPg0KICAgICAgICA8aDQgY2xhc3M9InVrLWNvbW1lbnQtdGl0bGUiPjw/cGhwIGVjaG8gJHRoaXMtPmVzY2FwZSgkdGhpcy0+aXRlbS0+bmFtZSk7ID8+PC9oND4NCiAgICAgICAgPGRpdiBjbGFzcz0idWstY29tbWVudC1tZXRhIj48P3BocCBlY2hvIEpUZXh0OjpfKCdIaXRzJyk7ID8+OiA8P3BocCBlY2hvICR0aGlzLT5pdGVtLT5oaXRzOyA/PjwvZGl2Pg0KICAgIDwvaGVhZGVyPg0KICAgIDxkaXYgY2xhc3M9InVrLWNvbW1lbnQtYm9keSI+DQogICAgICAgIDw/cGhwIGVjaG8gJHRoaXMtPml0ZW0tPmRlc2NyaXB0aW9uOyA/Pg0KICAgICAgICA8P3BocCBpZiAoJHRoaXMtPml0ZW0tPmFkZCk6ID8+DQogICAgICAgICAgICA8YnIgLz4NCiAgICAgICAgICAgIDwhLS0gVGhpcyBpcyBhIGJ1dHRvbiB0b2dnbGluZyB0aGUgbW9kYWwgLS0+DQogICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJ1ay1idXR0b24iIGRhdGEtdWstbW9kYWw9Int0YXJnZXQ6JyNtb3JlLWRldGFpbHMtMDkwJ30iPjw/cGhwIGVjaG8gSlRleHQ6Ol8oJ01vcmUgRGV0YWlscycpOyA/PjwvYnV0dG9uPg0KICAgICAgICA8P3BocCBlbmRpZjsgPz4NCiAgICA8L2Rpdj4NCjwvYXJ0aWNsZT4NCjw/cGhwIGlmICgkdGhpcy0+aXRlbS0+YWRkKTogPz4NCjwhLS0gVGhpcyBpcyB0aGUgbW9kYWwgLS0+DQo8ZGl2IGlkPSJtb3JlLWRldGFpbHMtMDkwIiBjbGFzcz0idWstbW9kYWwiPg0KICAgIDxkaXYgY2xhc3M9InVrLW1vZGFsLWRpYWxvZyI+DQogICAgICAgIDxhIGNsYXNzPSJ1ay1tb2RhbC1jbG9zZSB1ay1jbG9zZSI+PC9hPg0KICAgICAgICA8ZGwgY2xhc3M9InVrLWRlc2NyaXB0aW9uLWxpc3QtaG9yaXpvbnRhbCI+DQogICAgICAgIDw/cGhwIGlmIChbW1tDb21wb25lbnRdXV1IZWxwZXI6OmNoZWNrU3RyaW5nKCR0aGlzLT5pdGVtLT5kYXRlb2ZiaXJ0aCkpOiA/Pg0KICAgICAgICAgICAgPGR0Pjw/cGhwIGVjaG8gSlRleHQ6Ol8oJ0JpcnRoIGRheScpOyA/PjwvZHQ+PGRkPjw/cGhwIGVjaG8gW1tbQ29tcG9uZW50XV1dSGVscGVyOjpmYW5jeURhdGUoJHRoaXMtPmVzY2FwZSgkdGhpcy0+aXRlbS0+ZGF0ZW9mYmlydGgpKTsgPz48L2RkPg0KICAgICAgICA8P3BocCBlbmRpZjsgPz4NCiAgICAgICAgPD9waHAgaWYgKFtbW0NvbXBvbmVudF1dXUhlbHBlcjo6Y2hlY2tTdHJpbmcoJHRoaXMtPml0ZW0tPmVtYWlsKSk6ID8+DQogICAgICAgICAgICA8ZHQ+PD9waHAgZWNobyBKVGV4dDo6XygnRW1haWwnKTsgPz48L2R0PjxkZD48P3BocCBlY2hvICR0aGlzLT5lc2NhcGUoJHRoaXMtPml0ZW0tPmVtYWlsKTsgPz48L2RkPg0KICAgICAgICA8P3BocCBlbmRpZjsgPz4NCiAgICAgICAgPD9waHAgaWYgKFtbW0NvbXBvbmVudF1dXUhlbHBlcjo6Y2hlY2tTdHJpbmcoJHRoaXMtPml0ZW0tPm1vYmlsZV9waG9uZSkpOiA/Pg0KICAgICAgICAgICAgPGR0Pjw/cGhwIGVjaG8gSlRleHQ6Ol8oJ01vYmlsZScpOyA/PjwvZHQ+PGRkPjw/cGhwIGVjaG8gJHRoaXMtPmVzY2FwZSgkdGhpcy0+aXRlbS0+bW9iaWxlX3Bob25lKTsgPz48L2RkPg0KICAgICAgICA8P3BocCBlbmRpZjsgPz4NCiAgICAgICAgPD9waHAgaWYgKFtbW0NvbXBvbmVudF1dXUhlbHBlcjo6Y2hlY2tTdHJpbmcoJHRoaXMtPml0ZW0tPndlYnNpdGUpKTogPz4NCiAgICAgICAgICAgIDxkdD48P3BocCBlY2hvIEpUZXh0OjpfKCdXZWJzaXRlJyk7ID8+PC9kdD48ZGQ+PD9waHAgZWNobyAkdGhpcy0+ZXNjYXBlKCR0aGlzLT5pdGVtLT53ZWJzaXRlKTsgPz48L2RkPg0KICAgICAgICA8P3BocCBlbmRpZjsgPz4NCiAgICAgICAgPC9kbD4NCiAgICA8L2Rpdj4NCjwvZGl2Pg0KPD9waHAgZW5kaWY7ID8+', 'Looking at a look', 39, '', 39, 'Looking', 'Looking', '', '', 'CSAvKioNCgkgKiBJbmNyZW1lbnQgdGhlIGhpdCBjb3VudGVyIGZvciB0aGUgcHJlYWNoZXIuDQoJICoNCgkgKiBAcGFyYW0gICBpbnRlZ2VyICAkcGsgIFByaW1hcnkga2V5IG9mIHRoZSBwcmVhY2hlciB0byBpbmNyZW1lbnQuDQoJICoNCgkgKiBAcmV0dXJuICBib29sZWFuICBUcnVlIGlmIHN1Y2Nlc3NmdWw7DQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGhpdCgkcGsgPSAwKQ0KCXsNCgkJaWYgKCRwaykNCgkJew0KCQkJJGRiID0gSkZhY3Rvcnk6OmdldERibygpOw0KCQkJJHF1ZXJ5ID0gJGRiLT5nZXRRdWVyeSh0cnVlKTsNCg0KCQkJLy8gRmllbGRzIHRvIHVwZGF0ZS4NCgkJCSRmaWVsZHMgPSBhcnJheSgNCgkJCSAgICAkZGItPnF1b3RlTmFtZSgnaGl0cycpIC4gJyA9ICcuJGRiLT5xdW90ZU5hbWUoJ2hpdHMnKS4nICsgMScNCgkJCSk7DQoNCgkJCS8vIENvbmRpdGlvbnMgZm9yIHdoaWNoIHJlY29yZHMgc2hvdWxkIGJlIHVwZGF0ZWQuDQoJCQkkY29uZGl0aW9ucyA9IGFycmF5KA0KCQkJICAgICRkYi0+cXVvdGVOYW1lKCdpZCcpIC4gJyA9ICcgLiAkcGsNCgkJCSk7DQoNCgkJCSRxdWVyeS0+dXBkYXRlKCRkYi0+cXVvdGVOYW1lKCcjX19bW1tjb21wb25lbnRdXV1fbG9vaycpKS0+c2V0KCRmaWVsZHMpLT53aGVyZSgkY29uZGl0aW9ucyk7DQoNCgkJCSRkYi0+c2V0UXVlcnkoJHF1ZXJ5KTsNCgkJCXJldHVybiAkZGItPmV4ZWN1dGUoKTsNCgkJfQ0KCQlyZXR1cm4gZmFsc2U7DQoJfQ==', 'Ly8gYWRkIGEgaGl0IHRvIHRoZSBsb29rDQppZiAoJHRoaXMtPmhpdCgkdGhpcy0+aXRlbS0+aWQpKQ0Kew0KCSR0aGlzLT5pdGVtLT5oaXRzKys7DQp9', '', 19, '', 1, '2016-10-20 15:11:29', '2016-10-20 17:10:58', 16, '', 14);
@@ -949,17 +1004,17 @@ INSERT INTO `#__componentbuilder_snippet` (`id`, `description`, `heading`, `name
-- Dumping data for table `#__componentbuilder_field`
--
-INSERT INTO `#__componentbuilder_field` (`id`, `add_css_view`, `add_css_views`, `add_javascript_view_footer`, `add_javascript_views_footer`, `catid`, `css_view`, `css_views`, `datadefault`, `datadefault_other`, `datalenght`, `datalenght_other`, `datatype`, `indexes`, `javascript_view_footer`, `javascript_views_footer`, `name`, `not_required`, `null_switch`, `store`, `fieldtype`, `xml`, `params`, `published`, `created`, `modified`, `version`, `hits`, `access`, `ordering`) VALUES
-(23, '', '', '', '', '', '', '', '', '', 64, '', 'CHAR', '', '', '', 'Alias', '', 'NOT NULL', '', 24, '\" \"', '', 1, '2015-04-09 13:46:04', '2016-05-05 22:30:18', 2, '', 1, 216),
-(84, '', '', '', '', '', '', '', '', '', '', '', 'TEXT', '', '', '', 'Description (full width)', '', 'NOT NULL', '', 25, '\" \"', '', 1, '2015-03-19 18:20:49', '2016-10-20 17:01:21', 4, '', 1, 265),
-(100, '', '', '', '', '', '', '', '', '', 255, '', 'VARCHAR', '', '', '', 'Email (required)', '', 'NOT NULL', '', 24, '\" \"', '', 1, '2015-05-05 23:44:32', '2016-02-07 22:43:18', 4, '', 1, 285),
-(158, '', '', '', '', '', '', '', '', '', 64, '', 'CHAR', '', '', '', 'Image', '', 'NOT NULL', '', 12, '\" \"', '', 1, '2015-04-29 14:00:56', '2015-08-25 21:15:22', 1, '', 1, 45),
-(196, '', '', '', '', '', '', '', '', '', 64, '', 'VARCHAR', '', '', '', 'Mobile Phone', '', 'NOT NULL', '', 23, '\" \"', '', 1, '2015-04-07 22:12:58', '2016-03-28 14:00:02', 2, '', 1, 7),
-(199, '', '', '', '', '', '', '', '', '', 255, '', 'VARCHAR', 2, '', '', 'Name', '', 'NOT NULL', '', 24, '\" \"', '', 1, '2015-03-19 17:30:59', '2016-10-18 12:42:57', 6, '', 1, 4),
-(203, '', '', '', '', '', '', '', '', '', 1, '', 'INT', '', '', '', 'Not Required', '', 'NOT NULL', '', 9, '\" \"', '', 1, '2015-05-08 16:19:16', '2015-08-25 21:15:22', 1, '', 1, 19),
-(280, '', '', '', '', '', '', '', '', '', 255, '', 'VARCHAR', '', '', '', 'Website', '', 'NOT NULL', '', 27, '\" \"', '', 1, '2015-04-08 00:36:16', '2015-08-25 21:15:22', 1, '', 1, 105),
-(682, '', '', '', '', '', '', '', '', '', 1, '', 'TINYINT', 2, '', '', 'Add More', '', 'NOT NULL', '', 17, '\" \"', '', 1, '2015-08-05 01:18:20', '2016-10-18 12:16:27', 2, '', 1, 196),
-(1011, '', '', '', '', '', '', '', 'Other', '0000-00-00', '', '', 'DATE', '', '', '', 'Date of Birth', '', 'NOT NULL', '', 1, '\" \"', '', 1, '2015-12-07 01:47:32', '2015-12-07 02:15:24', 3, '', 1, 649);
+INSERT INTO `#__componentbuilder_field` (`id`, `add_css_view`, `add_css_views`, `add_javascript_view_footer`, `add_javascript_views_footer`, `catid`, `css_view`, `css_views`, `datadefault`, `datadefault_other`, `datalenght`, `datalenght_other`, `datatype`, `indexes`, `javascript_view_footer`, `javascript_views_footer`, `name`, `null_switch`, `store`, `fieldtype`, `xml`, `published`, `created`, `modified`, `version`, `hits`, `ordering`) VALUES
+(23, '', '', '', '', '', '', '', '', '', 64, '', 'CHAR', '', '', '', 'Alias', 'NOT NULL', '', 24, '\" \"', 1, '2015-04-09 13:46:04', '2016-05-05 22:30:18', 2, '', 216),
+(84, '', '', '', '', '', '', '', '', '', '', '', 'TEXT', '', '', '', 'Description (full width)', 'NOT NULL', '', 25, '\" \"', 1, '2015-03-19 18:20:49', '2016-10-20 17:01:21', 4, '', 265),
+(100, '', '', '', '', '', '', '', '', '', 255, '', 'VARCHAR', '', '', '', 'Email (required)', 'NOT NULL', '', 24, '\" \"', 1, '2015-05-05 23:44:32', '2016-02-07 22:43:18', 4, '', 285),
+(158, '', '', '', '', '', '', '', '', '', 64, '', 'CHAR', '', '', '', 'Image', 'NOT NULL', '', 12, '\" \"', 1, '2015-04-29 14:00:56', '2015-08-25 21:15:22', 1, '', 45),
+(196, '', '', '', '', '', '', '', '', '', 64, '', 'VARCHAR', '', '', '', 'Mobile Phone', 'NOT NULL', '', 23, '\" \"', 1, '2015-04-07 22:12:58', '2016-03-28 14:00:02', 2, '', 7),
+(199, '', '', '', '', '', '', '', '', '', 255, '', 'VARCHAR', 2, '', '', 'Name', 'NOT NULL', '', 24, '\" \"', 1, '2015-03-19 17:30:59', '2016-10-18 12:42:57', 6, '', 4),
+(203, '', '', '', '', '', '', '', '', '', 1, '', 'INT', '', '', '', 'Not Required', 'NOT NULL', '', 9, '\" \"', 1, '2015-05-08 16:19:16', '2015-08-25 21:15:22', 1, '', 19),
+(280, '', '', '', '', '', '', '', '', '', 255, '', 'VARCHAR', '', '', '', 'Website', 'NOT NULL', '', 27, '\" \"', 1, '2015-04-08 00:36:16', '2015-08-25 21:15:22', 1, '', 105),
+(682, '', '', '', '', '', '', '', '', '', 1, '', 'TINYINT', 2, '', '', 'Add More', 'NOT NULL', '', 17, '\" \"', 1, '2015-08-05 01:18:20', '2016-10-18 12:16:27', 2, '', 196),
+(1011, '', '', '', '', '', '', '', 'Other', '0000-00-00', '', '', 'DATE', '', '', '', 'Date of Birth', 'NOT NULL', '', 1, '\" \"', 1, '2015-12-07 01:47:32', '2015-12-07 02:15:24', 3, '', 649);
--
-- Dumping data for table `#__componentbuilder_fieldtype`
@@ -1007,17 +1062,31 @@ INSERT INTO `#__componentbuilder_fieldtype` (`id`, `catid`, `description`, `name
--
INSERT INTO `#__componentbuilder_help_document` (`id`, `admin_view`, `alias`, `article`, `content`, `groups`, `location`, `not_required`, `site_view`, `target`, `title`, `type`, `url`, `params`, `published`, `version`, `hits`, `ordering`) VALUES
-(1, 'components', 'welcome-to-the-list-view-of-components', '', '', '\"\"', 1, '', '', 2, 'Welcome to the List view of Components', 3, 'http://projects.vdm.io/projects/joomla-component-builder/wiki/Components_List_view', '', 1, 16, '', 1),
-(2, 'admin_views', 'welcome-to-the-list-view-of-admin-views', '', '', '\"\"', 1, '', '', 2, 'Welcome to the List view of Admin Views', 3, 'http://projects.vdm.io/projects/joomla-component-builder/wiki/Admin_Views_List_View', '', 1, 4, '', 2),
-(3, 'custom_admin_views', 'welcome-to-the-list-view-of-custom-admin-views', '', '', '\"\"', 1, '', '', 2, 'Welcome to the List view of Custom Admin Views', 3, 'http://projects.vdm.io/projects/joomla-component-builder/wiki/Custom_Admin_Views_List_View', '', 1, 3, '', 3),
-(4, 'site_views', 'welcome-to-the-list-view-of-site-views', '', '', '\"\"', 1, '', '', 2, 'Welcome to the List view of Site Views', 3, 'http://projects.vdm.io/projects/joomla-component-builder/wiki/Site_Views_List_View', '', 1, 2, '', 4),
-(5, 'templates', 'welcome-to-the-list-view-of-templates', '', '', '\"\"', 1, '', '', 2, 'Welcome to the List view of Templates', 3, 'http://projects.vdm.io/projects/joomla-component-builder/wiki/Templates_List_View', '', 1, 3, '', 5),
-(6, 'layouts', 'welcome-to-the-list-view-of-layouts', '', '', '\"\"', 1, '', '', 2, 'Welcome to the List view of Layouts', 3, 'http://projects.vdm.io/projects/joomla-component-builder/wiki/Layouts_List_View', '', 1, 2, '', 6),
-(7, 'dynamic_gets', 'welcome-to-the-list-view-of-dynamic-gets', '', '', '\"\"', 1, '', '', 2, 'Welcome to the List view of Dynamic Gets', 3, 'http://projects.vdm.io/projects/joomla-component-builder/wiki/Dynamic_Gets_List_View', '', 1, 2, '', 7),
-(8, 'snippets', 'welcome-to-the-list-view-of-snippets', '', '', '\"\"', 1, '', '', 2, 'Welcome to the List view of Snippets', 3, 'http://projects.vdm.io/projects/joomla-component-builder/wiki/Snippets_List_View', '', 1, 2, '', 8),
-(9, 'fields', 'welcome-to-the-list-view-of-fields', '', '', '\"\"', 1, '', '', 2, 'Welcome to the List view of Fields', 3, 'http://projects.vdm.io/projects/joomla-component-builder/wiki/Fields_List_View', '', 1, 2, '', 9),
-(10, 'fieldtypes', 'welcome-to-the-list-view-of-fieldtypes', '', '', '\"\"', 1, '', '', 2, 'Welcome to the List view of Fieldtypes', 3, 'http://projects.vdm.io/projects/joomla-component-builder/wiki/Fieldtypes_List_View', '', 1, 2, '', 10),
-(11, 'help_documents', 'welcome-to-the-list-view-of-help-documents', '', '', '\"\"', 1, '', '', 2, 'Welcome to the List view of Help Documents', 3, 'http://projects.vdm.io/projects/joomla-component-builder/wiki/Help_Documents_List_View', '', 1, 2, '', 11);
+(1, 'components', '2016-03-04-02-31-55', '', 'Here as in all Joomla backend list views you can perform all the common tasks, and more.
\r\nCreate \r\nYou can create a component by clicking on the\r\n New button in the toolbar, this will open a window where you can add all the needed values to create a new component.
\r\nEdit \r\nYou can edit components in two ways.
\r\n\r\n You can click on the box next to the component name and then click on the\r\n Edit button in the toolbar; this will open the component and if you have permission it will give you access to edit the values of a component. \r\n You can simply click on the component name; this will open the component and if you have permission it will give you access to edit the values of a component. \r\n \r\nEdit State \r\nYou can publish, unpublish, archive, and trash any component by clicking in the boxes next the component names and then click on the corresponding button of the task you want to perform. This will change the state of all the components you’ve selected.
\r\nIf you have trashed a component it is in the trash and can still be found in the database. To view items that are still in the trash change the “- Select Status –“ filter to Trashed. Here you will see the list of trashed components. To completely remove these components from your system do the following: first select all the components you want to permanently delete by clicking in the boxes next to the component names and then click on the\r\n Empty trash button in the toolbar. This will permanently delete the components from the database. On the other hand if you would like to change the status of the component to publish, unpublish or archive, click in the boxes next to the component names and then click on the corresponding button of the task you want to perform. This will change the state of all the components you’ve selected.
\r\nCheck-in \r\nWhen another user on your Joomla website opens a component the system checks the component out to that user. A little lock will show up next to the component name. When you hover over the lock it will show to you who checked it out and when.
\r\nComponent builder adds a nice feature to all its components that is called the auto check-in feature. This feature has a time setting that you can update in the component\'s global settings.
\r\nIf this feature has not yet checked-in any of the components that you as the administrator wants to open you can force a check-in by clicking in the boxes next to the component names and then click on the\r\n Check-in button in the toolbar, or simply click on the little lock. This will then check in the component, which will mean that it removes the component from the user who checked it out before you. Remember that they will lose all changes they have made if they have not yet clicked save. This can cause very unpleasant circumstances, so only use this feature if you are absolutely sure you know what you are doing.
\r\nBatch Feature \r\nYou can use the Batch feature to update or copy many components at once by clicking in the boxes next the component names and then click on the\r\n Batch button in the toolbar. This will open a popup window with multiple dropdown options of fields you can change with the batch feature. You can then select update or copy depending of your desired task and finally click on the\r\n Process button. Once completed this batch feature will have either copied or updated all the components according to the task you selected.
\r\nExport & Import \r\nThe export and import feature is some of the most exciting features to the list view of components. With them you can update and create many components at once.
\r\nExport \r\nThe export option only exports the components selected. So to export all components you must change the limited number of components that are being loaded to \"All\". The box that limits the number of components being loaded is found on the right top corner of the page. Simply change it from the number to “All” and the page should now reload with all the component records from the database, excluding those in trash. If you want those also to load you must change the “- Select Status –“ filter to “All” as well. Now you can click on the tick box at the very top of the table. This should select all the components. Next click on the\r\n Export Date button in the toolbar. This should open a download window and you can select to save the excel file to your computer.
\r\nImport \r\nThe import option can be used to create components or update existing components. The way to update existing components is to use the same id as the component you want to update. Best way to do this is to first export the components you want to update and then make the changes you have in mind in the excel document without removing or changing the id. To instead create new components via an import, simple leave the id field empty.
\r\nSo once you have your excel document ready you will again open the list view of components and click on the\r\n Import Data button in the toolbar. This will open a page where you can select the excel file on your computer as an upload, or on the server in a directory, or at any direct url to the excel document.
\r\nOnce you have the file selected you can click on the\r\n Upload File or\r\n Get File button depending on the method you have chosen. When file has successfully been uploaded or retrieved a new window will open where you can map the excel document headers of each column to the field names used in the database. Usually if you’re using an exported version of the excel document this mapping will be done for you, yet if you have changed any of the header names you may need to set these field relationships manually. There is an option to ignore a column in the case when you want to leave a field totally unchanged.
\r\nWhen the field to column relationship has correctly been mapped you can click on the\r\n continue button at the bottom of the page. This should return you to the list view of components with a success message.
\r\nDebug \r\nIn the event that any of the above features did not work as expected, please read the error message carefully since it should usually give you enough information to why your request could not be processed. Subsequently if you are still not able to perform the request after making all needed corrections according to the error messages, then please contact your system administrator.
', '\"\"', 1, '', '', 2, 'Welcome to the List view of Components', 2, '', '', 1, 12, '', 1),
+(2, 'admin_views', 'welcome-to-the-list-view-of-admin-views', '', 'Here as in all Joomla backend list views you can perform all the common tasks, and more.
Create You can create an admin view by clicking on the New button in the toolbar, this will open a window where you can add all the needed values to create a new admin view.
Edit You can edit admin views in two ways.
You can click on the box next to the admin view name and then click on the Edit button in the toolbar; this will open the admin view and if you have permission it will give you access to edit the values of an admin view. You can simply click on the admin view name; this will open the admin view and if you have permission it will give you access to edit the values of an admin view. Edit State You can publish, unpublish, archive, and trash any admin view by clicking in the boxes next the admin view names and then click on the corresponding button of the task you want to perform. This will change the state of all the admin views you’ve selected.
If you have trashed an admin view it is in the trash and can still be found in the database. To view items that are still in the trash change the “- Select Status –“ filter to Trashed. Here you will see the list of trashed admin views. To completely remove these admin views from your system do the following: first select all the admin views you want to permanently delete by clicking in the boxes next to the admin view names and then click on the Empty trash button in the toolbar. This will permanently delete the admin views from the database. On the other hand if you would like to change the status of the admin view to publish, unpublish or archive, click in the boxes next to the admin view names and then click on the corresponding button of the task you want to perform. This will change the state of all the admin views you’ve selected.
Check-in When another user on your Joomla website opens an admin view the system checks the admin view out to that user. A little lock will show up next to the admin view name. When you hover over the lock it will show to you who checked it out and when.
Component builder adds a nice feature to all its components that is called the auto check-in feature. This feature has a time setting that you can update in the component\'s global settings.
If this feature has not yet checked-in any of the admin views that you as the administrator wants to open you can force a check-in by clicking in the boxes next to the admin view names and then click on the Check-in button in the toolbar, or simply click on the little lock. This will then check in the admin view, which will mean that it removes the admin view from the user who checked it out before you. Remember that they will lose all changes they have made if they have not yet clicked save. This can cause very unpleasant circumstances, so only use this feature if you are absolutely sure you know what you are doing.
Batch Feature You can use the Batch feature to update or copy many admin views at once by clicking in the boxes next the admin view names and then click on the Batch button in the toolbar. This will open a popup window with multiple dropdown options of fields you can change with the batch feature. You can then select update or copy depending of your desired task and finally click on the Process button. Once completed this batch feature will have either copied or updated all the admin views according to the task you selected.
Export & Import The export and import feature is some of the most exciting features to the list view of admin views. With them you can update and create many admin views at once.
Export The export option only exports the admin views selected. So to export all admin views you must change the limited number of admin views that are being loaded to \"All\". The box that limits the number of admin views being loaded is found on the right top corner of the page. Simply change it from the number to “All” and the page should now reload with all the admin view records from the database, excluding those in trash. If you want those also to load you must change the “- Select Status –“ filter to “All” as well. Now you can click on the tick box at the very top of the table. This should select all the admin views. Next click on the Export Date button in the toolbar. This should open a download window and you can select to save the excel file to your computer.
Import The import option can be used to create admin views or update existing admin views. The way to update existing admin views is to use the same id as the admin view you want to update. Best way to do this is to first export the admin views you want to update and then make the changes you have in mind in the excel document without removing or changing the id. To instead create new admin views via an import, simple leave the id field empty.
So once you have your excel document ready you will again open the list view of admin views and click on the Import Data button in the toolbar. This will open a page where you can select the excel file on your computer as an upload, or on the server in a directory, or at any direct url to the excel document.
Once you have the file selected you can click on the Upload File or Get File button depending on the method you have chosen. When file has successfully been uploaded or retrieved a new window will open where you can map the excel document headers of each column to the field names used in the database. Usually if you’re using an exported version of the excel document this mapping will be done for you, yet if you have changed any of the header names you may need to set these field relationships manually. There is an option to ignore a column in the case when you want to leave a field totally unchanged.
When the field to column relationship has correctly been mapped you can click on the continue button at the bottom of the page. This should return you to the list view of admin views with a success message.
Debug In the event that any of the above features did not work as expected, please read the error message carefully since it should usually give you enough information to why your request could not be processed. Subsequently if you are still not able to perform the request after making all needed corrections according to the error messages, then please contact your system administrator.
', '\"\"', 1, '', '', 2, 'Welcome to the List view of Admin Views', 2, '', '', 1, 5, '', 2),
+(3, 'custom_admin_views', 'welcome-to-the-list-view-of-custom-admin-views', '', 'Here as in all Joomla backend list views you can perform all the common tasks, and more.
Create You can create a custom admin view by clicking on the New button in the toolbar, this will open a window where you can add all the needed values to create a new custom admin view.
Edit You can edit custom admin views in two ways.
You can click on the box next to the custom admin view name and then click on the Edit button in the toolbar; this will open the custom admin view and if you have permission it will give you access to edit the values of a custom admin view. You can simply click on the custom admin view name; this will open the custom admin view and if you have permission it will give you access to edit the values of a custom admin view. Edit State You can publish, unpublish, archive, and trash any custom admin view by clicking in the boxes next the custom admin view names and then click on the corresponding button of the task you want to perform. This will change the state of all the custom admin views you’ve selected.
If you have trashed a custom admin view it is in the trash and can still be found in the database. To view items that are still in the trash change the “- Select Status –“ filter to Trashed. Here you will see the list of trashed custom admin views. To completely remove these custom admin views from your system do the following: first select all the custom admin views you want to permanently delete by clicking in the boxes next to the custom admin view names and then click on the Empty trash button in the toolbar. This will permanently delete the custom admin views from the database. On the other hand if you would like to change the status of the custom admin view to publish, unpublish or archive, click in the boxes next to the custom admin view names and then click on the corresponding button of the task you want to perform. This will change the state of all the custom admin views you’ve selected.
Check-in When another user on your Joomla website opens a custom admin view the system checks the custom admin view out to that user. A little lock will show up next to the custom admin view name. When you hover over the lock it will show to you who checked it out and when.
Component builder adds a nice feature to all its components that is called the auto check-in feature. This feature has a time setting that you can update in the component\'s global settings.
If this feature has not yet checked-in any of the custom admin views that you as the administrator wants to open you can force a check-in by clicking in the boxes next to the custom admin view names and then click on the Check-in button in the toolbar, or simply click on the little lock. This will then check in the custom admin view, which will mean that it removes the custom admin view from the user who checked it out before you. Remember that they will lose all changes they have made if they have not yet clicked save. This can cause very unpleasant circumstances, so only use this feature if you are absolutely sure you know what you are doing.
Batch Feature You can use the Batch feature to update or copy many custom admin views at once by clicking in the boxes next the custom admin view names and then click on the Batch button in the toolbar. This will open a popup window with multiple dropdown options of fields you can change with the batch feature. You can then select update or copy depending of your desired task and finally click on the Process button. Once completed this batch feature will have either copied or updated all the custom admin views according to the task you selected.
Export & Import The export and import feature is some of the most exciting features to the list view of custom admin views. With them you can update and create many custom admin views at once.
Export The export option only exports the custom admin views selected. So to export all custom admin views you must change the limited number of custom admin views that are being loaded to \"All\". The box that limits the number of custom admin views being loaded is found on the right top corner of the page. Simply change it from the number to “All” and the page should now reload with all the custom admin view records from the database, excluding those in trash. If you want those also to load you must change the “- Select Status –“ filter to “All” as well. Now you can click on the tick box at the very top of the table. This should select all the custom admin views. Next click on the Export Date button in the toolbar. This should open a download window and you can select to save the excel file to your computer.
Import The import option can be used to create custom admin views or update existing custom admin views. The way to update existing custom admin views is to use the same id as the custom admin view you want to update. Best way to do this is to first export the custom admin views you want to update and then make the changes you have in mind in the excel document without removing or changing the id. To instead create new custom admin views via an import, simple leave the id field empty.
So once you have your excel document ready you will again open the list view of custom admin views and click on the Import Data button in the toolbar. This will open a page where you can select the excel file on your computer as an upload, or on the server in a directory, or at any direct url to the excel document.
Once you have the file selected you can click on the Upload File or Get File button depending on the method you have chosen. When file has successfully been uploaded or retrieved a new window will open where you can map the excel document headers of each column to the field names used in the database. Usually if you’re using an exported version of the excel document this mapping will be done for you, yet if you have changed any of the header names you may need to set these field relationships manually. There is an option to ignore a column in the case when you want to leave a field totally unchanged.
When the field to column relationship has correctly been mapped you can click on the continue button at the bottom of the page. This should return you to the list view of custom admin views with a success message.
Debug In the event that any of the above features did not work as expected, please read the error message carefully since it should usually give you enough information to why your request could not be processed. Subsequently if you are still not able to perform the request after making all needed corrections according to the error messages, then please contact your system administrator.
', '\"\"', 1, '', '', 2, 'Welcome to the List view of Custom Admin Views', 2, '', '', 1, 4, '', 3),
+(4, 'site_views', 'welcome-to-the-list-view-of-site-views', '', 'Here as in all Joomla backend list views you can perform all the common tasks, and more.
Create You can create a site view by clicking on the New button in the toolbar, this will open a window where you can add all the needed values to create a new site view.
Edit You can edit site views in two ways.
You can click on the box next to the site view name and then click on the Edit button in the toolbar; this will open the site view and if you have permission it will give you access to edit the values of a site view. You can simply click on the site view name; this will open the site view and if you have permission it will give you access to edit the values of a site view. Edit State You can publish, unpublish, archive, and trash any site view by clicking in the boxes next the site view names and then click on the corresponding button of the task you want to perform. This will change the state of all the site views you’ve selected.
If you have trashed a site view it is in the trash and can still be found in the database. To view items that are still in the trash change the “- Select Status –“ filter to Trashed. Here you will see the list of trashed site views. To completely remove these site views from your system do the following: first select all the site views you want to permanently delete by clicking in the boxes next to the site view names and then click on the Empty trash button in the toolbar. This will permanently delete the site views from the database. On the other hand if you would like to change the status of the site view to publish, unpublish or archive, click in the boxes next to the site view names and then click on the corresponding button of the task you want to perform. This will change the state of all the site views you’ve selected.
Check-in When another user on your Joomla website opens a site view the system checks the site view out to that user. A little lock will show up next to the site view name. When you hover over the lock it will show to you who checked it out and when.
Component builder adds a nice feature to all its components that is called the auto check-in feature. This feature has a time setting that you can update in the component\'s global settings.
If this feature has not yet checked-in any of the site views that you as the administrator wants to open you can force a check-in by clicking in the boxes next to the site view names and then click on the Check-in button in the toolbar, or simply click on the little lock. This will then check in the site view, which will mean that it removes the site view from the user who checked it out before you. Remember that they will lose all changes they have made if they have not yet clicked save. This can cause very unpleasant circumstances, so only use this feature if you are absolutely sure you know what you are doing.
Batch Feature You can use the Batch feature to update or copy many site views at once by clicking in the boxes next the site view names and then click on the Batch button in the toolbar. This will open a popup window with multiple dropdown options of fields you can change with the batch feature. You can then select update or copy depending of your desired task and finally click on the Process button. Once completed this batch feature will have either copied or updated all the site views according to the task you selected.
Export & Import The export and import feature is some of the most exciting features to the list view of site views. With them you can update and create many site views at once.
Export The export option only exports the site views selected. So to export all site views you must change the limited number of site views that are being loaded to \"All\". The box that limits the number of site views being loaded is found on the right top corner of the page. Simply change it from the number to “All” and the page should now reload with all the site view records from the database, excluding those in trash. If you want those also to load you must change the “- Select Status –“ filter to “All” as well. Now you can click on the tick box at the very top of the table. This should select all the site views. Next click on the Export Date button in the toolbar. This should open a download window and you can select to save the excel file to your computer.
Import The import option can be used to create site views or update existing site views. The way to update existing site views is to use the same id as the site view you want to update. Best way to do this is to first export the site views you want to update and then make the changes you have in mind in the excel document without removing or changing the id. To instead create new site views via an import, simple leave the id field empty.
So once you have your excel document ready you will again open the list view of site views and click on the Import Data button in the toolbar. This will open a page where you can select the excel file on your computer as an upload, or on the server in a directory, or at any direct url to the excel document.
Once you have the file selected you can click on the Upload File or Get File button depending on the method you have chosen. When file has successfully been uploaded or retrieved a new window will open where you can map the excel document headers of each column to the field names used in the database. Usually if you’re using an exported version of the excel document this mapping will be done for you, yet if you have changed any of the header names you may need to set these field relationships manually. There is an option to ignore a column in the case when you want to leave a field totally unchanged.
When the field to column relationship has correctly been mapped you can click on the continue button at the bottom of the page. This should return you to the list view of site views with a success message.
Debug In the event that any of the above features did not work as expected, please read the error message carefully since it should usually give you enough information to why your request could not be processed. Subsequently if you are still not able to perform the request after making all needed corrections according to the error messages, then please contact your system administrator.
', '\"\"', 1, '', '', 2, 'Welcome to the List view of Site Views', 2, '', '', 1, 3, '', 4),
+(5, 'templates', 'welcome-to-the-list-view-of-templates', '', 'Here as in all Joomla backend list views you can perform all the common tasks, and more.
Create You can create a template by clicking on the New button in the toolbar, this will open a window where you can add all the needed values to create a new template.
Edit You can edit templates in two ways.
You can click on the box next to the template name and then click on the Edit button in the toolbar; this will open the template and if you have permission it will give you access to edit the values of a template. You can simply click on the template name; this will open the template and if you have permission it will give you access to edit the values of a template. Edit State You can publish, unpublish, archive, and trash any template by clicking in the boxes next the template names and then click on the corresponding button of the task you want to perform. This will change the state of all the templates you’ve selected.
If you have trashed a template it is in the trash and can still be found in the database. To view items that are still in the trash change the “- Select Status –“ filter to Trashed. Here you will see the list of trashed templates. To completely remove these templates from your system do the following: first select all the templates you want to permanently delete by clicking in the boxes next to the template names and then click on the Empty trash button in the toolbar. This will permanently delete the templates from the database. On the other hand if you would like to change the status of the template to publish, unpublish or archive, click in the boxes next to the template names and then click on the corresponding button of the task you want to perform. This will change the state of all the templates you’ve selected.
Check-in When another user on your Joomla website opens a template the system checks the template out to that user. A little lock will show up next to the template name. When you hover over the lock it will show to you who checked it out and when.
Component builder adds a nice feature to all its components that is called the auto check-in feature. This feature has a time setting that you can update in the component\'s global settings.
If this feature has not yet checked-in any of the templates that you as the administrator wants to open you can force a check-in by clicking in the boxes next to the template names and then click on the Check-in button in the toolbar, or simply click on the little lock. This will then check in the template, which will mean that it removes the template from the user who checked it out before you. Remember that they will lose all changes they have made if they have not yet clicked save. This can cause very unpleasant circumstances, so only use this feature if you are absolutely sure you know what you are doing.
Batch Feature You can use the Batch feature to update or copy many templates at once by clicking in the boxes next the template names and then click on the Batch button in the toolbar. This will open a popup window with multiple dropdown options of fields you can change with the batch feature. You can then select update or copy depending of your desired task and finally click on the Process button. Once completed this batch feature will have either copied or updated all the templates according to the task you selected.
Export & Import The export and import feature is some of the most exciting features to the list view of templates. With them you can update and create many templates at once.
Export The export option only exports the templates selected. So to export all templates you must change the limited number of templates that are being loaded to \"All\". The box that limits the number of templates being loaded is found on the right top corner of the page. Simply change it from the number to “All” and the page should now reload with all the template records from the database, excluding those in trash. If you want those also to load you must change the “- Select Status –“ filter to “All” as well. Now you can click on the tick box at the very top of the table. This should select all the templates. Next click on the Export Date button in the toolbar. This should open a download window and you can select to save the excel file to your computer.
Import The import option can be used to create templates or update existing templates. The way to update existing templates is to use the same id as the template you want to update. Best way to do this is to first export the templates you want to update and then make the changes you have in mind in the excel document without removing or changing the id. To instead create new templates via an import, simple leave the id field empty.
So once you have your excel document ready you will again open the list view of templates and click on the Import Data button in the toolbar. This will open a page where you can select the excel file on your computer as an upload, or on the server in a directory, or at any direct url to the excel document.
Once you have the file selected you can click on the Upload File or Get File button depending on the method you have chosen. When file has successfully been uploaded or retrieved a new window will open where you can map the excel document headers of each column to the field names used in the database. Usually if you’re using an exported version of the excel document this mapping will be done for you, yet if you have changed any of the header names you may need to set these field relationships manually. There is an option to ignore a column in the case when you want to leave a field totally unchanged.
When the field to column relationship has correctly been mapped you can click on the continue button at the bottom of the page. This should return you to the list view of templates with a success message.
Debug In the event that any of the above features did not work as expected, please read the error message carefully since it should usually give you enough information to why your request could not be processed. Subsequently if you are still not able to perform the request after making all needed corrections according to the error messages, then please contact your system administrator.
', '\"\"', 1, '', '', 2, 'Welcome to the List view of Templates', 2, '', '', 1, 4, '', 5),
+(6, 'layouts', 'welcome-to-the-list-view-of-layouts', '', 'Here as in all Joomla backend list views you can perform all the common tasks, and more.
Create You can create a layout by clicking on the New button in the toolbar, this will open a window where you can add all the needed values to create a new layout.
Edit You can edit layouts in two ways.
You can click on the box next to the layout name and then click on the Edit button in the toolbar; this will open the layout and if you have permission it will give you access to edit the values of a layout. You can simply click on the layout name; this will open the layout and if you have permission it will give you access to edit the values of a layout. Edit State You can publish, unpublish, archive, and trash any layout by clicking in the boxes next the layout names and then click on the corresponding button of the task you want to perform. This will change the state of all the layouts you’ve selected.
If you have trashed a layout it is in the trash and can still be found in the database. To view items that are still in the trash change the “- Select Status –“ filter to Trashed. Here you will see the list of trashed layouts. To completely remove these layouts from your system do the following: first select all the layouts you want to permanently delete by clicking in the boxes next to the layout names and then click on the Empty trash button in the toolbar. This will permanently delete the layouts from the database. On the other hand if you would like to change the status of the layout to publish, unpublish or archive, click in the boxes next to the layout names and then click on the corresponding button of the task you want to perform. This will change the state of all the layouts you’ve selected.
Check-in When another user on your Joomla website opens a layout the system checks the layout out to that user. A little lock will show up next to the layout name. When you hover over the lock it will show to you who checked it out and when.
Component builder adds a nice feature to all its components that is called the auto check-in feature. This feature has a time setting that you can update in the component\'s global settings.
If this feature has not yet checked-in any of the layouts that you as the administrator wants to open you can force a check-in by clicking in the boxes next to the layout names and then click on the Check-in button in the toolbar, or simply click on the little lock. This will then check in the layout, which will mean that it removes the layout from the user who checked it out before you. Remember that they will lose all changes they have made if they have not yet clicked save. This can cause very unpleasant circumstances, so only use this feature if you are absolutely sure you know what you are doing.
Batch Feature You can use the Batch feature to update or copy many layouts at once by clicking in the boxes next the layout names and then click on the Batch button in the toolbar. This will open a popup window with multiple dropdown options of fields you can change with the batch feature. You can then select update or copy depending of your desired task and finally click on the Process button. Once completed this batch feature will have either copied or updated all the layouts according to the task you selected.
Export & Import The export and import feature is some of the most exciting features to the list view of layouts. With them you can update and create many layouts at once.
Export The export option only exports the layouts selected. So to export all layouts you must change the limited number of layouts that are being loaded to \"All\". The box that limits the number of layouts being loaded is found on the right top corner of the page. Simply change it from the number to “All” and the page should now reload with all the layout records from the database, excluding those in trash. If you want those also to load you must change the “- Select Status –“ filter to “All” as well. Now you can click on the tick box at the very top of the table. This should select all the layouts. Next click on the Export Date button in the toolbar. This should open a download window and you can select to save the excel file to your computer.
Import The import option can be used to create layouts or update existing layouts. The way to update existing layouts is to use the same id as the layout you want to update. Best way to do this is to first export the layouts you want to update and then make the changes you have in mind in the excel document without removing or changing the id. To instead create new layouts via an import, simple leave the id field empty.
So once you have your excel document ready you will again open the list view of layouts and click on the Import Data button in the toolbar. This will open a page where you can select the excel file on your computer as an upload, or on the server in a directory, or at any direct url to the excel document.
Once you have the file selected you can click on the Upload File or Get File button depending on the method you have chosen. When file has successfully been uploaded or retrieved a new window will open where you can map the excel document headers of each column to the field names used in the database. Usually if you’re using an exported version of the excel document this mapping will be done for you, yet if you have changed any of the header names you may need to set these field relationships manually. There is an option to ignore a column in the case when you want to leave a field totally unchanged.
When the field to column relationship has correctly been mapped you can click on the continue button at the bottom of the page. This should return you to the list view of layouts with a success message.
Debug In the event that any of the above features did not work as expected, please read the error message carefully since it should usually give you enough information to why your request could not be processed. Subsequently if you are still not able to perform the request after making all needed corrections according to the error messages, then please contact your system administrator.
', '\"\"', 1, '', '', 2, 'Welcome to the List view of Layouts', 2, '', '', 1, 3, '', 6),
+(7, 'dynamic_gets', 'welcome-to-the-list-view-of-dynamic-gets', '', 'Here as in all Joomla backend list views you can perform all the common tasks, and more.
Create You can create a dynamic get by clicking on the New button in the toolbar, this will open a window where you can add all the needed values to create a new dynamic get.
Edit You can edit dynamic gets in two ways.
You can click on the box next to the dynamic get name and then click on the Edit button in the toolbar; this will open the dynamic get and if you have permission it will give you access to edit the values of a dynamic get. You can simply click on the dynamic get name; this will open the dynamic get and if you have permission it will give you access to edit the values of a dynamic get. Edit State You can publish, unpublish, archive, and trash any dynamic get by clicking in the boxes next the dynamic get names and then click on the corresponding button of the task you want to perform. This will change the state of all the dynamic gets you’ve selected.
If you have trashed a dynamic get it is in the trash and can still be found in the database. To view items that are still in the trash change the “- Select Status –“ filter to Trashed. Here you will see the list of trashed dynamic gets. To completely remove these dynamic gets from your system do the following: first select all the dynamic gets you want to permanently delete by clicking in the boxes next to the dynamic get names and then click on the Empty trash button in the toolbar. This will permanently delete the dynamic gets from the database. On the other hand if you would like to change the status of the dynamic get to publish, unpublish or archive, click in the boxes next to the dynamic get names and then click on the corresponding button of the task you want to perform. This will change the state of all the dynamic gets you’ve selected.
Check-in When another user on your Joomla website opens a dynamic get the system checks the dynamic get out to that user. A little lock will show up next to the dynamic get name. When you hover over the lock it will show to you who checked it out and when.
Component builder adds a nice feature to all its components that is called the auto check-in feature. This feature has a time setting that you can update in the component\'s global settings.
If this feature has not yet checked-in any of the dynamic gets that you as the administrator wants to open you can force a check-in by clicking in the boxes next to the dynamic get names and then click on the Check-in button in the toolbar, or simply click on the little lock. This will then check in the dynamic get, which will mean that it removes the dynamic get from the user who checked it out before you. Remember that they will lose all changes they have made if they have not yet clicked save. This can cause very unpleasant circumstances, so only use this feature if you are absolutely sure you know what you are doing.
Batch Feature You can use the Batch feature to update or copy many dynamic gets at once by clicking in the boxes next the dynamic get names and then click on the Batch button in the toolbar. This will open a popup window with multiple dropdown options of fields you can change with the batch feature. You can then select update or copy depending of your desired task and finally click on the Process button. Once completed this batch feature will have either copied or updated all the dynamic gets according to the task you selected.
Export & Import The export and import feature is some of the most exciting features to the list view of dynamic gets. With them you can update and create many dynamic gets at once.
Export The export option only exports the dynamic gets selected. So to export all dynamic gets you must change the limited number of dynamic gets that are being loaded to \"All\". The box that limits the number of dynamic gets being loaded is found on the right top corner of the page. Simply change it from the number to “All” and the page should now reload with all the dynamic get records from the database, excluding those in trash. If you want those also to load you must change the “- Select Status –“ filter to “All” as well. Now you can click on the tick box at the very top of the table. This should select all the dynamic gets. Next click on the Export Date button in the toolbar. This should open a download window and you can select to save the excel file to your computer.
Import The import option can be used to create dynamic gets or update existing dynamic gets. The way to update existing dynamic gets is to use the same id as the dynamic get you want to update. Best way to do this is to first export the dynamic gets you want to update and then make the changes you have in mind in the excel document without removing or changing the id. To instead create new dynamic gets via an import, simple leave the id field empty.
So once you have your excel document ready you will again open the list view of dynamic gets and click on the Import Data button in the toolbar. This will open a page where you can select the excel file on your computer as an upload, or on the server in a directory, or at any direct url to the excel document.
Once you have the file selected you can click on the Upload File or Get File button depending on the method you have chosen. When file has successfully been uploaded or retrieved a new window will open where you can map the excel document headers of each column to the field names used in the database. Usually if you’re using an exported version of the excel document this mapping will be done for you, yet if you have changed any of the header names you may need to set these field relationships manually. There is an option to ignore a column in the case when you want to leave a field totally unchanged.
When the field to column relationship has correctly been mapped you can click on the continue button at the bottom of the page. This should return you to the list view of dynamic gets with a success message.
Debug In the event that any of the above features did not work as expected, please read the error message carefully since it should usually give you enough information to why your request could not be processed. Subsequently if you are still not able to perform the request after making all needed corrections according to the error messages, then please contact your system administrator.
', '\"\"', 1, '', '', 2, 'Welcome to the List view of Dynamic Gets', 2, '', '', 1, 3, '', 7),
+(8, 'snippets', 'welcome-to-the-list-view-of-snippets', '', 'Here as in all Joomla backend list views you can perform all the common tasks, and more.
Create You can create a snippet by clicking on the New button in the toolbar, this will open a window where you can add all the needed values to create a new snippet.
Edit You can edit snippets in two ways.
You can click on the box next to the snippet name and then click on the Edit button in the toolbar; this will open the snippet and if you have permission it will give you access to edit the values of a snippet. You can simply click on the snippet name; this will open the snippet and if you have permission it will give you access to edit the values of a snippet. Edit State You can publish, unpublish, archive, and trash any snippet by clicking in the boxes next the snippet names and then click on the corresponding button of the task you want to perform. This will change the state of all the snippets you’ve selected.
If you have trashed a snippet it is in the trash and can still be found in the database. To view items that are still in the trash change the “- Select Status –“ filter to Trashed. Here you will see the list of trashed snippets. To completely remove these snippets from your system do the following: first select all the snippets you want to permanently delete by clicking in the boxes next to the snippet names and then click on the Empty trash button in the toolbar. This will permanently delete the snippets from the database. On the other hand if you would like to change the status of the snippet to publish, unpublish or archive, click in the boxes next to the snippet names and then click on the corresponding button of the task you want to perform. This will change the state of all the snippets you’ve selected.
Check-in When another user on your Joomla website opens a snippet the system checks the snippet out to that user. A little lock will show up next to the snippet name. When you hover over the lock it will show to you who checked it out and when.
Component builder adds a nice feature to all its components that is called the auto check-in feature. This feature has a time setting that you can update in the component\'s global settings.
If this feature has not yet checked-in any of the snippets that you as the administrator wants to open you can force a check-in by clicking in the boxes next to the snippet names and then click on the Check-in button in the toolbar, or simply click on the little lock. This will then check in the snippet, which will mean that it removes the snippet from the user who checked it out before you. Remember that they will lose all changes they have made if they have not yet clicked save. This can cause very unpleasant circumstances, so only use this feature if you are absolutely sure you know what you are doing.
Batch Feature You can use the Batch feature to update or copy many snippets at once by clicking in the boxes next the snippet names and then click on the Batch button in the toolbar. This will open a popup window with multiple dropdown options of fields you can change with the batch feature. You can then select update or copy depending of your desired task and finally click on the Process button. Once completed this batch feature will have either copied or updated all the snippets according to the task you selected.
Export & Import The export and import feature is some of the most exciting features to the list view of snippets. With them you can update and create many snippets at once.
Export The export option only exports the snippets selected. So to export all snippets you must change the limited number of snippets that are being loaded to \"All\". The box that limits the number of snippets being loaded is found on the right top corner of the page. Simply change it from the number to “All” and the page should now reload with all the snippet records from the database, excluding those in trash. If you want those also to load you must change the “- Select Status –“ filter to “All” as well. Now you can click on the tick box at the very top of the table. This should select all the snippets. Next click on the Export Date button in the toolbar. This should open a download window and you can select to save the excel file to your computer.
Import The import option can be used to create snippets or update existing snippets. The way to update existing snippets is to use the same id as the snippet you want to update. Best way to do this is to first export the snippets you want to update and then make the changes you have in mind in the excel document without removing or changing the id. To instead create new snippets via an import, simple leave the id field empty.
So once you have your excel document ready you will again open the list view of snippets and click on the Import Data button in the toolbar. This will open a page where you can select the excel file on your computer as an upload, or on the server in a directory, or at any direct url to the excel document.
Once you have the file selected you can click on the Upload File or Get File button depending on the method you have chosen. When file has successfully been uploaded or retrieved a new window will open where you can map the excel document headers of each column to the field names used in the database. Usually if you’re using an exported version of the excel document this mapping will be done for you, yet if you have changed any of the header names you may need to set these field relationships manually. There is an option to ignore a column in the case when you want to leave a field totally unchanged.
When the field to column relationship has correctly been mapped you can click on the continue button at the bottom of the page. This should return you to the list view of snippets with a success message.
Debug In the event that any of the above features did not work as expected, please read the error message carefully since it should usually give you enough information to why your request could not be processed. Subsequently if you are still not able to perform the request after making all needed corrections according to the error messages, then please contact your system administrator.
', '\"\"', 1, '', '', 2, 'Welcome to the List view of Snippets', 2, '', '', 1, 3, '', 8),
+(9, 'fields', 'welcome-to-the-list-view-of-fields', '', 'Here as in all Joomla backend list views you can perform all the common tasks, and more.
Create You can create a field by clicking on the New button in the toolbar, this will open a window where you can add all the needed values to create a new field.
Edit You can edit fields in two ways.
You can click on the box next to the field name and then click on the Edit button in the toolbar; this will open the field and if you have permission it will give you access to edit the values of a field. You can simply click on the field name; this will open the field and if you have permission it will give you access to edit the values of a field. Edit State You can publish, unpublish, archive, and trash any field by clicking in the boxes next the field names and then click on the corresponding button of the task you want to perform. This will change the state of all the fields you’ve selected.
If you have trashed a field it is in the trash and can still be found in the database. To view items that are still in the trash change the “- Select Status –“ filter to Trashed. Here you will see the list of trashed fields. To completely remove these fields from your system do the following: first select all the fields you want to permanently delete by clicking in the boxes next to the field names and then click on the Empty trash button in the toolbar. This will permanently delete the fields from the database. On the other hand if you would like to change the status of the field to publish, unpublish or archive, click in the boxes next to the field names and then click on the corresponding button of the task you want to perform. This will change the state of all the fields you’ve selected.
Check-in When another user on your Joomla website opens a field the system checks the field out to that user. A little lock will show up next to the field name. When you hover over the lock it will show to you who checked it out and when.
Component builder adds a nice feature to all its components that is called the auto check-in feature. This feature has a time setting that you can update in the component\'s global settings.
If this feature has not yet checked-in any of the fields that you as the administrator wants to open you can force a check-in by clicking in the boxes next to the field names and then click on the Check-in button in the toolbar, or simply click on the little lock. This will then check in the field, which will mean that it removes the field from the user who checked it out before you. Remember that they will lose all changes they have made if they have not yet clicked save. This can cause very unpleasant circumstances, so only use this feature if you are absolutely sure you know what you are doing.
Batch Feature You can use the Batch feature to update or copy many fields at once by clicking in the boxes next the field names and then click on the Batch button in the toolbar. This will open a popup window with multiple dropdown options of fields you can change with the batch feature. You can then select update or copy depending of your desired task and finally click on the Process button. Once completed this batch feature will have either copied or updated all the fields according to the task you selected.
Export & Import The export and import feature is some of the most exciting features to the list view of fields. With them you can update and create many fields at once.
Export The export option only exports the fields selected. So to export all fields you must change the limited number of fields that are being loaded to \"All\". The box that limits the number of fields being loaded is found on the right top corner of the page. Simply change it from the number to “All” and the page should now reload with all the field records from the database, excluding those in trash. If you want those also to load you must change the “- Select Status –“ filter to “All” as well. Now you can click on the tick box at the very top of the table. This should select all the fields. Next click on the Export Date button in the toolbar. This should open a download window and you can select to save the excel file to your computer.
Import The import option can be used to create fields or update existing fields. The way to update existing fields is to use the same id as the field you want to update. Best way to do this is to first export the fields you want to update and then make the changes you have in mind in the excel document without removing or changing the id. To instead create new fields via an import, simple leave the id field empty.
So once you have your excel document ready you will again open the list view of fields and click on the Import Data button in the toolbar. This will open a page where you can select the excel file on your computer as an upload, or on the server in a directory, or at any direct url to the excel document.
Once you have the file selected you can click on the Upload File or Get File button depending on the method you have chosen. When file has successfully been uploaded or retrieved a new window will open where you can map the excel document headers of each column to the field names used in the database. Usually if you’re using an exported version of the excel document this mapping will be done for you, yet if you have changed any of the header names you may need to set these field relationships manually. There is an option to ignore a column in the case when you want to leave a field totally unchanged.
When the field to column relationship has correctly been mapped you can click on the continue button at the bottom of the page. This should return you to the list view of fields with a success message.
Debug In the event that any of the above features did not work as expected, please read the error message carefully since it should usually give you enough information to why your request could not be processed. Subsequently if you are still not able to perform the request after making all needed corrections according to the error messages, then please contact your system administrator.
', '\"\"', 1, '', '', 2, 'Welcome to the List view of Fields', 2, '', '', 1, 3, '', 9),
+(10, 'fieldtypes', 'welcome-to-the-list-view-of-fieldtypes', '', 'Here as in all Joomla backend list views you can perform all the common tasks, and more.
Create You can create a fieldtype by clicking on the New button in the toolbar, this will open a window where you can add all the needed values to create a new fieldtype.
Edit You can edit fieldtypes in two ways.
You can click on the box next to the fieldtype name and then click on the Edit button in the toolbar; this will open the fieldtype and if you have permission it will give you access to edit the values of a fieldtype. You can simply click on the fieldtype name; this will open the fieldtype and if you have permission it will give you access to edit the values of a fieldtype. Edit State You can publish, unpublish, archive, and trash any fieldtype by clicking in the boxes next the fieldtype names and then click on the corresponding button of the task you want to perform. This will change the state of all the fieldtypes you’ve selected.
If you have trashed a fieldtype it is in the trash and can still be found in the database. To view items that are still in the trash change the “- Select Status –“ filter to Trashed. Here you will see the list of trashed fieldtypes. To completely remove these fieldtypes from your system do the following: first select all the fieldtypes you want to permanently delete by clicking in the boxes next to the fieldtype names and then click on the Empty trash button in the toolbar. This will permanently delete the fieldtypes from the database. On the other hand if you would like to change the status of the fieldtype to publish, unpublish or archive, click in the boxes next to the fieldtype names and then click on the corresponding button of the task you want to perform. This will change the state of all the fieldtypes you’ve selected.
Check-in When another user on your Joomla website opens a fieldtype the system checks the fieldtype out to that user. A little lock will show up next to the fieldtype name. When you hover over the lock it will show to you who checked it out and when.
Component builder adds a nice feature to all its components that is called the auto check-in feature. This feature has a time setting that you can update in the component\'s global settings.
If this feature has not yet checked-in any of the fieldtypes that you as the administrator wants to open you can force a check-in by clicking in the boxes next to the fieldtype names and then click on the Check-in button in the toolbar, or simply click on the little lock. This will then check in the fieldtype, which will mean that it removes the fieldtype from the user who checked it out before you. Remember that they will lose all changes they have made if they have not yet clicked save. This can cause very unpleasant circumstances, so only use this feature if you are absolutely sure you know what you are doing.
Batch Feature You can use the Batch feature to update or copy many fieldtypes at once by clicking in the boxes next the fieldtype names and then click on the Batch button in the toolbar. This will open a popup window with multiple dropdown options of fields you can change with the batch feature. You can then select update or copy depending of your desired task and finally click on the Process button. Once completed this batch feature will have either copied or updated all the fieldtypes according to the task you selected.
Export & Import The export and import feature is some of the most exciting features to the list view of fieldtypes. With them you can update and create many fieldtypes at once.
Export The export option only exports the fieldtypes selected. So to export all fieldtypes you must change the limited number of fieldtypes that are being loaded to \"All\". The box that limits the number of fieldtypes being loaded is found on the right top corner of the page. Simply change it from the number to “All” and the page should now reload with all the fieldtype records from the database, excluding those in trash. If you want those also to load you must change the “- Select Status –“ filter to “All” as well. Now you can click on the tick box at the very top of the table. This should select all the fieldtypes. Next click on the Export Date button in the toolbar. This should open a download window and you can select to save the excel file to your computer.
Import The import option can be used to create fieldtypes or update existing fieldtypes. The way to update existing fieldtypes is to use the same id as the fieldtype you want to update. Best way to do this is to first export the fieldtypes you want to update and then make the changes you have in mind in the excel document without removing or changing the id. To instead create new fieldtypes via an import, simple leave the id field empty.
So once you have your excel document ready you will again open the list view of fieldtypes and click on the Import Data button in the toolbar. This will open a page where you can select the excel file on your computer as an upload, or on the server in a directory, or at any direct url to the excel document.
Once you have the file selected you can click on the Upload File or Get File button depending on the method you have chosen. When file has successfully been uploaded or retrieved a new window will open where you can map the excel document headers of each column to the field names used in the database. Usually if you’re using an exported version of the excel document this mapping will be done for you, yet if you have changed any of the header names you may need to set these field relationships manually. There is an option to ignore a column in the case when you want to leave a field totally unchanged.
When the field to column relationship has correctly been mapped you can click on the continue button at the bottom of the page. This should return you to the list view of fieldtypes with a success message.
Debug In the event that any of the above features did not work as expected, please read the error message carefully since it should usually give you enough information to why your request could not be processed. Subsequently if you are still not able to perform the request after making all needed corrections according to the error messages, then please contact your system administrator.
', '\"\"', 1, '', '', 2, 'Welcome to the List view of Fieldtypes', 2, '', '', 1, 3, '', 10),
+(11, 'help_documents', 'welcome-to-the-list-view-of-help-documents', '', 'Here as in all Joomla backend list views you can perform all the common tasks, and more.
Create You can create a help document by clicking on the New button in the toolbar, this will open a window where you can add all the needed values to create a new help document.
Edit You can edit help documents in two ways.
You can click on the box next to the help document name and then click on the Edit button in the toolbar; this will open the help document and if you have permission it will give you access to edit the values of a help document. You can simply click on the help document name; this will open the help document and if you have permission it will give you access to edit the values of a help document. Edit State You can publish, unpublish, archive, and trash any help document by clicking in the boxes next the help document names and then click on the corresponding button of the task you want to perform. This will change the state of all the help documents you’ve selected.
If you have trashed a help document it is in the trash and can still be found in the database. To view items that are still in the trash change the “- Select Status –“ filter to Trashed. Here you will see the list of trashed help documents. To completely remove these help documents from your system do the following: first select all the help documents you want to permanently delete by clicking in the boxes next to the help document names and then click on the Empty trash button in the toolbar. This will permanently delete the help documents from the database. On the other hand if you would like to change the status of the help document to publish, unpublish or archive, click in the boxes next to the help document names and then click on the corresponding button of the task you want to perform. This will change the state of all the help documents you’ve selected.
Check-in When another user on your Joomla website opens a help document the system checks the help document out to that user. A little lock will show up next to the help document name. When you hover over the lock it will show to you who checked it out and when.
Component builder adds a nice feature to all its components that is called the auto check-in feature. This feature has a time setting that you can update in the component\'s global settings.
If this feature has not yet checked-in any of the help documents that you as the administrator wants to open you can force a check-in by clicking in the boxes next to the help document names and then click on the Check-in button in the toolbar, or simply click on the little lock. This will then check in the help document, which will mean that it removes the help document from the user who checked it out before you. Remember that they will lose all changes they have made if they have not yet clicked save. This can cause very unpleasant circumstances, so only use this feature if you are absolutely sure you know what you are doing.
Batch Feature You can use the Batch feature to update or copy many help documents at once by clicking in the boxes next the help document names and then click on the Batch button in the toolbar. This will open a popup window with multiple dropdown options of fields you can change with the batch feature. You can then select update or copy depending of your desired task and finally click on the Process button. Once completed this batch feature will have either copied or updated all the help documents according to the task you selected.
Export & Import The export and import feature is some of the most exciting features to the list view of help documents. With them you can update and create many help documents at once.
Export The export option only exports the help documents selected. So to export all help documents you must change the limited number of help documents that are being loaded to \"All\". The box that limits the number of help documents being loaded is found on the right top corner of the page. Simply change it from the number to “All” and the page should now reload with all the help document records from the database, excluding those in trash. If you want those also to load you must change the “- Select Status –“ filter to “All” as well. Now you can click on the tick box at the very top of the table. This should select all the help documents. Next click on the Export Date button in the toolbar. This should open a download window and you can select to save the excel file to your computer.
Import The import option can be used to create help documents or update existing help documents. The way to update existing help documents is to use the same id as the help document you want to update. Best way to do this is to first export the help documents you want to update and then make the changes you have in mind in the excel document without removing or changing the id. To instead create new help documents via an import, simple leave the id field empty.
So once you have your excel document ready you will again open the list view of help documents and click on the Import Data button in the toolbar. This will open a page where you can select the excel file on your computer as an upload, or on the server in a directory, or at any direct url to the excel document.
Once you have the file selected you can click on the Upload File or Get File button depending on the method you have chosen. When file has successfully been uploaded or retrieved a new window will open where you can map the excel document headers of each column to the field names used in the database. Usually if you’re using an exported version of the excel document this mapping will be done for you, yet if you have changed any of the header names you may need to set these field relationships manually. There is an option to ignore a column in the case when you want to leave a field totally unchanged.
When the field to column relationship has correctly been mapped you can click on the continue button at the bottom of the page. This should return you to the list view of help documents with a success message.
Debug In the event that any of the above features did not work as expected, please read the error message carefully since it should usually give you enough information to why your request could not be processed. Subsequently if you are still not able to perform the request after making all needed corrections according to the error messages, then please contact your system administrator.
', '\"\"', 1, '', '', 2, 'Welcome to the List view of Help Documents', 2, '', '', 1, 3, '', 11);
+
+--
+-- Dumping data for table `#__componentbuilder_admin_fields`
+--
+
+INSERT INTO `#__componentbuilder_admin_fields` (`id`, `addfields`, `admin_view`, `published`, `created`, `modified`, `version`, `hits`, `ordering`) VALUES
+(111, '{\"addfields0\":{\"field\":\"199\",\"list\":\"1\",\"order_list\":\"1\",\"title\":\"1\",\"alias\":\"0\",\"sort\":\"1\",\"search\":\"1\",\"filter\":\"0\",\"link\":\"1\",\"tab\":\"1\",\"alignment\":\"4\",\"order_edit\":\"1\",\"permission\":\"1\"},\"addfields1\":{\"field\":\"23\",\"list\":\"0\",\"order_list\":\"0\",\"title\":\"0\",\"alias\":\"1\",\"sort\":\"0\",\"search\":\"1\",\"filter\":\"0\",\"link\":\"0\",\"tab\":\"1\",\"alignment\":\"4\",\"order_edit\":\"2\",\"permission\":\"1\"},\"addfields2\":{\"field\":\"84\",\"list\":\"1\",\"order_list\":\"2\",\"title\":\"0\",\"alias\":\"0\",\"sort\":\"1\",\"search\":\"1\",\"filter\":\"0\",\"link\":\"0\",\"tab\":\"1\",\"alignment\":\"3\",\"order_edit\":\"1\",\"permission\":\"1\"},\"addfields3\":{\"field\":\"682\",\"list\":\"0\",\"order_list\":\"0\",\"title\":\"0\",\"alias\":\"0\",\"sort\":\"1\",\"search\":\"1\",\"filter\":\"1\",\"link\":\"0\",\"tab\":\"2\",\"alignment\":\"1\",\"order_edit\":\"1\",\"permission\":\"1\"},\"addfields4\":{\"field\":\"100\",\"list\":\"0\",\"order_list\":\"0\",\"title\":\"0\",\"alias\":\"0\",\"sort\":\"0\",\"search\":\"0\",\"filter\":\"0\",\"link\":\"0\",\"tab\":\"2\",\"alignment\":\"2\",\"order_edit\":\"1\",\"permission\":\"1\"},\"addfields5\":{\"field\":\"196\",\"list\":\"0\",\"order_list\":\"0\",\"title\":\"0\",\"alias\":\"0\",\"sort\":\"0\",\"search\":\"0\",\"filter\":\"0\",\"link\":\"0\",\"tab\":\"2\",\"alignment\":\"2\",\"order_edit\":\"2\",\"permission\":\"1\"},\"addfields6\":{\"field\":\"1011\",\"list\":\"0\",\"order_list\":\"0\",\"title\":\"0\",\"alias\":\"0\",\"sort\":\"0\",\"search\":\"0\",\"filter\":\"0\",\"link\":\"0\",\"tab\":\"2\",\"alignment\":\"2\",\"order_edit\":\"3\",\"permission\":\"1\"},\"addfields7\":{\"field\":\"158\",\"list\":\"0\",\"order_list\":\"0\",\"title\":\"0\",\"alias\":\"0\",\"sort\":\"0\",\"search\":\"0\",\"filter\":\"0\",\"link\":\"0\",\"tab\":\"2\",\"alignment\":\"2\",\"order_edit\":\"4\",\"permission\":\"1\"},\"addfields8\":{\"field\":\"280\",\"list\":\"0\",\"order_list\":\"0\",\"title\":\"0\",\"alias\":\"0\",\"sort\":\"0\",\"search\":\"0\",\"filter\":\"0\",\"link\":\"0\",\"tab\":\"2\",\"alignment\":\"2\",\"order_edit\":\"5\",\"permission\":\"1\"},\"addfields9\":{\"field\":\"203\",\"list\":\"0\",\"order_list\":\"0\",\"title\":\"0\",\"alias\":\"0\",\"sort\":\"0\",\"search\":\"0\",\"filter\":\"0\",\"link\":\"0\",\"tab\":\"1\",\"alignment\":\"5\",\"order_edit\":\"1\",\"permission\":\"0\"}}', 109, 1, '2017-10-12 19:52:03', '0000-00-00 00:00:00', 2, '', '');
+
+--
+-- Dumping data for table `#__componentbuilder_admin_fields_conditions`
+--
+
+INSERT INTO `#__componentbuilder_admin_fields_conditions` (`id`, `addconditions`, `admin_view`, `published`, `created`, `modified`, `version`, `hits`, `ordering`) VALUES
+(111, '{\"addconditions0\":{\"target_field\":[\"1011\",\"100\",\"158\",\"196\",\"280\"],\"target_behavior\":\"1\",\"target_relation\":\"0\",\"match_field\":\"682\",\"match_behavior\":\"1\",\"match_options\":\"1|Yes\"}}', 109, 1, '2017-10-12 21:36:00', '0000-00-00 00:00:00', 2, '', '');
diff --git a/admin/sql/uninstall.mysql.utf8.sql b/admin/sql/uninstall.mysql.utf8.sql
index 45ae6542a..e6e5472f0 100644
--- a/admin/sql/uninstall.mysql.utf8.sql
+++ b/admin/sql/uninstall.mysql.utf8.sql
@@ -13,3 +13,5 @@ DROP TABLE IF EXISTS `#__componentbuilder_language_translation`;
DROP TABLE IF EXISTS `#__componentbuilder_language`;
DROP TABLE IF EXISTS `#__componentbuilder_ftp`;
DROP TABLE IF EXISTS `#__componentbuilder_help_document`;
+DROP TABLE IF EXISTS `#__componentbuilder_admin_fields`;
+DROP TABLE IF EXISTS `#__componentbuilder_admin_fields_conditions`;
diff --git a/admin/sql/updates/mysql/2.3.0.sql b/admin/sql/updates/mysql/2.3.0.sql
deleted file mode 100644
index 553de240d..000000000
--- a/admin/sql/updates/mysql/2.3.0.sql
+++ /dev/null
@@ -1 +0,0 @@
-ALTER TABLE `#__componentbuilder_custom_code` ADD `target` TINYINT(1) NOT NULL DEFAULT '0' AFTER `path`;
diff --git a/admin/sql/updates/mysql/2.3.1.sql b/admin/sql/updates/mysql/2.3.1.sql
deleted file mode 100644
index 4001b3abd..000000000
--- a/admin/sql/updates/mysql/2.3.1.sql
+++ /dev/null
@@ -1 +0,0 @@
-ALTER TABLE `#__componentbuilder_custom_code` ADD `system_name` VARCHAR(255) NOT NULL DEFAULT '' AFTER `path`;
diff --git a/admin/sql/updates/mysql/2.3.10.sql b/admin/sql/updates/mysql/2.3.10.sql
deleted file mode 100644
index d3f5a12fa..000000000
--- a/admin/sql/updates/mysql/2.3.10.sql
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/admin/sql/updates/mysql/2.3.2.sql b/admin/sql/updates/mysql/2.3.2.sql
deleted file mode 100644
index ae55252e1..000000000
--- a/admin/sql/updates/mysql/2.3.2.sql
+++ /dev/null
@@ -1 +0,0 @@
-ALTER TABLE `#__componentbuilder_custom_code` ADD `function_name` VARCHAR(255) NOT NULL DEFAULT '' AFTER `from_line`;
diff --git a/admin/sql/updates/mysql/2.3.3.sql b/admin/sql/updates/mysql/2.3.3.sql
deleted file mode 100644
index 649142e75..000000000
--- a/admin/sql/updates/mysql/2.3.3.sql
+++ /dev/null
@@ -1 +0,0 @@
-ALTER TABLE `#__componentbuilder_custom_code` ADD `comment_type` TINYINT(1) NOT NULL DEFAULT '0' AFTER `component`;
diff --git a/admin/sql/updates/mysql/2.3.4.sql b/admin/sql/updates/mysql/2.3.4.sql
deleted file mode 100644
index 189931fac..000000000
--- a/admin/sql/updates/mysql/2.3.4.sql
+++ /dev/null
@@ -1 +0,0 @@
-RENAME TABLE `#__componentbuilder_component` to `#__componentbuilder_joomla_component`;
diff --git a/admin/sql/updates/mysql/2.3.5.sql b/admin/sql/updates/mysql/2.3.5.sql
deleted file mode 100644
index c79755393..000000000
--- a/admin/sql/updates/mysql/2.3.5.sql
+++ /dev/null
@@ -1,2 +0,0 @@
-ALTER TABLE `#__componentbuilder_admin_view` ADD `php_controller_list` MEDIUMTEXT NOT NULL AFTER `php_controller`;
-ALTER TABLE `#__componentbuilder_admin_view` ADD `php_model_list` MEDIUMTEXT NOT NULL AFTER `php_model`;
diff --git a/admin/sql/updates/mysql/2.3.6.sql b/admin/sql/updates/mysql/2.3.6.sql
deleted file mode 100644
index d3f5a12fa..000000000
--- a/admin/sql/updates/mysql/2.3.6.sql
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/admin/sql/updates/mysql/2.3.7.sql b/admin/sql/updates/mysql/2.3.7.sql
deleted file mode 100644
index 2b6b7f911..000000000
--- a/admin/sql/updates/mysql/2.3.7.sql
+++ /dev/null
@@ -1 +0,0 @@
-ALTER TABLE `#__componentbuilder_admin_view` ADD `php_import_ext` MEDIUMTEXT NOT NULL AFTER `php_import_display`;
diff --git a/admin/sql/updates/mysql/2.3.8.sql b/admin/sql/updates/mysql/2.3.8.sql
deleted file mode 100644
index 7bf16b55d..000000000
--- a/admin/sql/updates/mysql/2.3.8.sql
+++ /dev/null
@@ -1 +0,0 @@
-ALTER TABLE `#__componentbuilder_joomla_component` ADD `export_key` TEXT NOT NULL AFTER `emptycontributors`;
diff --git a/admin/sql/updates/mysql/2.3.9.sql b/admin/sql/updates/mysql/2.3.9.sql
deleted file mode 100644
index 095f3e780..000000000
--- a/admin/sql/updates/mysql/2.3.9.sql
+++ /dev/null
@@ -1 +0,0 @@
-ALTER TABLE `#__componentbuilder_joomla_component` CHANGE `export_key` `export_key` TEXT NOT NULL;
diff --git a/admin/sql/updates/mysql/2.4.0.sql b/admin/sql/updates/mysql/2.4.0.sql
deleted file mode 100644
index d3f5a12fa..000000000
--- a/admin/sql/updates/mysql/2.4.0.sql
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/admin/sql/updates/mysql/2.4.1.sql b/admin/sql/updates/mysql/2.4.1.sql
deleted file mode 100644
index a03ca162e..000000000
--- a/admin/sql/updates/mysql/2.4.1.sql
+++ /dev/null
@@ -1,51 +0,0 @@
-CREATE TABLE IF NOT EXISTS `#__componentbuilder_language_translation` (
- `id` INT(11) NOT NULL AUTO_INCREMENT,
- `asset_id` INT(10) unsigned NOT NULL DEFAULT 0 COMMENT 'FK to the #__assets table.',
- `components` TEXT NOT NULL,
- `entranslation` TEXT NOT NULL,
- `translation` TEXT NOT NULL,
- `params` text NOT NULL DEFAULT '',
- `published` TINYINT(3) NOT NULL DEFAULT 1,
- `created_by` INT(10) unsigned NOT NULL DEFAULT 0,
- `modified_by` INT(10) unsigned NOT NULL DEFAULT 0,
- `created` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
- `modified` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
- `checked_out` int(11) unsigned NOT NULL DEFAULT 0,
- `checked_out_time` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
- `version` INT(10) unsigned NOT NULL DEFAULT 1,
- `hits` INT(10) unsigned NOT NULL DEFAULT 0,
- `access` INT(10) unsigned NOT NULL DEFAULT 0,
- `ordering` INT(11) NOT NULL DEFAULT 0,
- PRIMARY KEY (`id`),
- KEY `idx_access` (`access`),
- KEY `idx_checkout` (`checked_out`),
- KEY `idx_createdby` (`created_by`),
- KEY `idx_modifiedby` (`modified_by`),
- KEY `idx_state` (`published`)
-) ENGINE=MyISAM AUTO_INCREMENT=0 DEFAULT CHARSET=utf8;
-
-CREATE TABLE IF NOT EXISTS `#__componentbuilder_language` (
- `id` INT(11) NOT NULL AUTO_INCREMENT,
- `asset_id` INT(10) unsigned NOT NULL DEFAULT 0 COMMENT 'FK to the #__assets table.',
- `langtag` VARCHAR(64) NOT NULL DEFAULT '',
- `name` VARCHAR(255) NOT NULL DEFAULT '',
- `params` text NOT NULL DEFAULT '',
- `published` TINYINT(3) NOT NULL DEFAULT 1,
- `created_by` INT(10) unsigned NOT NULL DEFAULT 0,
- `modified_by` INT(10) unsigned NOT NULL DEFAULT 0,
- `created` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
- `modified` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
- `checked_out` int(11) unsigned NOT NULL DEFAULT 0,
- `checked_out_time` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
- `version` INT(10) unsigned NOT NULL DEFAULT 1,
- `hits` INT(10) unsigned NOT NULL DEFAULT 0,
- `access` INT(10) unsigned NOT NULL DEFAULT 0,
- `ordering` INT(11) NOT NULL DEFAULT 0,
- PRIMARY KEY (`id`),
- KEY `idx_access` (`access`),
- KEY `idx_checkout` (`checked_out`),
- KEY `idx_createdby` (`created_by`),
- KEY `idx_modifiedby` (`modified_by`),
- KEY `idx_state` (`published`),
- KEY `idx_name` (`name`)
-) ENGINE=MyISAM AUTO_INCREMENT=0 DEFAULT CHARSET=utf8;
diff --git a/admin/sql/updates/mysql/2.4.10.sql b/admin/sql/updates/mysql/2.4.10.sql
deleted file mode 100644
index d3f5a12fa..000000000
--- a/admin/sql/updates/mysql/2.4.10.sql
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/admin/sql/updates/mysql/2.4.2.sql b/admin/sql/updates/mysql/2.4.2.sql
deleted file mode 100644
index d3f5a12fa..000000000
--- a/admin/sql/updates/mysql/2.4.2.sql
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/admin/sql/updates/mysql/2.4.3.sql b/admin/sql/updates/mysql/2.4.3.sql
deleted file mode 100644
index 808502c64..000000000
--- a/admin/sql/updates/mysql/2.4.3.sql
+++ /dev/null
@@ -1,2 +0,0 @@
-ALTER TABLE `#__componentbuilder_joomla_component` ADD `export_buy_link` VARCHAR(255) NOT NULL DEFAULT '' AFTER `emptycontributors`;
-ALTER TABLE `#__componentbuilder_joomla_component` ADD `export_package_link` VARCHAR(255) NOT NULL DEFAULT '' AFTER `export_buy_link`;
diff --git a/admin/sql/updates/mysql/2.4.4.sql b/admin/sql/updates/mysql/2.4.4.sql
deleted file mode 100644
index d3f5a12fa..000000000
--- a/admin/sql/updates/mysql/2.4.4.sql
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/admin/sql/updates/mysql/2.4.5.sql b/admin/sql/updates/mysql/2.4.5.sql
deleted file mode 100644
index d3f5a12fa..000000000
--- a/admin/sql/updates/mysql/2.4.5.sql
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/admin/sql/updates/mysql/2.4.6.sql b/admin/sql/updates/mysql/2.4.6.sql
deleted file mode 100644
index d3f5a12fa..000000000
--- a/admin/sql/updates/mysql/2.4.6.sql
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/admin/sql/updates/mysql/2.4.7.sql b/admin/sql/updates/mysql/2.4.7.sql
deleted file mode 100644
index d3f5a12fa..000000000
--- a/admin/sql/updates/mysql/2.4.7.sql
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/admin/sql/updates/mysql/2.4.8.sql b/admin/sql/updates/mysql/2.4.8.sql
deleted file mode 100644
index d3f5a12fa..000000000
--- a/admin/sql/updates/mysql/2.4.8.sql
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/admin/sql/updates/mysql/2.4.9.sql b/admin/sql/updates/mysql/2.4.9.sql
deleted file mode 100644
index d3f5a12fa..000000000
--- a/admin/sql/updates/mysql/2.4.9.sql
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/admin/sql/updates/mysql/2.5.6.sql b/admin/sql/updates/mysql/2.5.6.sql
new file mode 100644
index 000000000..c3db53c1c
--- /dev/null
+++ b/admin/sql/updates/mysql/2.5.6.sql
@@ -0,0 +1,24 @@
+CREATE TABLE IF NOT EXISTS `#__componentbuilder_admin_fields` (
+ `id` INT(11) NOT NULL AUTO_INCREMENT,
+ `asset_id` INT(10) unsigned NOT NULL DEFAULT 0 COMMENT 'FK to the #__assets table.',
+ `addconditions` TEXT NOT NULL,
+ `addfields` TEXT NOT NULL,
+ `admin_view` INT(11) NOT NULL DEFAULT 0,
+ `params` text NOT NULL DEFAULT '',
+ `published` TINYINT(3) NOT NULL DEFAULT 1,
+ `created_by` INT(10) unsigned NOT NULL DEFAULT 0,
+ `modified_by` INT(10) unsigned NOT NULL DEFAULT 0,
+ `created` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
+ `modified` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
+ `checked_out` int(11) unsigned NOT NULL DEFAULT 0,
+ `checked_out_time` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
+ `version` INT(10) unsigned NOT NULL DEFAULT 1,
+ `hits` INT(10) unsigned NOT NULL DEFAULT 0,
+ `ordering` INT(11) NOT NULL DEFAULT 0,
+ PRIMARY KEY (`id`),
+ KEY `idx_checkout` (`checked_out`),
+ KEY `idx_createdby` (`created_by`),
+ KEY `idx_modifiedby` (`modified_by`),
+ KEY `idx_state` (`published`),
+ KEY `idx_admin_view` (`admin_view`)
+) ENGINE=MyISAM AUTO_INCREMENT=0 DEFAULT CHARSET=utf8;
diff --git a/admin/sql/updates/mysql/2.5.7.sql b/admin/sql/updates/mysql/2.5.7.sql
new file mode 100644
index 000000000..e88173af0
--- /dev/null
+++ b/admin/sql/updates/mysql/2.5.7.sql
@@ -0,0 +1,23 @@
+CREATE TABLE IF NOT EXISTS `#__componentbuilder_admin_fields_conditions` (
+ `id` INT(11) NOT NULL AUTO_INCREMENT,
+ `asset_id` INT(10) unsigned NOT NULL DEFAULT 0 COMMENT 'FK to the #__assets table.',
+ `addconditions` TEXT NOT NULL,
+ `admin_view` INT(11) NOT NULL DEFAULT 0,
+ `params` text NOT NULL DEFAULT '',
+ `published` TINYINT(3) NOT NULL DEFAULT 1,
+ `created_by` INT(10) unsigned NOT NULL DEFAULT 0,
+ `modified_by` INT(10) unsigned NOT NULL DEFAULT 0,
+ `created` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
+ `modified` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
+ `checked_out` int(11) unsigned NOT NULL DEFAULT 0,
+ `checked_out_time` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
+ `version` INT(10) unsigned NOT NULL DEFAULT 1,
+ `hits` INT(10) unsigned NOT NULL DEFAULT 0,
+ `ordering` INT(11) NOT NULL DEFAULT 0,
+ PRIMARY KEY (`id`),
+ KEY `idx_checkout` (`checked_out`),
+ KEY `idx_createdby` (`created_by`),
+ KEY `idx_modifiedby` (`modified_by`),
+ KEY `idx_state` (`published`),
+ KEY `idx_admin_view` (`admin_view`)
+) ENGINE=MyISAM AUTO_INCREMENT=0 DEFAULT CHARSET=utf8;
diff --git a/admin/tables/admin_fields.php b/admin/tables/admin_fields.php
new file mode 100644
index 000000000..04653a000
--- /dev/null
+++ b/admin/tables/admin_fields.php
@@ -0,0 +1,351 @@
+
+ @copyright Copyright (C) 2015. All Rights Reserved
+ @license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
+
+ Builds Complex Joomla Components
+
+/-----------------------------------------------------------------------------------------------------------------------------*/
+
+// No direct access to this file
+defined('_JEXEC') or die('Restricted access');
+
+use Joomla\Registry\Registry;
+
+// import Joomla table library
+jimport('joomla.database.table');
+
+/**
+ * Admins_fields Table class
+ */
+class ComponentbuilderTableAdmin_fields extends JTable
+{
+ /**
+ * Ensure the params and metadata in json encoded in the bind method
+ *
+ * @var array
+ * @since 3.3
+ */
+ protected $_jsonEncode = array('params', 'metadata');
+
+ /**
+ * Constructor
+ *
+ * @param object Database connector object
+ */
+ function __construct(&$db)
+ {
+ parent::__construct('#__componentbuilder_admin_fields', 'id', $db);
+
+ // Adding History Options
+ JTableObserverContenthistory::createObserver($this, array('typeAlias' => 'com_componentbuilder.admin_fields'));
+ }
+
+ public function bind($array, $ignore = '')
+ {
+
+ if (isset($array['params']) && is_array($array['params']))
+ {
+ $registry = new JRegistry;
+ $registry->loadArray($array['params']);
+ $array['params'] = (string) $registry;
+ }
+
+ if (isset($array['metadata']) && is_array($array['metadata']))
+ {
+ $registry = new JRegistry;
+ $registry->loadArray($array['metadata']);
+ $array['metadata'] = (string) $registry;
+ }
+
+ // Bind the rules.
+ if (isset($array['rules']) && is_array($array['rules']))
+ {
+ $rules = new JAccessRules($array['rules']);
+ $this->setRules($rules);
+ }
+ return parent::bind($array, $ignore);
+ }
+
+ /**
+ * Overload the store method for the Admin_fields table.
+ *
+ * @param boolean Toggle whether null values should be updated.
+ * @return boolean True on success, false on failure.
+ * @since 1.6
+ */
+ public function store($updateNulls = false)
+ {
+ $date = JFactory::getDate();
+ $user = JFactory::getUser();
+
+ if ($this->id)
+ {
+ // Existing item
+ $this->modified = $date->toSql();
+ $this->modified_by = $user->get('id');
+ }
+ else
+ {
+ // New admin_fields. A admin_fields created and created_by field can be set by the user,
+ // so we don't touch either of these if they are set.
+ if (!(int) $this->created)
+ {
+ $this->created = $date->toSql();
+ }
+ if (empty($this->created_by))
+ {
+ $this->created_by = $user->get('id');
+ }
+ }
+
+ if (isset($this->alias))
+ {
+ // Verify that the alias is unique
+ $table = JTable::getInstance('admin_fields', 'ComponentbuilderTable');
+
+ if ($table->load(array('alias' => $this->alias)) && ($table->id != $this->id || $this->id == 0))
+ {
+ $this->setError(JText::_('COM_COMPONENTBUILDER_ADMIN_FIELDS_ERROR_UNIQUE_ALIAS'));
+ return false;
+ }
+ }
+
+ if (isset($this->url))
+ {
+ // Convert IDN urls to punycode
+ $this->url = JStringPunycode::urlToPunycode($this->url);
+ }
+ if (isset($this->website))
+ {
+ // Convert IDN urls to punycode
+ $this->website = JStringPunycode::urlToPunycode($this->website);
+ }
+
+ return parent::store($updateNulls);
+ }
+
+ /**
+ * Overloaded check method to ensure data integrity.
+ *
+ * @return boolean True on success.
+ */
+ public function check()
+ {
+ if (isset($this->alias))
+ {
+ // Generate a valid alias
+ $this->generateAlias();
+
+ $table = JTable::getInstance('admin_fields', 'componentbuilderTable');
+
+ while ($table->load(array('alias' => $this->alias)) && ($table->id != $this->id || $this->id == 0))
+ {
+ $this->alias = JString::increment($this->alias, 'dash');
+ }
+ }
+
+ /*
+ * Clean up keywords -- eliminate extra spaces between phrases
+ * and cr (\r) and lf (\n) characters from string.
+ * Only process if not empty.
+ */
+ if (!empty($this->metakey))
+ {
+ // Array of characters to remove.
+ $bad_characters = array("\n", "\r", "\"", "<", ">");
+
+ // Remove bad characters.
+ $after_clean = JString::str_ireplace($bad_characters, "", $this->metakey);
+
+ // Create array using commas as delimiter.
+ $keys = explode(',', $after_clean);
+ $clean_keys = array();
+
+ foreach ($keys as $key)
+ {
+ // Ignore blank keywords.
+ if (trim($key))
+ {
+ $clean_keys[] = trim($key);
+ }
+ }
+
+ // Put array back together delimited by ", "
+ $this->metakey = implode(", ", $clean_keys);
+ }
+
+ // Clean up description -- eliminate quotes and <> brackets
+ if (!empty($this->metadesc))
+ {
+ // Only process if not empty
+ $bad_characters = array("\"", "<", ">");
+ $this->metadesc = JString::str_ireplace($bad_characters, "", $this->metadesc);
+ }
+
+ // If we don't have any access rules set at this point just use an empty JAccessRules class
+ if (!$this->getRules())
+ {
+ $rules = $this->getDefaultAssetValues('com_componentbuilder.admin_fields.'.$this->id);
+ $this->setRules($rules);
+ }
+
+ // Set ordering
+ if ($this->published < 0)
+ {
+ // Set ordering to 0 if state is archived or trashed
+ $this->ordering = 0;
+ }
+
+ return true;
+ }
+
+ /**
+ * Gets the default asset values for a component.
+ *
+ * @param $string $component The component asset name to search for
+ *
+ * @return JAccessRules The JAccessRules object for the asset
+ */
+ protected function getDefaultAssetValues($component, $try = true)
+ {
+ // Need to find the asset id by the name of the component.
+ $db = JFactory::getDbo();
+ $query = $db->getQuery(true)
+ ->select($db->quoteName('id'))
+ ->from($db->quoteName('#__assets'))
+ ->where($db->quoteName('name') . ' = ' . $db->quote($component));
+ $db->setQuery($query);
+ $db->execute();
+ if ($db->loadRowList())
+ {
+ // asset alread set so use saved rules
+ $assetId = (int) $db->loadResult();
+ return JAccess::getAssetRules($assetId);
+ }
+ // try again
+ elseif ($try)
+ {
+ $try = explode('.',$component);
+ $result = $this->getDefaultAssetValues($try[0], false);
+ if ($result instanceof JAccessRules)
+ {
+ if (isset($try[1]))
+ {
+ $_result = (string) $result;
+ $_result = json_decode($_result);
+ foreach ($_result as $name => &$rule)
+ {
+ $v = explode('.', $name);
+ if ($try[1] !== $v[0])
+ {
+ // remove since it is not part of this view
+ unset($_result->$name);
+ }
+ else
+ {
+ // clear the value since we inherit
+ $rule = array();
+ }
+ }
+ // check if there are any view values remaining
+ if (count($_result))
+ {
+ $_result = json_encode($_result);
+ $_result = array($_result);
+ // Instantiate and return the JAccessRules object for the asset rules.
+ $rules = new JAccessRules;
+ $rules->mergeCollection($_result);
+
+ return $rules;
+ }
+ }
+ return $result;
+ }
+ }
+ return JAccess::getAssetRules(0);
+ }
+
+ /**
+ * Method to compute the default name of the asset.
+ * The default name is in the form 'table_name.id'
+ * where id is the value of the primary key of the table.
+ *
+ * @return string
+ * @since 2.5
+ */
+ protected function _getAssetName()
+ {
+ $k = $this->_tbl_key;
+ return 'com_componentbuilder.admin_fields.'.(int) $this->$k;
+ }
+
+ /**
+ * Method to return the title to use for the asset table.
+ *
+ * @return string
+ * @since 2.5
+ */
+ protected function _getAssetTitle()
+ {
+ if (isset($this->title))
+ {
+ return $this->title;
+ }
+ return '';
+ }
+
+ /**
+ * Get the parent asset id for the record
+ *
+ * @return int
+ * @since 2.5
+ */
+ protected function _getAssetParentId(JTable $table = NULL, $id = NULL)
+ {
+ $asset = JTable::getInstance('Asset');
+ $asset->loadByName('com_componentbuilder');
+
+ return $asset->id;
+ }
+
+ /**
+ * Generate a valid alias from title / date.
+ * Remains public to be able to check for duplicated alias before saving
+ *
+ * @return string
+ */
+ public function generateAlias()
+ {
+ if (empty($this->alias))
+ {
+ $this->alias = $this->name;
+ }
+
+ $this->alias = JApplication::stringURLSafe($this->alias);
+
+ if (trim(str_replace('-', '', $this->alias)) == '')
+ {
+ $this->alias = JFactory::getDate()->format("Y-m-d-H-i-s");
+ }
+
+ return $this->alias;
+ }
+
+}
diff --git a/admin/tables/admin_fields_conditions.php b/admin/tables/admin_fields_conditions.php
new file mode 100644
index 000000000..0e3ee6876
--- /dev/null
+++ b/admin/tables/admin_fields_conditions.php
@@ -0,0 +1,351 @@
+
+ @copyright Copyright (C) 2015. All Rights Reserved
+ @license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
+
+ Builds Complex Joomla Components
+
+/-----------------------------------------------------------------------------------------------------------------------------*/
+
+// No direct access to this file
+defined('_JEXEC') or die('Restricted access');
+
+use Joomla\Registry\Registry;
+
+// import Joomla table library
+jimport('joomla.database.table');
+
+/**
+ * Admins_fields_conditions Table class
+ */
+class ComponentbuilderTableAdmin_fields_conditions extends JTable
+{
+ /**
+ * Ensure the params and metadata in json encoded in the bind method
+ *
+ * @var array
+ * @since 3.3
+ */
+ protected $_jsonEncode = array('params', 'metadata');
+
+ /**
+ * Constructor
+ *
+ * @param object Database connector object
+ */
+ function __construct(&$db)
+ {
+ parent::__construct('#__componentbuilder_admin_fields_conditions', 'id', $db);
+
+ // Adding History Options
+ JTableObserverContenthistory::createObserver($this, array('typeAlias' => 'com_componentbuilder.admin_fields_conditions'));
+ }
+
+ public function bind($array, $ignore = '')
+ {
+
+ if (isset($array['params']) && is_array($array['params']))
+ {
+ $registry = new JRegistry;
+ $registry->loadArray($array['params']);
+ $array['params'] = (string) $registry;
+ }
+
+ if (isset($array['metadata']) && is_array($array['metadata']))
+ {
+ $registry = new JRegistry;
+ $registry->loadArray($array['metadata']);
+ $array['metadata'] = (string) $registry;
+ }
+
+ // Bind the rules.
+ if (isset($array['rules']) && is_array($array['rules']))
+ {
+ $rules = new JAccessRules($array['rules']);
+ $this->setRules($rules);
+ }
+ return parent::bind($array, $ignore);
+ }
+
+ /**
+ * Overload the store method for the Admin_fields_conditions table.
+ *
+ * @param boolean Toggle whether null values should be updated.
+ * @return boolean True on success, false on failure.
+ * @since 1.6
+ */
+ public function store($updateNulls = false)
+ {
+ $date = JFactory::getDate();
+ $user = JFactory::getUser();
+
+ if ($this->id)
+ {
+ // Existing item
+ $this->modified = $date->toSql();
+ $this->modified_by = $user->get('id');
+ }
+ else
+ {
+ // New admin_fields_conditions. A admin_fields_conditions created and created_by field can be set by the user,
+ // so we don't touch either of these if they are set.
+ if (!(int) $this->created)
+ {
+ $this->created = $date->toSql();
+ }
+ if (empty($this->created_by))
+ {
+ $this->created_by = $user->get('id');
+ }
+ }
+
+ if (isset($this->alias))
+ {
+ // Verify that the alias is unique
+ $table = JTable::getInstance('admin_fields_conditions', 'ComponentbuilderTable');
+
+ if ($table->load(array('alias' => $this->alias)) && ($table->id != $this->id || $this->id == 0))
+ {
+ $this->setError(JText::_('COM_COMPONENTBUILDER_ADMIN_FIELDS_CONDITIONS_ERROR_UNIQUE_ALIAS'));
+ return false;
+ }
+ }
+
+ if (isset($this->url))
+ {
+ // Convert IDN urls to punycode
+ $this->url = JStringPunycode::urlToPunycode($this->url);
+ }
+ if (isset($this->website))
+ {
+ // Convert IDN urls to punycode
+ $this->website = JStringPunycode::urlToPunycode($this->website);
+ }
+
+ return parent::store($updateNulls);
+ }
+
+ /**
+ * Overloaded check method to ensure data integrity.
+ *
+ * @return boolean True on success.
+ */
+ public function check()
+ {
+ if (isset($this->alias))
+ {
+ // Generate a valid alias
+ $this->generateAlias();
+
+ $table = JTable::getInstance('admin_fields_conditions', 'componentbuilderTable');
+
+ while ($table->load(array('alias' => $this->alias)) && ($table->id != $this->id || $this->id == 0))
+ {
+ $this->alias = JString::increment($this->alias, 'dash');
+ }
+ }
+
+ /*
+ * Clean up keywords -- eliminate extra spaces between phrases
+ * and cr (\r) and lf (\n) characters from string.
+ * Only process if not empty.
+ */
+ if (!empty($this->metakey))
+ {
+ // Array of characters to remove.
+ $bad_characters = array("\n", "\r", "\"", "<", ">");
+
+ // Remove bad characters.
+ $after_clean = JString::str_ireplace($bad_characters, "", $this->metakey);
+
+ // Create array using commas as delimiter.
+ $keys = explode(',', $after_clean);
+ $clean_keys = array();
+
+ foreach ($keys as $key)
+ {
+ // Ignore blank keywords.
+ if (trim($key))
+ {
+ $clean_keys[] = trim($key);
+ }
+ }
+
+ // Put array back together delimited by ", "
+ $this->metakey = implode(", ", $clean_keys);
+ }
+
+ // Clean up description -- eliminate quotes and <> brackets
+ if (!empty($this->metadesc))
+ {
+ // Only process if not empty
+ $bad_characters = array("\"", "<", ">");
+ $this->metadesc = JString::str_ireplace($bad_characters, "", $this->metadesc);
+ }
+
+ // If we don't have any access rules set at this point just use an empty JAccessRules class
+ if (!$this->getRules())
+ {
+ $rules = $this->getDefaultAssetValues('com_componentbuilder.admin_fields_conditions.'.$this->id);
+ $this->setRules($rules);
+ }
+
+ // Set ordering
+ if ($this->published < 0)
+ {
+ // Set ordering to 0 if state is archived or trashed
+ $this->ordering = 0;
+ }
+
+ return true;
+ }
+
+ /**
+ * Gets the default asset values for a component.
+ *
+ * @param $string $component The component asset name to search for
+ *
+ * @return JAccessRules The JAccessRules object for the asset
+ */
+ protected function getDefaultAssetValues($component, $try = true)
+ {
+ // Need to find the asset id by the name of the component.
+ $db = JFactory::getDbo();
+ $query = $db->getQuery(true)
+ ->select($db->quoteName('id'))
+ ->from($db->quoteName('#__assets'))
+ ->where($db->quoteName('name') . ' = ' . $db->quote($component));
+ $db->setQuery($query);
+ $db->execute();
+ if ($db->loadRowList())
+ {
+ // asset alread set so use saved rules
+ $assetId = (int) $db->loadResult();
+ return JAccess::getAssetRules($assetId);
+ }
+ // try again
+ elseif ($try)
+ {
+ $try = explode('.',$component);
+ $result = $this->getDefaultAssetValues($try[0], false);
+ if ($result instanceof JAccessRules)
+ {
+ if (isset($try[1]))
+ {
+ $_result = (string) $result;
+ $_result = json_decode($_result);
+ foreach ($_result as $name => &$rule)
+ {
+ $v = explode('.', $name);
+ if ($try[1] !== $v[0])
+ {
+ // remove since it is not part of this view
+ unset($_result->$name);
+ }
+ else
+ {
+ // clear the value since we inherit
+ $rule = array();
+ }
+ }
+ // check if there are any view values remaining
+ if (count($_result))
+ {
+ $_result = json_encode($_result);
+ $_result = array($_result);
+ // Instantiate and return the JAccessRules object for the asset rules.
+ $rules = new JAccessRules;
+ $rules->mergeCollection($_result);
+
+ return $rules;
+ }
+ }
+ return $result;
+ }
+ }
+ return JAccess::getAssetRules(0);
+ }
+
+ /**
+ * Method to compute the default name of the asset.
+ * The default name is in the form 'table_name.id'
+ * where id is the value of the primary key of the table.
+ *
+ * @return string
+ * @since 2.5
+ */
+ protected function _getAssetName()
+ {
+ $k = $this->_tbl_key;
+ return 'com_componentbuilder.admin_fields_conditions.'.(int) $this->$k;
+ }
+
+ /**
+ * Method to return the title to use for the asset table.
+ *
+ * @return string
+ * @since 2.5
+ */
+ protected function _getAssetTitle()
+ {
+ if (isset($this->title))
+ {
+ return $this->title;
+ }
+ return '';
+ }
+
+ /**
+ * Get the parent asset id for the record
+ *
+ * @return int
+ * @since 2.5
+ */
+ protected function _getAssetParentId(JTable $table = NULL, $id = NULL)
+ {
+ $asset = JTable::getInstance('Asset');
+ $asset->loadByName('com_componentbuilder');
+
+ return $asset->id;
+ }
+
+ /**
+ * Generate a valid alias from title / date.
+ * Remains public to be able to check for duplicated alias before saving
+ *
+ * @return string
+ */
+ public function generateAlias()
+ {
+ if (empty($this->alias))
+ {
+ $this->alias = $this->name;
+ }
+
+ $this->alias = JApplication::stringURLSafe($this->alias);
+
+ if (trim(str_replace('-', '', $this->alias)) == '')
+ {
+ $this->alias = JFactory::getDate()->format("Y-m-d-H-i-s");
+ }
+
+ return $this->alias;
+ }
+
+}
diff --git a/admin/tables/admin_view.php b/admin/tables/admin_view.php
index 7d9de93aa..a92a8669a 100644
--- a/admin/tables/admin_view.php
+++ b/admin/tables/admin_view.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version @update number 114 of this MVC
- @build 28th August, 2017
+ @version @update number 192 of this MVC
+ @build 16th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage admin_view.php
diff --git a/admin/tables/custom_admin_view.php b/admin/tables/custom_admin_view.php
index ba7f86819..7ad8c5275 100644
--- a/admin/tables/custom_admin_view.php
+++ b/admin/tables/custom_admin_view.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version @update number 27 of this MVC
- @build 27th September, 2017
+ @version @update number 32 of this MVC
+ @build 20th October, 2017
@created 13th August, 2015
@package Component Builder
@subpackage custom_admin_view.php
diff --git a/admin/tables/custom_code.php b/admin/tables/custom_code.php
index e0e5181e4..b5f4a14fa 100644
--- a/admin/tables/custom_code.php
+++ b/admin/tables/custom_code.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version @update number 82 of this MVC
- @build 4th October, 2017
+ @version @update number 84 of this MVC
+ @build 13th October, 2017
@created 11th October, 2016
@package Component Builder
@subpackage custom_code.php
diff --git a/admin/tables/dynamic_get.php b/admin/tables/dynamic_get.php
index 22ec49b23..569080be3 100644
--- a/admin/tables/dynamic_get.php
+++ b/admin/tables/dynamic_get.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version @update number 94 of this MVC
- @build 27th September, 2017
+ @version @update number 98 of this MVC
+ @build 20th October, 2017
@created 21st May, 2015
@package Component Builder
@subpackage dynamic_get.php
diff --git a/admin/tables/field.php b/admin/tables/field.php
index bce6c81d9..49d70b298 100644
--- a/admin/tables/field.php
+++ b/admin/tables/field.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version @update number 38 of this MVC
- @build 28th May, 2017
+ @version @update number 40 of this MVC
+ @build 18th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage field.php
diff --git a/admin/tables/fieldtype.php b/admin/tables/fieldtype.php
index 60c0e6bee..a9e180577 100644
--- a/admin/tables/fieldtype.php
+++ b/admin/tables/fieldtype.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version @update number 15 of this MVC
- @build 17th September, 2017
+ @version @update number 16 of this MVC
+ @build 13th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage fieldtype.php
diff --git a/admin/tables/ftp.php b/admin/tables/ftp.php
index f58567f64..368c10975 100644
--- a/admin/tables/ftp.php
+++ b/admin/tables/ftp.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version @update number 10 of this MVC
- @build 24th August, 2017
+ @version @update number 11 of this MVC
+ @build 16th October, 2017
@created 23rd August, 2017
@package Component Builder
@subpackage ftp.php
diff --git a/admin/tables/joomla_component.php b/admin/tables/joomla_component.php
index d946e12d7..2e129bbbd 100644
--- a/admin/tables/joomla_component.php
+++ b/admin/tables/joomla_component.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version @update number 385 of this MVC
- @build 6th October, 2017
+ @version @update number 473 of this MVC
+ @build 20th October, 2017
@created 6th May, 2015
@package Component Builder
@subpackage joomla_component.php
diff --git a/admin/tables/language_translation.php b/admin/tables/language_translation.php
index 5ad029a7d..d66b646b1 100644
--- a/admin/tables/language_translation.php
+++ b/admin/tables/language_translation.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version @update number 43 of this MVC
- @build 16th September, 2017
+ @version @update number 45 of this MVC
+ @build 14th October, 2017
@created 3rd April, 2017
@package Component Builder
@subpackage language_translation.php
diff --git a/admin/tables/site_view.php b/admin/tables/site_view.php
index 524aa1b12..03be1d5fe 100644
--- a/admin/tables/site_view.php
+++ b/admin/tables/site_view.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version @update number 54 of this MVC
- @build 27th September, 2017
+ @version @update number 63 of this MVC
+ @build 20th October, 2017
@created 29th May, 2015
@package Component Builder
@subpackage site_view.php
diff --git a/admin/views/admin_fields/submitbutton.js b/admin/views/admin_fields/submitbutton.js
new file mode 100644
index 000000000..66fe38b21
--- /dev/null
+++ b/admin/views/admin_fields/submitbutton.js
@@ -0,0 +1,49 @@
+/*--------------------------------------------------------------------------------------------------------| www.vdm.io |------/
+ __ __ _ _____ _ _ __ __ _ _ _
+ \ \ / / | | | __ \ | | | | | \/ | | | | | | |
+ \ \ / /_ _ ___| |_ | | | | _____ _____| | ___ _ __ _ __ ___ ___ _ __ | |_ | \ / | ___| |_| |__ ___ __| |
+ \ \/ / _` / __| __| | | | |/ _ \ \ / / _ \ |/ _ \| '_ \| '_ ` _ \ / _ \ '_ \| __| | |\/| |/ _ \ __| '_ \ / _ \ / _` |
+ \ / (_| \__ \ |_ | |__| | __/\ V / __/ | (_) | |_) | | | | | | __/ | | | |_ | | | | __/ |_| | | | (_) | (_| |
+ \/ \__,_|___/\__| |_____/ \___| \_/ \___|_|\___/| .__/|_| |_| |_|\___|_| |_|\__| |_| |_|\___|\__|_| |_|\___/ \__,_|
+ | |
+ |_|
+/-------------------------------------------------------------------------------------------------------------------------------/
+
+ @version @update number 23 of this MVC
+ @build 16th October, 2017
+ @created 12th October, 2017
+ @package Component Builder
+ @subpackage submitbutton.js
+ @author Llewellyn van der Merwe
+ @copyright Copyright (C) 2015. All Rights Reserved
+ @license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
+
+ Builds Complex Joomla Components
+
+/-----------------------------------------------------------------------------------------------------------------------------*/
+
+Joomla.submitbutton = function(task)
+{
+ if (task == ''){
+ return false;
+ } else {
+ var isValid=true;
+ var action = task.split('.');
+ if (action[1] != 'cancel' && action[1] != 'close'){
+ var forms = $$('form.form-validate');
+ for (var i=0;i
+ @copyright Copyright (C) 2015. All Rights Reserved
+ @license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
+
+ Builds Complex Joomla Components
+
+/-----------------------------------------------------------------------------------------------------------------------------*/
+
+// No direct access to this file
+defined('_JEXEC') or die('Restricted access');
+
+JHtml::addIncludePath(JPATH_COMPONENT.'/helpers/html');
+JHtml::_('behavior.tooltip');
+JHtml::_('behavior.formvalidation');
+JHtml::_('formbehavior.chosen', 'select');
+JHtml::_('behavior.keepalive');
+$componentParams = JComponentHelper::getParams('com_componentbuilder');
+?>
+
+
+
+
diff --git a/admin/views/admin_fields/tmpl/index.html b/admin/views/admin_fields/tmpl/index.html
new file mode 100644
index 000000000..fa6d84e80
--- /dev/null
+++ b/admin/views/admin_fields/tmpl/index.html
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/admin/views/admin_fields/view.html.php b/admin/views/admin_fields/view.html.php
new file mode 100644
index 000000000..35f8fb4d8
--- /dev/null
+++ b/admin/views/admin_fields/view.html.php
@@ -0,0 +1,199 @@
+
+ @copyright Copyright (C) 2015. All Rights Reserved
+ @license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
+
+ Builds Complex Joomla Components
+
+/-----------------------------------------------------------------------------------------------------------------------------*/
+
+// No direct access to this file
+defined('_JEXEC') or die('Restricted access');
+
+// import Joomla view library
+jimport('joomla.application.component.view');
+
+/**
+ * Admin_fields View class
+ */
+class ComponentbuilderViewAdmin_fields extends JViewLegacy
+{
+ /**
+ * display method of View
+ * @return void
+ */
+ public function display($tpl = null)
+ {
+ // Assign the variables
+ $this->form = $this->get('Form');
+ $this->item = $this->get('Item');
+ $this->script = $this->get('Script');
+ $this->state = $this->get('State');
+ // get action permissions
+ $this->canDo = ComponentbuilderHelper::getActions('admin_fields',$this->item);
+ // get input
+ $jinput = JFactory::getApplication()->input;
+ $this->ref = $jinput->get('ref', 0, 'word');
+ $this->refid = $jinput->get('refid', 0, 'int');
+ $this->referral = '';
+ if ($this->refid)
+ {
+ // return to the item that refered to this item
+ $this->referral = '&ref='.(string)$this->ref.'&refid='.(int)$this->refid;
+ }
+ elseif($this->ref)
+ {
+ // return to the list view that refered to this item
+ $this->referral = '&ref='.(string)$this->ref;
+ }
+
+ // Set the toolbar
+ $this->addToolBar();
+
+ // Check for errors.
+ if (count($errors = $this->get('Errors')))
+ {
+ throw new Exception(implode("\n", $errors), 500);
+ }
+
+ // Display the template
+ parent::display($tpl);
+
+ // Set the document
+ $this->setDocument();
+ }
+
+
+ /**
+ * Setting the toolbar
+ */
+ protected function addToolBar()
+ {
+ JFactory::getApplication()->input->set('hidemainmenu', true);
+ $user = JFactory::getUser();
+ $userId = $user->id;
+ $isNew = $this->item->id == 0;
+
+ JToolbarHelper::title( JText::_($isNew ? 'COM_COMPONENTBUILDER_ADMIN_FIELDS_NEW' : 'COM_COMPONENTBUILDER_ADMIN_FIELDS_EDIT'), 'pencil-2 article-add');
+ // Built the actions for new and existing records.
+ if ($this->refid || $this->ref)
+ {
+ if ($this->canDo->get('admin_fields.create') && $isNew)
+ {
+ // We can create the record.
+ JToolBarHelper::save('admin_fields.save', 'JTOOLBAR_SAVE');
+ }
+ elseif ($this->canDo->get('admin_fields.edit'))
+ {
+ // We can save the record.
+ JToolBarHelper::save('admin_fields.save', 'JTOOLBAR_SAVE');
+ }
+ if ($isNew)
+ {
+ // Do not creat but cancel.
+ JToolBarHelper::cancel('admin_fields.cancel', 'JTOOLBAR_CANCEL');
+ }
+ else
+ {
+ // We can close it.
+ JToolBarHelper::cancel('admin_fields.cancel', 'JTOOLBAR_CLOSE');
+ }
+ }
+ else
+ {
+ if ($isNew)
+ {
+ // For new records, check the create permission.
+ if ($this->canDo->get('admin_fields.create'))
+ {
+ JToolBarHelper::apply('admin_fields.apply', 'JTOOLBAR_APPLY');
+ JToolBarHelper::save('admin_fields.save', 'JTOOLBAR_SAVE');
+ JToolBarHelper::custom('admin_fields.save2new', 'save-new.png', 'save-new_f2.png', 'JTOOLBAR_SAVE_AND_NEW', false);
+ };
+ JToolBarHelper::cancel('admin_fields.cancel', 'JTOOLBAR_CANCEL');
+ }
+ else
+ {
+ if ($this->canDo->get('admin_fields.edit'))
+ {
+ // We can save the new record
+ JToolBarHelper::apply('admin_fields.apply', 'JTOOLBAR_APPLY');
+ JToolBarHelper::save('admin_fields.save', 'JTOOLBAR_SAVE');
+ // We can save this record, but check the create permission to see
+ // if we can return to make a new one.
+ if ($this->canDo->get('admin_fields.create'))
+ {
+ JToolBarHelper::custom('admin_fields.save2new', 'save-new.png', 'save-new_f2.png', 'JTOOLBAR_SAVE_AND_NEW', false);
+ }
+ }
+ $canVersion = ($this->canDo->get('core.version') && $this->canDo->get('admin_fields.version'));
+ if ($this->state->params->get('save_history', 1) && $this->canDo->get('admin_fields.edit') && $canVersion)
+ {
+ JToolbarHelper::versions('com_componentbuilder.admin_fields', $this->item->id);
+ }
+ if ($this->canDo->get('admin_fields.create'))
+ {
+ JToolBarHelper::custom('admin_fields.save2copy', 'save-copy.png', 'save-copy_f2.png', 'JTOOLBAR_SAVE_AS_COPY', false);
+ }
+ JToolBarHelper::cancel('admin_fields.cancel', 'JTOOLBAR_CLOSE');
+ }
+ }
+ JToolbarHelper::divider();
+ // set help url for this view if found
+ $help_url = ComponentbuilderHelper::getHelpUrl('admin_fields');
+ if (ComponentbuilderHelper::checkString($help_url))
+ {
+ JToolbarHelper::help('COM_COMPONENTBUILDER_HELP_MANAGER', false, $help_url);
+ }
+ }
+
+ /**
+ * Escapes a value for output in a view script.
+ *
+ * @param mixed $var The output to escape.
+ *
+ * @return mixed The escaped value.
+ */
+ public function escape($var)
+ {
+ if(strlen($var) > 30)
+ {
+ // use the helper htmlEscape method instead and shorten the string
+ return ComponentbuilderHelper::htmlEscape($var, $this->_charset, true, 30);
+ }
+ // use the helper htmlEscape method instead.
+ return ComponentbuilderHelper::htmlEscape($var, $this->_charset);
+ }
+
+ /**
+ * Method to set up the document properties
+ *
+ * @return void
+ */
+ protected function setDocument()
+ {
+ $isNew = ($this->item->id < 1);
+ $document = JFactory::getDocument();
+ $document->setTitle(JText::_($isNew ? 'COM_COMPONENTBUILDER_ADMIN_FIELDS_NEW' : 'COM_COMPONENTBUILDER_ADMIN_FIELDS_EDIT'));
+ $document->addStyleSheet(JURI::root() . "administrator/components/com_componentbuilder/assets/css/admin_fields.css");
+ $document->addScript(JURI::root() . $this->script);
+ $document->addScript(JURI::root() . "administrator/components/com_componentbuilder/views/admin_fields/submitbutton.js");
+ JText::script('view not acceptable. Error');
+ }
+}
diff --git a/admin/views/admin_fields_conditions/submitbutton.js b/admin/views/admin_fields_conditions/submitbutton.js
new file mode 100644
index 000000000..d92055a81
--- /dev/null
+++ b/admin/views/admin_fields_conditions/submitbutton.js
@@ -0,0 +1,49 @@
+/*--------------------------------------------------------------------------------------------------------| www.vdm.io |------/
+ __ __ _ _____ _ _ __ __ _ _ _
+ \ \ / / | | | __ \ | | | | | \/ | | | | | | |
+ \ \ / /_ _ ___| |_ | | | | _____ _____| | ___ _ __ _ __ ___ ___ _ __ | |_ | \ / | ___| |_| |__ ___ __| |
+ \ \/ / _` / __| __| | | | |/ _ \ \ / / _ \ |/ _ \| '_ \| '_ ` _ \ / _ \ '_ \| __| | |\/| |/ _ \ __| '_ \ / _ \ / _` |
+ \ / (_| \__ \ |_ | |__| | __/\ V / __/ | (_) | |_) | | | | | | __/ | | | |_ | | | | __/ |_| | | | (_) | (_| |
+ \/ \__,_|___/\__| |_____/ \___| \_/ \___|_|\___/| .__/|_| |_| |_|\___|_| |_|\__| |_| |_|\___|\__|_| |_|\___/ \__,_|
+ | |
+ |_|
+/-------------------------------------------------------------------------------------------------------------------------------/
+
+ @version @update number 16 of this MVC
+ @build 16th October, 2017
+ @created 12th October, 2017
+ @package Component Builder
+ @subpackage submitbutton.js
+ @author Llewellyn van der Merwe
+ @copyright Copyright (C) 2015. All Rights Reserved
+ @license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
+
+ Builds Complex Joomla Components
+
+/-----------------------------------------------------------------------------------------------------------------------------*/
+
+Joomla.submitbutton = function(task)
+{
+ if (task == ''){
+ return false;
+ } else {
+ var isValid=true;
+ var action = task.split('.');
+ if (action[1] != 'cancel' && action[1] != 'close'){
+ var forms = $$('form.form-validate');
+ for (var i=0;i
+ @copyright Copyright (C) 2015. All Rights Reserved
+ @license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
+
+ Builds Complex Joomla Components
+
+/-----------------------------------------------------------------------------------------------------------------------------*/
+
+// No direct access to this file
+defined('_JEXEC') or die('Restricted access');
+
+JHtml::addIncludePath(JPATH_COMPONENT.'/helpers/html');
+JHtml::_('behavior.tooltip');
+JHtml::_('behavior.formvalidation');
+JHtml::_('formbehavior.chosen', 'select');
+JHtml::_('behavior.keepalive');
+$componentParams = JComponentHelper::getParams('com_componentbuilder');
+?>
+
+
+
+
+
+
diff --git a/admin/views/admin_fields_conditions/tmpl/index.html b/admin/views/admin_fields_conditions/tmpl/index.html
new file mode 100644
index 000000000..fa6d84e80
--- /dev/null
+++ b/admin/views/admin_fields_conditions/tmpl/index.html
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/admin/views/admin_fields_conditions/view.html.php b/admin/views/admin_fields_conditions/view.html.php
new file mode 100644
index 000000000..80a113988
--- /dev/null
+++ b/admin/views/admin_fields_conditions/view.html.php
@@ -0,0 +1,201 @@
+
+ @copyright Copyright (C) 2015. All Rights Reserved
+ @license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
+
+ Builds Complex Joomla Components
+
+/-----------------------------------------------------------------------------------------------------------------------------*/
+
+// No direct access to this file
+defined('_JEXEC') or die('Restricted access');
+
+// import Joomla view library
+jimport('joomla.application.component.view');
+
+/**
+ * Admin_fields_conditions View class
+ */
+class ComponentbuilderViewAdmin_fields_conditions extends JViewLegacy
+{
+ /**
+ * display method of View
+ * @return void
+ */
+ public function display($tpl = null)
+ {
+ // Assign the variables
+ $this->form = $this->get('Form');
+ $this->item = $this->get('Item');
+ $this->script = $this->get('Script');
+ $this->state = $this->get('State');
+ // get action permissions
+ $this->canDo = ComponentbuilderHelper::getActions('admin_fields_conditions',$this->item);
+ // get input
+ $jinput = JFactory::getApplication()->input;
+ $this->ref = $jinput->get('ref', 0, 'word');
+ $this->refid = $jinput->get('refid', 0, 'int');
+ $this->referral = '';
+ if ($this->refid)
+ {
+ // return to the item that refered to this item
+ $this->referral = '&ref='.(string)$this->ref.'&refid='.(int)$this->refid;
+ }
+ elseif($this->ref)
+ {
+ // return to the list view that refered to this item
+ $this->referral = '&ref='.(string)$this->ref;
+ }
+
+ // Set the toolbar
+ $this->addToolBar();
+
+ // Check for errors.
+ if (count($errors = $this->get('Errors')))
+ {
+ throw new Exception(implode("\n", $errors), 500);
+ }
+
+ // Display the template
+ parent::display($tpl);
+
+ // Set the document
+ $this->setDocument();
+ }
+
+
+ /**
+ * Setting the toolbar
+ */
+ protected function addToolBar()
+ {
+ JFactory::getApplication()->input->set('hidemainmenu', true);
+ $user = JFactory::getUser();
+ $userId = $user->id;
+ $isNew = $this->item->id == 0;
+
+ JToolbarHelper::title( JText::_($isNew ? 'COM_COMPONENTBUILDER_ADMIN_FIELDS_CONDITIONS_NEW' : 'COM_COMPONENTBUILDER_ADMIN_FIELDS_CONDITIONS_EDIT'), 'pencil-2 article-add');
+ // Built the actions for new and existing records.
+ if ($this->refid || $this->ref)
+ {
+ if ($this->canDo->get('admin_fields_conditions.create') && $isNew)
+ {
+ // We can create the record.
+ JToolBarHelper::save('admin_fields_conditions.save', 'JTOOLBAR_SAVE');
+ }
+ elseif ($this->canDo->get('admin_fields_conditions.edit'))
+ {
+ // We can save the record.
+ JToolBarHelper::save('admin_fields_conditions.save', 'JTOOLBAR_SAVE');
+ }
+ if ($isNew)
+ {
+ // Do not creat but cancel.
+ JToolBarHelper::cancel('admin_fields_conditions.cancel', 'JTOOLBAR_CANCEL');
+ }
+ else
+ {
+ // We can close it.
+ JToolBarHelper::cancel('admin_fields_conditions.cancel', 'JTOOLBAR_CLOSE');
+ }
+ }
+ else
+ {
+ if ($isNew)
+ {
+ // For new records, check the create permission.
+ if ($this->canDo->get('admin_fields_conditions.create'))
+ {
+ JToolBarHelper::apply('admin_fields_conditions.apply', 'JTOOLBAR_APPLY');
+ JToolBarHelper::save('admin_fields_conditions.save', 'JTOOLBAR_SAVE');
+ JToolBarHelper::custom('admin_fields_conditions.save2new', 'save-new.png', 'save-new_f2.png', 'JTOOLBAR_SAVE_AND_NEW', false);
+ };
+ JToolBarHelper::cancel('admin_fields_conditions.cancel', 'JTOOLBAR_CANCEL');
+ }
+ else
+ {
+ if ($this->canDo->get('admin_fields_conditions.edit'))
+ {
+ // We can save the new record
+ JToolBarHelper::apply('admin_fields_conditions.apply', 'JTOOLBAR_APPLY');
+ JToolBarHelper::save('admin_fields_conditions.save', 'JTOOLBAR_SAVE');
+ // We can save this record, but check the create permission to see
+ // if we can return to make a new one.
+ if ($this->canDo->get('admin_fields_conditions.create'))
+ {
+ JToolBarHelper::custom('admin_fields_conditions.save2new', 'save-new.png', 'save-new_f2.png', 'JTOOLBAR_SAVE_AND_NEW', false);
+ }
+ }
+ $canVersion = ($this->canDo->get('core.version') && $this->canDo->get('admin_fields_conditions.version'));
+ if ($this->state->params->get('save_history', 1) && $this->canDo->get('admin_fields_conditions.edit') && $canVersion)
+ {
+ JToolbarHelper::versions('com_componentbuilder.admin_fields_conditions', $this->item->id);
+ }
+ if ($this->canDo->get('admin_fields_conditions.create'))
+ {
+ JToolBarHelper::custom('admin_fields_conditions.save2copy', 'save-copy.png', 'save-copy_f2.png', 'JTOOLBAR_SAVE_AS_COPY', false);
+ }
+ JToolBarHelper::cancel('admin_fields_conditions.cancel', 'JTOOLBAR_CLOSE');
+ }
+ }
+ JToolbarHelper::divider();
+ // set help url for this view if found
+ $help_url = ComponentbuilderHelper::getHelpUrl('admin_fields_conditions');
+ if (ComponentbuilderHelper::checkString($help_url))
+ {
+ JToolbarHelper::help('COM_COMPONENTBUILDER_HELP_MANAGER', false, $help_url);
+ }
+ }
+
+ /**
+ * Escapes a value for output in a view script.
+ *
+ * @param mixed $var The output to escape.
+ *
+ * @return mixed The escaped value.
+ */
+ public function escape($var)
+ {
+ if(strlen($var) > 30)
+ {
+ // use the helper htmlEscape method instead and shorten the string
+ return ComponentbuilderHelper::htmlEscape($var, $this->_charset, true, 30);
+ }
+ // use the helper htmlEscape method instead.
+ return ComponentbuilderHelper::htmlEscape($var, $this->_charset);
+ }
+
+ /**
+ * Method to set up the document properties
+ *
+ * @return void
+ */
+ protected function setDocument()
+ {
+ $isNew = ($this->item->id < 1);
+ $document = JFactory::getDocument();
+ $document->setTitle(JText::_($isNew ? 'COM_COMPONENTBUILDER_ADMIN_FIELDS_CONDITIONS_NEW' : 'COM_COMPONENTBUILDER_ADMIN_FIELDS_CONDITIONS_EDIT'));
+ $document->addStyleSheet(JURI::root() . "administrator/components/com_componentbuilder/assets/css/admin_fields_conditions.css");
+ // Add Ajax Token
+ $document->addScriptDeclaration("var token = '".JSession::getFormToken()."';");
+ $document->addScript(JURI::root() . $this->script);
+ $document->addScript(JURI::root() . "administrator/components/com_componentbuilder/views/admin_fields_conditions/submitbutton.js");
+ JText::script('view not acceptable. Error');
+ }
+}
diff --git a/admin/views/admin_view/submitbutton.js b/admin/views/admin_view/submitbutton.js
index 34a28cb67..55ea2776d 100644
--- a/admin/views/admin_view/submitbutton.js
+++ b/admin/views/admin_view/submitbutton.js
@@ -9,8 +9,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version @update number 114 of this MVC
- @build 28th August, 2017
+ @version @update number 192 of this MVC
+ @build 16th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage submitbutton.js
diff --git a/admin/views/admin_view/tmpl/edit.php b/admin/views/admin_view/tmpl/edit.php
index 1e69dd7da..6b1dceba8 100644
--- a/admin/views/admin_view/tmpl/edit.php
+++ b/admin/views/admin_view/tmpl/edit.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version @update number 114 of this MVC
- @build 28th August, 2017
+ @version @update number 192 of this MVC
+ @build 16th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage edit.php
@@ -58,45 +58,47 @@ $componentParams = JComponentHelper::getParams('com_componentbuilder');
-
+
- 'settings')); ?>
+ 'details')); ?>
+
+
+
+
- canDo->get('core.delete') || $this->canDo->get('core.edit.created_by') || $this->canDo->get('core.edit.state') || $this->canDo->get('core.edit.created')) : ?>
+ canDo->get('admin_view.delete') || $this->canDo->get('admin_view.edit.created_by') || $this->canDo->get('admin_view.edit.state') || $this->canDo->get('admin_view.edit.created')) : ?>
@@ -696,30 +710,63 @@ jQuery('input.form-field-repeatable').on('row-add', function (e) {
jQuery('#jform_custom_button_fields_icomoon__chzn').closest("td").append(span);
});
});
-
-jQuery('#jform_addconditions_modal').on('show.bs.modal', function (e) {
- jQuery('#jform_addconditions_modal').on('change', '#-jform_addconditions_fields_match_field',function (e) {
+item->addtables) + 3, 1);?>
+
+// for the values already set
+jQuery(document).ready(function(){
+
+ jQuery('#adminForm').on('change', '#jform_addtables__addtables__table',function (e) {
e.preventDefault();
- // get options
- var fieldId_ = jQuery("#-jform_addconditions_fields_match_field option:selected").val();
- getFieldSelectOptions(fieldId_,);
+ getTableColumns(, "_", "_");
});
-
-});
-jQuery('#jform_addtables_modal').on('show.bs.modal', function (e) {
- jQuery('#jform_addtables_modal').on('change', '#-jform_addtables_fields_table',function (e) {
- e.preventDefault();
- // get options
- var tableName_ = jQuery("#-jform_addtables_fields_table option:selected").val();
- getTableColumns(tableName_,);
+
+ jQuery(document).on('subform-row-add', function(event, row){
+ var groupName = jQuery(row).data('group');
+ var fieldName = groupName.replace(/([0-9])/g, '');
+ var fieldNr = groupName.replace(/([A-z_])/g, '');
+ if ('addtables' === fieldName) {
+ jQuery('#adminForm').on('change', '#jform_addtables_addtables'+fieldNr+'_table',function (e) {
+ e.preventDefault();
+ getTableColumns(fieldNr, "", "");
+ });
+ }
});
-
});
+
// #jform_add_custom_import listeners
-jQuery('#jform_add_custom_import').on('change',function()
-{
+jQuery('#jform_add_custom_import').on('change',function() {
var valueSwitch = jQuery("#jform_add_custom_import input[type='radio']:checked").val();
getImportScripts(valueSwitch);
-});
+});
+
+
+function JRouter(link) {
+isSite())
+ {
+ echo 'var url = "'.JURI::root().'";';
+ }
+ else
+ {
+ echo 'var url = "";';
+ }
+?>
+ return url+link;
+}
+
+// nice little dot trick :)
+jQuery(document).ready( function($) {
+ var x=0;
+ setInterval(function() {
+ var dots = "";
+ x++;
+ for (var y=0; y < x%8; y++) {
+ dots+=".";
+ }
+ $(".loading-dots").text(dots);
+ } , 500);
+});
diff --git a/admin/views/admin_view/view.html.php b/admin/views/admin_view/view.html.php
index 165c90182..5d25092d6 100644
--- a/admin/views/admin_view/view.html.php
+++ b/admin/views/admin_view/view.html.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version @update number 114 of this MVC
- @build 28th August, 2017
+ @version @update number 192 of this MVC
+ @build 16th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage view.html.php
@@ -40,13 +40,6 @@ class ComponentbuilderViewAdmin_view extends JViewLegacy
*/
public function display($tpl = null)
{
- // Check for errors.
- if (count($errors = $this->get('Errors')))
- {
- JError::raiseError(500, implode('
', $errors));
- return false;
- }
-
// Assign the variables
$this->form = $this->get('Form');
$this->item = $this->get('Item');
@@ -71,13 +64,16 @@ class ComponentbuilderViewAdmin_view extends JViewLegacy
}
// Get Linked view data
- $this->vxzfields = $this->get('Vxzfields');
-
- // Get Linked view data
- $this->vyalinked_components = $this->get('Vyalinked_components');
+ $this->vxzlinked_components = $this->get('Vxzlinked_components');
// Set the toolbar
$this->addToolBar();
+
+ // Check for errors.
+ if (count($errors = $this->get('Errors')))
+ {
+ throw new Exception(implode("\n", $errors), 500);
+ }
// Display the template
parent::display($tpl);
@@ -101,12 +97,12 @@ class ComponentbuilderViewAdmin_view extends JViewLegacy
// Built the actions for new and existing records.
if ($this->refid || $this->ref)
{
- if ($this->canDo->get('core.create') && $isNew)
+ if ($this->canDo->get('admin_view.create') && $isNew)
{
// We can create the record.
JToolBarHelper::save('admin_view.save', 'JTOOLBAR_SAVE');
}
- elseif ($this->canDo->get('core.edit'))
+ elseif ($this->canDo->get('admin_view.edit'))
{
// We can save the record.
JToolBarHelper::save('admin_view.save', 'JTOOLBAR_SAVE');
@@ -127,7 +123,7 @@ class ComponentbuilderViewAdmin_view extends JViewLegacy
if ($isNew)
{
// For new records, check the create permission.
- if ($this->canDo->get('core.create'))
+ if ($this->canDo->get('admin_view.create'))
{
JToolBarHelper::apply('admin_view.apply', 'JTOOLBAR_APPLY');
JToolBarHelper::save('admin_view.save', 'JTOOLBAR_SAVE');
@@ -137,24 +133,24 @@ class ComponentbuilderViewAdmin_view extends JViewLegacy
}
else
{
- if ($this->canDo->get('core.edit'))
+ if ($this->canDo->get('admin_view.edit'))
{
// We can save the new record
JToolBarHelper::apply('admin_view.apply', 'JTOOLBAR_APPLY');
JToolBarHelper::save('admin_view.save', 'JTOOLBAR_SAVE');
// We can save this record, but check the create permission to see
// if we can return to make a new one.
- if ($this->canDo->get('core.create'))
+ if ($this->canDo->get('admin_view.create'))
{
JToolBarHelper::custom('admin_view.save2new', 'save-new.png', 'save-new_f2.png', 'JTOOLBAR_SAVE_AND_NEW', false);
}
}
$canVersion = ($this->canDo->get('core.version') && $this->canDo->get('admin_view.version'));
- if ($this->state->params->get('save_history', 1) && $this->canDo->get('core.edit') && $canVersion)
+ if ($this->state->params->get('save_history', 1) && $this->canDo->get('admin_view.edit') && $canVersion)
{
JToolbarHelper::versions('com_componentbuilder.admin_view', $this->item->id);
}
- if ($this->canDo->get('core.create'))
+ if ($this->canDo->get('admin_view.create'))
{
JToolBarHelper::custom('admin_view.save2copy', 'save-copy.png', 'save-copy_f2.png', 'JTOOLBAR_SAVE_AS_COPY', false);
}
@@ -212,7 +208,16 @@ class ComponentbuilderViewAdmin_view extends JViewLegacy
$document->addScriptDeclaration($footable);
$document->addScript(JURI::root() . $this->script);
- $document->addScript(JURI::root() . "administrator/components/com_componentbuilder/views/admin_view/submitbutton.js");
+ $document->addScript(JURI::root() . "administrator/components/com_componentbuilder/views/admin_view/submitbutton.js");
+ // add JavaScripts
+ $document->addScript( JURI::root(true) .'/media/com_componentbuilder/uikit/js/uikit.min.js' );
+ $document->addScript( JURI::root(true) .'/media/com_componentbuilder/uikit/js/components/lightbox.min.js', 'text/javascript', true);
+ $document->addScript( JURI::root(true) .'/media/com_componentbuilder/uikit/js/components/notify.min.js', 'text/javascript', true);
+ // add the style sheets
+ $document->addStyleSheet( JURI::root(true) .'/media/com_componentbuilder/uikit/css/uikit.gradient.min.css' );
+ $document->addStyleSheet( JURI::root(true) .'/media/com_componentbuilder/uikit/css/components/notify.gradient.min.css' );
+ // add var key
+ $document->addScriptDeclaration("var vastDevMod = '".$this->get('VDM')."';");
JText::script('view not acceptable. Error');
}
}
diff --git a/admin/views/admin_views/tmpl/default.php b/admin/views/admin_views/tmpl/default.php
index 408967ef0..a1f3d0c2d 100644
--- a/admin/views/admin_views/tmpl/default.php
+++ b/admin/views/admin_views/tmpl/default.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version @update number 114 of this MVC
- @build 28th August, 2017
+ @version @update number 192 of this MVC
+ @build 16th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage default.php
diff --git a/admin/views/admin_views/tmpl/default_batch_body.php b/admin/views/admin_views/tmpl/default_batch_body.php
index 69992cf3e..9dddadefa 100644
--- a/admin/views/admin_views/tmpl/default_batch_body.php
+++ b/admin/views/admin_views/tmpl/default_batch_body.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version @update number 114 of this MVC
- @build 28th August, 2017
+ @version @update number 192 of this MVC
+ @build 16th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage default_batch_body.php
diff --git a/admin/views/admin_views/tmpl/default_batch_footer.php b/admin/views/admin_views/tmpl/default_batch_footer.php
index 25e021063..29b50b8d4 100644
--- a/admin/views/admin_views/tmpl/default_batch_footer.php
+++ b/admin/views/admin_views/tmpl/default_batch_footer.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version @update number 114 of this MVC
- @build 28th August, 2017
+ @version @update number 192 of this MVC
+ @build 16th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage default_batch_footer.php
diff --git a/admin/views/admin_views/tmpl/default_body.php b/admin/views/admin_views/tmpl/default_body.php
index a00b695bf..4def5148b 100644
--- a/admin/views/admin_views/tmpl/default_body.php
+++ b/admin/views/admin_views/tmpl/default_body.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version @update number 114 of this MVC
- @build 28th August, 2017
+ @version @update number 192 of this MVC
+ @build 16th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage default_body.php
@@ -37,7 +37,7 @@ $edit = "index.php?option=com_componentbuilder&view=admin_views&task=admin_view.
?>
- get('core.edit.state')): ?>
+ get('admin_view.edit.state')): ?>
saveOrder)
{
@@ -60,7 +60,7 @@ $edit = "index.php?option=com_componentbuilder&view=admin_views&task=admin_view.
- get('core.edit')): ?>
+ get('admin_view.edit')): ?>
checked_out) : ?>
id); ?>
@@ -75,7 +75,7 @@ $edit = "index.php?option=com_componentbuilder&view=admin_views&task=admin_view.
- get('core.edit')): ?>
+ get('admin_view.edit')): ?>
escape($item->system_name); ?>
checked_out): ?>
@@ -85,6 +85,16 @@ $edit = "index.php?option=com_componentbuilder&view=admin_views&task=admin_view.
escape($item->system_name); ?>
+
+
+ get('admin_view.edit') && $admin_field_id = ComponentbuilderHelper::getVar('admin_fields', $item->id, 'admin_view', 'id')): ?>
+
+
+ get('admin_view.edit') && $admin_condition_id = ComponentbuilderHelper::getVar('admin_fields_conditions', $item->id, 'admin_view', 'id')): ?>
+
+
+
+
escape($item->name_single); ?>
@@ -96,7 +106,7 @@ $edit = "index.php?option=com_componentbuilder&view=admin_views&task=admin_view.
escape($item->short_description); ?>
- get('core.edit.state')) : ?>
+ get('admin_view.edit.state')) : ?>
checked_out) : ?>
published, $i, 'admin_views.', true, 'cb'); ?>
diff --git a/admin/views/admin_views/tmpl/default_foot.php b/admin/views/admin_views/tmpl/default_foot.php
index 40911c695..e32409e8c 100644
--- a/admin/views/admin_views/tmpl/default_foot.php
+++ b/admin/views/admin_views/tmpl/default_foot.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version @update number 114 of this MVC
- @build 28th August, 2017
+ @version @update number 192 of this MVC
+ @build 16th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage default_foot.php
diff --git a/admin/views/admin_views/tmpl/default_head.php b/admin/views/admin_views/tmpl/default_head.php
index a6fb7598e..c06202cfd 100644
--- a/admin/views/admin_views/tmpl/default_head.php
+++ b/admin/views/admin_views/tmpl/default_head.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version @update number 114 of this MVC
- @build 28th August, 2017
+ @version @update number 192 of this MVC
+ @build 16th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage default_head.php
diff --git a/admin/views/admin_views/tmpl/default_toolbar.php b/admin/views/admin_views/tmpl/default_toolbar.php
index 8aeeab357..e31591e0f 100644
--- a/admin/views/admin_views/tmpl/default_toolbar.php
+++ b/admin/views/admin_views/tmpl/default_toolbar.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version @update number 114 of this MVC
- @build 28th August, 2017
+ @version @update number 192 of this MVC
+ @build 16th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage default_toolbar.php
diff --git a/admin/views/admin_views/view.html.php b/admin/views/admin_views/view.html.php
index d469a1cfa..dda6eba57 100644
--- a/admin/views/admin_views/view.html.php
+++ b/admin/views/admin_views/view.html.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version @update number 114 of this MVC
- @build 28th August, 2017
+ @version @update number 192 of this MVC
+ @build 16th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage view.html.php
@@ -46,13 +46,6 @@ class ComponentbuilderViewAdmin_views extends JViewLegacy
ComponentbuilderHelper::addSubmenu('admin_views');
}
- // Check for errors.
- if (count($errors = $this->get('Errors')))
- {
- JError::raiseError(500, implode(' ', $errors));
- return false;
- }
-
// Assign data to the view
$this->items = $this->get('Items');
$this->pagination = $this->get('Pagination');
@@ -63,10 +56,10 @@ class ComponentbuilderViewAdmin_views extends JViewLegacy
$this->saveOrder = $this->listOrder == 'ordering';
// get global action permissions
$this->canDo = ComponentbuilderHelper::getActions('admin_view');
- $this->canEdit = $this->canDo->get('core.edit');
- $this->canState = $this->canDo->get('core.edit.state');
- $this->canCreate = $this->canDo->get('core.create');
- $this->canDelete = $this->canDo->get('core.delete');
+ $this->canEdit = $this->canDo->get('admin_view.edit');
+ $this->canState = $this->canDo->get('admin_view.edit.state');
+ $this->canCreate = $this->canDo->get('admin_view.create');
+ $this->canDelete = $this->canDo->get('admin_view.delete');
$this->canBatch = $this->canDo->get('core.batch');
// We don't need toolbar in the modal window.
@@ -80,6 +73,12 @@ class ComponentbuilderViewAdmin_views extends JViewLegacy
$this->batchDisplay = JHtmlBatch_::render();
}
}
+
+ // Check for errors.
+ if (count($errors = $this->get('Errors')))
+ {
+ throw new Exception(implode("\n", $errors), 500);
+ }
// Display the template
parent::display($tpl);
diff --git a/admin/views/admins_fields/index.html b/admin/views/admins_fields/index.html
new file mode 100644
index 000000000..fa6d84e80
--- /dev/null
+++ b/admin/views/admins_fields/index.html
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/admin/views/admins_fields/tmpl/default.php b/admin/views/admins_fields/tmpl/default.php
new file mode 100644
index 000000000..6078f5221
--- /dev/null
+++ b/admin/views/admins_fields/tmpl/default.php
@@ -0,0 +1,99 @@
+
+ @copyright Copyright (C) 2015. All Rights Reserved
+ @license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
+
+ Builds Complex Joomla Components
+
+/-----------------------------------------------------------------------------------------------------------------------------*/
+
+// No direct access to this file
+defined('_JEXEC') or die('Restricted access');
+
+// load tooltip behavior
+JHtml::_('behavior.tooltip');
+JHtml::_('behavior.multiselect');
+JHtml::_('dropdown.init');
+JHtml::_('formbehavior.chosen', 'select');
+
+if ($this->saveOrder)
+{
+ $saveOrderingUrl = 'index.php?option=com_componentbuilder&task=admins_fields.saveOrderAjax&tmpl=component';
+ JHtml::_('sortablelist.sortable', 'admin_fieldsList', 'adminForm', strtolower($this->listDirn), $saveOrderingUrl);
+}
+
+?>
+
+
+sidebar)): ?>
+
+
+
+
+
+items)): ?>
+ loadTemplate('toolbar');?>
+
+
+
+
+ loadTemplate('toolbar');?>
+
+ loadTemplate('head');?>
+ loadTemplate('foot');?>
+ loadTemplate('body');?>
+
+
+ canCreate && $this->canEdit) : ?>
+ JText::_('COM_COMPONENTBUILDER_ADMINS_FIELDS_BATCH_OPTIONS'),
+ 'footer' => $this->loadTemplate('batch_footer')
+ ),
+ $this->loadTemplate('batch_body')
+ ); ?>
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/admin/views/admins_fields/tmpl/default_batch_body.php b/admin/views/admins_fields/tmpl/default_batch_body.php
new file mode 100644
index 000000000..99068b474
--- /dev/null
+++ b/admin/views/admins_fields/tmpl/default_batch_body.php
@@ -0,0 +1,32 @@
+
+ @copyright Copyright (C) 2015. All Rights Reserved
+ @license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
+
+ Builds Complex Joomla Components
+
+/-----------------------------------------------------------------------------------------------------------------------------*/
+
+// No direct access to this file
+defined('_JEXEC') or die('Restricted access');
+
+?>
+
+
+batchDisplay; ?>
\ No newline at end of file
diff --git a/admin/views/admins_fields/tmpl/default_batch_footer.php b/admin/views/admins_fields/tmpl/default_batch_footer.php
new file mode 100644
index 000000000..0e0db40f2
--- /dev/null
+++ b/admin/views/admins_fields/tmpl/default_batch_footer.php
@@ -0,0 +1,37 @@
+
+ @copyright Copyright (C) 2015. All Rights Reserved
+ @license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
+
+ Builds Complex Joomla Components
+
+/-----------------------------------------------------------------------------------------------------------------------------*/
+
+// No direct access to this file
+defined('_JEXEC') or die('Restricted access');
+
+?>
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/admin/views/admins_fields/tmpl/default_body.php b/admin/views/admins_fields/tmpl/default_body.php
new file mode 100644
index 000000000..86987965d
--- /dev/null
+++ b/admin/views/admins_fields/tmpl/default_body.php
@@ -0,0 +1,108 @@
+
+ @copyright Copyright (C) 2015. All Rights Reserved
+ @license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
+
+ Builds Complex Joomla Components
+
+/-----------------------------------------------------------------------------------------------------------------------------*/
+
+// No direct access to this file
+defined('_JEXEC') or die('Restricted access');
+
+$edit = "index.php?option=com_componentbuilder&view=admins_fields&task=admin_fields.edit";
+
+?>
+items as $i => $item): ?>
+ user->authorise('core.manage', 'com_checkin') || $item->checked_out == $this->user->id || $item->checked_out == 0;
+ $userChkOut = JFactory::getUser($item->checked_out);
+ $canDo = ComponentbuilderHelper::getActions('admin_fields',$item,'admins_fields');
+ ?>
+
+
+ get('admin_fields.edit.state')): ?>
+ saveOrder)
+ {
+ $iconClass = ' inactive';
+ }
+ else
+ {
+ $iconClass = ' inactive tip-top" hasTooltip" title="' . JHtml::tooltipText('JORDERINGDISABLED');
+ }
+ ?>
+
+
+
+ saveOrder) : ?>
+
+
+
+ ⋮
+
+
+
+ get('admin_fields.edit')): ?>
+ checked_out) : ?>
+
+ id); ?>
+
+ □
+
+
+ id); ?>
+
+
+ □
+
+
+
+ get('admin_fields.edit')): ?>
+
+
+ escape($item->admin_view_system_name); ?>
+
+
+
+ get('admin_fields.edit.state')) : ?>
+ checked_out) : ?>
+
+ published, $i, 'admins_fields.', true, 'cb'); ?>
+
+ published, $i, 'admins_fields.', false, 'cb'); ?>
+
+
+ published, $i, 'admins_fields.', true, 'cb'); ?>
+
+
+ published, $i, 'admins_fields.', false, 'cb'); ?>
+
+
+
+ id; ?>
+
+
+
\ No newline at end of file
diff --git a/admin/views/admins_fields/tmpl/default_foot.php b/admin/views/admins_fields/tmpl/default_foot.php
new file mode 100644
index 000000000..f9715680d
--- /dev/null
+++ b/admin/views/admins_fields/tmpl/default_foot.php
@@ -0,0 +1,32 @@
+
+ @copyright Copyright (C) 2015. All Rights Reserved
+ @license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
+
+ Builds Complex Joomla Components
+
+/-----------------------------------------------------------------------------------------------------------------------------*/
+
+// No direct access to this file
+defined('_JEXEC') or die('Restricted access');
+
+?>
+
+ pagination->getListFooter(); ?>
+
\ No newline at end of file
diff --git a/admin/views/admins_fields/tmpl/default_head.php b/admin/views/admins_fields/tmpl/default_head.php
new file mode 100644
index 000000000..764122d30
--- /dev/null
+++ b/admin/views/admins_fields/tmpl/default_head.php
@@ -0,0 +1,61 @@
+
+ @copyright Copyright (C) 2015. All Rights Reserved
+ @license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
+
+ Builds Complex Joomla Components
+
+/-----------------------------------------------------------------------------------------------------------------------------*/
+
+// No direct access to this file
+defined('_JEXEC') or die('Restricted access');
+
+?>
+
+ canEdit&& $this->canState): ?>
+
+ ', 'ordering', $this->listDirn, $this->listOrder, null, 'asc', 'JGRID_HEADING_ORDERING'); ?>
+
+
+
+
+
+
+ ▾
+
+
+ ■
+
+
+
+
+
+ canState): ?>
+
+ listDirn, $this->listOrder); ?>
+
+
+
+
+
+
+
+ listDirn, $this->listOrder); ?>
+
+
\ No newline at end of file
diff --git a/admin/views/admins_fields/tmpl/default_toolbar.php b/admin/views/admins_fields/tmpl/default_toolbar.php
new file mode 100644
index 000000000..a0fbf694f
--- /dev/null
+++ b/admin/views/admins_fields/tmpl/default_toolbar.php
@@ -0,0 +1,59 @@
+
+ @copyright Copyright (C) 2015. All Rights Reserved
+ @license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
+
+ Builds Complex Joomla Components
+
+/-----------------------------------------------------------------------------------------------------------------------------*/
+
+// No direct access to this file
+defined('_JEXEC') or die('Restricted access');
+
+?>
+
+
\ No newline at end of file
diff --git a/admin/views/admins_fields/tmpl/index.html b/admin/views/admins_fields/tmpl/index.html
new file mode 100644
index 000000000..fa6d84e80
--- /dev/null
+++ b/admin/views/admins_fields/tmpl/index.html
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/admin/views/admins_fields/view.html.php b/admin/views/admins_fields/view.html.php
new file mode 100644
index 000000000..17079e1dc
--- /dev/null
+++ b/admin/views/admins_fields/view.html.php
@@ -0,0 +1,238 @@
+
+ @copyright Copyright (C) 2015. All Rights Reserved
+ @license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
+
+ Builds Complex Joomla Components
+
+/-----------------------------------------------------------------------------------------------------------------------------*/
+
+// No direct access to this file
+defined('_JEXEC') or die('Restricted access');
+
+// import Joomla view library
+jimport('joomla.application.component.view');
+
+/**
+ * Componentbuilder View class for the Admins_fields
+ */
+class ComponentbuilderViewAdmins_fields extends JViewLegacy
+{
+ /**
+ * Admins_fields view display method
+ * @return void
+ */
+ function display($tpl = null)
+ {
+ if ($this->getLayout() !== 'modal')
+ {
+ // Include helper submenu
+ ComponentbuilderHelper::addSubmenu('admins_fields');
+ }
+
+ // Assign data to the view
+ $this->items = $this->get('Items');
+ $this->pagination = $this->get('Pagination');
+ $this->state = $this->get('State');
+ $this->user = JFactory::getUser();
+ $this->listOrder = $this->escape($this->state->get('list.ordering'));
+ $this->listDirn = $this->escape($this->state->get('list.direction'));
+ $this->saveOrder = $this->listOrder == 'ordering';
+ // get global action permissions
+ $this->canDo = ComponentbuilderHelper::getActions('admin_fields');
+ $this->canEdit = $this->canDo->get('admin_fields.edit');
+ $this->canState = $this->canDo->get('admin_fields.edit.state');
+ $this->canCreate = $this->canDo->get('admin_fields.create');
+ $this->canDelete = $this->canDo->get('admin_fields.delete');
+ $this->canBatch = $this->canDo->get('core.batch');
+
+ // We don't need toolbar in the modal window.
+ if ($this->getLayout() !== 'modal')
+ {
+ $this->addToolbar();
+ $this->sidebar = JHtmlSidebar::render();
+ // load the batch html
+ if ($this->canCreate && $this->canEdit && $this->canState)
+ {
+ $this->batchDisplay = JHtmlBatch_::render();
+ }
+ }
+
+ // Check for errors.
+ if (count($errors = $this->get('Errors')))
+ {
+ throw new Exception(implode("\n", $errors), 500);
+ }
+
+ // Display the template
+ parent::display($tpl);
+
+ // Set the document
+ $this->setDocument();
+ }
+
+ /**
+ * Setting the toolbar
+ */
+ protected function addToolBar()
+ {
+ JToolBarHelper::title(JText::_('COM_COMPONENTBUILDER_ADMINS_FIELDS'), 'joomla');
+ JHtmlSidebar::setAction('index.php?option=com_componentbuilder&view=admins_fields');
+ JFormHelper::addFieldPath(JPATH_COMPONENT . '/models/fields');
+
+ if ($this->canCreate)
+ {
+ JToolBarHelper::addNew('admin_fields.add');
+ }
+
+ // Only load if there are items
+ if (ComponentbuilderHelper::checkArray($this->items))
+ {
+ if ($this->canEdit)
+ {
+ JToolBarHelper::editList('admin_fields.edit');
+ }
+
+ if ($this->canState)
+ {
+ JToolBarHelper::publishList('admins_fields.publish');
+ JToolBarHelper::unpublishList('admins_fields.unpublish');
+ JToolBarHelper::archiveList('admins_fields.archive');
+
+ if ($this->canDo->get('core.admin'))
+ {
+ JToolBarHelper::checkin('admins_fields.checkin');
+ }
+ }
+
+ // Add a batch button
+ if ($this->canBatch && $this->canCreate && $this->canEdit && $this->canState)
+ {
+ // Get the toolbar object instance
+ $bar = JToolBar::getInstance('toolbar');
+ // set the batch button name
+ $title = JText::_('JTOOLBAR_BATCH');
+ // Instantiate a new JLayoutFile instance and render the batch button
+ $layout = new JLayoutFile('joomla.toolbar.batch');
+ // add the button to the page
+ $dhtml = $layout->render(array('title' => $title));
+ $bar->appendButton('Custom', $dhtml, 'batch');
+ }
+
+ if ($this->state->get('filter.published') == -2 && ($this->canState && $this->canDelete))
+ {
+ JToolbarHelper::deleteList('', 'admins_fields.delete', 'JTOOLBAR_EMPTY_TRASH');
+ }
+ elseif ($this->canState && $this->canDelete)
+ {
+ JToolbarHelper::trash('admins_fields.trash');
+ }
+ }
+
+ // set help url for this view if found
+ $help_url = ComponentbuilderHelper::getHelpUrl('admins_fields');
+ if (ComponentbuilderHelper::checkString($help_url))
+ {
+ JToolbarHelper::help('COM_COMPONENTBUILDER_HELP_MANAGER', false, $help_url);
+ }
+
+ // add the options comp button
+ if ($this->canDo->get('core.admin') || $this->canDo->get('core.options'))
+ {
+ JToolBarHelper::preferences('com_componentbuilder');
+ }
+
+ if ($this->canState)
+ {
+ JHtmlSidebar::addFilter(
+ JText::_('JOPTION_SELECT_PUBLISHED'),
+ 'filter_published',
+ JHtml::_('select.options', JHtml::_('jgrid.publishedOptions'), 'value', 'text', $this->state->get('filter.published'), true)
+ );
+ // only load if batch allowed
+ if ($this->canBatch)
+ {
+ JHtmlBatch_::addListSelection(
+ JText::_('COM_COMPONENTBUILDER_KEEP_ORIGINAL_STATE'),
+ 'batch[published]',
+ JHtml::_('select.options', JHtml::_('jgrid.publishedOptions', array('all' => false)), 'value', 'text', '', true)
+ );
+ }
+ }
+
+ JHtmlSidebar::addFilter(
+ JText::_('JOPTION_SELECT_ACCESS'),
+ 'filter_access',
+ JHtml::_('select.options', JHtml::_('access.assetgroups'), 'value', 'text', $this->state->get('filter.access'))
+ );
+
+ if ($this->canBatch && $this->canCreate && $this->canEdit)
+ {
+ JHtmlBatch_::addListSelection(
+ JText::_('COM_COMPONENTBUILDER_KEEP_ORIGINAL_ACCESS'),
+ 'batch[access]',
+ JHtml::_('select.options', JHtml::_('access.assetgroups'), 'value', 'text')
+ );
+ }
+ }
+
+ /**
+ * Method to set up the document properties
+ *
+ * @return void
+ */
+ protected function setDocument()
+ {
+ $document = JFactory::getDocument();
+ $document->setTitle(JText::_('COM_COMPONENTBUILDER_ADMINS_FIELDS'));
+ $document->addStyleSheet(JURI::root() . "administrator/components/com_componentbuilder/assets/css/admins_fields.css");
+ }
+
+ /**
+ * Escapes a value for output in a view script.
+ *
+ * @param mixed $var The output to escape.
+ *
+ * @return mixed The escaped value.
+ */
+ public function escape($var)
+ {
+ if(strlen($var) > 50)
+ {
+ // use the helper htmlEscape method instead and shorten the string
+ return ComponentbuilderHelper::htmlEscape($var, $this->_charset, true);
+ }
+ // use the helper htmlEscape method instead.
+ return ComponentbuilderHelper::htmlEscape($var, $this->_charset);
+ }
+
+ /**
+ * Returns an array of fields the table can be sorted by
+ *
+ * @return array Array containing the field name to sort by as the key and display text as value
+ */
+ protected function getSortFields()
+ {
+ return array(
+ 'a.sorting' => JText::_('JGRID_HEADING_ORDERING'),
+ 'a.published' => JText::_('JSTATUS'),
+ 'a.id' => JText::_('JGRID_HEADING_ID')
+ );
+ }
+}
diff --git a/admin/views/admins_fields_conditions/index.html b/admin/views/admins_fields_conditions/index.html
new file mode 100644
index 000000000..fa6d84e80
--- /dev/null
+++ b/admin/views/admins_fields_conditions/index.html
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/admin/views/admins_fields_conditions/tmpl/default.php b/admin/views/admins_fields_conditions/tmpl/default.php
new file mode 100644
index 000000000..e37f9e4ef
--- /dev/null
+++ b/admin/views/admins_fields_conditions/tmpl/default.php
@@ -0,0 +1,99 @@
+
+ @copyright Copyright (C) 2015. All Rights Reserved
+ @license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
+
+ Builds Complex Joomla Components
+
+/-----------------------------------------------------------------------------------------------------------------------------*/
+
+// No direct access to this file
+defined('_JEXEC') or die('Restricted access');
+
+// load tooltip behavior
+JHtml::_('behavior.tooltip');
+JHtml::_('behavior.multiselect');
+JHtml::_('dropdown.init');
+JHtml::_('formbehavior.chosen', 'select');
+
+if ($this->saveOrder)
+{
+ $saveOrderingUrl = 'index.php?option=com_componentbuilder&task=admins_fields_conditions.saveOrderAjax&tmpl=component';
+ JHtml::_('sortablelist.sortable', 'admin_fields_conditionsList', 'adminForm', strtolower($this->listDirn), $saveOrderingUrl);
+}
+
+?>
+
+
+sidebar)): ?>
+
+
+
+
+
+items)): ?>
+ loadTemplate('toolbar');?>
+
+
+
+
+ loadTemplate('toolbar');?>
+
+ loadTemplate('head');?>
+ loadTemplate('foot');?>
+ loadTemplate('body');?>
+
+
+ canCreate && $this->canEdit) : ?>
+ JText::_('COM_COMPONENTBUILDER_ADMINS_FIELDS_CONDITIONS_BATCH_OPTIONS'),
+ 'footer' => $this->loadTemplate('batch_footer')
+ ),
+ $this->loadTemplate('batch_body')
+ ); ?>
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/admin/views/admins_fields_conditions/tmpl/default_batch_body.php b/admin/views/admins_fields_conditions/tmpl/default_batch_body.php
new file mode 100644
index 000000000..96d887c5b
--- /dev/null
+++ b/admin/views/admins_fields_conditions/tmpl/default_batch_body.php
@@ -0,0 +1,32 @@
+
+ @copyright Copyright (C) 2015. All Rights Reserved
+ @license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
+
+ Builds Complex Joomla Components
+
+/-----------------------------------------------------------------------------------------------------------------------------*/
+
+// No direct access to this file
+defined('_JEXEC') or die('Restricted access');
+
+?>
+
+
+batchDisplay; ?>
\ No newline at end of file
diff --git a/admin/views/admins_fields_conditions/tmpl/default_batch_footer.php b/admin/views/admins_fields_conditions/tmpl/default_batch_footer.php
new file mode 100644
index 000000000..ce9c22e88
--- /dev/null
+++ b/admin/views/admins_fields_conditions/tmpl/default_batch_footer.php
@@ -0,0 +1,37 @@
+
+ @copyright Copyright (C) 2015. All Rights Reserved
+ @license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
+
+ Builds Complex Joomla Components
+
+/-----------------------------------------------------------------------------------------------------------------------------*/
+
+// No direct access to this file
+defined('_JEXEC') or die('Restricted access');
+
+?>
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/admin/views/admins_fields_conditions/tmpl/default_body.php b/admin/views/admins_fields_conditions/tmpl/default_body.php
new file mode 100644
index 000000000..ffed4ff38
--- /dev/null
+++ b/admin/views/admins_fields_conditions/tmpl/default_body.php
@@ -0,0 +1,108 @@
+
+ @copyright Copyright (C) 2015. All Rights Reserved
+ @license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
+
+ Builds Complex Joomla Components
+
+/-----------------------------------------------------------------------------------------------------------------------------*/
+
+// No direct access to this file
+defined('_JEXEC') or die('Restricted access');
+
+$edit = "index.php?option=com_componentbuilder&view=admins_fields_conditions&task=admin_fields_conditions.edit";
+
+?>
+items as $i => $item): ?>
+ user->authorise('core.manage', 'com_checkin') || $item->checked_out == $this->user->id || $item->checked_out == 0;
+ $userChkOut = JFactory::getUser($item->checked_out);
+ $canDo = ComponentbuilderHelper::getActions('admin_fields_conditions',$item,'admins_fields_conditions');
+ ?>
+
+
+ get('admin_fields_conditions.edit.state')): ?>
+ saveOrder)
+ {
+ $iconClass = ' inactive';
+ }
+ else
+ {
+ $iconClass = ' inactive tip-top" hasTooltip" title="' . JHtml::tooltipText('JORDERINGDISABLED');
+ }
+ ?>
+
+
+
+ saveOrder) : ?>
+
+
+
+ ⋮
+
+
+
+ get('admin_fields_conditions.edit')): ?>
+ checked_out) : ?>
+
+ id); ?>
+
+ □
+
+
+ id); ?>
+
+
+ □
+
+
+
+ get('admin_fields_conditions.edit')): ?>
+
+
+ escape($item->admin_view_system_name); ?>
+
+
+
+ get('admin_fields_conditions.edit.state')) : ?>
+ checked_out) : ?>
+
+ published, $i, 'admins_fields_conditions.', true, 'cb'); ?>
+
+ published, $i, 'admins_fields_conditions.', false, 'cb'); ?>
+
+
+ published, $i, 'admins_fields_conditions.', true, 'cb'); ?>
+
+
+ published, $i, 'admins_fields_conditions.', false, 'cb'); ?>
+
+
+
+ id; ?>
+
+
+
\ No newline at end of file
diff --git a/admin/views/admins_fields_conditions/tmpl/default_foot.php b/admin/views/admins_fields_conditions/tmpl/default_foot.php
new file mode 100644
index 000000000..1ef113bb4
--- /dev/null
+++ b/admin/views/admins_fields_conditions/tmpl/default_foot.php
@@ -0,0 +1,32 @@
+
+ @copyright Copyright (C) 2015. All Rights Reserved
+ @license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
+
+ Builds Complex Joomla Components
+
+/-----------------------------------------------------------------------------------------------------------------------------*/
+
+// No direct access to this file
+defined('_JEXEC') or die('Restricted access');
+
+?>
+
+ pagination->getListFooter(); ?>
+
\ No newline at end of file
diff --git a/admin/views/admins_fields_conditions/tmpl/default_head.php b/admin/views/admins_fields_conditions/tmpl/default_head.php
new file mode 100644
index 000000000..a08c09011
--- /dev/null
+++ b/admin/views/admins_fields_conditions/tmpl/default_head.php
@@ -0,0 +1,61 @@
+
+ @copyright Copyright (C) 2015. All Rights Reserved
+ @license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
+
+ Builds Complex Joomla Components
+
+/-----------------------------------------------------------------------------------------------------------------------------*/
+
+// No direct access to this file
+defined('_JEXEC') or die('Restricted access');
+
+?>
+
+ canEdit&& $this->canState): ?>
+
+ ', 'ordering', $this->listDirn, $this->listOrder, null, 'asc', 'JGRID_HEADING_ORDERING'); ?>
+
+
+
+
+
+
+ ▾
+
+
+ ■
+
+
+
+
+
+ canState): ?>
+
+ listDirn, $this->listOrder); ?>
+
+
+
+
+
+
+
+ listDirn, $this->listOrder); ?>
+
+
\ No newline at end of file
diff --git a/admin/views/admins_fields_conditions/tmpl/default_toolbar.php b/admin/views/admins_fields_conditions/tmpl/default_toolbar.php
new file mode 100644
index 000000000..05d1318da
--- /dev/null
+++ b/admin/views/admins_fields_conditions/tmpl/default_toolbar.php
@@ -0,0 +1,59 @@
+
+ @copyright Copyright (C) 2015. All Rights Reserved
+ @license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
+
+ Builds Complex Joomla Components
+
+/-----------------------------------------------------------------------------------------------------------------------------*/
+
+// No direct access to this file
+defined('_JEXEC') or die('Restricted access');
+
+?>
+
+
\ No newline at end of file
diff --git a/admin/views/admins_fields_conditions/tmpl/index.html b/admin/views/admins_fields_conditions/tmpl/index.html
new file mode 100644
index 000000000..fa6d84e80
--- /dev/null
+++ b/admin/views/admins_fields_conditions/tmpl/index.html
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/admin/views/admins_fields_conditions/view.html.php b/admin/views/admins_fields_conditions/view.html.php
new file mode 100644
index 000000000..173cf4bb7
--- /dev/null
+++ b/admin/views/admins_fields_conditions/view.html.php
@@ -0,0 +1,238 @@
+
+ @copyright Copyright (C) 2015. All Rights Reserved
+ @license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
+
+ Builds Complex Joomla Components
+
+/-----------------------------------------------------------------------------------------------------------------------------*/
+
+// No direct access to this file
+defined('_JEXEC') or die('Restricted access');
+
+// import Joomla view library
+jimport('joomla.application.component.view');
+
+/**
+ * Componentbuilder View class for the Admins_fields_conditions
+ */
+class ComponentbuilderViewAdmins_fields_conditions extends JViewLegacy
+{
+ /**
+ * Admins_fields_conditions view display method
+ * @return void
+ */
+ function display($tpl = null)
+ {
+ if ($this->getLayout() !== 'modal')
+ {
+ // Include helper submenu
+ ComponentbuilderHelper::addSubmenu('admins_fields_conditions');
+ }
+
+ // Assign data to the view
+ $this->items = $this->get('Items');
+ $this->pagination = $this->get('Pagination');
+ $this->state = $this->get('State');
+ $this->user = JFactory::getUser();
+ $this->listOrder = $this->escape($this->state->get('list.ordering'));
+ $this->listDirn = $this->escape($this->state->get('list.direction'));
+ $this->saveOrder = $this->listOrder == 'ordering';
+ // get global action permissions
+ $this->canDo = ComponentbuilderHelper::getActions('admin_fields_conditions');
+ $this->canEdit = $this->canDo->get('admin_fields_conditions.edit');
+ $this->canState = $this->canDo->get('admin_fields_conditions.edit.state');
+ $this->canCreate = $this->canDo->get('admin_fields_conditions.create');
+ $this->canDelete = $this->canDo->get('admin_fields_conditions.delete');
+ $this->canBatch = $this->canDo->get('core.batch');
+
+ // We don't need toolbar in the modal window.
+ if ($this->getLayout() !== 'modal')
+ {
+ $this->addToolbar();
+ $this->sidebar = JHtmlSidebar::render();
+ // load the batch html
+ if ($this->canCreate && $this->canEdit && $this->canState)
+ {
+ $this->batchDisplay = JHtmlBatch_::render();
+ }
+ }
+
+ // Check for errors.
+ if (count($errors = $this->get('Errors')))
+ {
+ throw new Exception(implode("\n", $errors), 500);
+ }
+
+ // Display the template
+ parent::display($tpl);
+
+ // Set the document
+ $this->setDocument();
+ }
+
+ /**
+ * Setting the toolbar
+ */
+ protected function addToolBar()
+ {
+ JToolBarHelper::title(JText::_('COM_COMPONENTBUILDER_ADMINS_FIELDS_CONDITIONS'), 'joomla');
+ JHtmlSidebar::setAction('index.php?option=com_componentbuilder&view=admins_fields_conditions');
+ JFormHelper::addFieldPath(JPATH_COMPONENT . '/models/fields');
+
+ if ($this->canCreate)
+ {
+ JToolBarHelper::addNew('admin_fields_conditions.add');
+ }
+
+ // Only load if there are items
+ if (ComponentbuilderHelper::checkArray($this->items))
+ {
+ if ($this->canEdit)
+ {
+ JToolBarHelper::editList('admin_fields_conditions.edit');
+ }
+
+ if ($this->canState)
+ {
+ JToolBarHelper::publishList('admins_fields_conditions.publish');
+ JToolBarHelper::unpublishList('admins_fields_conditions.unpublish');
+ JToolBarHelper::archiveList('admins_fields_conditions.archive');
+
+ if ($this->canDo->get('core.admin'))
+ {
+ JToolBarHelper::checkin('admins_fields_conditions.checkin');
+ }
+ }
+
+ // Add a batch button
+ if ($this->canBatch && $this->canCreate && $this->canEdit && $this->canState)
+ {
+ // Get the toolbar object instance
+ $bar = JToolBar::getInstance('toolbar');
+ // set the batch button name
+ $title = JText::_('JTOOLBAR_BATCH');
+ // Instantiate a new JLayoutFile instance and render the batch button
+ $layout = new JLayoutFile('joomla.toolbar.batch');
+ // add the button to the page
+ $dhtml = $layout->render(array('title' => $title));
+ $bar->appendButton('Custom', $dhtml, 'batch');
+ }
+
+ if ($this->state->get('filter.published') == -2 && ($this->canState && $this->canDelete))
+ {
+ JToolbarHelper::deleteList('', 'admins_fields_conditions.delete', 'JTOOLBAR_EMPTY_TRASH');
+ }
+ elseif ($this->canState && $this->canDelete)
+ {
+ JToolbarHelper::trash('admins_fields_conditions.trash');
+ }
+ }
+
+ // set help url for this view if found
+ $help_url = ComponentbuilderHelper::getHelpUrl('admins_fields_conditions');
+ if (ComponentbuilderHelper::checkString($help_url))
+ {
+ JToolbarHelper::help('COM_COMPONENTBUILDER_HELP_MANAGER', false, $help_url);
+ }
+
+ // add the options comp button
+ if ($this->canDo->get('core.admin') || $this->canDo->get('core.options'))
+ {
+ JToolBarHelper::preferences('com_componentbuilder');
+ }
+
+ if ($this->canState)
+ {
+ JHtmlSidebar::addFilter(
+ JText::_('JOPTION_SELECT_PUBLISHED'),
+ 'filter_published',
+ JHtml::_('select.options', JHtml::_('jgrid.publishedOptions'), 'value', 'text', $this->state->get('filter.published'), true)
+ );
+ // only load if batch allowed
+ if ($this->canBatch)
+ {
+ JHtmlBatch_::addListSelection(
+ JText::_('COM_COMPONENTBUILDER_KEEP_ORIGINAL_STATE'),
+ 'batch[published]',
+ JHtml::_('select.options', JHtml::_('jgrid.publishedOptions', array('all' => false)), 'value', 'text', '', true)
+ );
+ }
+ }
+
+ JHtmlSidebar::addFilter(
+ JText::_('JOPTION_SELECT_ACCESS'),
+ 'filter_access',
+ JHtml::_('select.options', JHtml::_('access.assetgroups'), 'value', 'text', $this->state->get('filter.access'))
+ );
+
+ if ($this->canBatch && $this->canCreate && $this->canEdit)
+ {
+ JHtmlBatch_::addListSelection(
+ JText::_('COM_COMPONENTBUILDER_KEEP_ORIGINAL_ACCESS'),
+ 'batch[access]',
+ JHtml::_('select.options', JHtml::_('access.assetgroups'), 'value', 'text')
+ );
+ }
+ }
+
+ /**
+ * Method to set up the document properties
+ *
+ * @return void
+ */
+ protected function setDocument()
+ {
+ $document = JFactory::getDocument();
+ $document->setTitle(JText::_('COM_COMPONENTBUILDER_ADMINS_FIELDS_CONDITIONS'));
+ $document->addStyleSheet(JURI::root() . "administrator/components/com_componentbuilder/assets/css/admins_fields_conditions.css");
+ }
+
+ /**
+ * Escapes a value for output in a view script.
+ *
+ * @param mixed $var The output to escape.
+ *
+ * @return mixed The escaped value.
+ */
+ public function escape($var)
+ {
+ if(strlen($var) > 50)
+ {
+ // use the helper htmlEscape method instead and shorten the string
+ return ComponentbuilderHelper::htmlEscape($var, $this->_charset, true);
+ }
+ // use the helper htmlEscape method instead.
+ return ComponentbuilderHelper::htmlEscape($var, $this->_charset);
+ }
+
+ /**
+ * Returns an array of fields the table can be sorted by
+ *
+ * @return array Array containing the field name to sort by as the key and display text as value
+ */
+ protected function getSortFields()
+ {
+ return array(
+ 'a.sorting' => JText::_('JGRID_HEADING_ORDERING'),
+ 'a.published' => JText::_('JSTATUS'),
+ 'a.id' => JText::_('JGRID_HEADING_ID')
+ );
+ }
+}
diff --git a/admin/views/compiler/tmpl/default.php b/admin/views/compiler/tmpl/default.php
index 61710e5f2..5aea4f179 100644
--- a/admin/views/compiler/tmpl/default.php
+++ b/admin/views/compiler/tmpl/default.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version @update number 55 of this MVC
- @build 13th September, 2017
+ @version @update number 57 of this MVC
+ @build 13th October, 2017
@created 1st February, 2017
@package Component Builder
@subpackage default.php
diff --git a/admin/views/compiler/view.html.php b/admin/views/compiler/view.html.php
index 4e5642537..45c041f7a 100644
--- a/admin/views/compiler/view.html.php
+++ b/admin/views/compiler/view.html.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version @update number 55 of this MVC
- @build 13th September, 2017
+ @version @update number 57 of this MVC
+ @build 13th October, 2017
@created 1st February, 2017
@package Component Builder
@subpackage view.html.php
@@ -47,13 +47,6 @@ class ComponentbuilderViewCompiler extends JViewLegacy
$this->canDo = ComponentbuilderHelper::getActions('compiler');
// Initialise variables.
$this->items = $this->get('Items');
-
- // Check for errors.
- if (count($errors = $this->get('Errors')))
- {
- JError::raiseError(500, implode(PHP_EOL, $errors));
- return false;
- }
if ($this->getLayout() !== 'modal')
{
// Include helper submenu
@@ -74,6 +67,12 @@ class ComponentbuilderViewCompiler extends JViewLegacy
// set the document
$this->setDocument();
+ // Check for errors.
+ if (count($errors = $this->get('Errors')))
+ {
+ throw new Exception(implode("\n", $errors), 500);
+ }
+
parent::display($tpl);
}
diff --git a/admin/views/componentbuilder/tmpl/default.php b/admin/views/componentbuilder/tmpl/default.php
index d93215da1..d070d81d3 100644
--- a/admin/views/componentbuilder/tmpl/default.php
+++ b/admin/views/componentbuilder/tmpl/default.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage default.php
diff --git a/admin/views/componentbuilder/tmpl/default_issues_the_closed_issues_on_github.php b/admin/views/componentbuilder/tmpl/default_issues_the_closed_issues_on_github.php
index d3442976b..d4c143a11 100644
--- a/admin/views/componentbuilder/tmpl/default_issues_the_closed_issues_on_github.php
+++ b/admin/views/componentbuilder/tmpl/default_issues_the_closed_issues_on_github.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage default_issues_the_closed_issues_on_github.php
diff --git a/admin/views/componentbuilder/tmpl/default_issues_the_open_issues_on_github.php b/admin/views/componentbuilder/tmpl/default_issues_the_open_issues_on_github.php
index 422d6382a..09fd300f2 100644
--- a/admin/views/componentbuilder/tmpl/default_issues_the_open_issues_on_github.php
+++ b/admin/views/componentbuilder/tmpl/default_issues_the_open_issues_on_github.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage default_issues_the_open_issues_on_github.php
diff --git a/admin/views/componentbuilder/tmpl/default_main.php b/admin/views/componentbuilder/tmpl/default_main.php
index c023bf38e..188a3c016 100644
--- a/admin/views/componentbuilder/tmpl/default_main.php
+++ b/admin/views/componentbuilder/tmpl/default_main.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage default_main.php
diff --git a/admin/views/componentbuilder/tmpl/default_readme_information.php b/admin/views/componentbuilder/tmpl/default_readme_information.php
index 83699bff5..97984f9c7 100644
--- a/admin/views/componentbuilder/tmpl/default_readme_information.php
+++ b/admin/views/componentbuilder/tmpl/default_readme_information.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage default_readme_information.php
diff --git a/admin/views/componentbuilder/tmpl/default_releases_information.php b/admin/views/componentbuilder/tmpl/default_releases_information.php
index 8577ad130..00dcad660 100644
--- a/admin/views/componentbuilder/tmpl/default_releases_information.php
+++ b/admin/views/componentbuilder/tmpl/default_releases_information.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage default_releases_information.php
diff --git a/admin/views/componentbuilder/tmpl/default_vast_development_method_notice_board.php b/admin/views/componentbuilder/tmpl/default_vast_development_method_notice_board.php
index f60b50327..09ec04782 100644
--- a/admin/views/componentbuilder/tmpl/default_vast_development_method_notice_board.php
+++ b/admin/views/componentbuilder/tmpl/default_vast_development_method_notice_board.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage default_vast_development_method_notice_board.php
diff --git a/admin/views/componentbuilder/tmpl/default_vdm.php b/admin/views/componentbuilder/tmpl/default_vdm.php
index b070dab64..0e3ccfe49 100644
--- a/admin/views/componentbuilder/tmpl/default_vdm.php
+++ b/admin/views/componentbuilder/tmpl/default_vdm.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage default_vdm.php
diff --git a/admin/views/componentbuilder/tmpl/default_wiki_tutorials.php b/admin/views/componentbuilder/tmpl/default_wiki_tutorials.php
index c017b1104..ade771655 100644
--- a/admin/views/componentbuilder/tmpl/default_wiki_tutorials.php
+++ b/admin/views/componentbuilder/tmpl/default_wiki_tutorials.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage default_wiki_tutorials.php
diff --git a/admin/views/componentbuilder/view.html.php b/admin/views/componentbuilder/view.html.php
index 218d31821..6d3128558 100644
--- a/admin/views/componentbuilder/view.html.php
+++ b/admin/views/componentbuilder/view.html.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version 2.5.6
- @build 6th October, 2017
+ @version 2.5.8
+ @build 20th October, 2017
@created 30th April, 2015
@package Component Builder
@subpackage view.html.php
@@ -40,12 +40,6 @@ class ComponentbuilderViewComponentbuilder extends JViewLegacy
*/
function display($tpl = null)
{
- // Check for errors.
- if (count($errors = $this->get('Errors')))
- {
- JError::raiseError(500, implode('
', $errors));
- return false;
- };
// Assign data to the view
$this->icons = $this->get('Icons');
$this->contributors = ComponentbuilderHelper::getContributors();
@@ -59,6 +53,12 @@ class ComponentbuilderViewComponentbuilder extends JViewLegacy
// Set the toolbar
$this->addToolBar();
+
+ // Check for errors.
+ if (count($errors = $this->get('Errors')))
+ {
+ throw new Exception(implode("\n", $errors), 500);
+ }
// Display the template
parent::display($tpl);
diff --git a/admin/views/custom_admin_view/submitbutton.js b/admin/views/custom_admin_view/submitbutton.js
index 5d7fc6382..999c0d15c 100644
--- a/admin/views/custom_admin_view/submitbutton.js
+++ b/admin/views/custom_admin_view/submitbutton.js
@@ -9,8 +9,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version @update number 27 of this MVC
- @build 27th September, 2017
+ @version @update number 32 of this MVC
+ @build 20th October, 2017
@created 13th August, 2015
@package Component Builder
@subpackage submitbutton.js
diff --git a/admin/views/custom_admin_view/tmpl/edit.php b/admin/views/custom_admin_view/tmpl/edit.php
index 40b3fecc5..487d58c35 100644
--- a/admin/views/custom_admin_view/tmpl/edit.php
+++ b/admin/views/custom_admin_view/tmpl/edit.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version @update number 27 of this MVC
- @build 27th September, 2017
+ @version @update number 32 of this MVC
+ @build 20th October, 2017
@created 13th August, 2015
@package Component Builder
@subpackage edit.php
diff --git a/admin/views/custom_admin_view/view.html.php b/admin/views/custom_admin_view/view.html.php
index fe6e8b6cf..bd0542bc8 100644
--- a/admin/views/custom_admin_view/view.html.php
+++ b/admin/views/custom_admin_view/view.html.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version @update number 27 of this MVC
- @build 27th September, 2017
+ @version @update number 32 of this MVC
+ @build 20th October, 2017
@created 13th August, 2015
@package Component Builder
@subpackage view.html.php
@@ -40,13 +40,6 @@ class ComponentbuilderViewCustom_admin_view extends JViewLegacy
*/
public function display($tpl = null)
{
- // Check for errors.
- if (count($errors = $this->get('Errors')))
- {
- JError::raiseError(500, implode('
', $errors));
- return false;
- }
-
// Assign the variables
$this->form = $this->get('Form');
$this->item = $this->get('Item');
@@ -71,10 +64,16 @@ class ComponentbuilderViewCustom_admin_view extends JViewLegacy
}
// Get Linked view data
- $this->vyklinked_components = $this->get('Vyklinked_components');
+ $this->vyjlinked_components = $this->get('Vyjlinked_components');
// Set the toolbar
$this->addToolBar();
+
+ // Check for errors.
+ if (count($errors = $this->get('Errors')))
+ {
+ throw new Exception(implode("\n", $errors), 500);
+ }
// Display the template
parent::display($tpl);
diff --git a/admin/views/custom_admin_views/tmpl/default.php b/admin/views/custom_admin_views/tmpl/default.php
index 556320a3e..50dd1ca0f 100644
--- a/admin/views/custom_admin_views/tmpl/default.php
+++ b/admin/views/custom_admin_views/tmpl/default.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version @update number 27 of this MVC
- @build 27th September, 2017
+ @version @update number 32 of this MVC
+ @build 20th October, 2017
@created 13th August, 2015
@package Component Builder
@subpackage default.php
diff --git a/admin/views/custom_admin_views/tmpl/default_batch_body.php b/admin/views/custom_admin_views/tmpl/default_batch_body.php
index 41233900e..79493b84e 100644
--- a/admin/views/custom_admin_views/tmpl/default_batch_body.php
+++ b/admin/views/custom_admin_views/tmpl/default_batch_body.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version @update number 27 of this MVC
- @build 27th September, 2017
+ @version @update number 32 of this MVC
+ @build 20th October, 2017
@created 13th August, 2015
@package Component Builder
@subpackage default_batch_body.php
diff --git a/admin/views/custom_admin_views/tmpl/default_batch_footer.php b/admin/views/custom_admin_views/tmpl/default_batch_footer.php
index ed8df9ff6..4a832c2e1 100644
--- a/admin/views/custom_admin_views/tmpl/default_batch_footer.php
+++ b/admin/views/custom_admin_views/tmpl/default_batch_footer.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version @update number 27 of this MVC
- @build 27th September, 2017
+ @version @update number 32 of this MVC
+ @build 20th October, 2017
@created 13th August, 2015
@package Component Builder
@subpackage default_batch_footer.php
diff --git a/admin/views/custom_admin_views/tmpl/default_body.php b/admin/views/custom_admin_views/tmpl/default_body.php
index c6b837d91..fcc6b6f7a 100644
--- a/admin/views/custom_admin_views/tmpl/default_body.php
+++ b/admin/views/custom_admin_views/tmpl/default_body.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version @update number 27 of this MVC
- @build 27th September, 2017
+ @version @update number 32 of this MVC
+ @build 20th October, 2017
@created 13th August, 2015
@package Component Builder
@subpackage default_body.php
diff --git a/admin/views/custom_admin_views/tmpl/default_foot.php b/admin/views/custom_admin_views/tmpl/default_foot.php
index 8a22ba1c4..2d4ebdb63 100644
--- a/admin/views/custom_admin_views/tmpl/default_foot.php
+++ b/admin/views/custom_admin_views/tmpl/default_foot.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version @update number 27 of this MVC
- @build 27th September, 2017
+ @version @update number 32 of this MVC
+ @build 20th October, 2017
@created 13th August, 2015
@package Component Builder
@subpackage default_foot.php
diff --git a/admin/views/custom_admin_views/tmpl/default_head.php b/admin/views/custom_admin_views/tmpl/default_head.php
index 0cdab4a23..5dc213983 100644
--- a/admin/views/custom_admin_views/tmpl/default_head.php
+++ b/admin/views/custom_admin_views/tmpl/default_head.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version @update number 27 of this MVC
- @build 27th September, 2017
+ @version @update number 32 of this MVC
+ @build 20th October, 2017
@created 13th August, 2015
@package Component Builder
@subpackage default_head.php
diff --git a/admin/views/custom_admin_views/tmpl/default_toolbar.php b/admin/views/custom_admin_views/tmpl/default_toolbar.php
index b6474831d..30720214a 100644
--- a/admin/views/custom_admin_views/tmpl/default_toolbar.php
+++ b/admin/views/custom_admin_views/tmpl/default_toolbar.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version @update number 27 of this MVC
- @build 27th September, 2017
+ @version @update number 32 of this MVC
+ @build 20th October, 2017
@created 13th August, 2015
@package Component Builder
@subpackage default_toolbar.php
diff --git a/admin/views/custom_admin_views/view.html.php b/admin/views/custom_admin_views/view.html.php
index a3dbcb410..ec9770eda 100644
--- a/admin/views/custom_admin_views/view.html.php
+++ b/admin/views/custom_admin_views/view.html.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version @update number 27 of this MVC
- @build 27th September, 2017
+ @version @update number 32 of this MVC
+ @build 20th October, 2017
@created 13th August, 2015
@package Component Builder
@subpackage view.html.php
@@ -46,13 +46,6 @@ class ComponentbuilderViewCustom_admin_views extends JViewLegacy
ComponentbuilderHelper::addSubmenu('custom_admin_views');
}
- // Check for errors.
- if (count($errors = $this->get('Errors')))
- {
- JError::raiseError(500, implode('
', $errors));
- return false;
- }
-
// Assign data to the view
$this->items = $this->get('Items');
$this->pagination = $this->get('Pagination');
@@ -80,6 +73,12 @@ class ComponentbuilderViewCustom_admin_views extends JViewLegacy
$this->batchDisplay = JHtmlBatch_::render();
}
}
+
+ // Check for errors.
+ if (count($errors = $this->get('Errors')))
+ {
+ throw new Exception(implode("\n", $errors), 500);
+ }
// Display the template
parent::display($tpl);
diff --git a/admin/views/custom_code/submitbutton.js b/admin/views/custom_code/submitbutton.js
index d8f73ff20..07a4eec7b 100644
--- a/admin/views/custom_code/submitbutton.js
+++ b/admin/views/custom_code/submitbutton.js
@@ -9,8 +9,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version @update number 82 of this MVC
- @build 4th October, 2017
+ @version @update number 84 of this MVC
+ @build 13th October, 2017
@created 11th October, 2016
@package Component Builder
@subpackage submitbutton.js
diff --git a/admin/views/custom_code/tmpl/edit.php b/admin/views/custom_code/tmpl/edit.php
index 0600b31da..ac614175b 100644
--- a/admin/views/custom_code/tmpl/edit.php
+++ b/admin/views/custom_code/tmpl/edit.php
@@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
- @version @update number 82 of this MVC
- @build 4th October, 2017
+ @version @update number 84 of this MVC
+ @build 13th October, 2017
@created 11th October, 2016
@package Component Builder
@subpackage edit.php
@@ -127,21 +127,6 @@ $componentParams = JComponentHelper::getParams('com_componentbuilder');