Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/server.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMorris Jobke <hey@morrisjobke.de>2017-07-05 12:22:39 +0300
committerGitHub <noreply@github.com>2017-07-05 12:22:39 +0300
commitbb1ff50f63b774ad3710ff34dcb32a5aa0b0d734 (patch)
treefec98867ec77694d83ce4ff3175aafbb306bddd5 /apps/files_sharing
parent9a55dd58677f7cb9661fa198de071df4d3380ada (diff)
parent187e76a184559f1b555c19377a146cf9dd330a5d (diff)
Merge pull request #5215 from nextcloud/autocomplete-settings-stable11
[stable11] some sharing settings
Diffstat (limited to 'apps/files_sharing')
-rw-r--r--apps/files_sharing/lib/Controller/ShareesAPIController.php20
1 files changed, 16 insertions, 4 deletions
diff --git a/apps/files_sharing/lib/Controller/ShareesAPIController.php b/apps/files_sharing/lib/Controller/ShareesAPIController.php
index 6b3208dc289..2fb554f392c 100644
--- a/apps/files_sharing/lib/Controller/ShareesAPIController.php
+++ b/apps/files_sharing/lib/Controller/ShareesAPIController.php
@@ -24,7 +24,7 @@
*/
namespace OCA\Files_Sharing\Controller;
-use OCP\AppFramework\Http;
+use OCP\AppFramework\Http\DataResponse;
use OCP\AppFramework\OCS\OCSBadRequestException;
use OCP\AppFramework\OCSController;
use OCP\Contacts\IManager;
@@ -423,10 +423,22 @@ class ShareesAPIController extends OCSController {
* @param int $perPage
* @param int|int[] $shareType
* @param bool $lookup
- * @return Http\DataResponse
+ * @return DataResponse
* @throws OCSBadRequestException
*/
public function search($search = '', $itemType = null, $page = 1, $perPage = 200, $shareType = null, $lookup = true) {
+
+ // only search for string larger than a given threshold
+ $threshold = (int)$this->config->getSystemValue('sharing.minSearchStringLength', 0);
+ if (strlen($search) < $threshold) {
+ return new DataResponse($this->result);
+ }
+
+ // never return more than the max. number of results configured in the config.php
+ $maxResults = (int)$this->config->getSystemValue('sharing.maxAutocompleteResults', 0);
+ if ($maxResults > 0) {
+ $perPage = min($perPage, $maxResults);
+ }
if ($perPage <= 0) {
throw new OCSBadRequestException('Invalid perPage argument');
}
@@ -495,7 +507,7 @@ class ShareesAPIController extends OCSController {
* @param int $page
* @param int $perPage
* @param bool $lookup
- * @return Http\DataResponse
+ * @return DataResponse
* @throws OCSBadRequestException
*/
protected function searchSharees($search, $itemType, array $shareTypes, $page, $perPage, $lookup) {
@@ -547,7 +559,7 @@ class ShareesAPIController extends OCSController {
$this->result['exact']['emails'] = $mailResults['exact'];
}
- $response = new Http\DataResponse($this->result);
+ $response = new DataResponse($this->result);
if (sizeof($this->reachedEndFor) < 3) {
$response->addHeader('Link', $this->getPaginationLink($page, [