Source for file groupparent.php
Documentation is available at groupparent.php
* @package Joomla.Administrator
* @copyright Copyright (C) 2005 - 2013 Open Source Matters, Inc. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt
* Form Field class for the Joomla Framework.
* @package Joomla.Administrator
protected $type =
'GroupParent';
* Method to get the field options.
* @return array The field option objects.
$query =
$db->getQuery(true)
->select('a.id AS value, a.title AS text, COUNT(DISTINCT b.id) AS level')
->from('#__usergroups AS a')
->join('LEFT', $db->quoteName('#__usergroups') .
' AS b ON a.lft > b.lft AND a.rgt < b.rgt');
// Prevent parenting to children of this item.
if ($id =
$this->form->getValue('id'))
$query->join('LEFT', $db->quoteName('#__usergroups') .
' AS p ON p.id = ' . (int)
$id)
->where('NOT(a.lft >= p.lft AND a.rgt <= p.rgt)');
$query->group('a.id, a.title, a.lft, a.rgt')
$options =
$db->loadObjectList();
catch
(RuntimeException $e)
// Pad the option text with spaces using depth level as a multiplier.
for ($i =
0, $n =
count($options); $i <
$n; $i++
)
// Show groups only if user is super admin or group is not super admin
if ($user->authorise('core.admin') ||
(!JAccess::checkGroup($options[$i]->value, 'core.admin')))
$options[$i]->text =
str_repeat('- ', $options[$i]->level) .
$options[$i]->text;
// Merge any additional options in the XML definition.
Documentation generated on Tue, 19 Nov 2013 15:04:08 +0100 by phpDocumentor 1.4.3