1. Уважаемые пользователи, прежде чем ответить в теме или создать новую,
    внимательно ознакомьтесь с правилами раздела

    Кому лень работать или руки не оттуда - пользуйтесь услугами специалистов
  2. Не задавайте глупых вопросов "Посоветуйте какой-нибудь компонент.."

    Есть JED!!! Ищите там!!!

Помощь Создание групп пользователей вручную

Тема в разделе "Joomla", создана пользователем zditovetsky, 10 июн 2015.

Информация :
  • Уважаемые пользователи, прежде чем ответить в теме или создать новую, внимательно ознакомьтесь с правилами раздела
  • Не задавайте глупых вопросов "Посоветуйте какой-нибудь компонент.." Есть JED!!! Ищите там!!!
  • Аналоги ищите там же - на JED!!!
  • Новая версия? - У кого будет - тот выложит!
Модераторы: arman29, DMS, NightHunter
  1. zditovetsky

    zditovetsky Постоялец

    Регистр.:
    20 май 2014
    Сообщения:
    83
    Симпатии:
    10
    Добрый день!
    Мне нужно в моем компоненте вручную создавать группы пользователей, которые будут входить в подгруппу Registered -> Teams.
    Подскажите как это делать правильно.
    Нашел код:
    Код:
    $child_query = "SELECT max(`rgt`) FROM `#__usergroups` WHERE `id` = ".$parent_id;
    $db->setQuery($child_query);
    $max_rgt = $db->loadResult();
    
    // calculate left and rgt for new entry
    $new_lft = $max_rgt;
    $new_rgt = $max_rgt + 1;
    
    // update lft and rgt of all entries having lft , rgt greater than max_rgt
    $upd1 = "UPDATE `#__usergroups` SET `lft` = `lft` + 2 WHERE `lft` > ".$max_rgt;
    $upd2 = "UPDATE `#__usergroups` SET `rgt` = `rgt` + 2 WHERE `rgt` >= ".$max_rgt;
    
    // insert new  child
    $insert = "INSERT INTO `#__usergroups`(`parent_id`,`lft`,`rgt`,`title`) VALUES(".$matrix_parent.",".$new_lft.",".$new_rgt.",'".$title."')";
    Пробовал создавать группы через админку джумлы и проверял изменение всех значений (lft и rgt) в базе данных. Сравнивая с алгоритмом в коде выше, в результате должны получаться другие значения... Ничего не понятно с этими lft / rgt... Зачем они вообще нужны? Логика не понятна...
    Буду признательно благодарен за любую подсказку / совет!

    PS: версия Jooml'ы 3.х