0
0
Fork 0
mirror of https://github.com/nextcloud/server.git synced 2025-04-28 02:52:59 +00:00
Commit graph

60 commits

Author SHA1 Message Date
Robin Appelman
2c56dfba84 fix: attempt to repair upload folder permissions
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-04-04 15:44:37 +02:00
Robin Appelman
a6826eeee5 fix: rework UploadFolder implementation
Signed-off-by: Robin Appelman <robin@icewind.nl>

[skip ci]
2025-04-04 15:44:37 +02:00
Robin Appelman
e7a7b4a401 perf: switch places that always use the first getById result to getFirstNodeById
Signed-off-by: Robin Appelman <robin@icewind.nl>
2024-03-04 13:57:31 +01:00
Anna Larch
dce69154ba enh(sharing): enable unsharing for sharees for DAV shares (addressbooks and calendars)
Signed-off-by: Anna Larch <anna@nextcloud.com>
2024-02-15 18:01:12 +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
Joas Schilling
77bc6c32d8
fix(dispatcher): Move remaining simple cases in apps/ folder to IEventDispatcher
Signed-off-by: Joas Schilling <coding@schilljs.com>
2023-07-25 11:19:26 +02:00
Joas Schilling
c3bc575d99
fix(comments): Emit CommentsEntityEvent as typed event
Signed-off-by: Joas Schilling <coding@schilljs.com>
2023-07-18 16:19:01 +02:00
Anna Larch
5c2eb732f1 fix(carddav): expose system address book
Signed-off-by: Anna Larch <anna@nextcloud.com>
2023-05-11 18:59:30 +02:00
Arthur Schiwon
7f3725c962
chore: polish SystemTagsInUseCollection
- DI SystemTagManager
- add some comments and doc
- catch NoUserException
- add return type hints

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2023-05-09 23:51:52 +02:00
Arthur Schiwon
6bff6a5667
PoC: SystemTags endpoint to return tags used by a user with meta data
Target case is photos app: when visiting the tags category, all systemtags
of the whole cloud are retrieved. In subequent steps the next tag is
requested until the browser view is filled with tag tiles (i.e. previews
are requested just as well).

With this approach, we incorpoate the dav search and look for user related
tags that are used by them, and already returns the statistics (number of
files tagged with the respective tag) as well as a file id for the purpose
to load the preview. This defaults to the file with the highest id.

Call:
curl -s -u 'user:password' \
  'https://my.nc.srv/remote.php/dav/systemtags-current' \
  -X PROPFIND -H 'Accept: text/plain' \
  -H 'Accept-Language: en-US,en;q=0.5'  -H 'Depth: 1' \
  -H 'Content-Type: text/plain;charset=UTF-8' \
  --data @/home/doe/request-systemtag-props.xml

With request-systemtag-props.xml:
<?xml version="1.0" encoding="UTF-8"?>
<d:propfind xmlns:d="DAV:">
        <d:prop xmlns:oc="http://owncloud.org/ns" xmlns:nc="http://nextcloud.org/ns">
                <oc:id/>
                <oc:display-name/>
                <oc:user-visible/>
                <oc:user-assignable/>
                <oc:can-assign/>
                <nc:files-assigned/>
                <nc:reference-fileid/>
        </d:prop>
</d:propfind>

Example output:
  …
  <d:response>
    <d:href>/master/remote.php/dav/systemtags/84</d:href>
    <d:propstat>
      <d:prop>
        <oc:id>84</oc:id>
        <oc:display-name>Computer</oc:display-name>
        <oc:user-visible>true</oc:user-visible>
        <oc:user-assignable>true</oc:user-assignable>
        <oc:can-assign>true</oc:can-assign>
        <nc:files-assigned>42</nc:files-assigned>
        <nc:reference-fileid>924022</nc:reference-fileid>
      </d:prop>
      <d:status>HTTP/1.1 200 OK</d:status>
    </d:propstat>
  </d:response>
  <d:response>
    <d:href>/remote.php/dav/systemtags/97</d:href>
    <d:propstat>
      <d:prop>
        <oc:id>97</oc:id>
        <oc:display-name>Bear</oc:display-name>
        <oc:user-visible>true</oc:user-visible>
        <oc:user-assignable>true</oc:user-assignable>
        <oc:can-assign>true</oc:can-assign>
        <nc:files-assigned>1</nc:files-assigned>
        <nc:reference-fileid>923422</nc:reference-fileid>
      </d:prop>
      <d:status>HTTP/1.1 200 OK</d:status>
    </d:propstat>
  </d:response>
  …

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2023-05-09 23:51:48 +02:00
Côme Chilliet
c79a6b3f62
Fix errors from PHP 8.2 testing
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2022-11-14 17:08:21 +01:00
Vincent Petry
804ee11803
Merge pull request from nextcloud/expose-extra-emails-in-dav
Expose additional emails in {DAV:}alternate-URI-set
2022-06-10 16:56:37 +02:00
Thomas Citharel
190a71ecf9
Expose additional emails in {DAV:}alternate-URI-set
This allows iMip invitations to be send with an alternative email as
"Reply-To" field.

Closes 

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-05-17 15:11:36 +02:00
Thomas Citharel
4bb31c021e
Remove all legacy event dispatchers from CalDAV & CardDAV backends
Move them to proper EventListeners and test them

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-05-17 15:09:46 +02:00
Côme Chilliet
e2531f8503
Migrate dav application from ILogger to LoggerInterface
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2022-05-02 10:52:43 +02:00
Anna Larch
0745fc5012 Move calendar objects between calendars instead of deleting and recreating them
Signed-off-by: Anna Larch <anna@nextcloud.com>
2022-03-16 12:48:50 +01:00
Christoph Wurst
30c3202f49
Remove shadowed $config variable
The variable is overwritten a few lines later.

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-10-13 13:03:40 +02:00
Thomas Citharel
a7b9b398a3
Expose user language through DAV
Introduces the '{http://nextcloud.com/ns}language' prop that gives the
user's language

Closes 

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-08-16 19:03:00 +02: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
Christoph Wurst
d6d8e9215c
Add a trashbin for calendars and calendar objects
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-05-31 07:49:19 +02: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
Christoph Wurst
d89a75be0b
Update all license headers for Nextcloud 21
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-12-16 18:48:22 +01:00
Arthur Schiwon
2b017b704a
dav search to honour sharing.maxAutocompleteResults setting
- it is being used on frontend by users
- user and big instances benefit from quicker results and less load

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2020-12-15 11:53:39 +01:00
Georg Ehrke
67f1ef4658
Add Typed Events for CalDAV- and CardDAV-related Events
Signed-off-by: Georg Ehrke <developer@georgehrke.com>
2020-08-18 21:40:57 +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
2fbad1ed72
Fix (array) indent style to always use one tab
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-09 10:16:08 +02:00
Christoph Wurst
1a9330cd69
Update the license headers for Nextcloud 19
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-03-31 14:52:54 +02:00
Christoph Wurst
ec245d5fec
Add address book plugins
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-03-09 13:12:18 +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
Georg Ehrke
c3748cfee3
respect shareapi_allow_share_dialog_user_enumeration in Principal backend for Sabre/DAV
Signed-off-by: Georg Ehrke <developer@georgehrke.com>
2019-12-03 09:44:07 +01:00
Roeland Jago Douma
68748d4f85
Some php-cs fixes
* Order the imports
* No leading slash on imports
* Empty line before namespace
* One line per import
* Empty after imports
* Emmpty line at bottom of file

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-11-22 20:52:10 +01:00
Georg Ehrke
63d584afb5
use principaluri instead of userid, allowing to add delegates for rooms and things
Signed-off-by: Georg Ehrke <developer@georgehrke.com>

!fixup add owner_id and proxy_id as db index, since we use it for querying

Signed-off-by: Georg Ehrke <developer@georgehrke.com>

!fixup don't add ACL for each individual proxy, just use calendar-proxy groups

Signed-off-by: Georg Ehrke <developer@georgehrke.com>

!fixup allow delegation of resources / rooms

Signed-off-by: Georg Ehrke <developer@georgehrke.com>

!fixup fix addIndex call in migration

Signed-off-by: Georg Ehrke <developer@georgehrke.com>

!fixup fix remaining constructor calls of Principal

Signed-off-by: Georg Ehrke <developer@georgehrke.com>

!fixup minor fixes and unit tests

Signed-off-by: Georg Ehrke <developer@georgehrke.com>
2019-08-15 15:41:28 +02:00
Roeland Jago Douma
01a4644cad
Use the proxymapper to obtain valid proxy data
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-08-15 15:41:27 +02:00
Morris Jobke
dd2496b275
Use proper dependency injection for app manager
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2019-03-05 16:00:47 +01:00
Georg Ehrke
16fec60e8f
Add Apple Provisioning profile
Signed-off-by: Georg Ehrke <developer@georgehrke.com>
2019-01-30 19:50:02 +01:00
Roeland Jago Douma
cb742e7045
Background job to cleanup leftover chunked uploads
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-01-04 09:21:21 +01:00
Georg Ehrke
5cfb5ec176
allow group principal search for dav displayname property
Signed-off-by: Georg Ehrke <developer@georgehrke.com>
2018-10-22 15:48:18 +02:00
Georg Ehrke
b832edabbf
apply group restrictions to resources
Signed-off-by: Georg Ehrke <developer@georgehrke.com>
2018-06-25 04:58:07 +02:00
Georg Ehrke
2da510af0b
add resource / room principals
Signed-off-by: Georg Ehrke <developer@georgehrke.com>
2018-06-25 04:58:07 +02:00
Georg Ehrke
367ca563b4
allow admins to override FreeBusy capabilities without modifying ShareAPI capabilities
Signed-off-by: Georg Ehrke <developer@georgehrke.com>
2018-05-22 19:16:26 +02:00
Morris Jobke
d98dea1eb1
Merge pull request from nextcloud/feature/3003/opt_out_of_birthday_calendar
Opt out of birthday calendar
2017-12-12 08:29:26 +01:00
Georg Ehrke
6802e2b59a
Principal search: Take sharing settings into account
Signed-off-by: Georg Ehrke <developer@georgehrke.com>
2017-12-11 16:04:55 +01:00
Christoph Seitz
787e3d51b4
Fix functions to search for principals in the backend.
Add a "searchPrincipals" function to the NC principal backend.
Fix the "findByUri" function to respect the prefixPath.

Signed-off-by: Christoph Seitz <christoph.seitz@posteo.de>
2017-12-11 16:04:55 +01:00
Georg Ehrke
ea117bac31
catch errors when parsing calendar data for calendar query requests
Signed-off-by: Georg Ehrke <developer@georgehrke.com>
2017-11-27 17:14:18 +01:00
Georg Ehrke
dc34622008
remember when a user deleted their contact birthdays calendar
Signed-off-by: Georg Ehrke <developer@georgehrke.com>
2017-11-10 23:05:04 +01:00
Joas Schilling
3b4ab6560b
Check if the user/group exists for dav shares
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-10-05 12:48:10 +02:00
Thomas Müller
23aab05bda
Adding dav resource for avatars
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-03-29 00:04:29 +02:00
Joas Schilling
52dd27892b
Use the event dispatcher
Signed-off-by: Joas Schilling <coding@schilljs.com>
2016-11-03 12:07:59 +01:00
Joas Schilling
07f6747305
Move the methods into a new class
Signed-off-by: Joas Schilling <coding@schilljs.com>
2016-11-03 12:07:58 +01:00
Thomas Müller
d884370844
Use true random string as uri for public calendars - as a result we can no longer return the pre-publish-url 2016-09-26 11:55:42 +02:00