1<?php 2require_once 'index.php'; 3echo '<h3>ImplyRights</h3>'; 4 5$rights = $admin->perm->getRights(); 6if (empty($rights)) { 7 echo 'Run the <b>Right</b> test first<br />'; 8 exit; 9} 10echo '<hr />'; 11 12// add 13for ($i = 0; $i < 5; $i++) { 14 $right = array_rand($rights); 15 $imright = array_rand($rights); 16 $data = array( 17 'right_id' => $rights[$right]['right_id'], 18 'implied_right_id' => $rights[$imright]['right_id'] 19 ); 20 $result = $admin->perm->implyRight($data); 21 if ($result === false) { 22 echo '<strong>Error on line: '.__LINE__.'</strong><br />'; 23 print_r($admin->getErrors()); 24 } else { 25 echo '<strong>' . $rights[$imright]['right_id'] . '</strong> is now 26 implied right from <strong>'. $rights[$right]['right_id'] .'</strong><br />'; 27 } 28} 29 30$right_id = $rights[$right]['right_id']; 31// view all with hierarchy 32echo 'All the rights with hierarchy:<br />'; 33$rights = $admin->perm->getRights(array( 34 'hierarchy' => true, 35 'rekey' => true, 36 'fields' => array('*', 'has_implied'), 37 'filters' => array('right_id' => $right_id), 38)); 39if ($rights === false) { 40 echo '<strong>Error on line: '.__LINE__.'</strong><br />'; 41 print_r($admin->getErrors()); 42} else { 43 Var_Dump::display($rights); 44 echo '<br />'; 45} 46 47// view all with implied and without hierarchy 48echo 'All the rights with implied and without hierarchy:<br />'; 49$rights = $admin->perm->getRights(array( 50 'implied' => true, 51 'rekey' => true, 52 'fields' => array('*', 'has_implied'), 53 'filters' => array('right_id' => $right_id), 54)); 55if ($rights === false) { 56 echo '<strong>Error on line: '.__LINE__.'</strong><br />'; 57 print_r($admin->getErrors()); 58} else { 59 Var_Dump::display($rights); 60 echo '<br />'; 61} 62 63// view all 64echo 'All the rights:<br />'; 65$rights = $admin->perm->getRights(); 66if ($rights === false) { 67 echo '<strong>Error on line: '.__LINE__.'</strong><br />'; 68 print_r($admin->getErrors()); 69} elseif (empty($rights)) { 70 echo 'No rights were found, thus we\'ve halted the rest of the test<br />'; 71} else { 72 Var_Dump::display($rights); 73 echo '<br />'; 74 75 // delete 76 // By right id 77 $id = array_rand($rights); 78 $filters = array('right_id' => $rights[$id]['right_id']); 79 $unimply = $admin->perm->unimplyRight($filters); 80 81 if ($unimply === false) { 82 echo '<strong>Error on line: '.__LINE__.'</strong><br />'; 83 print_r($admin->getErrors()); 84 } else { 85 echo 'Removed all records with the right id <strong>' . $rights[$id]['right_id'] . '</strong><br />'; 86 unset($rights[$id]); 87 } 88 89 // By implied right id 90 $id = array_rand($rights); 91 $filters = array('implied_right_id' => $rights[$id]['right_id']); 92 $unimply = $admin->perm->unimplyRight($filters); 93 94 if ($unimply === false) { 95 echo '<strong>Error on line: '.__LINE__.'</strong><br />'; 96 print_r($admin->getErrors()); 97 } else { 98 echo 'Removed all records with the implied right id <strong>' . $rights[$id]['right_id'] . '</strong><br />'; 99 unset($rights[$id]); 100 } 101 102 // By implied right id and right id 103 $right = array_rand($rights); 104 $impliedRight = array_rand($rights); 105 106 $filters = array( 107 'right_id' => $rights[$right]['right_id'], 108 'implied_right_id' => $rights[$impliedRight]['right_id'] 109 ); 110 $unimply = $admin->perm->unimplyRight($filters); 111 112 if ($unimply === false) { 113 echo '<strong>Error on line: '.__LINE__.'</strong><br />'; 114 print_r($admin->getErrors()); 115 } else { 116 echo 'Removed the record that has <strong>' . $rights[$right]['right_id'] . '</strong> 117 as right id and <strong>' . $rights[$impliedRight]['right_id'] . '</strong> as implied right id<br />'; 118 } 119 120 // view all 121 echo 'All the rights:<br />'; 122 $rights = $admin->perm->getRights(); 123 if ($rights === false) { 124 echo '<strong>Error on line: '.__LINE__.'</strong><br />'; 125 print_r($admin->getErrors()); 126 } elseif (empty($rights)) { 127 echo 'No rights were found<br />'; 128 } else { 129 Var_Dump::display($rights); 130 echo '<br />'; 131 } 132} 133echo '<hr />';