Exemplo n.º 1
0
 function get_group_children_tree($var_1 = null, $var_2 = null, $var_3 = null, $var_4 = null)
 {
     global $_CB_database;
     if (!$var_4) {
         $var_4 = true;
     }
     if (checkJversion() == 2) {
         $query = 'SELECT a.' . $_CB_database->NameQuote('id') . ' AS value' . ', a.' . $_CB_database->NameQuote('title') . ' AS text' . ', COUNT( DISTINCT b.' . $_CB_database->NameQuote('id') . ' ) AS level' . "\n FROM " . $_CB_database->NameQuote('#__usergroups') . " AS a" . "\n LEFT JOIN " . $_CB_database->NameQuote('#__usergroups') . " AS b" . ' ON a.' . $_CB_database->NameQuote('lft') . ' > b.' . $_CB_database->NameQuote('lft') . ' AND a.' . $_CB_database->NameQuote('rgt') . ' < b.' . $_CB_database->NameQuote('rgt') . "\n GROUP BY a." . $_CB_database->NameQuote('id') . "\n ORDER BY a." . $_CB_database->NameQuote('lft') . " ASC";
         $_CB_database->setQuery($query);
         $groups = $_CB_database->loadObjectList();
         $user_groups = array();
         for ($i = 0, $n = count($groups); $i < $n; $i++) {
             $groups[$i]->text = str_repeat('- ', $groups[$i]->level) . JText::_($groups[$i]->text);
             if ($var_4) {
                 $user_groups[$i] = JHtml::_('select.option', $groups[$i]->value, $groups[$i]->text);
             } else {
                 $user_groups[$i] = array('value' => $groups[$i]->value, 'text' => $groups[$i]->text);
             }
         }
         $return = $user_groups;
     } else {
         if (!$var_3) {
             $var_3 = true;
         }
         $return = $this->_acl->get_group_children_tree($var_1, $var_2, $var_3, $var_4);
     }
     return $return;
 }