/** * Test KTAPI_Role getList(), getById(), getByName * */ function testRoles() { // getList() $list = KTAPI_Role::getList(); $this->assertTrue(count($list) > 0); // getById() $role = KTAPI_Role::getById(-2); $this->assertTrue($role->Name == 'Owner'); // getByName() $role = KTAPI_Role::getByName('Publisher'); $this->assertTrue($role->Id == 2); }
/** * Get a list of available roles * * @author KnowledgeTree Team * @access public * @param string $filter The beginning letter(s) of the role being searched for * @return array Response. */ public function get_roles($filter = null) { $response['status_code'] = 1; // check the filter if (!empty($filter)) { if (!is_string($filter)) { $response['message'] = _kt('Filter should be a string.'); return $response; } // escape filter string - prevent sql injection $filter = addslashes($filter); $filter = "name like '{$filter}%'"; } $listing = KTAPI_Role::getList($filter); if (PEAR::isError($listing)) { $response['message'] = $listing->getMessage(); return $response; } // flatten role objects $roles = array(); foreach ($listing as $ktapi_roll) { $roles[] = array('id' => $ktapi_roll->getId(), 'name' => $ktapi_roll->getName()); } $response['status_code'] = 0; $response['results'] = $roles; return $response; }