diff --git a/README.md b/README.md
index eba7c76c5..463651c9d 100644
--- a/README.md
+++ b/README.md
@@ -146,11 +146,11 @@ TODO
+ *Author*: [Llewellyn van der Merwe](mailto:llewellyn@joomlacomponentbuilder.com)
+ *Name*: [Component Builder](https://github.com/vdm-io/Joomla-Component-Builder)
+ *First Build*: 30th April, 2015
-+ *Last Build*: 4th September, 2019
++ *Last Build*: 5th September, 2019
+ *Version*: 2.10.1
+ *Copyright*: Copyright (C) 2015 - 2019 Vast Development Method. All rights reserved.
+ *License*: GNU General Public License version 2 or later; see LICENSE.txt
-+ *Line count*: **251119**
++ *Line count*: **251450**
+ *Field count*: **1343**
+ *File count*: **1608**
+ *Folder count*: **253**
diff --git a/admin/README.txt b/admin/README.txt
index eba7c76c5..463651c9d 100644
--- a/admin/README.txt
+++ b/admin/README.txt
@@ -146,11 +146,11 @@ TODO
+ *Author*: [Llewellyn van der Merwe](mailto:llewellyn@joomlacomponentbuilder.com)
+ *Name*: [Component Builder](https://github.com/vdm-io/Joomla-Component-Builder)
+ *First Build*: 30th April, 2015
-+ *Last Build*: 4th September, 2019
++ *Last Build*: 5th September, 2019
+ *Version*: 2.10.1
+ *Copyright*: Copyright (C) 2015 - 2019 Vast Development Method. All rights reserved.
+ *License*: GNU General Public License version 2 or later; see LICENSE.txt
-+ *Line count*: **251119**
++ *Line count*: **251450**
+ *Field count*: **1343**
+ *File count*: **1608**
+ *Folder count*: **253**
diff --git a/admin/compiler/joomla_3/Helper.php b/admin/compiler/joomla_3/Helper.php
index 843e76d0c..b8132d932 100644
--- a/admin/compiler/joomla_3/Helper.php
+++ b/admin/compiler/joomla_3/Helper.php
@@ -654,7 +654,7 @@ abstract class ###Component###Helper
}
}
// check if there are any view values remaining
- if (count($_result))
+ if (count((array) $_result))
{
$_result = json_encode($_result);
$_result = array($_result);
diff --git a/admin/compiler/joomla_3/Helper_site.php b/admin/compiler/joomla_3/Helper_site.php
index 6ea715db8..cf98c8d43 100644
--- a/admin/compiler/joomla_3/Helper_site.php
+++ b/admin/compiler/joomla_3/Helper_site.php
@@ -292,7 +292,7 @@ abstract class ###Component###Helper
}
}
// check if there are any view values remaining
- if (count($_result))
+ if (count((array) $_result))
{
$_result = json_encode($_result);
$_result = array($_result);
diff --git a/admin/helpers/compiler.php b/admin/helpers/compiler.php
index ff61d8ea4..a5d4d97aa 100644
--- a/admin/helpers/compiler.php
+++ b/admin/helpers/compiler.php
@@ -174,7 +174,7 @@ class Compiler extends Infusion
if (isset($mismatch) && ComponentbuilderHelper::checkArray($mismatch))
{
$this->app->enqueueMessage(JText::_('
Language Warning
'), 'Warning');
- if (count($mismatch) > 1)
+ if (count((array) $mismatch) > 1)
{
$this->app->enqueueMessage(JText::_('Please check the following mismatching Joomla.JText language constants.
'), 'Warning');
}
@@ -742,7 +742,7 @@ class Compiler extends Infusion
// we musk keep last three lines to dynamic find target entry
$fingerPrint[$lineNumber] = trim($lineContent);
// check lines each time if it fits our target
- if (count($fingerPrint) === $sizeEnd && !$foundEnd)
+ if (count((array) $fingerPrint) === $sizeEnd && !$foundEnd)
{
$fingerTest = md5(implode('', $fingerPrint));
if ($fingerTest === $hashEnd)
@@ -766,7 +766,7 @@ class Compiler extends Infusion
// we musk keep last three lines to dynamic find target entry
$fingerPrint[$lineNumber] = trim($lineContent);
// check lines each time if it fits our target
- if (count($fingerPrint) === $size && !$found)
+ if (count((array) $fingerPrint) === $size && !$found)
{
$fingerTest = md5(implode('', $fingerPrint));
if ($fingerTest === $hash)
diff --git a/admin/helpers/compiler/a_Get.php b/admin/helpers/compiler/a_Get.php
index a4851006e..9f77d8ea2 100644
--- a/admin/helpers/compiler/a_Get.php
+++ b/admin/helpers/compiler/a_Get.php
@@ -922,7 +922,7 @@ class Get
$results = $dispatcher->trigger($event, $data);
// Check for errors encountered while trigger the event
- if (count($results) && in_array(false, $results, true))
+ if (count((array) $results) && in_array(false, $results, true))
{
// Get the last error.
$error = $dispatcher->getError();
@@ -3862,7 +3862,7 @@ class Get
$id_range = (array) array_map('trim', explode('=>', $id));
unset($id_array[$key]);
// build range
- if (count($id_range) == 2)
+ if (count((array) $id_range) == 2)
{
$range = range($id_range[0], $id_range[1]);
$id_array_new = array_merge($id_array_new, $range);
@@ -5890,7 +5890,7 @@ class Get
*/
protected function setNewLangStrings($when = 1)
{
- if (count($this->newLangStrings) >= $when)
+ if (count((array) $this->newLangStrings) >= $when)
{
// Create a new query object.
$query = $this->db->getQuery(true);
@@ -5902,7 +5902,7 @@ class Get
$query->columns($this->db->quoteName($columns));
foreach ($this->newLangStrings as $values)
{
- if (count($values) == 7)
+ if (count((array) $values) == 7)
{
$query->values(implode(',', $values));
$continue = true;
@@ -5934,7 +5934,7 @@ class Get
*/
protected function setExistingLangStrings($when = 1)
{
- if (count($this->existingLangStrings) >= $when)
+ if (count((array) $this->existingLangStrings) >= $when)
{
foreach ($this->existingLangStrings as $values)
{
@@ -6663,7 +6663,7 @@ class Get
*/
protected function setNewCustomCode($when = 1)
{
- if (count($this->newCustomCode) >= $when)
+ if (count((array) $this->newCustomCode) >= $when)
{
// Create a new query object.
$query = $this->db->getQuery(true);
@@ -6675,7 +6675,7 @@ class Get
$query->columns($this->db->quoteName($columns));
foreach ($this->newCustomCode as $values)
{
- if (count($values) == 15)
+ if (count((array) $values) == 15)
{
$query->values(implode(',', $values));
$continue = true;
@@ -6707,7 +6707,7 @@ class Get
*/
protected function setExistingCustomCode($when = 1)
{
- if (count($this->existingCustomCode) >= $when)
+ if (count((array) $this->existingCustomCode) >= $when)
{
foreach ($this->existingCustomCode as $code)
{
@@ -6903,7 +6903,7 @@ class Get
}
}
// check if the endfingerprint is ready to save
- if (count($endFingerPrint) === 3)
+ if (count((array) $endFingerPrint) === 3)
{
$hashendtarget = '3__' . md5(implode('', $endFingerPrint));
// all new records we can do a bulk insert
@@ -7045,15 +7045,15 @@ class Get
}
}
// make sure only a few lines is kept at a time
- if (count($fingerPrint) > 10)
+ if (count((array) $fingerPrint) > 10)
{
$fingerPrint = array_slice($fingerPrint, -6, 6, true);
}
}
// if the code is at the end of the page and there were not three more lines
- if (count($endFingerPrint) > 0 || $loadEndFingerPrint)
+ if (count((array) $endFingerPrint) > 0 || $loadEndFingerPrint)
{
- if (count($endFingerPrint) > 0)
+ if (count((array) $endFingerPrint) > 0)
{
$leng = count($endFingerPrint);
$hashendtarget = $leng . '__' . md5(implode('', $endFingerPrint));
diff --git a/admin/helpers/compiler/b_Structure.php b/admin/helpers/compiler/b_Structure.php
index 79d7cbe1c..9c770522b 100644
--- a/admin/helpers/compiler/b_Structure.php
+++ b/admin/helpers/compiler/b_Structure.php
@@ -843,7 +843,7 @@ class Structure extends Get
{
// set the default view
$getter = explode('_', $this->componentData->dashboard);
- if (count($getter) == 2 && is_numeric($getter[1]))
+ if (count((array) $getter) == 2 && is_numeric($getter[1]))
{
// the pointers
$t = ComponentbuilderHelper::safeString($getter[0], 'U');
@@ -1212,7 +1212,7 @@ class Structure extends Get
$this->app->enqueueMessage(JText::sprintf('A method (setDynamicF0ld3rs) was added to the install script.php of this package to insure that the folder/s are copied into the correct place when this componet is installed!'), 'Notice');
}
}
- elseif (count($checker) == 2 && ComponentbuilderHelper::checkString($checker[0]))
+ elseif (count((array) $checker) == 2 && ComponentbuilderHelper::checkString($checker[0]))
{
$add_to_extra = false;
// set the target
diff --git a/admin/helpers/compiler/c_Fields.php b/admin/helpers/compiler/c_Fields.php
index 21c502cc8..5da41c36f 100644
--- a/admin/helpers/compiler/c_Fields.php
+++ b/admin/helpers/compiler/c_Fields.php
@@ -947,7 +947,7 @@ class Fields extends Structure
$this->fieldCount++;
}
// load the dynamic fields now
- if (count($dynamicFieldsXML))
+ if (count((array) $dynamicFieldsXML))
{
ComponentbuilderHelper::xmlComment($fieldSetXML, $this->setLine(__LINE__) . " Dynamic Fields.");
foreach ($dynamicFieldsXML as $dynamicfield)
@@ -2331,7 +2331,7 @@ class Fields extends Structure
* @param string $langLabel The language string for field label
* @param string $langView The language string of the view
* @param string $view_name_list The list view name
- * @param string $view_name_single The singel view name
+ * @param string $view_name_single The single view name
* @param array $placeholders The place holder and replace values
* @param boolean $repeatable The repeatable field switch
*
@@ -2657,7 +2657,7 @@ class Fields extends Structure
*
* @param string $langLabel The language string for field label
* @param string $langView The language string of the view
- * @param string $view_name_single The singel view name
+ * @param string $view_name_single The single view name
* @param string $view_name_list The list view name
* @param string $name The field name
* @param array $view The view data
@@ -3073,7 +3073,7 @@ class Fields extends Structure
// so we have name spacing in custom field type name
$dotTypeArray = explode('.', $data['type']);
// set the J prefix
- if (count($dotTypeArray) > 1)
+ if (count((array) $dotTypeArray) > 1)
{
$jprefix = strtoupper(array_shift($dotTypeArray));
}
diff --git a/admin/helpers/compiler/e_Interpretation.php b/admin/helpers/compiler/e_Interpretation.php
index b49bd184b..ebe3e5aeb 100644
--- a/admin/helpers/compiler/e_Interpretation.php
+++ b/admin/helpers/compiler/e_Interpretation.php
@@ -3341,7 +3341,7 @@ class Interpretation extends Fields
$method .= PHP_EOL . PHP_EOL . $this->_t(2) . "//" . $this->setLine(__LINE__) . " Check for errors.";
$method .= PHP_EOL . $this->_t(2) . "if (count(\$errors = \$this->get('Errors')))";
$method .= PHP_EOL . $this->_t(2) . "{";
- $method .= PHP_EOL . $this->_t(3) . "throw new Exception(implode(" . '"\n", $errors), 500);';
+ $method .= PHP_EOL . $this->_t(3) . "throw new Exception(implode(PHP_EOL, \$errors), 500);";
$method .= PHP_EOL . $this->_t(2) . "}";
// add events if needed
if ($view['settings']->main_get->gettype == 1 && ComponentbuilderHelper::checkArray($view['settings']->main_get->plugin_events))
@@ -6005,11 +6005,11 @@ class Interpretation extends Fields
}
$fixUniqe[] = PHP_EOL . $this->_t(3) . "if (" . implode(' || ', $ifStatment) . ")";
$fixUniqe[] = $this->_t(3) . "{";
- if ($setCategory && count($titles) == 1)
+ if ($setCategory && count((array) $titles) == 1)
{
$fixUniqe[] = $this->_t(4) . "list(" . implode('', $titleVars) . ", \$" . $alias . ") = \$this->generateNewTitle(\$data['" . $category . "'], \$data['" . $alias . "'], " . implode('', $titleData) . ");";
}
- elseif (count($titles) == 1)
+ elseif (count((array) $titles) == 1)
{
$fixUniqe[] = $this->_t(4) . "list(" . implode(', ', $titleVars) . ", \$" . $alias . ") = \$this->_generateNewTitle(\$data['" . $alias . "'], " . implode('', $titleData) . ");";
}
@@ -9125,29 +9125,38 @@ class Interpretation extends Fields
}
/**
- * @param $viewName_single
- * @param $viewName_list
+ * A function that builds get Items Method for model
+ *
+ * @param string $viewName_single The single view name
+ * @param string $viewName_list The list view name
+ * @param array $config The config details to adapt the method being build
+ *
* @return string
*/
- public function setModelExportMethod($viewName_single, $viewName_list)
+ public function setGetItemsModelMethod($viewName_single, $viewName_list, $config = array('functionName' => 'getExportData', 'docDesc' => 'Method to get list export data.', 'type' => 'export'))
{
$query = '';
- if ($this->eximportView[$viewName_list])
+ if ($this->eximportView[$viewName_list] || 'export' !== $config['type'])
{
+ $isExport = ('export' === $config['type']);
+
$query = PHP_EOL . PHP_EOL . $this->_t(1) . "/**";
- $query .= PHP_EOL . $this->_t(1) . " * Method to get list export data.";
+ $query .= PHP_EOL . $this->_t(1) . " * " . $config['docDesc'];
+ $query .= PHP_EOL . $this->_t(1) . " *";
+ $query .= PHP_EOL . $this->_t(1) . " * @param array \$pks The ids of the items to get";
+ $query .= PHP_EOL . $this->_t(1) . " * @param JUser \$user The user making the request";
$query .= PHP_EOL . $this->_t(1) . " *";
$query .= PHP_EOL . $this->_t(1) . " * @return mixed An array of data items on success, false on failure.";
$query .= PHP_EOL . $this->_t(1) . " */";
- $query .= PHP_EOL . $this->_t(1) . "public function getExportData(\$pks, \$user = null)";
+ $query .= PHP_EOL . $this->_t(1) . "public function " . $config['functionName'] . "(\$pks, \$user = null)";
$query .= PHP_EOL . $this->_t(1) . "{";
$query .= PHP_EOL . $this->_t(2) . "//" . $this->setLine(__LINE__) . " setup the query";
$query .= PHP_EOL . $this->_t(2) . "if (" . $this->fileContentStatic[$this->hhh . 'Component' . $this->hhh] . "Helper::checkArray(\$pks))";
$query .= PHP_EOL . $this->_t(2) . "{";
- $query .= PHP_EOL . $this->_t(3) . "//" . $this->setLine(__LINE__) . " Set a value to know this is exporting method. (USE IN CUSTOM CODE TO ALTER OUTCOME)";
- $query .= PHP_EOL . $this->_t(3) . "\$_export = true;";
+ $query .= PHP_EOL . $this->_t(3) . "//" . $this->setLine(__LINE__) . " Set a value to know this is " . $config['type'] . " method. (USE IN CUSTOM CODE TO ALTER OUTCOME)";
+ $query .= PHP_EOL . $this->_t(3) . "\$_" . $config['type'] . " = true;";
$query .= PHP_EOL . $this->_t(3) . "//" . $this->setLine(__LINE__) . " Get the user object if not set.";
- $query .= PHP_EOL . $this->_t(3) . "if (" . $this->fileContentStatic[$this->hhh . 'Component' . $this->hhh] . "Helper::checkObject(\$user))";
+ $query .= PHP_EOL . $this->_t(3) . "if (!isset(\$user) || !" . $this->fileContentStatic[$this->hhh . 'Component' . $this->hhh] . "Helper::checkObject(\$user))";
$query .= PHP_EOL . $this->_t(3) . "{";
$query .= PHP_EOL . $this->_t(4) . "\$user = JFactory::getUser();";
$query .= PHP_EOL . $this->_t(3) . "}";
@@ -9161,7 +9170,7 @@ class Interpretation extends Fields
$query .= PHP_EOL . $this->_t(3) . "\$query->where('a.id IN (' . implode(',',\$pks) . ')');";
// add custom filtering php
$query .= $this->getCustomScriptBuilder('php_getlistquery', $viewName_single, PHP_EOL . PHP_EOL . $this->_t(1));
-
+ // add access levels if the view has access set
if (isset($this->accessBuilder[$viewName_single]) && ComponentbuilderHelper::checkString($this->accessBuilder[$viewName_single]))
{
$query .= PHP_EOL . $this->_t(3) . "//" . $this->setLine(__LINE__) . " Implement View Level Access";
@@ -9179,22 +9188,29 @@ class Interpretation extends Fields
$query .= PHP_EOL . $this->_t(3) . "if (\$db->getNumRows())";
$query .= PHP_EOL . $this->_t(3) . "{";
$query .= PHP_EOL . $this->_t(4) . "\$items = \$db->loadObjectList();";
- $query .= $this->setGetItemsMethodStringFix($viewName_single, $viewName_list, $this->fileContentStatic[$this->hhh . 'Component' . $this->hhh], $this->_t(2), true);
- // add custom php to getitems method after all
+ $query .= $this->setGetItemsMethodStringFix($viewName_single, $viewName_list, $this->fileContentStatic[$this->hhh . 'Component' . $this->hhh], $this->_t(2), $isExport);
+ // add translations
+ if (!$isExport)
+ {
+ $query .= $this->setSelectionTranslationFix($viewName_list, $this->fileContentStatic[$this->hhh . 'Component' . $this->hhh], $this->_t(2));
+ }
+ // add custom php to getItems method after all
$query .= $this->getCustomScriptBuilder('php_getitems_after_all', $viewName_single, PHP_EOL . PHP_EOL . $this->_t(2));
$query .= PHP_EOL . $this->_t(4) . "return \$items;";
$query .= PHP_EOL . $this->_t(3) . "}";
$query .= PHP_EOL . $this->_t(2) . "}";
$query .= PHP_EOL . $this->_t(2) . "return false;";
$query .= PHP_EOL . $this->_t(1) . "}";
-
// get the header script
- $header = ComponentbuilderHelper::getDynamicScripts('headers');
+ if ($isExport)
+ {
+ $header = ComponentbuilderHelper::getDynamicScripts('headers');
- // add getExImPortHeaders
- $query .= $this->getCustomScriptBuilder('php_import_headers', 'import_' . $viewName_list, PHP_EOL . PHP_EOL, null, true,
- // set a default script for those with no custom script
- PHP_EOL . PHP_EOL . $this->setPlaceholders($header, $this->placeholders));
+ // add getExImPortHeaders
+ $query .= $this->getCustomScriptBuilder('php_import_headers', 'import_' . $viewName_list, PHP_EOL . PHP_EOL, null, true,
+ // set a default script for those with no custom script
+ PHP_EOL . PHP_EOL . $this->setPlaceholders($header, $this->placeholders));
+ }
}
return $query;
}
@@ -12149,9 +12165,9 @@ class Interpretation extends Fields
{
// check if custom field is set
/* if (ComponentbuilderHelper::checkArray($filter['custom']))
- {
- $fields .= ",".PHP_EOL.$this->_t(4) . "'".$filter['custom']['db'].".".$filter['custom']['text']."','".$filter['code']."_".$filter['custom']['text']."'";
- } */
+ {
+ $fields .= ",".PHP_EOL.$this->_t(4) . "'".$filter['custom']['db'].".".$filter['custom']['text']."','".$filter['code']."_".$filter['custom']['text']."'";
+ } */
$fields .= "," . PHP_EOL . $this->_t(4) . "'a." . $filter['code'] . "','" . $filter['code'] . "'";
}
$donelist[] = $filter['code'];
@@ -12178,9 +12194,9 @@ class Interpretation extends Fields
{
// check if custom field is set
/* if (ComponentbuilderHelper::checkArray($filter['custom']))
- {
- $fields .= ",".PHP_EOL.$this->_t(4) . "'".$filter['custom']['db'].".".$filter['custom']['text']."','".$filter['code']."_".$filter['custom']['text']."'";
- } */
+ {
+ $fields .= ",".PHP_EOL.$this->_t(4) . "'".$filter['custom']['db'].".".$filter['custom']['text']."','".$filter['code']."_".$filter['custom']['text']."'";
+ } */
$fields .= "," . PHP_EOL . $this->_t(4) . "'a." . $filter['code'] . "','" . $filter['code'] . "'";
}
$donelist[] = $filter['code'];
@@ -12226,9 +12242,9 @@ class Interpretation extends Fields
{
// check if custom field is set
/* if (ComponentbuilderHelper::checkArray($filter['custom']))
- {
- $stored .= PHP_EOL.$this->_t(2) . "\$id .= ':' . \$this->getState('filter.".$filter['code']."_".$filter['custom']['text']."');";
- } */
+ {
+ $stored .= PHP_EOL.$this->_t(2) . "\$id .= ':' . \$this->getState('filter.".$filter['code']."_".$filter['custom']['text']."');";
+ } */
$stored .= PHP_EOL . $this->_t(2) . "\$id .= ':' . \$this->getState('filter." . $filter['code'] . "');";
}
$donelist[] = $filter['code'];
@@ -12255,9 +12271,9 @@ class Interpretation extends Fields
{
// check if custom field is set
/* if (ComponentbuilderHelper::checkArray($filter['custom']))
- {
- $stored .= PHP_EOL.$this->_t(2) . "\$id .= ':' . \$this->getState('filter.".$filter['code']."_".$filter['custom']['text']."');";
- } */
+ {
+ $stored .= PHP_EOL . $this->_t(2) . "\$id .= ':' . \$this->getState('filter.".$filter['code']."_".$filter['custom']['text']."');";
+ } */
$stored .= PHP_EOL . $this->_t(2) . "\$id .= ':' . \$this->getState('filter." . $filter['code'] . "');";
}
$donelist[] = $filter['code'];
@@ -12486,11 +12502,11 @@ class Interpretation extends Fields
}
// check if custom field is set
/* if (ComponentbuilderHelper::checkArray($filter['custom']))
- {
- $state .= $spacer."\$".$filter['code']."_".$filter['custom']['text']." = \$this->getUserStateFromRequest(\$this->context . '.filter.".$filter['code']."_".$filter['custom']['text']."', 'filter_".$filter['code']."_".$filter['custom']['text']."');";
- $state .= PHP_EOL.$this->_t(2) . "\$this->setState('filter.".$filter['code']."_".$filter['custom']['text']."', \$".$filter['code']."_".$filter['custom']['text'].");";
- $spacer = PHP_EOL.PHP_EOL.$this->_t(2);
- } */
+ {
+ $state .= $spacer."\$".$filter['code']."_".$filter['custom']['text']." = \$this->getUserStateFromRequest(\$this->context . '.filter.".$filter['code']."_".$filter['custom']['text']."', 'filter_".$filter['code']."_".$filter['custom']['text']."');";
+ $state .= PHP_EOL.$this->_t(2) . "\$this->setState('filter.".$filter['code']."_".$filter['custom']['text']."', \$".$filter['code']."_".$filter['custom']['text'].");";
+ $spacer = PHP_EOL.PHP_EOL.$this->_t(2);
+ } */
$state .= $spacer . "\$" . $filter['code'] . " = \$this->getUserStateFromRequest(\$this->context . '.filter." . $filter['code'] . "', 'filter_" . $filter['code'] . "');";
$state .= PHP_EOL . $this->_t(2) . "\$this->setState('filter." . $filter['code'] . "', \$" . $filter['code'] . ");";
}
@@ -12537,13 +12553,13 @@ class Interpretation extends Fields
}
// check if custom field is set
/* if (ComponentbuilderHelper::checkArray($filter['custom']))
- {
- $state .= $spacer."\$".$filter['custom']['text']." = \$this->getUserStateFromRequest(\$this->context . '.filter.".$filter['custom']['text']."', 'filter_".$filter['custom']['text']."');";
- $state .= PHP_EOL.$this->_t(2) . "\$this->setState('filter.".$filter['custom']['text']."', \$".$filter['custom']['text'].");";
- $state .= PHP_EOL.$this->_t(2) . "\$".$filter['code']."_".$filter['custom']['text']." = \$this->getUserStateFromRequest(\$this->context . '.filter.".$filter['code']."_".$filter['custom']['text']."', 'filter_".$filter['code']."_".$filter['custom']['text']."');";
- $state .= PHP_EOL.$this->_t(2) . "\$this->setState('filter.".$filter['code']."_".$filter['custom']['text']."', \$".$filter['code']."_".$filter['custom']['text'].");";
- $spacer = PHP_EOL.PHP_EOL.$this->_t(2);
- } */
+ {
+ $state .= $spacer."\$".$filter['custom']['text']." = \$this->getUserStateFromRequest(\$this->context . '.filter.".$filter['custom']['text']."', 'filter_".$filter['custom']['text']."');";
+ $state .= PHP_EOL.$this->_t(2) . "\$this->setState('filter.".$filter['custom']['text']."', \$".$filter['custom']['text'].");";
+ $state .= PHP_EOL.$this->_t(2) . "\$".$filter['code']."_".$filter['custom']['text']." = \$this->getUserStateFromRequest(\$this->context . '.filter.".$filter['code']."_".$filter['custom']['text']."', 'filter_".$filter['code']."_".$filter['custom']['text']."');";
+ $state .= PHP_EOL.$this->_t(2) . "\$this->setState('filter.".$filter['code']."_".$filter['custom']['text']."', \$".$filter['code']."_".$filter['custom']['text'].");";
+ $spacer = PHP_EOL.PHP_EOL.$this->_t(2);
+ } */
$state .= $spacer . "\$" . $filter['code'] . " = \$this->getUserStateFromRequest(\$this->context . '.filter." . $filter['code'] . "', 'filter_" . $filter['code'] . "');";
$state .= PHP_EOL . $this->_t(2) . "\$this->setState('filter." . $filter['code'] . "', \$" . $filter['code'] . ");";
}
@@ -12649,7 +12665,7 @@ class Interpretation extends Fields
return $checkin;
}
- public function setGetItemsMethodStringFix($view, $viewName_list, $Component, $tab = '', $export = false)
+ public function setGetItemsMethodStringFix($viewName_single, $viewName_list, $Component, $tab = '', $export = false)
{
// add the fix if this view has the need for it
$fix = '';
@@ -12661,16 +12677,17 @@ class Interpretation extends Fields
}
// setup correct core target
$coreLoad = false;
- if (isset($this->permissionCore[$view]))
+ if (isset($this->permissionCore[$viewName_single]))
{
- $core = $this->permissionCore[$view];
+ $core = $this->permissionCore[$viewName_single];
$coreLoad = true;
}
$component = ComponentbuilderHelper::safeString($Component);
// check if the item has permissions.
- if ($coreLoad && isset($core['core.access']) && isset($this->permissionBuilder[$core['core.access']]) && ComponentbuilderHelper::checkArray($this->permissionBuilder[$core['core.access']]) && in_array($view, $this->permissionBuilder[$core['core.access']]))
+ if ($coreLoad && isset($core['core.access']) && isset($this->permissionBuilder[$core['core.access']]) && ComponentbuilderHelper::checkArray($this->permissionBuilder[$core['core.access']]) && in_array($viewName_single, $this->permissionBuilder[$core['core.access']]))
{
- $fix .= PHP_EOL . $this->_t(1) . $tab . $this->_t(3) . "\$access = (JFactory::getUser()->authorise('" . $core['core.access'] . "', 'com_" . $component . "." . $view . ".' . (int) \$item->id) && JFactory::getUser()->authorise('" . $core['core.access'] . "', 'com_" . $component . "'));";
+ $fix .= PHP_EOL . $this->_t(1) . $tab . $this->_t(3) . "//" . $this->setLine(__LINE__) . " Remove items the user can't access.";
+ $fix .= PHP_EOL . $this->_t(1) . $tab . $this->_t(3) . "\$access = (\$user->authorise('" . $core['core.access'] . "', 'com_" . $component . "." . $viewName_single . ".' . (int) \$item->id) && \$user->authorise('" . $core['core.access'] . "', 'com_" . $component . "'));";
$fix .= PHP_EOL . $this->_t(1) . $tab . $this->_t(3) . "if (!\$access)";
$fix .= PHP_EOL . $this->_t(1) . $tab . $this->_t(3) . "{";
$fix .= PHP_EOL . $this->_t(1) . $tab . $this->_t(4) . "unset(\$items[\$nr]);";
@@ -12700,9 +12717,9 @@ class Interpretation extends Fields
}
}
// open the values
- if (isset($this->{$methodName}[$view]) && ComponentbuilderHelper::checkArray($this->{$methodName}[$view]))
+ if (isset($this->{$methodName}[$viewName_single]) && ComponentbuilderHelper::checkArray($this->{$methodName}[$viewName_single]))
{
- foreach ($this->{$methodName}[$view] as $item)
+ foreach ($this->{$methodName}[$viewName_single] as $item)
{
switch ($item['method'])
{
@@ -12749,53 +12766,35 @@ class Interpretation extends Fields
$fix .= PHP_EOL . $this->_t(1) . $tab . $this->_t(3) . "\$" . $item['name'] . "Array = " . $decode . "(\$item->" . $item['name'] . $suffix_decode . ");";
$fix .= PHP_EOL . $this->_t(1) . $tab . $this->_t(3) . "if (" . $Component . "Helper::checkArray(\$" . $item['name'] . "Array))";
$fix .= PHP_EOL . $this->_t(1) . $tab . $this->_t(3) . "{";
- $fix .= PHP_EOL . $this->_t(1) . $tab . $this->_t(4) . "\$" . $item['name'] . "Names = '';";
- $fix .= PHP_EOL . $this->_t(1) . $tab . $this->_t(4) . "\$counter = 0;";
+ $fix .= PHP_EOL . $this->_t(1) . $tab . $this->_t(4) . "\$" . $item['name'] . "Names = array();";
$fix .= PHP_EOL . $this->_t(1) . $tab . $this->_t(4) . "foreach (\$" . $item['name'] . "Array as \$" . $item['name'] . ")";
$fix .= PHP_EOL . $this->_t(1) . $tab . $this->_t(4) . "{";
- $fix .= PHP_EOL . $this->_t(1) . $tab . $this->_t(5) . "if (\$counter == 0)";
- $fix .= PHP_EOL . $this->_t(1) . $tab . $this->_t(5) . "{";
- $fix .= PHP_EOL . $this->_t(1) . $tab . $this->_t(6) . "\$" . $item['name'] . "Names .= " . $Component . "Helper::getGroupName(\$" . $item['name'] . ");";
- $fix .= PHP_EOL . $this->_t(1) . $tab . $this->_t(5) . "}";
- $fix .= PHP_EOL . $this->_t(1) . $tab . $this->_t(5) . "else";
- $fix .= PHP_EOL . $this->_t(1) . $tab . $this->_t(5) . "{";
- $fix .= PHP_EOL . $this->_t(1) . $tab . $this->_t(6) . "\$" . $item['name'] . "Names .= ', '." . $Component . "Helper::getGroupName(\$" . $item['name'] . ");";
- $fix .= PHP_EOL . $this->_t(1) . $tab . $this->_t(5) . "}";
- $fix .= PHP_EOL . $this->_t(1) . $tab . $this->_t(5) . "\$counter++;";
+ $fix .= PHP_EOL . $this->_t(1) . $tab . $this->_t(5) . "\$" . $item['name'] . "Names[] = " . $Component . "Helper::getGroupName(\$" . $item['name'] . ");";
$fix .= PHP_EOL . $this->_t(1) . $tab . $this->_t(4) . "}";
- $fix .= PHP_EOL . $this->_t(1) . $tab . $this->_t(4) . "\$item->" . $item['name'] . " = \$" . $item['name'] . "Names;";
+ $fix .= PHP_EOL . $this->_t(1) . $tab . $this->_t(4) . "\$item->" . $item['name'] . " = implode(', ', \$" . $item['name'] . "Names);";
$fix .= PHP_EOL . $this->_t(1) . $tab . $this->_t(3) . "}";
}
/* elseif ($item['type'] === 'usergroup' && $export)
- {
- $fix .= PHP_EOL.$this->_t(1).$tab.$this->_t(3) . "//".$this->setLine(__LINE__)." decode ".$item['name'];
- $fix .= PHP_EOL.$this->_t(1).$tab.$this->_t(3) . "\$".$item['name']."Array = ".$decode."(\$item->".$item['name'].$suffix_decode.");";
- $fix .= PHP_EOL.$this->_t(1).$tab.$this->_t(3) . "if (".$Component."Helper::checkArray(\$".$item['name']."Array))";
- $fix .= PHP_EOL.$this->_t(1).$tab.$this->_t(3) . "{";
- $fix .= PHP_EOL.$this->_t(1).$tab.$this->_t(4) . "\$item->".$item['name']." = implode('|',\$".$item['name']."Array);";
- $fix .= PHP_EOL.$this->_t(1).$tab.$this->_t(3) . "}";
- } */
+ {
+ $fix .= PHP_EOL.$this->_t(1).$tab.$this->_t(3) . "//".$this->setLine(__LINE__)." decode ".$item['name'];
+ $fix .= PHP_EOL.$this->_t(1).$tab.$this->_t(3) . "\$".$item['name']."Array = ".$decode."(\$item->".$item['name'].$suffix_decode.");";
+ $fix .= PHP_EOL.$this->_t(1).$tab.$this->_t(3) . "if (".$Component."Helper::checkArray(\$".$item['name']."Array))";
+ $fix .= PHP_EOL.$this->_t(1).$tab.$this->_t(3) . "{";
+ $fix .= PHP_EOL.$this->_t(1).$tab.$this->_t(4) . "\$item->".$item['name']." = implode('|',\$".$item['name']."Array);";
+ $fix .= PHP_EOL.$this->_t(1).$tab.$this->_t(3) . "}";
+ } */
elseif ($item['translation'] && !$export)
{
- $fix .= PHP_EOL . $this->_t(1) . $tab . $this->_t(3) . "//" . $this->setLine(__LINE__) . " convert " . $item['name'];
+ $fix .= PHP_EOL . $this->_t(1) . $tab . $this->_t(3) . "//" . $this->setLine(__LINE__) . " decode " . $item['name'];
$fix .= PHP_EOL . $this->_t(1) . $tab . $this->_t(3) . "\$" . $item['name'] . "Array = " . $decode . "(\$item->" . $item['name'] . $suffix_decode . ");";
$fix .= PHP_EOL . $this->_t(1) . $tab . $this->_t(3) . "if (" . $Component . "Helper::checkArray(\$" . $item['name'] . "Array))";
$fix .= PHP_EOL . $this->_t(1) . $tab . $this->_t(3) . "{";
- $fix .= PHP_EOL . $this->_t(1) . $tab . $this->_t(4) . "\$" . $item['name'] . "Names = '';";
- $fix .= PHP_EOL . $this->_t(1) . $tab . $this->_t(4) . "\$counter = 0;";
+ $fix .= PHP_EOL . $this->_t(1) . $tab . $this->_t(4) . "\$" . $item['name'] . "Names = array();";
$fix .= PHP_EOL . $this->_t(1) . $tab . $this->_t(4) . "foreach (\$" . $item['name'] . "Array as \$" . $item['name'] . ")";
$fix .= PHP_EOL . $this->_t(1) . $tab . $this->_t(4) . "{";
- $fix .= PHP_EOL . $this->_t(1) . $tab . $this->_t(5) . "if (\$counter == 0)";
- $fix .= PHP_EOL . $this->_t(1) . $tab . $this->_t(5) . "{";
- $fix .= PHP_EOL . $this->_t(1) . $tab . $this->_t(6) . "\$" . $item['name'] . "Names .= JText:" . ":_(\$this->selectionTranslation(\$" . $item['name'] . ", '" . $item['name'] . "'));";
- $fix .= PHP_EOL . $this->_t(1) . $tab . $this->_t(5) . "}";
- $fix .= PHP_EOL . $this->_t(1) . $tab . $this->_t(5) . "else";
- $fix .= PHP_EOL . $this->_t(1) . $tab . $this->_t(5) . "{";
- $fix .= PHP_EOL . $this->_t(1) . $tab . $this->_t(6) . "\$" . $item['name'] . "Names .= ', '.JText:" . ":_(\$this->selectionTranslation(\$" . $item['name'] . ", '" . $item['name'] . "'));";
- $fix .= PHP_EOL . $this->_t(1) . $tab . $this->_t(5) . "}";
- $fix .= PHP_EOL . $this->_t(1) . $tab . $this->_t(5) . "\$counter++;";
+ $fix .= PHP_EOL . $this->_t(1) . $tab . $this->_t(5) . "\$" . $item['name'] . "Names[] = JText:" . ":_(\$this->selectionTranslation(\$" . $item['name'] . ", '" . $item['name'] . "'));";
$fix .= PHP_EOL . $this->_t(1) . $tab . $this->_t(4) . "}";
- $fix .= PHP_EOL . $this->_t(1) . $tab . $this->_t(4) . "\$item->" . $item['name'] . " = \$" . $item['name'] . "Names;";
+ $fix .= PHP_EOL . $this->_t(1) . $tab . $this->_t(4) . "\$item->" . $item['name'] . " = implode(', ', \$" . $item['name'] . "Names);";
$fix .= PHP_EOL . $this->_t(1) . $tab . $this->_t(3) . "}";
}
else
@@ -12899,15 +12898,15 @@ class Interpretation extends Fields
}
}
}
- // set translation (TODO) would be nice to cut down on double loops..
-// if (!$export && isset($this->selectionTranslationFixBuilder[$viewName_list]) && ComponentbuilderHelper::checkArray($this->selectionTranslationFixBuilder[$viewName_list]))
-// {
-// foreach ($this->selectionTranslationFixBuilder[$viewName_list] as $name => $values)
-// {
-// $fix .= PHP_EOL . $this->_t(1) . $tab . $this->_t(3) . "//" . $this->setLine(__LINE__) . " convert " . $name;
-// $fix .= PHP_EOL . $this->_t(1) . $tab . $this->_t(3) . "\$item->" . $name . " = \$this->selectionTranslation(\$item->" . $name . ", '" . $name . "');";
-// }
-// }
+ /* // set translation (TODO) would be nice to cut down on double loops..
+ if (!$export && isset($this->selectionTranslationFixBuilder[$viewName_list]) && ComponentbuilderHelper::checkArray($this->selectionTranslationFixBuilder[$viewName_list]))
+ {
+ foreach ($this->selectionTranslationFixBuilder[$viewName_list] as $name => $values)
+ {
+ $fix .= PHP_EOL . $this->_t(1) . $tab . $this->_t(3) . "//" . $this->setLine(__LINE__) . " convert " . $name;
+ $fix .= PHP_EOL . $this->_t(1) . $tab . $this->_t(3) . "\$item->" . $name . " = \$this->selectionTranslation(\$item->" . $name . ", '" . $name . "');";
+ }
+ } */
// load the relations after modeling
if (isset($this->fieldRelations[$viewName_list]) && ComponentbuilderHelper::checkArray($this->fieldRelations[$viewName_list]))
{
@@ -12929,8 +12928,53 @@ class Interpretation extends Fields
$forEachStart = PHP_EOL . PHP_EOL . $this->_t(1) . $tab . $this->_t(1) . "//" . $this->setLine(__LINE__) . " set values to display correctly.";
$forEachStart .= PHP_EOL . $this->_t(1) . $tab . $this->_t(1) . "if (" . $Component . "Helper::checkArray(\$items))";
$forEachStart .= PHP_EOL . $this->_t(1) . $tab . $this->_t(1) . "{";
+ // do not add to export since it is already done
+ if (!$export)
+ {
+ $forEachStart .= PHP_EOL . $this->_t(1) . $tab . $this->_t(2) . "//" . $this->setLine(__LINE__) . " Get the user object if not set.";
+ $forEachStart .= PHP_EOL . $this->_t(1) . $tab . $this->_t(2) . "if (!isset(\$user) || !" . $this->fileContentStatic[$this->hhh . 'Component' . $this->hhh] . "Helper::checkObject(\$user))";
+ $forEachStart .= PHP_EOL . $this->_t(1) . $tab . $this->_t(2) . "{";
+ $forEachStart .= PHP_EOL . $this->_t(1) . $tab . $this->_t(3) . "\$user = JFactory::getUser();";
+ $forEachStart .= PHP_EOL . $this->_t(1) . $tab . $this->_t(2) . "}";
+ }
+ // add the permissional removal of values the user has not right to view or access
+ if (isset($this->permissionFields[$viewName_single]) && ComponentbuilderHelper::checkArray($this->permissionFields[$viewName_single]))
+ {
+ $forEachStart .= PHP_EOL . $this->_t(1) . $tab . $this->_t(2) . "//" . $this->setLine(__LINE__) . " -- get global permissional control activation. (default is inactive) ---";
+ $forEachStart .= PHP_EOL . $this->_t(1) . $tab . $this->_t(2) . "//" . $this->setLine(__LINE__) . " to use this feature add a global option radio button to your";
+ $forEachStart .= PHP_EOL . $this->_t(1) . $tab . $this->_t(2) . "//" . $this->setLine(__LINE__) . " component with a value of 1 as on/activate and 0 as inactive/off";
+ $forEachStart .= PHP_EOL . $this->_t(1) . $tab . $this->_t(2) . "//" . $this->setLine(__LINE__) . " make sure it has the name: strict_permission_per_field";
+ $forEachStart .= PHP_EOL . $this->_t(1) . $tab . $this->_t(2) . "\$strict_permission_per_field = JComponentHelper::getParams('com_" . $component . "')->get('strict_permission_per_field', 0);" . PHP_EOL;
+ }
$forEachStart .= PHP_EOL . $this->_t(1) . $tab . $this->_t(2) . "foreach (\$items as \$nr => &\$item)";
$forEachStart .= PHP_EOL . $this->_t(1) . $tab . $this->_t(2) . "{";
+ // add the permissional removal of values the user has not right to view or access
+ if (isset($this->permissionFields[$viewName_single]) && ComponentbuilderHelper::checkArray($this->permissionFields[$viewName_single]))
+ {
+ $forEachStart .= PHP_EOL . $this->_t(1) . $tab . $this->_t(3) . "//" . $this->setLine(__LINE__) . " use permissional control if globaly set.";
+ $forEachStart .= PHP_EOL . $this->_t(1) . $tab . $this->_t(3) . "if (\$strict_permission_per_field)";
+ $forEachStart .= PHP_EOL . $this->_t(1) . $tab . $this->_t(3) . "{";
+ foreach ($this->permissionFields[$viewName_single] as $fieldName => $permission_options)
+ {
+ foreach($permission_options as $permission_option => $fieldType)
+ {
+ switch ($permission_option)
+ {
+ case 'access':
+ case 'view':
+ $forEachStart .= PHP_EOL . $this->_t(1) . $tab . $this->_t(4) . "//" . $this->setLine(__LINE__) . " set " . $permission_option . " permissional control for " . $fieldName . " value.";
+ $forEachStart .= PHP_EOL . $this->_t(1) . $tab . $this->_t(4) . "if (isset(\$item->" . $fieldName . ") && (!\$user->authorise('" . $viewName_single . "." . $permission_option . "." . $fieldName . "', 'com_" . $component . "." . $viewName_single . ".' . (int) \$item->id)";
+ $forEachStart .= PHP_EOL . $this->_t(1) . $tab . $this->_t(5) . "|| !\$user->authorise('" . $viewName_single . "." . $permission_option . "." . $fieldName . "', 'com_" . $component . "')))";
+ $forEachStart .= PHP_EOL . $this->_t(1) . $tab . $this->_t(4) . "{";
+ $forEachStart .= PHP_EOL . $this->_t(1) . $tab . $this->_t(5) . "//" . $this->setLine(__LINE__) . " We JUST empty the value (do you have a better idea)";
+ $forEachStart .= PHP_EOL . $this->_t(1) . $tab . $this->_t(5) . "\$item->" . $fieldName . " = '';";
+ $forEachStart .= PHP_EOL . $this->_t(1) . $tab . $this->_t(4) . "}";
+ break;
+ }
+ }
+ }
+ $forEachStart .= PHP_EOL . $this->_t(1) . $tab . $this->_t(3) . "}";
+ }
// remove these values if export
if ($export)
{
@@ -12939,6 +12983,7 @@ class Interpretation extends Fields
$fix .= PHP_EOL . $this->_t(1) . $tab . $this->_t(3) . "unset(\$item->checked_out);";
$fix .= PHP_EOL . $this->_t(1) . $tab . $this->_t(3) . "unset(\$item->checked_out_time);";
}
+
$fix .= PHP_EOL . $this->_t(1) . $tab . $this->_t(2) . "}";
$fix .= PHP_EOL . $this->_t(1) . $tab . $this->_t(1) . "}";
if ($export)
@@ -12953,7 +12998,7 @@ class Interpretation extends Fields
}
// add custom php to getitems method
- $fix .= $this->getCustomScriptBuilder('php_getitems', $view, PHP_EOL . PHP_EOL . $tab);
+ $fix .= $this->getCustomScriptBuilder('php_getitems', $viewName_single, PHP_EOL . PHP_EOL . $tab);
// load the encryption object if needed
$script = '';
@@ -13260,7 +13305,7 @@ class Interpretation extends Fields
foreach ($this->iconBuilder as $icon => $path)
{
$array_buket = explode('.', $icon);
- if (count($array_buket) == 3)
+ if (count((array) $array_buket) == 3)
{
list($type, $name, $action) = $array_buket;
}
diff --git a/admin/helpers/compiler/f_Infusion.php b/admin/helpers/compiler/f_Infusion.php
index 1447d0851..8ec7bad42 100644
--- a/admin/helpers/compiler/f_Infusion.php
+++ b/admin/helpers/compiler/f_Infusion.php
@@ -475,7 +475,7 @@ class Infusion extends Interpretation
$this->fileContentDynamic[$viewName_list][$this->hhh . 'LISTQUERY' . $this->hhh] = $this->setListQuery($viewName_single, $viewName_list);
// MODELEXPORTMETHOD <<>>
- $this->fileContentDynamic[$viewName_list][$this->hhh . 'MODELEXPORTMETHOD' . $this->hhh] = $this->setModelExportMethod($viewName_single, $viewName_list);
+ $this->fileContentDynamic[$viewName_list][$this->hhh . 'MODELEXPORTMETHOD' . $this->hhh] = $this->setGetItemsModelMethod($viewName_single, $viewName_list);
// MODELEXIMPORTMETHOD <<>>
$this->fileContentDynamic[$viewName_list][$this->hhh . 'CONTROLLEREXIMPORTMETHOD' . $this->hhh] = $this->setControllerEximportMethod($viewName_single, $viewName_list);
diff --git a/admin/helpers/componentbuilder.php b/admin/helpers/componentbuilder.php
index 67025475f..f3e76868e 100644
--- a/admin/helpers/componentbuilder.php
+++ b/admin/helpers/componentbuilder.php
@@ -1826,7 +1826,7 @@ abstract class ComponentbuilderHelper
$field = $db->loadObject();
// load the values form params
$field->xml = json_decode($field->xml);
- $field->type_name = self::safeString($field->type_name);
+ $field->type_name = self::safeTypeName($field->type_name);
$load = true;
// if category then name must be catid (only one per view)
if ($field->type_name == 'category')
@@ -6331,7 +6331,7 @@ abstract class ComponentbuilderHelper
}
}
// check if there are any view values remaining
- if (count($_result))
+ if (count((array) $_result))
{
$_result = json_encode($_result);
$_result = array($_result);
diff --git a/admin/models/admin_views.php b/admin/models/admin_views.php
index 9d28f3bc6..3350860e5 100644
--- a/admin/models/admin_views.php
+++ b/admin/models/admin_views.php
@@ -117,9 +117,15 @@ class ComponentbuilderModelAdmin_views extends JModelList
// set values to display correctly.
if (ComponentbuilderHelper::checkArray($items))
{
+ // Get the user object if not set.
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
+ {
+ $user = JFactory::getUser();
+ }
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('admin_view.access', 'com_componentbuilder.admin_view.' . (int) $item->id) && JFactory::getUser()->authorise('admin_view.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $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]);
@@ -326,6 +332,9 @@ class ComponentbuilderModelAdmin_views extends JModelList
/**
* Method to get list export data.
*
+ * @param array $pks The ids of the items to get
+ * @param JUser $user The user making the request
+ *
* @return mixed An array of data items on success, false on failure.
*/
public function getExportData($pks, $user = null)
@@ -333,10 +342,10 @@ class ComponentbuilderModelAdmin_views extends JModelList
// setup the query
if (ComponentbuilderHelper::checkArray($pks))
{
- // Set a value to know this is exporting method. (USE IN CUSTOM CODE TO ALTER OUTCOME)
+ // Set a value to know this is export method. (USE IN CUSTOM CODE TO ALTER OUTCOME)
$_export = true;
// Get the user object if not set.
- if (ComponentbuilderHelper::checkObject($user))
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
{
$user = JFactory::getUser();
}
@@ -372,7 +381,8 @@ class ComponentbuilderModelAdmin_views extends JModelList
{
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('admin_view.access', 'com_componentbuilder.admin_view.' . (int) $item->id) && JFactory::getUser()->authorise('admin_view.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $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]);
diff --git a/admin/models/admins_custom_tabs.php b/admin/models/admins_custom_tabs.php
index cd20baf6e..ac8d144bd 100644
--- a/admin/models/admins_custom_tabs.php
+++ b/admin/models/admins_custom_tabs.php
@@ -87,9 +87,15 @@ class ComponentbuilderModelAdmins_custom_tabs extends JModelList
// set values to display correctly.
if (ComponentbuilderHelper::checkArray($items))
{
+ // Get the user object if not set.
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
+ {
+ $user = JFactory::getUser();
+ }
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('admin_custom_tabs.access', 'com_componentbuilder.admin_custom_tabs.' . (int) $item->id) && JFactory::getUser()->authorise('admin_custom_tabs.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $access = ($user->authorise('admin_custom_tabs.access', 'com_componentbuilder.admin_custom_tabs.' . (int) $item->id) && $user->authorise('admin_custom_tabs.access', 'com_componentbuilder'));
if (!$access)
{
unset($items[$nr]);
diff --git a/admin/models/admins_fields.php b/admin/models/admins_fields.php
index 5555c1d36..61352a12a 100644
--- a/admin/models/admins_fields.php
+++ b/admin/models/admins_fields.php
@@ -87,9 +87,15 @@ class ComponentbuilderModelAdmins_fields extends JModelList
// set values to display correctly.
if (ComponentbuilderHelper::checkArray($items))
{
+ // Get the user object if not set.
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
+ {
+ $user = JFactory::getUser();
+ }
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('admin_fields.access', 'com_componentbuilder.admin_fields.' . (int) $item->id) && JFactory::getUser()->authorise('admin_fields.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $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]);
diff --git a/admin/models/admins_fields_conditions.php b/admin/models/admins_fields_conditions.php
index 7997768a9..9da1a1aeb 100644
--- a/admin/models/admins_fields_conditions.php
+++ b/admin/models/admins_fields_conditions.php
@@ -87,9 +87,15 @@ class ComponentbuilderModelAdmins_fields_conditions extends JModelList
// set values to display correctly.
if (ComponentbuilderHelper::checkArray($items))
{
+ // Get the user object if not set.
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
+ {
+ $user = JFactory::getUser();
+ }
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('admin_fields_conditions.access', 'com_componentbuilder.admin_fields_conditions.' . (int) $item->id) && JFactory::getUser()->authorise('admin_fields_conditions.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $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]);
diff --git a/admin/models/admins_fields_relations.php b/admin/models/admins_fields_relations.php
index c95fa14e4..82835f409 100644
--- a/admin/models/admins_fields_relations.php
+++ b/admin/models/admins_fields_relations.php
@@ -87,9 +87,15 @@ class ComponentbuilderModelAdmins_fields_relations extends JModelList
// set values to display correctly.
if (ComponentbuilderHelper::checkArray($items))
{
+ // Get the user object if not set.
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
+ {
+ $user = JFactory::getUser();
+ }
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('admin_fields_relations.access', 'com_componentbuilder.admin_fields_relations.' . (int) $item->id) && JFactory::getUser()->authorise('admin_fields_relations.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $access = ($user->authorise('admin_fields_relations.access', 'com_componentbuilder.admin_fields_relations.' . (int) $item->id) && $user->authorise('admin_fields_relations.access', 'com_componentbuilder'));
if (!$access)
{
unset($items[$nr]);
diff --git a/admin/models/class_extendings.php b/admin/models/class_extendings.php
index 37a3781f0..7122b54db 100644
--- a/admin/models/class_extendings.php
+++ b/admin/models/class_extendings.php
@@ -93,9 +93,15 @@ class ComponentbuilderModelClass_extendings extends JModelList
// set values to display correctly.
if (ComponentbuilderHelper::checkArray($items))
{
+ // Get the user object if not set.
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
+ {
+ $user = JFactory::getUser();
+ }
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('class_extends.access', 'com_componentbuilder.class_extends.' . (int) $item->id) && JFactory::getUser()->authorise('class_extends.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $access = ($user->authorise('class_extends.access', 'com_componentbuilder.class_extends.' . (int) $item->id) && $user->authorise('class_extends.access', 'com_componentbuilder'));
if (!$access)
{
unset($items[$nr]);
diff --git a/admin/models/class_methods.php b/admin/models/class_methods.php
index 88964fd0b..d2a0af058 100644
--- a/admin/models/class_methods.php
+++ b/admin/models/class_methods.php
@@ -97,9 +97,15 @@ class ComponentbuilderModelClass_methods extends JModelList
// set values to display correctly.
if (ComponentbuilderHelper::checkArray($items))
{
+ // Get the user object if not set.
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
+ {
+ $user = JFactory::getUser();
+ }
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('class_method.access', 'com_componentbuilder.class_method.' . (int) $item->id) && JFactory::getUser()->authorise('class_method.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $access = ($user->authorise('class_method.access', 'com_componentbuilder.class_method.' . (int) $item->id) && $user->authorise('class_method.access', 'com_componentbuilder'));
if (!$access)
{
unset($items[$nr]);
@@ -253,6 +259,9 @@ class ComponentbuilderModelClass_methods extends JModelList
/**
* Method to get list export data.
*
+ * @param array $pks The ids of the items to get
+ * @param JUser $user The user making the request
+ *
* @return mixed An array of data items on success, false on failure.
*/
public function getExportData($pks, $user = null)
@@ -260,10 +269,10 @@ class ComponentbuilderModelClass_methods extends JModelList
// setup the query
if (ComponentbuilderHelper::checkArray($pks))
{
- // Set a value to know this is exporting method. (USE IN CUSTOM CODE TO ALTER OUTCOME)
+ // Set a value to know this is export method. (USE IN CUSTOM CODE TO ALTER OUTCOME)
$_export = true;
// Get the user object if not set.
- if (ComponentbuilderHelper::checkObject($user))
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
{
$user = JFactory::getUser();
}
@@ -299,7 +308,8 @@ class ComponentbuilderModelClass_methods extends JModelList
{
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('class_method.access', 'com_componentbuilder.class_method.' . (int) $item->id) && JFactory::getUser()->authorise('class_method.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $access = ($user->authorise('class_method.access', 'com_componentbuilder.class_method.' . (int) $item->id) && $user->authorise('class_method.access', 'com_componentbuilder'));
if (!$access)
{
unset($items[$nr]);
diff --git a/admin/models/class_properties.php b/admin/models/class_properties.php
index 3ee8b17ad..0237b58fe 100644
--- a/admin/models/class_properties.php
+++ b/admin/models/class_properties.php
@@ -97,9 +97,15 @@ class ComponentbuilderModelClass_properties extends JModelList
// set values to display correctly.
if (ComponentbuilderHelper::checkArray($items))
{
+ // Get the user object if not set.
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
+ {
+ $user = JFactory::getUser();
+ }
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('class_property.access', 'com_componentbuilder.class_property.' . (int) $item->id) && JFactory::getUser()->authorise('class_property.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $access = ($user->authorise('class_property.access', 'com_componentbuilder.class_property.' . (int) $item->id) && $user->authorise('class_property.access', 'com_componentbuilder'));
if (!$access)
{
unset($items[$nr]);
@@ -253,6 +259,9 @@ class ComponentbuilderModelClass_properties extends JModelList
/**
* Method to get list export data.
*
+ * @param array $pks The ids of the items to get
+ * @param JUser $user The user making the request
+ *
* @return mixed An array of data items on success, false on failure.
*/
public function getExportData($pks, $user = null)
@@ -260,10 +269,10 @@ class ComponentbuilderModelClass_properties extends JModelList
// setup the query
if (ComponentbuilderHelper::checkArray($pks))
{
- // Set a value to know this is exporting method. (USE IN CUSTOM CODE TO ALTER OUTCOME)
+ // Set a value to know this is export method. (USE IN CUSTOM CODE TO ALTER OUTCOME)
$_export = true;
// Get the user object if not set.
- if (ComponentbuilderHelper::checkObject($user))
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
{
$user = JFactory::getUser();
}
@@ -299,7 +308,8 @@ class ComponentbuilderModelClass_properties extends JModelList
{
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('class_property.access', 'com_componentbuilder.class_property.' . (int) $item->id) && JFactory::getUser()->authorise('class_property.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $access = ($user->authorise('class_property.access', 'com_componentbuilder.class_property.' . (int) $item->id) && $user->authorise('class_property.access', 'com_componentbuilder'));
if (!$access)
{
unset($items[$nr]);
diff --git a/admin/models/components_admin_views.php b/admin/models/components_admin_views.php
index 2976d7fa4..10f3bf33a 100644
--- a/admin/models/components_admin_views.php
+++ b/admin/models/components_admin_views.php
@@ -87,9 +87,15 @@ class ComponentbuilderModelComponents_admin_views extends JModelList
// set values to display correctly.
if (ComponentbuilderHelper::checkArray($items))
{
+ // Get the user object if not set.
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
+ {
+ $user = JFactory::getUser();
+ }
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('component_admin_views.access', 'com_componentbuilder.component_admin_views.' . (int) $item->id) && JFactory::getUser()->authorise('component_admin_views.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $access = ($user->authorise('component_admin_views.access', 'com_componentbuilder.component_admin_views.' . (int) $item->id) && $user->authorise('component_admin_views.access', 'com_componentbuilder'));
if (!$access)
{
unset($items[$nr]);
diff --git a/admin/models/components_config.php b/admin/models/components_config.php
index 3b60bd76b..3e1dc7c6b 100644
--- a/admin/models/components_config.php
+++ b/admin/models/components_config.php
@@ -87,9 +87,15 @@ class ComponentbuilderModelComponents_config extends JModelList
// set values to display correctly.
if (ComponentbuilderHelper::checkArray($items))
{
+ // Get the user object if not set.
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
+ {
+ $user = JFactory::getUser();
+ }
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('component_config.access', 'com_componentbuilder.component_config.' . (int) $item->id) && JFactory::getUser()->authorise('component_config.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $access = ($user->authorise('component_config.access', 'com_componentbuilder.component_config.' . (int) $item->id) && $user->authorise('component_config.access', 'com_componentbuilder'));
if (!$access)
{
unset($items[$nr]);
diff --git a/admin/models/components_custom_admin_menus.php b/admin/models/components_custom_admin_menus.php
index 6acc69b14..5437e46de 100644
--- a/admin/models/components_custom_admin_menus.php
+++ b/admin/models/components_custom_admin_menus.php
@@ -87,9 +87,15 @@ class ComponentbuilderModelComponents_custom_admin_menus extends JModelList
// set values to display correctly.
if (ComponentbuilderHelper::checkArray($items))
{
+ // Get the user object if not set.
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
+ {
+ $user = JFactory::getUser();
+ }
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('component_custom_admin_menus.access', 'com_componentbuilder.component_custom_admin_menus.' . (int) $item->id) && JFactory::getUser()->authorise('component_custom_admin_menus.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $access = ($user->authorise('component_custom_admin_menus.access', 'com_componentbuilder.component_custom_admin_menus.' . (int) $item->id) && $user->authorise('component_custom_admin_menus.access', 'com_componentbuilder'));
if (!$access)
{
unset($items[$nr]);
diff --git a/admin/models/components_custom_admin_views.php b/admin/models/components_custom_admin_views.php
index 1a52b4847..6e4721b6b 100644
--- a/admin/models/components_custom_admin_views.php
+++ b/admin/models/components_custom_admin_views.php
@@ -87,9 +87,15 @@ class ComponentbuilderModelComponents_custom_admin_views extends JModelList
// set values to display correctly.
if (ComponentbuilderHelper::checkArray($items))
{
+ // Get the user object if not set.
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
+ {
+ $user = JFactory::getUser();
+ }
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('component_custom_admin_views.access', 'com_componentbuilder.component_custom_admin_views.' . (int) $item->id) && JFactory::getUser()->authorise('component_custom_admin_views.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $access = ($user->authorise('component_custom_admin_views.access', 'com_componentbuilder.component_custom_admin_views.' . (int) $item->id) && $user->authorise('component_custom_admin_views.access', 'com_componentbuilder'));
if (!$access)
{
unset($items[$nr]);
diff --git a/admin/models/components_dashboard.php b/admin/models/components_dashboard.php
index f9785b344..247cd7ee6 100644
--- a/admin/models/components_dashboard.php
+++ b/admin/models/components_dashboard.php
@@ -87,9 +87,15 @@ class ComponentbuilderModelComponents_dashboard extends JModelList
// set values to display correctly.
if (ComponentbuilderHelper::checkArray($items))
{
+ // Get the user object if not set.
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
+ {
+ $user = JFactory::getUser();
+ }
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('component_dashboard.access', 'com_componentbuilder.component_dashboard.' . (int) $item->id) && JFactory::getUser()->authorise('component_dashboard.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $access = ($user->authorise('component_dashboard.access', 'com_componentbuilder.component_dashboard.' . (int) $item->id) && $user->authorise('component_dashboard.access', 'com_componentbuilder'));
if (!$access)
{
unset($items[$nr]);
diff --git a/admin/models/components_files_folders.php b/admin/models/components_files_folders.php
index 7288797b2..a8b47edad 100644
--- a/admin/models/components_files_folders.php
+++ b/admin/models/components_files_folders.php
@@ -87,9 +87,15 @@ class ComponentbuilderModelComponents_files_folders extends JModelList
// set values to display correctly.
if (ComponentbuilderHelper::checkArray($items))
{
+ // Get the user object if not set.
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
+ {
+ $user = JFactory::getUser();
+ }
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('component_files_folders.access', 'com_componentbuilder.component_files_folders.' . (int) $item->id) && JFactory::getUser()->authorise('component_files_folders.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $access = ($user->authorise('component_files_folders.access', 'com_componentbuilder.component_files_folders.' . (int) $item->id) && $user->authorise('component_files_folders.access', 'com_componentbuilder'));
if (!$access)
{
unset($items[$nr]);
diff --git a/admin/models/components_mysql_tweaks.php b/admin/models/components_mysql_tweaks.php
index cba16c7ed..4dd13eaf4 100644
--- a/admin/models/components_mysql_tweaks.php
+++ b/admin/models/components_mysql_tweaks.php
@@ -87,9 +87,15 @@ class ComponentbuilderModelComponents_mysql_tweaks extends JModelList
// set values to display correctly.
if (ComponentbuilderHelper::checkArray($items))
{
+ // Get the user object if not set.
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
+ {
+ $user = JFactory::getUser();
+ }
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('component_mysql_tweaks.access', 'com_componentbuilder.component_mysql_tweaks.' . (int) $item->id) && JFactory::getUser()->authorise('component_mysql_tweaks.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $access = ($user->authorise('component_mysql_tweaks.access', 'com_componentbuilder.component_mysql_tweaks.' . (int) $item->id) && $user->authorise('component_mysql_tweaks.access', 'com_componentbuilder'));
if (!$access)
{
unset($items[$nr]);
diff --git a/admin/models/components_placeholders.php b/admin/models/components_placeholders.php
index 6dd0fdbce..f1968bb25 100644
--- a/admin/models/components_placeholders.php
+++ b/admin/models/components_placeholders.php
@@ -87,9 +87,15 @@ class ComponentbuilderModelComponents_placeholders extends JModelList
// set values to display correctly.
if (ComponentbuilderHelper::checkArray($items))
{
+ // Get the user object if not set.
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
+ {
+ $user = JFactory::getUser();
+ }
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('component_placeholders.access', 'com_componentbuilder.component_placeholders.' . (int) $item->id) && JFactory::getUser()->authorise('component_placeholders.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $access = ($user->authorise('component_placeholders.access', 'com_componentbuilder.component_placeholders.' . (int) $item->id) && $user->authorise('component_placeholders.access', 'com_componentbuilder'));
if (!$access)
{
unset($items[$nr]);
diff --git a/admin/models/components_plugins.php b/admin/models/components_plugins.php
index 60ab04568..e7bbc86f7 100644
--- a/admin/models/components_plugins.php
+++ b/admin/models/components_plugins.php
@@ -87,9 +87,15 @@ class ComponentbuilderModelComponents_plugins extends JModelList
// set values to display correctly.
if (ComponentbuilderHelper::checkArray($items))
{
+ // Get the user object if not set.
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
+ {
+ $user = JFactory::getUser();
+ }
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('component_plugins.access', 'com_componentbuilder.component_plugins.' . (int) $item->id) && JFactory::getUser()->authorise('component_plugins.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $access = ($user->authorise('component_plugins.access', 'com_componentbuilder.component_plugins.' . (int) $item->id) && $user->authorise('component_plugins.access', 'com_componentbuilder'));
if (!$access)
{
unset($items[$nr]);
diff --git a/admin/models/components_site_views.php b/admin/models/components_site_views.php
index 518e8dea8..7e46bebb3 100644
--- a/admin/models/components_site_views.php
+++ b/admin/models/components_site_views.php
@@ -87,9 +87,15 @@ class ComponentbuilderModelComponents_site_views extends JModelList
// set values to display correctly.
if (ComponentbuilderHelper::checkArray($items))
{
+ // Get the user object if not set.
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
+ {
+ $user = JFactory::getUser();
+ }
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('component_site_views.access', 'com_componentbuilder.component_site_views.' . (int) $item->id) && JFactory::getUser()->authorise('component_site_views.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $access = ($user->authorise('component_site_views.access', 'com_componentbuilder.component_site_views.' . (int) $item->id) && $user->authorise('component_site_views.access', 'com_componentbuilder'));
if (!$access)
{
unset($items[$nr]);
diff --git a/admin/models/components_updates.php b/admin/models/components_updates.php
index 3e97a94ad..51c9019cb 100644
--- a/admin/models/components_updates.php
+++ b/admin/models/components_updates.php
@@ -87,9 +87,15 @@ class ComponentbuilderModelComponents_updates extends JModelList
// set values to display correctly.
if (ComponentbuilderHelper::checkArray($items))
{
+ // Get the user object if not set.
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
+ {
+ $user = JFactory::getUser();
+ }
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('component_updates.access', 'com_componentbuilder.component_updates.' . (int) $item->id) && JFactory::getUser()->authorise('component_updates.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $access = ($user->authorise('component_updates.access', 'com_componentbuilder.component_updates.' . (int) $item->id) && $user->authorise('component_updates.access', 'com_componentbuilder'));
if (!$access)
{
unset($items[$nr]);
diff --git a/admin/models/custom_admin_views.php b/admin/models/custom_admin_views.php
index 2e928d801..c2d4dfccc 100644
--- a/admin/models/custom_admin_views.php
+++ b/admin/models/custom_admin_views.php
@@ -109,9 +109,15 @@ class ComponentbuilderModelCustom_admin_views extends JModelList
// set values to display correctly.
if (ComponentbuilderHelper::checkArray($items))
{
+ // Get the user object if not set.
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
+ {
+ $user = JFactory::getUser();
+ }
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('custom_admin_view.access', 'com_componentbuilder.custom_admin_view.' . (int) $item->id) && JFactory::getUser()->authorise('custom_admin_view.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $access = ($user->authorise('custom_admin_view.access', 'com_componentbuilder.custom_admin_view.' . (int) $item->id) && $user->authorise('custom_admin_view.access', 'com_componentbuilder'));
if (!$access)
{
unset($items[$nr]);
@@ -267,6 +273,9 @@ class ComponentbuilderModelCustom_admin_views extends JModelList
/**
* Method to get list export data.
*
+ * @param array $pks The ids of the items to get
+ * @param JUser $user The user making the request
+ *
* @return mixed An array of data items on success, false on failure.
*/
public function getExportData($pks, $user = null)
@@ -274,10 +283,10 @@ class ComponentbuilderModelCustom_admin_views extends JModelList
// setup the query
if (ComponentbuilderHelper::checkArray($pks))
{
- // Set a value to know this is exporting method. (USE IN CUSTOM CODE TO ALTER OUTCOME)
+ // Set a value to know this is export method. (USE IN CUSTOM CODE TO ALTER OUTCOME)
$_export = true;
// Get the user object if not set.
- if (ComponentbuilderHelper::checkObject($user))
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
{
$user = JFactory::getUser();
}
@@ -313,7 +322,8 @@ class ComponentbuilderModelCustom_admin_views extends JModelList
{
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('custom_admin_view.access', 'com_componentbuilder.custom_admin_view.' . (int) $item->id) && JFactory::getUser()->authorise('custom_admin_view.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $access = ($user->authorise('custom_admin_view.access', 'com_componentbuilder.custom_admin_view.' . (int) $item->id) && $user->authorise('custom_admin_view.access', 'com_componentbuilder'));
if (!$access)
{
unset($items[$nr]);
diff --git a/admin/models/custom_codes.php b/admin/models/custom_codes.php
index d2be51bb2..ff318b1e5 100644
--- a/admin/models/custom_codes.php
+++ b/admin/models/custom_codes.php
@@ -105,9 +105,15 @@ class ComponentbuilderModelCustom_codes extends JModelList
// set values to display correctly.
if (ComponentbuilderHelper::checkArray($items))
{
+ // Get the user object if not set.
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
+ {
+ $user = JFactory::getUser();
+ }
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('custom_code.access', 'com_componentbuilder.custom_code.' . (int) $item->id) && JFactory::getUser()->authorise('custom_code.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $access = ($user->authorise('custom_code.access', 'com_componentbuilder.custom_code.' . (int) $item->id) && $user->authorise('custom_code.access', 'com_componentbuilder'));
if (!$access)
{
unset($items[$nr]);
@@ -300,6 +306,9 @@ class ComponentbuilderModelCustom_codes extends JModelList
/**
* Method to get list export data.
*
+ * @param array $pks The ids of the items to get
+ * @param JUser $user The user making the request
+ *
* @return mixed An array of data items on success, false on failure.
*/
public function getExportData($pks, $user = null)
@@ -307,10 +316,10 @@ class ComponentbuilderModelCustom_codes extends JModelList
// setup the query
if (ComponentbuilderHelper::checkArray($pks))
{
- // Set a value to know this is exporting method. (USE IN CUSTOM CODE TO ALTER OUTCOME)
+ // Set a value to know this is export method. (USE IN CUSTOM CODE TO ALTER OUTCOME)
$_export = true;
// Get the user object if not set.
- if (ComponentbuilderHelper::checkObject($user))
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
{
$user = JFactory::getUser();
}
@@ -346,7 +355,8 @@ class ComponentbuilderModelCustom_codes extends JModelList
{
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('custom_code.access', 'com_componentbuilder.custom_code.' . (int) $item->id) && JFactory::getUser()->authorise('custom_code.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $access = ($user->authorise('custom_code.access', 'com_componentbuilder.custom_code.' . (int) $item->id) && $user->authorise('custom_code.access', 'com_componentbuilder'));
if (!$access)
{
unset($items[$nr]);
diff --git a/admin/models/dynamic_gets.php b/admin/models/dynamic_gets.php
index fade3ed2f..18cc8be8c 100644
--- a/admin/models/dynamic_gets.php
+++ b/admin/models/dynamic_gets.php
@@ -97,9 +97,15 @@ class ComponentbuilderModelDynamic_gets extends JModelList
// set values to display correctly.
if (ComponentbuilderHelper::checkArray($items))
{
+ // Get the user object if not set.
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
+ {
+ $user = JFactory::getUser();
+ }
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('dynamic_get.access', 'com_componentbuilder.dynamic_get.' . (int) $item->id) && JFactory::getUser()->authorise('dynamic_get.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $access = ($user->authorise('dynamic_get.access', 'com_componentbuilder.dynamic_get.' . (int) $item->id) && $user->authorise('dynamic_get.access', 'com_componentbuilder'));
if (!$access)
{
unset($items[$nr]);
@@ -250,6 +256,9 @@ class ComponentbuilderModelDynamic_gets extends JModelList
/**
* Method to get list export data.
*
+ * @param array $pks The ids of the items to get
+ * @param JUser $user The user making the request
+ *
* @return mixed An array of data items on success, false on failure.
*/
public function getExportData($pks, $user = null)
@@ -257,10 +266,10 @@ class ComponentbuilderModelDynamic_gets extends JModelList
// setup the query
if (ComponentbuilderHelper::checkArray($pks))
{
- // Set a value to know this is exporting method. (USE IN CUSTOM CODE TO ALTER OUTCOME)
+ // Set a value to know this is export method. (USE IN CUSTOM CODE TO ALTER OUTCOME)
$_export = true;
// Get the user object if not set.
- if (ComponentbuilderHelper::checkObject($user))
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
{
$user = JFactory::getUser();
}
@@ -296,7 +305,8 @@ class ComponentbuilderModelDynamic_gets extends JModelList
{
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('dynamic_get.access', 'com_componentbuilder.dynamic_get.' . (int) $item->id) && JFactory::getUser()->authorise('dynamic_get.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $access = ($user->authorise('dynamic_get.access', 'com_componentbuilder.dynamic_get.' . (int) $item->id) && $user->authorise('dynamic_get.access', 'com_componentbuilder'));
if (!$access)
{
unset($items[$nr]);
diff --git a/admin/models/fields.php b/admin/models/fields.php
index 8083bb364..19f1f8165 100644
--- a/admin/models/fields.php
+++ b/admin/models/fields.php
@@ -121,9 +121,15 @@ class ComponentbuilderModelFields extends JModelList
// set values to display correctly.
if (ComponentbuilderHelper::checkArray($items))
{
+ // Get the user object if not set.
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
+ {
+ $user = JFactory::getUser();
+ }
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('field.access', 'com_componentbuilder.field.' . (int) $item->id) && JFactory::getUser()->authorise('field.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $access = ($user->authorise('field.access', 'com_componentbuilder.field.' . (int) $item->id) && $user->authorise('field.access', 'com_componentbuilder'));
if (!$access)
{
unset($items[$nr]);
@@ -365,6 +371,9 @@ class ComponentbuilderModelFields extends JModelList
/**
* Method to get list export data.
*
+ * @param array $pks The ids of the items to get
+ * @param JUser $user The user making the request
+ *
* @return mixed An array of data items on success, false on failure.
*/
public function getExportData($pks, $user = null)
@@ -372,10 +381,10 @@ class ComponentbuilderModelFields extends JModelList
// setup the query
if (ComponentbuilderHelper::checkArray($pks))
{
- // Set a value to know this is exporting method. (USE IN CUSTOM CODE TO ALTER OUTCOME)
+ // Set a value to know this is export method. (USE IN CUSTOM CODE TO ALTER OUTCOME)
$_export = true;
// Get the user object if not set.
- if (ComponentbuilderHelper::checkObject($user))
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
{
$user = JFactory::getUser();
}
@@ -411,7 +420,8 @@ class ComponentbuilderModelFields extends JModelList
{
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('field.access', 'com_componentbuilder.field.' . (int) $item->id) && JFactory::getUser()->authorise('field.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $access = ($user->authorise('field.access', 'com_componentbuilder.field.' . (int) $item->id) && $user->authorise('field.access', 'com_componentbuilder'));
if (!$access)
{
unset($items[$nr]);
diff --git a/admin/models/fieldtype.php b/admin/models/fieldtype.php
index 07f155050..ad7e135ae 100644
--- a/admin/models/fieldtype.php
+++ b/admin/models/fieldtype.php
@@ -267,9 +267,15 @@ class ComponentbuilderModelFieldtype extends JModelAdmin
// set values to display correctly.
if (ComponentbuilderHelper::checkArray($items))
{
+ // Get the user object if not set.
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
+ {
+ $user = JFactory::getUser();
+ }
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('field.access', 'com_componentbuilder.field.' . (int) $item->id) && JFactory::getUser()->authorise('field.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $access = ($user->authorise('field.access', 'com_componentbuilder.field.' . (int) $item->id) && $user->authorise('field.access', 'com_componentbuilder'));
if (!$access)
{
unset($items[$nr]);
diff --git a/admin/models/fieldtypes.php b/admin/models/fieldtypes.php
index e810a9be6..31938f718 100644
--- a/admin/models/fieldtypes.php
+++ b/admin/models/fieldtypes.php
@@ -105,9 +105,15 @@ class ComponentbuilderModelFieldtypes extends JModelList
// set values to display correctly.
if (ComponentbuilderHelper::checkArray($items))
{
+ // Get the user object if not set.
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
+ {
+ $user = JFactory::getUser();
+ }
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('fieldtype.access', 'com_componentbuilder.fieldtype.' . (int) $item->id) && JFactory::getUser()->authorise('fieldtype.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $access = ($user->authorise('fieldtype.access', 'com_componentbuilder.fieldtype.' . (int) $item->id) && $user->authorise('fieldtype.access', 'com_componentbuilder'));
if (!$access)
{
unset($items[$nr]);
@@ -219,6 +225,9 @@ class ComponentbuilderModelFieldtypes extends JModelList
/**
* Method to get list export data.
*
+ * @param array $pks The ids of the items to get
+ * @param JUser $user The user making the request
+ *
* @return mixed An array of data items on success, false on failure.
*/
public function getExportData($pks, $user = null)
@@ -226,10 +235,10 @@ class ComponentbuilderModelFieldtypes extends JModelList
// setup the query
if (ComponentbuilderHelper::checkArray($pks))
{
- // Set a value to know this is exporting method. (USE IN CUSTOM CODE TO ALTER OUTCOME)
+ // Set a value to know this is export method. (USE IN CUSTOM CODE TO ALTER OUTCOME)
$_export = true;
// Get the user object if not set.
- if (ComponentbuilderHelper::checkObject($user))
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
{
$user = JFactory::getUser();
}
@@ -265,7 +274,8 @@ class ComponentbuilderModelFieldtypes extends JModelList
{
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('fieldtype.access', 'com_componentbuilder.fieldtype.' . (int) $item->id) && JFactory::getUser()->authorise('fieldtype.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $access = ($user->authorise('fieldtype.access', 'com_componentbuilder.fieldtype.' . (int) $item->id) && $user->authorise('fieldtype.access', 'com_componentbuilder'));
if (!$access)
{
unset($items[$nr]);
diff --git a/admin/models/help_documents.php b/admin/models/help_documents.php
index 2f3095dab..55cc41f0b 100644
--- a/admin/models/help_documents.php
+++ b/admin/models/help_documents.php
@@ -105,9 +105,15 @@ class ComponentbuilderModelHelp_documents extends JModelList
// set values to display correctly.
if (ComponentbuilderHelper::checkArray($items))
{
+ // Get the user object if not set.
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
+ {
+ $user = JFactory::getUser();
+ }
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('help_document.access', 'com_componentbuilder.help_document.' . (int) $item->id) && JFactory::getUser()->authorise('help_document.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $access = ($user->authorise('help_document.access', 'com_componentbuilder.help_document.' . (int) $item->id) && $user->authorise('help_document.access', 'com_componentbuilder'));
if (!$access)
{
unset($items[$nr]);
@@ -118,21 +124,12 @@ class ComponentbuilderModelHelp_documents extends JModelList
$groupsArray = json_decode($item->groups, true);
if (ComponentbuilderHelper::checkArray($groupsArray))
{
- $groupsNames = '';
- $counter = 0;
+ $groupsNames = array();
foreach ($groupsArray as $groups)
{
- if ($counter == 0)
- {
- $groupsNames .= ComponentbuilderHelper::getGroupName($groups);
- }
- else
- {
- $groupsNames .= ', '.ComponentbuilderHelper::getGroupName($groups);
- }
- $counter++;
+ $groupsNames[] = ComponentbuilderHelper::getGroupName($groups);
}
- $item->groups = $groupsNames;
+ $item->groups = implode(', ', $groupsNames);
}
}
}
@@ -271,6 +268,9 @@ class ComponentbuilderModelHelp_documents extends JModelList
/**
* Method to get list export data.
*
+ * @param array $pks The ids of the items to get
+ * @param JUser $user The user making the request
+ *
* @return mixed An array of data items on success, false on failure.
*/
public function getExportData($pks, $user = null)
@@ -278,10 +278,10 @@ class ComponentbuilderModelHelp_documents extends JModelList
// setup the query
if (ComponentbuilderHelper::checkArray($pks))
{
- // Set a value to know this is exporting method. (USE IN CUSTOM CODE TO ALTER OUTCOME)
+ // Set a value to know this is export method. (USE IN CUSTOM CODE TO ALTER OUTCOME)
$_export = true;
// Get the user object if not set.
- if (ComponentbuilderHelper::checkObject($user))
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
{
$user = JFactory::getUser();
}
@@ -311,7 +311,8 @@ class ComponentbuilderModelHelp_documents extends JModelList
{
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('help_document.access', 'com_componentbuilder.help_document.' . (int) $item->id) && JFactory::getUser()->authorise('help_document.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $access = ($user->authorise('help_document.access', 'com_componentbuilder.help_document.' . (int) $item->id) && $user->authorise('help_document.access', 'com_componentbuilder'));
if (!$access)
{
unset($items[$nr]);
diff --git a/admin/models/joomla_components.php b/admin/models/joomla_components.php
index b750ba375..ae86e3a73 100644
--- a/admin/models/joomla_components.php
+++ b/admin/models/joomla_components.php
@@ -2035,9 +2035,15 @@ class ComponentbuilderModelJoomla_components extends JModelList
// set values to display correctly.
if (ComponentbuilderHelper::checkArray($items))
{
+ // Get the user object if not set.
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
+ {
+ $user = JFactory::getUser();
+ }
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('joomla_component.access', 'com_componentbuilder.joomla_component.' . (int) $item->id) && JFactory::getUser()->authorise('joomla_component.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $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]);
@@ -2135,6 +2141,9 @@ class ComponentbuilderModelJoomla_components extends JModelList
/**
* Method to get list export data.
*
+ * @param array $pks The ids of the items to get
+ * @param JUser $user The user making the request
+ *
* @return mixed An array of data items on success, false on failure.
*/
public function getExportData($pks, $user = null)
@@ -2142,10 +2151,10 @@ class ComponentbuilderModelJoomla_components extends JModelList
// setup the query
if (ComponentbuilderHelper::checkArray($pks))
{
- // Set a value to know this is exporting method. (USE IN CUSTOM CODE TO ALTER OUTCOME)
+ // Set a value to know this is export method. (USE IN CUSTOM CODE TO ALTER OUTCOME)
$_export = true;
// Get the user object if not set.
- if (ComponentbuilderHelper::checkObject($user))
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
{
$user = JFactory::getUser();
}
@@ -2186,7 +2195,8 @@ class ComponentbuilderModelJoomla_components extends JModelList
{
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('joomla_component.access', 'com_componentbuilder.joomla_component.' . (int) $item->id) && JFactory::getUser()->authorise('joomla_component.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $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]);
diff --git a/admin/models/joomla_plugins.php b/admin/models/joomla_plugins.php
index 86d9d6107..8f43e81e8 100644
--- a/admin/models/joomla_plugins.php
+++ b/admin/models/joomla_plugins.php
@@ -276,9 +276,15 @@ class ComponentbuilderModelJoomla_plugins extends JModelList
// set values to display correctly.
if (ComponentbuilderHelper::checkArray($items))
{
+ // Get the user object if not set.
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
+ {
+ $user = JFactory::getUser();
+ }
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('joomla_plugin.access', 'com_componentbuilder.joomla_plugin.' . (int) $item->id) && JFactory::getUser()->authorise('joomla_plugin.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $access = ($user->authorise('joomla_plugin.access', 'com_componentbuilder.joomla_plugin.' . (int) $item->id) && $user->authorise('joomla_plugin.access', 'com_componentbuilder'));
if (!$access)
{
unset($items[$nr]);
diff --git a/admin/models/joomla_plugins_files_folders_urls.php b/admin/models/joomla_plugins_files_folders_urls.php
index 629c7fe83..6ae90bb80 100644
--- a/admin/models/joomla_plugins_files_folders_urls.php
+++ b/admin/models/joomla_plugins_files_folders_urls.php
@@ -87,9 +87,15 @@ class ComponentbuilderModelJoomla_plugins_files_folders_urls extends JModelList
// set values to display correctly.
if (ComponentbuilderHelper::checkArray($items))
{
+ // Get the user object if not set.
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
+ {
+ $user = JFactory::getUser();
+ }
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('joomla_plugin_files_folders_urls.access', 'com_componentbuilder.joomla_plugin_files_folders_urls.' . (int) $item->id) && JFactory::getUser()->authorise('joomla_plugin_files_folders_urls.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $access = ($user->authorise('joomla_plugin_files_folders_urls.access', 'com_componentbuilder.joomla_plugin_files_folders_urls.' . (int) $item->id) && $user->authorise('joomla_plugin_files_folders_urls.access', 'com_componentbuilder'));
if (!$access)
{
unset($items[$nr]);
diff --git a/admin/models/joomla_plugins_updates.php b/admin/models/joomla_plugins_updates.php
index 2e595bd74..e9dd08b62 100644
--- a/admin/models/joomla_plugins_updates.php
+++ b/admin/models/joomla_plugins_updates.php
@@ -87,9 +87,15 @@ class ComponentbuilderModelJoomla_plugins_updates extends JModelList
// set values to display correctly.
if (ComponentbuilderHelper::checkArray($items))
{
+ // Get the user object if not set.
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
+ {
+ $user = JFactory::getUser();
+ }
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('joomla_plugin_updates.access', 'com_componentbuilder.joomla_plugin_updates.' . (int) $item->id) && JFactory::getUser()->authorise('joomla_plugin_updates.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $access = ($user->authorise('joomla_plugin_updates.access', 'com_componentbuilder.joomla_plugin_updates.' . (int) $item->id) && $user->authorise('joomla_plugin_updates.access', 'com_componentbuilder'));
if (!$access)
{
unset($items[$nr]);
diff --git a/admin/models/language_translations.php b/admin/models/language_translations.php
index 42c6afea2..3cc6f7f38 100644
--- a/admin/models/language_translations.php
+++ b/admin/models/language_translations.php
@@ -89,9 +89,15 @@ class ComponentbuilderModelLanguage_translations extends JModelList
// set values to display correctly.
if (ComponentbuilderHelper::checkArray($items))
{
+ // Get the user object if not set.
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
+ {
+ $user = JFactory::getUser();
+ }
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('language_translation.access', 'com_componentbuilder.language_translation.' . (int) $item->id) && JFactory::getUser()->authorise('language_translation.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $access = ($user->authorise('language_translation.access', 'com_componentbuilder.language_translation.' . (int) $item->id) && $user->authorise('language_translation.access', 'com_componentbuilder'));
if (!$access)
{
unset($items[$nr]);
@@ -268,6 +274,9 @@ class ComponentbuilderModelLanguage_translations extends JModelList
/**
* Method to get list export data.
*
+ * @param array $pks The ids of the items to get
+ * @param JUser $user The user making the request
+ *
* @return mixed An array of data items on success, false on failure.
*/
public function getExportData($pks, $user = null)
@@ -275,10 +284,10 @@ class ComponentbuilderModelLanguage_translations extends JModelList
// setup the query
if (ComponentbuilderHelper::checkArray($pks))
{
- // Set a value to know this is exporting method. (USE IN CUSTOM CODE TO ALTER OUTCOME)
+ // Set a value to know this is export method. (USE IN CUSTOM CODE TO ALTER OUTCOME)
$_export = true;
// Get the user object if not set.
- if (ComponentbuilderHelper::checkObject($user))
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
{
$user = JFactory::getUser();
}
@@ -314,7 +323,8 @@ class ComponentbuilderModelLanguage_translations extends JModelList
{
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('language_translation.access', 'com_componentbuilder.language_translation.' . (int) $item->id) && JFactory::getUser()->authorise('language_translation.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $access = ($user->authorise('language_translation.access', 'com_componentbuilder.language_translation.' . (int) $item->id) && $user->authorise('language_translation.access', 'com_componentbuilder'));
if (!$access)
{
unset($items[$nr]);
diff --git a/admin/models/languages.php b/admin/models/languages.php
index 799112a9f..59636a80c 100644
--- a/admin/models/languages.php
+++ b/admin/models/languages.php
@@ -216,9 +216,15 @@ class ComponentbuilderModelLanguages extends JModelList
// set values to display correctly.
if (ComponentbuilderHelper::checkArray($items))
{
+ // Get the user object if not set.
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
+ {
+ $user = JFactory::getUser();
+ }
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('language.access', 'com_componentbuilder.language.' . (int) $item->id) && JFactory::getUser()->authorise('language.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $access = ($user->authorise('language.access', 'com_componentbuilder.language.' . (int) $item->id) && $user->authorise('language.access', 'com_componentbuilder'));
if (!$access)
{
unset($items[$nr]);
@@ -306,6 +312,9 @@ class ComponentbuilderModelLanguages extends JModelList
/**
* Method to get list export data.
*
+ * @param array $pks The ids of the items to get
+ * @param JUser $user The user making the request
+ *
* @return mixed An array of data items on success, false on failure.
*/
public function getExportData($pks, $user = null)
@@ -313,10 +322,10 @@ class ComponentbuilderModelLanguages extends JModelList
// setup the query
if (ComponentbuilderHelper::checkArray($pks))
{
- // Set a value to know this is exporting method. (USE IN CUSTOM CODE TO ALTER OUTCOME)
+ // Set a value to know this is export method. (USE IN CUSTOM CODE TO ALTER OUTCOME)
$_export = true;
// Get the user object if not set.
- if (ComponentbuilderHelper::checkObject($user))
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
{
$user = JFactory::getUser();
}
@@ -352,7 +361,8 @@ class ComponentbuilderModelLanguages extends JModelList
{
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('language.access', 'com_componentbuilder.language.' . (int) $item->id) && JFactory::getUser()->authorise('language.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $access = ($user->authorise('language.access', 'com_componentbuilder.language.' . (int) $item->id) && $user->authorise('language.access', 'com_componentbuilder'));
if (!$access)
{
unset($items[$nr]);
diff --git a/admin/models/layouts.php b/admin/models/layouts.php
index c6144becf..d27f7b1cf 100644
--- a/admin/models/layouts.php
+++ b/admin/models/layouts.php
@@ -101,9 +101,15 @@ class ComponentbuilderModelLayouts extends JModelList
// set values to display correctly.
if (ComponentbuilderHelper::checkArray($items))
{
+ // Get the user object if not set.
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
+ {
+ $user = JFactory::getUser();
+ }
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('layout.access', 'com_componentbuilder.layout.' . (int) $item->id) && JFactory::getUser()->authorise('layout.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $access = ($user->authorise('layout.access', 'com_componentbuilder.layout.' . (int) $item->id) && $user->authorise('layout.access', 'com_componentbuilder'));
if (!$access)
{
unset($items[$nr]);
@@ -239,6 +245,9 @@ class ComponentbuilderModelLayouts extends JModelList
/**
* Method to get list export data.
*
+ * @param array $pks The ids of the items to get
+ * @param JUser $user The user making the request
+ *
* @return mixed An array of data items on success, false on failure.
*/
public function getExportData($pks, $user = null)
@@ -246,10 +255,10 @@ class ComponentbuilderModelLayouts extends JModelList
// setup the query
if (ComponentbuilderHelper::checkArray($pks))
{
- // Set a value to know this is exporting method. (USE IN CUSTOM CODE TO ALTER OUTCOME)
+ // Set a value to know this is export method. (USE IN CUSTOM CODE TO ALTER OUTCOME)
$_export = true;
// Get the user object if not set.
- if (ComponentbuilderHelper::checkObject($user))
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
{
$user = JFactory::getUser();
}
@@ -285,7 +294,8 @@ class ComponentbuilderModelLayouts extends JModelList
{
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('layout.access', 'com_componentbuilder.layout.' . (int) $item->id) && JFactory::getUser()->authorise('layout.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $access = ($user->authorise('layout.access', 'com_componentbuilder.layout.' . (int) $item->id) && $user->authorise('layout.access', 'com_componentbuilder'));
if (!$access)
{
unset($items[$nr]);
diff --git a/admin/models/libraries.php b/admin/models/libraries.php
index 6c08fd585..e9b5a8215 100644
--- a/admin/models/libraries.php
+++ b/admin/models/libraries.php
@@ -101,17 +101,23 @@ class ComponentbuilderModelLibraries extends JModelList
// set values to display correctly.
if (ComponentbuilderHelper::checkArray($items))
{
+ // Get the user object if not set.
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
+ {
+ $user = JFactory::getUser();
+ }
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('library.access', 'com_componentbuilder.library.' . (int) $item->id) && JFactory::getUser()->authorise('library.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $access = ($user->authorise('library.access', 'com_componentbuilder.library.' . (int) $item->id) && $user->authorise('library.access', 'com_componentbuilder'));
if (!$access)
{
unset($items[$nr]);
continue;
}
- // convert how
- $item->how = $this->selectionTranslation($item->how, 'how');
+ // convert how
+ $item->how = $this->selectionTranslation($item->how, 'how');
}
diff --git a/admin/models/libraries_config.php b/admin/models/libraries_config.php
index e7730e88d..a3a66eb24 100644
--- a/admin/models/libraries_config.php
+++ b/admin/models/libraries_config.php
@@ -87,9 +87,15 @@ class ComponentbuilderModelLibraries_config extends JModelList
// set values to display correctly.
if (ComponentbuilderHelper::checkArray($items))
{
+ // Get the user object if not set.
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
+ {
+ $user = JFactory::getUser();
+ }
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('library_config.access', 'com_componentbuilder.library_config.' . (int) $item->id) && JFactory::getUser()->authorise('library_config.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $access = ($user->authorise('library_config.access', 'com_componentbuilder.library_config.' . (int) $item->id) && $user->authorise('library_config.access', 'com_componentbuilder'));
if (!$access)
{
unset($items[$nr]);
diff --git a/admin/models/libraries_files_folders_urls.php b/admin/models/libraries_files_folders_urls.php
index dc87d306e..d75effd77 100644
--- a/admin/models/libraries_files_folders_urls.php
+++ b/admin/models/libraries_files_folders_urls.php
@@ -87,9 +87,15 @@ class ComponentbuilderModelLibraries_files_folders_urls extends JModelList
// set values to display correctly.
if (ComponentbuilderHelper::checkArray($items))
{
+ // Get the user object if not set.
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
+ {
+ $user = JFactory::getUser();
+ }
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('library_files_folders_urls.access', 'com_componentbuilder.library_files_folders_urls.' . (int) $item->id) && JFactory::getUser()->authorise('library_files_folders_urls.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $access = ($user->authorise('library_files_folders_urls.access', 'com_componentbuilder.library_files_folders_urls.' . (int) $item->id) && $user->authorise('library_files_folders_urls.access', 'com_componentbuilder'));
if (!$access)
{
unset($items[$nr]);
diff --git a/admin/models/placeholders.php b/admin/models/placeholders.php
index de2ccf7dd..7f80e7cf0 100644
--- a/admin/models/placeholders.php
+++ b/admin/models/placeholders.php
@@ -93,9 +93,15 @@ class ComponentbuilderModelPlaceholders extends JModelList
// set values to display correctly.
if (ComponentbuilderHelper::checkArray($items))
{
+ // Get the user object if not set.
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
+ {
+ $user = JFactory::getUser();
+ }
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('placeholder.access', 'com_componentbuilder.placeholder.' . (int) $item->id) && JFactory::getUser()->authorise('placeholder.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $access = ($user->authorise('placeholder.access', 'com_componentbuilder.placeholder.' . (int) $item->id) && $user->authorise('placeholder.access', 'com_componentbuilder'));
if (!$access)
{
unset($items[$nr]);
@@ -185,6 +191,9 @@ class ComponentbuilderModelPlaceholders extends JModelList
/**
* Method to get list export data.
*
+ * @param array $pks The ids of the items to get
+ * @param JUser $user The user making the request
+ *
* @return mixed An array of data items on success, false on failure.
*/
public function getExportData($pks, $user = null)
@@ -192,10 +201,10 @@ class ComponentbuilderModelPlaceholders extends JModelList
// setup the query
if (ComponentbuilderHelper::checkArray($pks))
{
- // Set a value to know this is exporting method. (USE IN CUSTOM CODE TO ALTER OUTCOME)
+ // Set a value to know this is export method. (USE IN CUSTOM CODE TO ALTER OUTCOME)
$_export = true;
// Get the user object if not set.
- if (ComponentbuilderHelper::checkObject($user))
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
{
$user = JFactory::getUser();
}
@@ -231,7 +240,8 @@ class ComponentbuilderModelPlaceholders extends JModelList
{
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('placeholder.access', 'com_componentbuilder.placeholder.' . (int) $item->id) && JFactory::getUser()->authorise('placeholder.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $access = ($user->authorise('placeholder.access', 'com_componentbuilder.placeholder.' . (int) $item->id) && $user->authorise('placeholder.access', 'com_componentbuilder'));
if (!$access)
{
unset($items[$nr]);
diff --git a/admin/models/server.php b/admin/models/server.php
index c54490f3b..b0b8b76c9 100644
--- a/admin/models/server.php
+++ b/admin/models/server.php
@@ -247,9 +247,15 @@ class ComponentbuilderModelServer extends JModelAdmin
// set values to display correctly.
if (ComponentbuilderHelper::checkArray($items))
{
+ // Get the user object if not set.
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
+ {
+ $user = JFactory::getUser();
+ }
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('joomla_component.access', 'com_componentbuilder.joomla_component.' . (int) $item->id) && JFactory::getUser()->authorise('joomla_component.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $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]);
diff --git a/admin/models/servers.php b/admin/models/servers.php
index 5b3bfc6bb..4b7a9ae41 100644
--- a/admin/models/servers.php
+++ b/admin/models/servers.php
@@ -93,9 +93,15 @@ class ComponentbuilderModelServers extends JModelList
// set values to display correctly.
if (ComponentbuilderHelper::checkArray($items))
{
+ // Get the user object if not set.
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
+ {
+ $user = JFactory::getUser();
+ }
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('server.access', 'com_componentbuilder.server.' . (int) $item->id) && JFactory::getUser()->authorise('server.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $access = ($user->authorise('server.access', 'com_componentbuilder.server.' . (int) $item->id) && $user->authorise('server.access', 'com_componentbuilder'));
if (!$access)
{
unset($items[$nr]);
@@ -228,6 +234,9 @@ class ComponentbuilderModelServers extends JModelList
/**
* Method to get list export data.
*
+ * @param array $pks The ids of the items to get
+ * @param JUser $user The user making the request
+ *
* @return mixed An array of data items on success, false on failure.
*/
public function getExportData($pks, $user = null)
@@ -235,10 +244,10 @@ class ComponentbuilderModelServers extends JModelList
// setup the query
if (ComponentbuilderHelper::checkArray($pks))
{
- // Set a value to know this is exporting method. (USE IN CUSTOM CODE TO ALTER OUTCOME)
+ // Set a value to know this is export method. (USE IN CUSTOM CODE TO ALTER OUTCOME)
$_export = true;
// Get the user object if not set.
- if (ComponentbuilderHelper::checkObject($user))
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
{
$user = JFactory::getUser();
}
@@ -279,7 +288,8 @@ class ComponentbuilderModelServers extends JModelList
{
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('server.access', 'com_componentbuilder.server.' . (int) $item->id) && JFactory::getUser()->authorise('server.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $access = ($user->authorise('server.access', 'com_componentbuilder.server.' . (int) $item->id) && $user->authorise('server.access', 'com_componentbuilder'));
if (!$access)
{
unset($items[$nr]);
diff --git a/admin/models/site_views.php b/admin/models/site_views.php
index 7e23497a6..bb52770e8 100644
--- a/admin/models/site_views.php
+++ b/admin/models/site_views.php
@@ -113,9 +113,15 @@ class ComponentbuilderModelSite_views extends JModelList
// set values to display correctly.
if (ComponentbuilderHelper::checkArray($items))
{
+ // Get the user object if not set.
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
+ {
+ $user = JFactory::getUser();
+ }
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('site_view.access', 'com_componentbuilder.site_view.' . (int) $item->id) && JFactory::getUser()->authorise('site_view.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $access = ($user->authorise('site_view.access', 'com_componentbuilder.site_view.' . (int) $item->id) && $user->authorise('site_view.access', 'com_componentbuilder'));
if (!$access)
{
unset($items[$nr]);
@@ -271,6 +277,9 @@ class ComponentbuilderModelSite_views extends JModelList
/**
* Method to get list export data.
*
+ * @param array $pks The ids of the items to get
+ * @param JUser $user The user making the request
+ *
* @return mixed An array of data items on success, false on failure.
*/
public function getExportData($pks, $user = null)
@@ -278,10 +287,10 @@ class ComponentbuilderModelSite_views extends JModelList
// setup the query
if (ComponentbuilderHelper::checkArray($pks))
{
- // Set a value to know this is exporting method. (USE IN CUSTOM CODE TO ALTER OUTCOME)
+ // Set a value to know this is export method. (USE IN CUSTOM CODE TO ALTER OUTCOME)
$_export = true;
// Get the user object if not set.
- if (ComponentbuilderHelper::checkObject($user))
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
{
$user = JFactory::getUser();
}
@@ -317,7 +326,8 @@ class ComponentbuilderModelSite_views extends JModelList
{
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('site_view.access', 'com_componentbuilder.site_view.' . (int) $item->id) && JFactory::getUser()->authorise('site_view.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $access = ($user->authorise('site_view.access', 'com_componentbuilder.site_view.' . (int) $item->id) && $user->authorise('site_view.access', 'com_componentbuilder'));
if (!$access)
{
unset($items[$nr]);
diff --git a/admin/models/snippet_types.php b/admin/models/snippet_types.php
index 4764f5896..6de53c1d6 100644
--- a/admin/models/snippet_types.php
+++ b/admin/models/snippet_types.php
@@ -93,9 +93,15 @@ class ComponentbuilderModelSnippet_types extends JModelList
// set values to display correctly.
if (ComponentbuilderHelper::checkArray($items))
{
+ // Get the user object if not set.
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
+ {
+ $user = JFactory::getUser();
+ }
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('snippet_type.access', 'com_componentbuilder.snippet_type.' . (int) $item->id) && JFactory::getUser()->authorise('snippet_type.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $access = ($user->authorise('snippet_type.access', 'com_componentbuilder.snippet_type.' . (int) $item->id) && $user->authorise('snippet_type.access', 'com_componentbuilder'));
if (!$access)
{
unset($items[$nr]);
diff --git a/admin/models/snippets.php b/admin/models/snippets.php
index cae5329f7..8fb1c5c65 100644
--- a/admin/models/snippets.php
+++ b/admin/models/snippets.php
@@ -219,9 +219,15 @@ class ComponentbuilderModelSnippets extends JModelList
// set values to display correctly.
if (ComponentbuilderHelper::checkArray($items))
{
+ // Get the user object if not set.
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
+ {
+ $user = JFactory::getUser();
+ }
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('snippet.access', 'com_componentbuilder.snippet.' . (int) $item->id) && JFactory::getUser()->authorise('snippet.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $access = ($user->authorise('snippet.access', 'com_componentbuilder.snippet.' . (int) $item->id) && $user->authorise('snippet.access', 'com_componentbuilder'));
if (!$access)
{
unset($items[$nr]);
@@ -327,6 +333,9 @@ class ComponentbuilderModelSnippets extends JModelList
/**
* Method to get list export data.
*
+ * @param array $pks The ids of the items to get
+ * @param JUser $user The user making the request
+ *
* @return mixed An array of data items on success, false on failure.
*/
public function getExportData($pks, $user = null)
@@ -334,10 +343,10 @@ class ComponentbuilderModelSnippets extends JModelList
// setup the query
if (ComponentbuilderHelper::checkArray($pks))
{
- // Set a value to know this is exporting method. (USE IN CUSTOM CODE TO ALTER OUTCOME)
+ // Set a value to know this is export method. (USE IN CUSTOM CODE TO ALTER OUTCOME)
$_export = true;
// Get the user object if not set.
- if (ComponentbuilderHelper::checkObject($user))
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
{
$user = JFactory::getUser();
}
@@ -373,7 +382,8 @@ class ComponentbuilderModelSnippets extends JModelList
{
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('snippet.access', 'com_componentbuilder.snippet.' . (int) $item->id) && JFactory::getUser()->authorise('snippet.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $access = ($user->authorise('snippet.access', 'com_componentbuilder.snippet.' . (int) $item->id) && $user->authorise('snippet.access', 'com_componentbuilder'));
if (!$access)
{
unset($items[$nr]);
diff --git a/admin/models/templates.php b/admin/models/templates.php
index c9696442d..5740d07c8 100644
--- a/admin/models/templates.php
+++ b/admin/models/templates.php
@@ -101,9 +101,15 @@ class ComponentbuilderModelTemplates extends JModelList
// set values to display correctly.
if (ComponentbuilderHelper::checkArray($items))
{
+ // Get the user object if not set.
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
+ {
+ $user = JFactory::getUser();
+ }
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('template.access', 'com_componentbuilder.template.' . (int) $item->id) && JFactory::getUser()->authorise('template.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $access = ($user->authorise('template.access', 'com_componentbuilder.template.' . (int) $item->id) && $user->authorise('template.access', 'com_componentbuilder'));
if (!$access)
{
unset($items[$nr]);
@@ -239,6 +245,9 @@ class ComponentbuilderModelTemplates extends JModelList
/**
* Method to get list export data.
*
+ * @param array $pks The ids of the items to get
+ * @param JUser $user The user making the request
+ *
* @return mixed An array of data items on success, false on failure.
*/
public function getExportData($pks, $user = null)
@@ -246,10 +255,10 @@ class ComponentbuilderModelTemplates extends JModelList
// setup the query
if (ComponentbuilderHelper::checkArray($pks))
{
- // Set a value to know this is exporting method. (USE IN CUSTOM CODE TO ALTER OUTCOME)
+ // Set a value to know this is export method. (USE IN CUSTOM CODE TO ALTER OUTCOME)
$_export = true;
// Get the user object if not set.
- if (ComponentbuilderHelper::checkObject($user))
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
{
$user = JFactory::getUser();
}
@@ -285,7 +294,8 @@ class ComponentbuilderModelTemplates extends JModelList
{
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('template.access', 'com_componentbuilder.template.' . (int) $item->id) && JFactory::getUser()->authorise('template.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $access = ($user->authorise('template.access', 'com_componentbuilder.template.' . (int) $item->id) && $user->authorise('template.access', 'com_componentbuilder'));
if (!$access)
{
unset($items[$nr]);
diff --git a/admin/models/validation_rules.php b/admin/models/validation_rules.php
index cc1a7e768..b932d8cf5 100644
--- a/admin/models/validation_rules.php
+++ b/admin/models/validation_rules.php
@@ -93,9 +93,15 @@ class ComponentbuilderModelValidation_rules extends JModelList
// set values to display correctly.
if (ComponentbuilderHelper::checkArray($items))
{
+ // Get the user object if not set.
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
+ {
+ $user = JFactory::getUser();
+ }
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('validation_rule.access', 'com_componentbuilder.validation_rule.' . (int) $item->id) && JFactory::getUser()->authorise('validation_rule.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $access = ($user->authorise('validation_rule.access', 'com_componentbuilder.validation_rule.' . (int) $item->id) && $user->authorise('validation_rule.access', 'com_componentbuilder'));
if (!$access)
{
unset($items[$nr]);
@@ -183,6 +189,9 @@ class ComponentbuilderModelValidation_rules extends JModelList
/**
* Method to get list export data.
*
+ * @param array $pks The ids of the items to get
+ * @param JUser $user The user making the request
+ *
* @return mixed An array of data items on success, false on failure.
*/
public function getExportData($pks, $user = null)
@@ -190,10 +199,10 @@ class ComponentbuilderModelValidation_rules extends JModelList
// setup the query
if (ComponentbuilderHelper::checkArray($pks))
{
- // Set a value to know this is exporting method. (USE IN CUSTOM CODE TO ALTER OUTCOME)
+ // Set a value to know this is export method. (USE IN CUSTOM CODE TO ALTER OUTCOME)
$_export = true;
// Get the user object if not set.
- if (ComponentbuilderHelper::checkObject($user))
+ if (!isset($user) || !ComponentbuilderHelper::checkObject($user))
{
$user = JFactory::getUser();
}
@@ -229,7 +238,8 @@ class ComponentbuilderModelValidation_rules extends JModelList
{
foreach ($items as $nr => &$item)
{
- $access = (JFactory::getUser()->authorise('validation_rule.access', 'com_componentbuilder.validation_rule.' . (int) $item->id) && JFactory::getUser()->authorise('validation_rule.access', 'com_componentbuilder'));
+ // Remove items the user can't access.
+ $access = ($user->authorise('validation_rule.access', 'com_componentbuilder.validation_rule.' . (int) $item->id) && $user->authorise('validation_rule.access', 'com_componentbuilder'));
if (!$access)
{
unset($items[$nr]);
diff --git a/admin/views/compiler/view.html.php b/admin/views/compiler/view.html.php
index 25579ac97..547c2f7c9 100644
--- a/admin/views/compiler/view.html.php
+++ b/admin/views/compiler/view.html.php
@@ -53,7 +53,7 @@ class ComponentbuilderViewCompiler extends JViewLegacy
// Check for errors.
if (count($errors = $this->get('Errors')))
{
- throw new Exception(implode("\n", $errors), 500);
+ throw new Exception(implode(PHP_EOL, $errors), 500);
}
parent::display($tpl);
diff --git a/admin/views/get_snippets/view.html.php b/admin/views/get_snippets/view.html.php
index 245f8d23f..2c291b66a 100644
--- a/admin/views/get_snippets/view.html.php
+++ b/admin/views/get_snippets/view.html.php
@@ -44,7 +44,7 @@ class ComponentbuilderViewGet_snippets extends JViewLegacy
// Check for errors.
if (count($errors = $this->get('Errors')))
{
- throw new Exception(implode("\n", $errors), 500);
+ throw new Exception(implode(PHP_EOL, $errors), 500);
}
parent::display($tpl);
diff --git a/componentbuilder.xml b/componentbuilder.xml
index 742f61104..96a884659 100644
--- a/componentbuilder.xml
+++ b/componentbuilder.xml
@@ -1,7 +1,7 @@
COM_COMPONENTBUILDER
- 4th September, 2019
+ 5th September, 2019
Llewellyn van der Merwe
llewellyn@joomlacomponentbuilder.com
http://www.joomlacomponentbuilder.com
diff --git a/site/helpers/componentbuilder.php b/site/helpers/componentbuilder.php
index 89aefba5c..8f46b31e8 100644
--- a/site/helpers/componentbuilder.php
+++ b/site/helpers/componentbuilder.php
@@ -1826,7 +1826,7 @@ abstract class ComponentbuilderHelper
$field = $db->loadObject();
// load the values form params
$field->xml = json_decode($field->xml);
- $field->type_name = self::safeString($field->type_name);
+ $field->type_name = self::safeTypeName($field->type_name);
$load = true;
// if category then name must be catid (only one per view)
if ($field->type_name == 'category')
@@ -5601,7 +5601,7 @@ abstract class ComponentbuilderHelper
}
}
// check if there are any view values remaining
- if (count($_result))
+ if (count((array) $_result))
{
$_result = json_encode($_result);
$_result = array($_result);
diff --git a/site/views/api/view.html.php b/site/views/api/view.html.php
index 1260f7d3b..ac89d9ebd 100644
--- a/site/views/api/view.html.php
+++ b/site/views/api/view.html.php
@@ -40,7 +40,7 @@ class ComponentbuilderViewApi extends JViewLegacy
// Check for errors.
if (count($errors = $this->get('Errors')))
{
- throw new Exception(implode("\n", $errors), 500);
+ throw new Exception(implode(PHP_EOL, $errors), 500);
}
parent::display($tpl);