1<?php
2require_once 'index.php';
3echo '<h3>User</h3>';
4
5// Add
6echo 'Make 10 normal users and 10 admins<br />';
7for ($i = 1; $i < 21; $i++) {
8    $data = array(
9        'handle' => 'johndoe' . rand(),
10        'passwd' => 'dummypass',
11        'name'  => 'asdf'.$i,
12        'email' => 'fleh@example.com'.$i
13    );
14
15    if ($i > 10) {
16        $data['perm_type'] = 3;
17    } else {
18        $data['perm_type'] = 1;
19    }
20
21    $user_id = $admin->addUser($data);
22    if ($user_id === false) {
23        echo '<strong>Error on line: '.__LINE__.'</strong><br />';
24        print_r($admin->getErrors());
25    } else {
26        echo 'Created User Id <strong>' . $user_id . '</strong><br />';
27    }
28}
29
30// Get
31// Group of users
32echo 'All the users:<br />';
33$users = $admin->getUsers(array('container' => 'auth'));
34if ($users === false) {
35    echo '<strong>Error on line: '.__LINE__.'</strong><br />';
36    print_r($admin->getErrors());
37} elseif (empty($users)) {
38    echo 'No users were found, thus we\'ve halted the rest of the test<br />';
39} else {
40    Var_Dump::display($users);
41    echo '<br />';
42
43    $id = array_rand($users);
44    // single user
45    echo 'This user will be removed:<br />';
46    $user = $admin->getUsers(array('filters' => array('perm_user_id' => $users[$id]['perm_user_id'])));
47    if ($user === false) {
48        echo '<strong>Error on line: '.__LINE__.'</strong><br />';
49        print_r($admin->getErrors());
50    } elseif (empty($user)) {
51        echo 'No user was found.<br />';
52    } else {
53        Var_Dump::display($user);
54        echo '<br />';
55    }
56
57    // Remove
58    $removed = $admin->removeUser($users[$id]['perm_user_id']);
59
60    if ($removed === false) {
61        echo '<strong>Error on line: '.__LINE__.'</strong><br />';
62        print_r($admin->getErrors());
63    } else {
64        echo '<strong>' . $id . '</strong> was deleted<br />';
65        unset($users[$id]);
66    }
67
68    // Update
69    $id = array_rand($users);
70    $updateUser = $users[$id]['perm_user_id'];
71    $data = array(
72        'handle' => 'updated_user'.rand(),
73        'passwd' => 'foo',
74    );
75    $updated = $admin->updateUser($data, $updateUser);
76    if ($updated === false) {
77        echo '<strong>Error on line: '.__LINE__.'</strong><br />';
78        print_r($admin->getErrors());
79    } else {
80        echo '<strong>' . $updateUser . '</strong> was updated<br />';
81        $user = $admin->getUsers(array('filters' => array('perm_user_id' => $updateUser)));
82
83        if ($user === false) {
84            echo '<strong>Error on line: '.__LINE__.'</strong><br />';
85            print_r($admin->getErrors());
86        } elseif (empty($user)) {
87            echo 'No user was found.<br />';
88        } else {
89            Var_Dump::display($user);
90            echo '<br />';
91        }
92    }
93
94    // Get
95    echo 'All the users:<br />';
96
97    $users = $admin->getUsers(array('container' => 'auth'));
98    if ($users === false) {
99        echo '<strong>Error on line: '.__LINE__.'</strong><br />';
100        print_r($admin->getErrors());
101    } elseif (empty($users)) {
102        echo 'No users were found.<br />';
103    } else {
104        Var_Dump::display($users);
105        echo '<br />';
106    }
107
108    $user = array_rand($users);
109
110    echo 'Test fetching auth_user_id AND perm_user_id with PERM getUsers()<br />';
111    echo 'Auth<br />';
112    $params = array('filters' => array('auth_user_id' => $users[$user]['auth_user_id']));
113    $user = $admin->auth->getUsers($params);
114    if ($user === false) {
115        echo '<strong>Error on line: '.__LINE__.'</strong><br />';
116        print_r($admin->getErrors());
117    } elseif (empty($user)) {
118        echo 'No user was found.';
119    } else {
120        Var_Dump::display($user);
121        echo '<br />';
122    }
123    unset($user);
124
125    echo 'Perm<br />';
126    $params = array('filters' => array('perm_user_id' => '3'));
127    $user = $admin->perm->getUsers($params);
128    if ($user === false) {
129        echo '<strong>Error on line: '.__LINE__.'</strong><br />';
130        print_r($admin->getErrors());
131    } elseif (empty($user)) {
132        echo 'No user was found.<br />';
133    } else {
134        Var_Dump::display($user);
135        echo '<br />';
136    }
137}
138echo '<hr />';
139