all(); Guard::requireLogin(); Guard::requireAbilityOrForbidden(OperationsAuthorizationPolicy::ABILITY_ADDRESS_BOOK_VIEW); gridRequireGetRequest(); $query = requestInput()->queryAll(); $filters = gridParseFiltersFromSchemaFile(__DIR__ . '/filter-schema.php', $query); foreach ($query as $rawKey => $rawValue) { $key = strtolower(trim((string) $rawKey)); if (preg_match('/^(cf_|cfm_|cfd_)/', $key) !== 1) { continue; } $filters[$key] = $rawValue; } $currentUserId = (int) ($session['user']['id'] ?? 0); $addressBookService = (app(AddressBookServicesFactory::class))->createAddressBookService(); $result = $addressBookService->buildGridResult($currentUserId, $filters); gridJsonDataResult( (array) ($result['data'] ?? []), (int) ($result['total'] ?? 0) );