| +--------------------------------------------------------------------------+ | Author: Aleksander Machniak | | Author: Jeroen van Meeuwen | +--------------------------------------------------------------------------+ */ /** * Service providing domains listing */ class kolab_api_service_domains extends kolab_api_service { /** * Returns service capabilities. * * @param string $domain Domain name * * @return array Capabilities list */ public function capabilities($domain) { return array( 'list' => 'r', ); } /** * Users listing (with searching). * * @param array $get GET parameters * @param array $post POST parameters * * @return array List result with 'list' and 'count' items */ public function domains_list($get, $post) { $auth = Auth::get_instance(); $domains = $auth->list_domains(); $count = count($domains); // pagination if (!empty($post['page_size']) && $count) { $size = (int) $post['page_size']; $page = !empty($post['page']) ? $post['page'] : 1; $page = max(1, (int) $page); $offset = ($page - 1) * $size; $domains = array_slice($domains, $offset, $size, true); } return array( 'list' => $domains, 'count' => $count, ); } }