Commit Graph

55 Commits

Author SHA1 Message Date
provokateurin 80ec3b1b0a fix(MailPlugin): Stop applying the offset twice and the limit per wide/exact
Signed-off-by: provokateurin <kate@provokateurin.de>
2026-06-01 14:24:01 +02:00
provokateurin 5c21fb5062 perf(MailPlugin): Optimize checking group memberships
Signed-off-by: provokateurin <kate@provokateurin.de>
2026-06-01 14:22:45 +02:00
provokateurin 1c7e381858 refactor(MailPlugin): Continue execution after extracting email instead of calling itself
Signed-off-by: provokateurin <kate@provokateurin.de>
2026-06-01 14:22:45 +02:00
provokateurin d92aac8f7d fix(MailPlugin): Use correct type for exact id match
Signed-off-by: provokateurin <kate@provokateurin.de>
2026-06-01 14:22:45 +02:00
Côme Chilliet 1ab09ec753 chore: Apply new coding standard to all files
The diff can be checked using: git diff --ignore-all-space --ignore-blank-lines
To see only the changes not related to blank lines.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2026-06-01 13:46:39 +02:00
Ferdinand Thiessen e0ba4d71b6 chore: add missing Override attribute to OC
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-04-28 21:29:27 +02:00
Daniel Calviño Sánchez c40fcba5a4 fix: Fix user collaborators returned when searching for mail collaborators
The MailPlugin collaborator returned results for both user and mail
collaborators, but it was registered only for mail collaborators. While
it might make sense to move the user results to the UserPlugin instead
that change would be more complex and riskier, so for now the MailPlugin
is now registered for both user and mail collaborators and the results
are limited only to the registered type.

As the plugins are registered only with their class and then resolved
when needed using dependency injection it is not possible (as far as I
know) to provide an explicit parameter in the constructor to
differentiate whether the MailPlugin should return user or mail
collaborators. To overcome this two subclasses are introduced,
MailByMailPlugin and UserByMailPlugin, which just hardcode in their
constructor the collaborator type that their parent MailPlugin must use,
and those subclasses are the ones registered instead of the MailPlugin
(which still contains all the logic).

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2025-11-11 01:20:17 +01:00
Louis 77194d5232 Merge pull request #54102 from nextcloud/ensure-cloud-key
CodeQL Advanced / Analyze (actions) (push) Has been cancelled
CodeQL Advanced / Analyze (javascript-typescript) (push) Has been cancelled
Integration sqlite / changes (push) Has been cancelled
Integration sqlite / integration-sqlite (master, 8.4, main, --tags ~@large files_features) (push) Has been cancelled
Integration sqlite / integration-sqlite (master, 8.4, main, capabilities_features) (push) Has been cancelled
Integration sqlite / integration-sqlite (master, 8.4, main, collaboration_features) (push) Has been cancelled
Integration sqlite / integration-sqlite (master, 8.4, main, comments_features) (push) Has been cancelled
Integration sqlite / integration-sqlite (master, 8.4, main, dav_features) (push) Has been cancelled
Integration sqlite / integration-sqlite (master, 8.4, main, features) (push) Has been cancelled
Integration sqlite / integration-sqlite (master, 8.4, main, federation_features) (push) Has been cancelled
Integration sqlite / integration-sqlite (master, 8.4, main, file_conversions) (push) Has been cancelled
Integration sqlite / integration-sqlite (master, 8.4, main, filesdrop_features) (push) Has been cancelled
Integration sqlite / integration-sqlite (master, 8.4, main, ldap_features) (push) Has been cancelled
Integration sqlite / integration-sqlite (master, 8.4, main, openldap_features) (push) Has been cancelled
Integration sqlite / integration-sqlite (master, 8.4, main, openldap_numerical_features) (push) Has been cancelled
Integration sqlite / integration-sqlite (master, 8.4, main, remoteapi_features) (push) Has been cancelled
Integration sqlite / integration-sqlite (master, 8.4, main, routing_features) (push) Has been cancelled
Integration sqlite / integration-sqlite (master, 8.4, main, setup_features) (push) Has been cancelled
Integration sqlite / integration-sqlite (master, 8.4, main, sharees_features) (push) Has been cancelled
Integration sqlite / integration-sqlite (master, 8.4, main, sharing_features) (push) Has been cancelled
Integration sqlite / integration-sqlite (master, 8.4, main, theming_features) (push) Has been cancelled
Integration sqlite / integration-sqlite (master, 8.4, main, videoverification_features) (push) Has been cancelled
Integration sqlite / integration-sqlite-summary (push) Has been cancelled
PHPUnit nodb / changes (push) Has been cancelled
Ask for feedback on PRs / pr-feedback (push) Has been cancelled
Update code signing revocation list / update-code-signing-crl-master (push) Has been cancelled
Update code signing revocation list / update-code-signing-crl-stable22 (push) Has been cancelled
Update code signing revocation list / update-code-signing-crl-stable23 (push) Has been cancelled
Update code signing revocation list / update-code-signing-crl-stable24 (push) Has been cancelled
Update code signing revocation list / update-code-signing-crl-stable25 (push) Has been cancelled
Update code signing revocation list / update-code-signing-crl-stable26 (push) Has been cancelled
Update code signing revocation list / update-code-signing-crl-stable27 (push) Has been cancelled
Update code signing revocation list / update-code-signing-crl-stable28 (push) Has been cancelled
Update code signing revocation list / update-code-signing-crl-stable29 (push) Has been cancelled
Update code signing revocation list / update-code-signing-crl-stable30 (push) Has been cancelled
Update code signing revocation list / update-code-signing-crl-stable31 (push) Has been cancelled
Update code signing revocation list / update-code-signing-crl-stable32 (push) Has been cancelled
Update CA certificate bundle / update-ca-certificate-bundle-master (push) Has been cancelled
Update CA certificate bundle / update-ca-certificate-bundle-stable22 (push) Has been cancelled
Update CA certificate bundle / update-ca-certificate-bundle-stable23 (push) Has been cancelled
Update CA certificate bundle / update-ca-certificate-bundle-stable24 (push) Has been cancelled
Update CA certificate bundle / update-ca-certificate-bundle-stable25 (push) Has been cancelled
Update CA certificate bundle / update-ca-certificate-bundle-stable26 (push) Has been cancelled
Update CA certificate bundle / update-ca-certificate-bundle-stable27 (push) Has been cancelled
Update CA certificate bundle / update-ca-certificate-bundle-stable28 (push) Has been cancelled
Update CA certificate bundle / update-ca-certificate-bundle-stable29 (push) Has been cancelled
Update CA certificate bundle / update-ca-certificate-bundle-stable30 (push) Has been cancelled
Update CA certificate bundle / update-ca-certificate-bundle-stable31 (push) Has been cancelled
Update CA certificate bundle / update-ca-certificate-bundle-stable32 (push) Has been cancelled
PHPUnit SQLite / changes (push) Has been cancelled
PHPUnit SQLite / SQLite (PHP 8.2) (push) Has been cancelled
PHPUnit SQLite / SQLite (PHP 8.3) (push) Has been cancelled
PHPUnit SQLite / SQLite (PHP 8.4) (push) Has been cancelled
PHPUnit SQLite / phpunit-sqlite-summary (push) Has been cancelled
PHPUnit PostgreSQL / changes (push) Has been cancelled
PHPUnit PostgreSQL / PostgreSQL 17 (PHP 8.3) - database tests (push) Has been cancelled
PHPUnit PostgreSQL / PostgreSQL 13 (PHP 8.2) - database tests (push) Has been cancelled
PHPUnit PostgreSQL / PostgreSQL 17 (PHP 8.2) - database tests (push) Has been cancelled
PHPUnit PostgreSQL / PostgreSQL 17 (PHP 8.4) - database tests (push) Has been cancelled
PHPUnit PostgreSQL / phpunit-pgsql-summary (push) Has been cancelled
PHPUnit OCI / changes (push) Has been cancelled
PHPUnit OCI / Oracle 18 (PHP 8.2) - database tests (push) Has been cancelled
PHPUnit OCI / Oracle 11 (PHP 8.2) - database tests (push) Has been cancelled
PHPUnit OCI / Oracle 21 (PHP 8.2) - database tests (push) Has been cancelled
PHPUnit OCI / Oracle 23 (PHP 8.3) - database tests (push) Has been cancelled
PHPUnit OCI / Oracle 23 (PHP 8.4) - database tests (push) Has been cancelled
PHPUnit OCI / phpunit-oci-summary (push) Has been cancelled
PHPUnit nodb / No DB unit tests (PHP 8.2) (push) Has been cancelled
PHPUnit nodb / No DB unit tests (PHP 8.3) (push) Has been cancelled
PHPUnit nodb / No DB unit tests (PHP 8.4) (push) Has been cancelled
PHPUnit nodb / phpunit-nodb-summary (push) Has been cancelled
PHPUnit mysql / changes (push) Has been cancelled
PHPUnit mysql / MySQL 8.0 (PHP 8.3) - database tests (push) Has been cancelled
PHPUnit mysql / MySQL 8.0 (PHP 8.2) - database tests (push) Has been cancelled
PHPUnit mysql / MySQL 8.4 (PHP 8.2) - database tests (push) Has been cancelled
PHPUnit mysql / MySQL 8.4 (PHP 8.4) - database tests (push) Has been cancelled
PHPUnit mysql / phpunit-mysql-summary (push) Has been cancelled
PHPUnit sharding / changes (push) Has been cancelled
PHPUnit sharding / Sharding - MySQL 8.4 (PHP 8.2) - database tests (push) Has been cancelled
PHPUnit sharding / phpunit-mysql-summary (push) Has been cancelled
PHPUnit memcached / changes (push) Has been cancelled
PHPUnit memcached / Memcached (PHP 8.2) (push) Has been cancelled
PHPUnit memcached / Memcached (PHP 8.3) (push) Has been cancelled
PHPUnit memcached / Memcached (PHP 8.4) (push) Has been cancelled
PHPUnit memcached / phpunit-memcached-summary (push) Has been cancelled
PHPUnit MariaDB / changes (push) Has been cancelled
PHPUnit MariaDB / MariaDB 10.11 (PHP 8.3) - database tests (push) Has been cancelled
PHPUnit MariaDB / MariaDB 10.11 (PHP 8.2) - database tests (push) Has been cancelled
PHPUnit MariaDB / MariaDB 10.3 (PHP 8.2) - database tests (push) Has been cancelled
PHPUnit MariaDB / MariaDB 10.6 (PHP 8.2) - database tests (push) Has been cancelled
PHPUnit MariaDB / MariaDB 11.4 (PHP 8.2) - database tests (push) Has been cancelled
PHPUnit MariaDB / MariaDB 11.8 (PHP 8.2) - database tests (push) Has been cancelled
PHPUnit MariaDB / MariaDB 11.8 (PHP 8.4) - database tests (push) Has been cancelled
PHPUnit MariaDB / phpunit-mariadb-summary (push) Has been cancelled
Node tests / changes (push) Has been cancelled
Node tests / versions (push) Has been cancelled
Node tests / test (push) Has been cancelled
Node tests / handlebars (push) Has been cancelled
Node tests / node-test-summary (push) Has been cancelled
PHPUnit files_external generic / changes (push) Has been cancelled
PHPUnit files_external generic / php8.2-generic (push) Has been cancelled
PHPUnit files_external generic / php8.3-generic (push) Has been cancelled
PHPUnit files_external generic / php8.4-generic (push) Has been cancelled
PHPUnit files_external generic / files-external-summary (push) Has been cancelled
PHPUnit files_external WebDAV / changes (push) Has been cancelled
PHPUnit files_external WebDAV / php8.2-webdav (push) Has been cancelled
PHPUnit files_external WebDAV / php8.3-webdav (push) Has been cancelled
PHPUnit files_external WebDAV / php8.4-webdav (push) Has been cancelled
PHPUnit files_external WebDAV / files-external-webdav-summary (push) Has been cancelled
PHPUnit files_external SMB / changes (push) Has been cancelled
PHPUnit files_external SMB / php8.2-smb (push) Has been cancelled
PHPUnit files_external SMB / files-external-smb-summary (push) Has been cancelled
Samba Kerberos SSO / changes (push) Has been cancelled
Samba Kerberos SSO / smb-kerberos-sso (push) Has been cancelled
Samba Kerberos SSO / sftp-summary (push) Has been cancelled
PHPUnit files_external sFTP / changes (push) Has been cancelled
PHPUnit files_external sFTP / php8.2-openssh (push) Has been cancelled
PHPUnit files_external sFTP / php8.4-openssh (push) Has been cancelled
PHPUnit files_external sFTP / sftp-summary (push) Has been cancelled
PHPUnit files_external S3 / changes (push) Has been cancelled
PHPUnit files_external S3 / php8.3-s3-minio (push) Has been cancelled
PHPUnit files_external S3 / php8.2-s3-minio (push) Has been cancelled
PHPUnit files_external S3 / php8.4-s3-minio (push) Has been cancelled
PHPUnit files_external S3 / php8.3-s3-localstack (push) Has been cancelled
PHPUnit files_external S3 / php8.2-s3-localstack (push) Has been cancelled
PHPUnit files_external S3 / php8.4-s3-localstack (push) Has been cancelled
PHPUnit files_external S3 / s3-external-summary (push) Has been cancelled
PHPUnit files_external FTP / changes (push) Has been cancelled
PHPUnit files_external FTP / php8.2-proftpd (push) Has been cancelled
PHPUnit files_external FTP / php8.2-pure-ftpd (push) Has been cancelled
PHPUnit files_external FTP / php8.2-vsftpd (push) Has been cancelled
PHPUnit files_external FTP / php8.4-proftpd (push) Has been cancelled
PHPUnit files_external FTP / php8.4-pure-ftpd (push) Has been cancelled
PHPUnit files_external FTP / php8.4-vsftpd (push) Has been cancelled
PHPUnit files_external FTP / ftp-summary (push) Has been cancelled
PHPUnit primary object store / changes (push) Has been cancelled
PHPUnit primary object store / php8.2-s3-minio (push) Has been cancelled
PHPUnit primary object store / php8.2-s3-multibucket-minio (push) Has been cancelled
PHPUnit primary object store / object-store-primary-summary (push) Has been cancelled
Object storage Swift / changes (push) Has been cancelled
Object storage Swift / php8.2-swift (push) Has been cancelled
Object storage Swift / php8.3-swift (push) Has been cancelled
Object storage Swift / swift-primary-summary (push) Has been cancelled
Object storage S3 / changes (push) Has been cancelled
Object storage S3 / php8.2-s3 (push) Has been cancelled
Object storage S3 / php8.3-s3 (push) Has been cancelled
Object storage S3 / s3-primary-summary (push) Has been cancelled
Object storage azure / changes (push) Has been cancelled
Object storage azure / php8.2-azure (push) Has been cancelled
Object storage azure / php8.3-azure (push) Has been cancelled
Object storage azure / php8.4-azure (push) Has been cancelled
Object storage azure / azure-primary-summary (push) Has been cancelled
Psalm static code analysis / static-code-analysis (push) Has been cancelled
Psalm static code analysis / static-code-analysis-security (push) Has been cancelled
Psalm static code analysis / static-code-analysis-ocp (push) Has been cancelled
Psalm static code analysis / static-code-analysis-ncu (push) Has been cancelled
PHPUnit 32bits / phpunit-32bits (8.2) (push) Has been cancelled
PHPUnit 32bits / phpunit-32bits (8.3) (push) Has been cancelled
PHPUnit 32bits / phpunit-32bits (8.4) (push) Has been cancelled
Close stale issues / stale (push) Has been cancelled
fix: Ensure CLOUD key exists before resolving Cloud ID
2025-10-17 18:20:59 +02:00
Daniel Kesselberg 83a691709c refactor: use IEmailValidator.isValid instead of IMailer.validateEmailAddress
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2025-10-04 21:54:22 +02:00
Enjeck C 7a7820605f fix: Ensure CLOUD key exists before resolving Cloud ID
Signed-off-by: Enjeck C <patrathewhiz@gmail.com>
2025-08-22 18:51:29 +01:00
Ferdinand Thiessen 5981b7eb51 chore: apply new CSFixer rules
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>

# Conflicts:
#	apps/settings/lib/SetupChecks/PhpOpcacheSetup.php
2025-07-01 16:26:50 +02:00
Julius Knorr 0a251213a3 fix: filter out contacts with invalid email addresses in sharee completion
Signed-off-by: Julius Knorr <jus@bitgrid.net>
2025-03-26 11:51:52 +01:00
Andy Scherzinger dae7c159f7 chore: Add SPDX header
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-05-24 13:11:22 +02:00
Claus-Justus Heine 493333036b fix(collaboration): collaboration MailPlugin: Protect access to a potentially missing array component by ??.
Signed-off-by: Claus-Justus Heine <himself@claus-justus-heine.de>
2024-02-27 17:50:51 +01:00
Baptiste Fotia 9af96d9f9a feat(php,vue): Create a new parameter
Signed-off-by: Baptiste Fotia <fotia.baptiste@hotmail.com>
2024-01-31 10:44:40 +01:00
Joas Schilling aa5f037af7 chore: apply changes from Nextcloud coding standards 1.1.1
Signed-off-by: Joas Schilling <coding@schilljs.com>
Signed-off-by: Benjamin Gaussorgues <benjamin.gaussorgues@nextcloud.com>
2023-11-23 10:36:13 +01:00
Faraz Samapoor 6427863443 Refactors lib/private/Collaboration.
Mainly using PHP8's constructor property promotion.

Signed-off-by: Faraz Samapoor <fsa@adlas.at>
2023-09-21 11:28:02 +03:30
Joas Schilling 269df904a3 Improve email search results
Signed-off-by: Joas Schilling <coding@schilljs.com>
2022-12-09 22:40:47 +01:00
Anna Larch 88b0aea2b0 Add fallback options for contacts array
when the UID or FN is null, the email address / dsiplay name will be used instead

Signed-off-by: Anna Larch <anna@nextcloud.com>
2022-10-01 22:47:58 +00:00
Louis Chemineau 80fa3c7319 Add setting to ignore email during search
Signed-off-by: Louis Chemineau <louis@chmn.me>
2022-05-03 17:50:29 +02:00
Carl Schwan 7ecb65f725 Add check before sending email that email address is valid
Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2022-01-11 20:59:44 +01:00
Carl Schwan d4a5e480ab Fix idn emails not working in shares
Fix #30595

Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2022-01-11 15:44:25 +01:00
Julius Härtl d73fe0ccd9 Merge pull request #29879 from nextcloud/bugfix/noid/sharing-enumeration-addressbooks 2021-12-21 08:11:04 +01:00
Joas Schilling f1a6668cc2 Make psalm more happy
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-12-09 09:25:50 +01:00
Joas Schilling 93b77f54bd Fix docs to make Psalm happier
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-12-09 09:19:32 +01:00
Joas Schilling 0f1670be8a Only limit search in the system address book
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-12-08 18:54:42 +01:00
Joas Schilling 84d37143b0 Only wildcard search if enumeration is allowed
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-12-08 18:54:42 +01:00
Julius Härtl 7b76253aee Do not clear all results when searching from users address books
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2021-12-08 09:08:54 +01:00
John Molakvoæ (skjnldsv) 215aef3cbd Update php licenses
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2021-06-04 22:02:41 +02:00
Joas Schilling 5b53b6f977 Add a setting to restrict returning a full match unless in phonebook or same group
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-03-10 17:25:57 +01:00
Joas Schilling 236aa194e2 Restrict autocompletion also based on the phonebook known users
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-03-10 17:19:55 +01:00
Julius Härtl 131fcac91e Show unique displayname context in the sharing input
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-12-14 11:14:59 +01:00
Joas Schilling 89ed2c37bf Update share type constant usage
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-06-24 16:49:16 +02:00
Christoph Wurst cb057829f7 Update license headers for 19
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-29 11:57:22 +02:00
Julius Härtl 6709833dc7 Use paginated search for contacts
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-04-23 19:08:16 +02:00
Christoph Wurst caff1023ea Format control structures, classes, methods and function
To continue this formatting madness, here's a tiny patch that adds
unified formatting for control structures like if and loops as well as
classes, their methods and anonymous functions. This basically forces
the constructs to start on the same line. This is not exactly what PSR2
wants, but I think we can have a few exceptions with "our" style. The
starting of braces on the same line is pracrically standard for our
code.

This also removes and empty lines from method/function bodies at the
beginning and end.

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-10 14:19:56 +02:00
Christoph Wurst 41b5e5923a Use exactly one empty line after the namespace declaration
For PSR2

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-09 11:48:10 +02:00
Julius Härtl c97ab39acb Limit user search in Collaborators plugins
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-03-20 10:43:56 +01:00
Christoph Wurst 5bf3d1bb38 Update license headers
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2019-12-05 15:38:45 +01:00
Julius Härtl a0d759b324 Add uuid/name entry to Remote/MailPlugin tests
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2018-10-30 10:19:36 +01:00
Julius Härtl cb463d73d5 Add name field to mail and remote results
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2018-10-30 10:19:36 +01:00
Julius Härtl 61af607525 Make enhancing entries with type property optional
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2018-10-30 10:19:35 +01:00
Julius Härtl 870e01518d Add type to Remote and Mail plugins
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2018-10-30 10:19:34 +01:00
Julius Härtl a1c6e44700 Add collaborators uuid to properly render the avatar and for later grouping
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2018-10-30 10:19:33 +01:00
Arthur Schiwon f42c29ebac the FN is optional, carrying the displayname if present
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2018-03-14 14:30:45 +01:00
Joas Schilling 882096653e Fix calculation if there are more results
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-03-08 16:22:16 +01:00
Joas Schilling e05f338ff1 Add the users result only when non empty so tests stay the same
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-03-02 11:42:57 +01:00
Joas Schilling 12420aef42 Also array_slice wide email matches of local users
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-03-01 12:18:44 +01:00
blizzz 8e5120ce66 Merge pull request #8206 from nextcloud/bugfix/noid/fix-collaboration-result-size
Better result handling of email search
2018-02-20 23:02:53 +01:00
Joas Schilling b30e035e25 Better result handling of email search
1. Local users should not be returned when searching for empty string
2. The limit of the response should be respected

Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-02-20 17:38:32 +01:00