LiveUser_Admin
[ class tree: LiveUser_Admin ] [ index: LiveUser_Admin ] [ all elements ]

Source for file Subgroups.php

Documentation is available at Subgroups.php

  1. <?php
  2. require_once 'index.php';
  3. echo '<h3>Subgroups</h3>';
  4.  
  5. $groups $admin->perm->getGroups();
  6. if ($groups === false{
  7.     echo '<strong>Error on line: '.__LINE__.'</strong><br />';
  8.     print_r($admin->getErrors());
  9. elseif  (empty($groups)) {
  10.     echo 'Run the <strong>Group</strong> test first<br />';
  11.     exit;
  12. }
  13.  
  14. $groups_with_subgroup = array();
  15. for ($i = 0; $i < 10; $i++{
  16.     $group array_rand($groups);
  17.     $subgroup array_rand($groups);
  18.     $groups_with_subgroup[$groups[$group]['group_id'];
  19.  
  20.     if ($group === $subgroup{
  21.         continue;
  22.     }
  23.  
  24.     $data = array(
  25.         'group_id' => $groups[$group]['group_id'],
  26.         'subgroup_id' => $groups[$subgroup]['group_id']
  27.     );
  28.     $assign $admin->perm->assignSubGroup($data);
  29.  
  30.     if ($assign === false{
  31.         echo '<strong>Error on line: '.__LINE__.'</strong><br />';
  32.         print_r($admin->getErrors());
  33.     else {
  34.         echo '<strong>' $groups[$subgroup]['group_id''</strong> is now
  35.               subgroup of <strong>'$groups[$group]['group_id'.'</strong><br />';
  36.     }
  37. }
  38.  
  39.     echo '<br /><br />All the groups with hierarchy mode on and rekey to true:<br />';
  40.     $groups $admin->perm->getGroups(
  41.         array(
  42.             'select' => 'all',
  43.             'rekey' => true,
  44.             'filters' => array('group_id' => $groups_with_subgroup),
  45.             'hierarchy' => true,
  46.         )
  47.     );
  48.     if ($groups === false{
  49.         echo '<strong>Error on line: '.__LINE__.'</strong><br />';
  50.         print_r($admin->getErrors());
  51.     elseif (empty($groups)) {
  52.         echo 'No groups were found<br />';
  53.     else {
  54.         Var_Dump::display($groups);
  55.         echo '<br />';
  56.     }
  57.  
  58.  
  59. echo 'All the groups:<br />';
  60. $groups $admin->perm->getGroups();
  61. if ($groups === false{
  62.     echo '<strong>Error on line: '.__LINE__.'</strong><br />';
  63.     print_r($admin->getErrors());
  64. elseif (empty($groups)) {
  65.     echo 'No groups were found, thus we\'ve halted the rest of the test<br />';
  66. else {
  67.     Var_Dump::display($groups);
  68.     echo '<br />';
  69.  
  70.     // unassignSugroup
  71.     // By group id
  72.     $id array_rand($groups);
  73.     $filters = array('group_id' => $groups[$id]['group_id']);
  74.  
  75.     echo 'Group with subgroups: '.$groups[$id]['group_id'].'<br />';
  76.     $subgroups $admin->perm->getGroups(array('subgroups' => true'filters' => $filters));
  77.     if ($subgroups === false{
  78.         echo '<strong>Error on line: '.__LINE__.'</strong><br />';
  79.         print_r($admin->getErrors());
  80.     else {
  81.         Var_Dump::display($subgroups);
  82.         echo '<br />';
  83.     }
  84.  
  85.     $unassign $admin->perm->unassignSubGroup($filters);
  86.  
  87.     if ($unassign === false{
  88.         echo '<strong>Error on line: '.__LINE__.'</strong><br />';
  89.         print_r($admin->getErrors());
  90.     else {
  91.         echo 'Removed all records with the group id <strong>' $groups[$id]['group_id''</strong><br />';
  92.         unset($groups[$id]);
  93.     }
  94.  
  95.     // By subgroup id
  96.     $id array_rand($groups);
  97.     $filters = array('subgroup_id' => $groups[$id]['group_id']);
  98.     $unassign $admin->perm->unassignSubGroup($filters);
  99.  
  100.     if ($unassign === false{
  101.         echo '<strong>Error on line: '.__LINE__.'</strong><br />';
  102.         print_r($admin->getErrors());
  103.     else {
  104.         echo 'Removed all records with the subgroup id <strong>' $groups[$id]['group_id''</strong><br />';
  105.         unset($groups[$id]);
  106.     }
  107.     // By subgroup id and group id
  108.     $group array_rand($groups);
  109.     $subgroup array_rand($groups);
  110.     $filters = array(
  111.         'group_id' => $groups[$group]['group_id'],
  112.         'subgroup_id' => $groups[$subgroup]['group_id']
  113.     );
  114.     $unassign $admin->perm->unassignSubGroup($filters);
  115.  
  116.     if ($unassign === false{
  117.         echo '<strong>Error on line: '.__LINE__.'</strong><br />';
  118.         print_r($admin->getErrors());
  119.     else {
  120.     echo 'Removed the record that has <strong>' $groups[$group]['group_id''</strong>
  121.               as group id  and <strong>' $groups[$subgroup]['group_id''</strong> as subgroup id<br />';
  122.     }
  123.  
  124.     echo '<br /><br />Test getParentGroup:<br />';
  125.     for ($i = 0; $i < 5; $i++{
  126.         $subgroup array_rand($groups);
  127.         $result $admin->perm->getParentGroup($groups[$subgroup]['group_id']);
  128.         if ($result === false{
  129.             echo '<strong>Error on line: '.__LINE__.'</strong><br />';
  130.             print_r($admin->getErrors());
  131.         else {
  132.             echo 'Group <strong>' $result['group_id''</strong> is the parent group of <strong>' $groups[$subgroup]['group_id''</strong><br />';
  133.         }
  134.     }
  135.  
  136.     // Get
  137.     echo '<br /><br />All the groups:<br />';
  138.     $groups $admin->perm->getGroups();
  139.     if ($groups === false{
  140.         echo '<strong>Error on line: '.__LINE__.'</strong><br />';
  141.         print_r($admin->getErrors());
  142.     elseif (empty($groups)) {
  143.         echo 'No groups were found<br />';
  144.     else {
  145.         Var_Dump::display($groups);
  146.         echo '<br />';
  147.     }
  148. }
  149. echo '<hr />';

Documentation generated on Mon, 11 Mar 2019 15:39:43 -0400 by phpDocumentor 1.4.4. PEAR Logo Copyright © PHP Group 2004.