1<?php
2require_once 'index.php';
3echo '<h3>Group</h3>';
4
5// Add
6for ($i = 1; $i < 20; $i++) {
7    $data = array('group_define_name' => 'GROUP'.rand());
8    $groupId = $admin->perm->addGroup($data);
9
10    if ($groupId === false) {
11        echo '<strong>Error on line: '.__LINE__.'</strong><br />';
12        print_r($admin->getErrors());
13    } else {
14        echo 'Created Group Id <strong>'.$groupId.'</strong><br />';
15    }
16}
17
18// Get
19echo 'All the groups:<br />';
20$groups = $admin->perm->getGroups();
21
22if ($groups === false) {
23    echo '<strong>Error on line: '.__LINE__.'</strong><br />';
24    print_r($admin->getErrors());
25} elseif (empty($groups)) {
26    echo 'No groups were found, thus we\'ve halted the rest of the test<br />';
27} else {
28    Var_Dump::display($groups);
29    echo '<br />';
30
31    // Remove
32    $id = array_rand($groups);
33    $filters = array('group_id' => $groups[$id]['group_id']);
34    $removed = $admin->perm->removeGroup($filters);
35
36    if ($removed === false) {
37        echo '<strong>Error on line: '.__LINE__.'</strong><br />';
38        print_r($admin->getErrors());
39    } else {
40        echo '<strong>' . $groups[$id]['group_id'] . '</strong> was deleted<br />';
41        unset($groups[$id]);
42    }
43
44    // test recursive
45    $id = array_rand($groups);
46    $filters = array(
47        'group_id' => $groups[$id]['group_id'],
48        'recursive' => true
49     );
50    $removed = $admin->perm->removeGroup($filters);
51
52    if ($removed === false) {
53        echo '<strong>Error on line: '.__LINE__.'</strong><br />';
54        print_r($admin->getErrors());
55    } else {
56        echo '<strong>' . $groups[$id]['group_id'] . '</strong> was deleted and all its child groups<br />';
57        unset($groups[$id]);
58    }
59
60    // Update
61    $id = array_rand($groups);
62    $filters = array('group_id' => $groups[$id]['group_id']);
63    $data = array('group_define_name' => 'GROUP_' . $groups[$id]['group_id'] . '_UPDATED');
64    $updated = $admin->perm->updateGroup($data, $filters);
65
66    if ($updated === false) {
67        echo '<strong>Error on line: '.__LINE__.'</strong><br />';
68        print_r($admin->getErrors());
69    } else {
70        echo '<strong>' . $groups[$id]['group_id'] . '</strong> was updated<br />';
71        $params = array('filters' => array('group_id' => $groups[$id]['group_id']));
72        $group = $admin->perm->getGroups($params);
73
74        if ($group === false) {
75            echo '<strong>Error on line: '.__LINE__.'</strong><br />';
76            print_r($admin->getErrors());
77        } elseif (empty($group)) {
78            echo 'No groups were found<br />';
79        } else {
80            Var_Dump::display($group);
81            echo '<br />';
82        }
83    }
84
85    // Get
86    echo 'All the groups:<br />';
87
88    $groups = $admin->perm->getGroups();
89    if ($groups === false) {
90        echo '<strong>Error on line: '.__LINE__.'</strong><br />';
91        print_r($admin->getErrors());
92    } elseif (empty($groups)) {
93        echo 'No groups were found<br />';
94    } else {
95        Var_Dump::display($groups);
96        echo '<br />';
97    }
98}
99echo '<hr />';
100