Commit graph

924 commits

Author SHA1 Message Date
Thomas Citharel
6378dbca7e
fix can-be-published 2016-09-26 11:55:41 +02:00
Thomas Citharel
f16ea48e96
add can-be-published property 2016-09-26 11:55:40 +02:00
Thomas Citharel
a4fe596a21
add space between calendarname and owner name 2016-09-26 11:55:40 +02:00
Thomas Citharel
8433c3ca31
fix getChild() 2016-09-26 11:55:40 +02:00
Thomas Citharel
691b3ab448
Add publicuri to oc_dav_shares table and start working with it 2016-09-26 11:55:39 +02:00
Thomas Citharel
dd248caa09
fix some bracket positions 2016-09-26 11:55:39 +02:00
Thomas Citharel
1899116509
move getPublicCalendar inside the caldav backend 2016-09-26 11:55:39 +02:00
Thomas Citharel
762726d988
fix indent once and for all 2016-09-26 11:55:39 +02:00
Thomas Citharel
3921385ed3
fix things (indentation, tests, comments, backend custom implementation 2016-09-26 11:55:39 +02:00
Thomas Müller
d0ec6b9c15
Disable OPTIONS handling - done by sabre 2016-09-26 11:55:38 +02:00
Thomas Müller
e783d01da7
Allow public access to the principals/system/public 2016-09-26 11:55:37 +02:00
Thomas Citharel
aadb56dfcc
Fix wrong way to get publish status 2016-09-26 11:55:37 +02:00
Thomas Citharel
2df69ec7f4
correct get published status and minor fixes 2016-09-26 11:55:37 +02:00
Thomas Citharel
aca305332a
Fix DB call for MySQL databases 2016-09-26 11:55:37 +02:00
Thomas Citharel
994001c480
Dirty hack to disable dav plugins on public calendar urls 2016-09-26 11:55:36 +02:00
Thomas Müller
00dc157b19
Fix requests for browser plugin as well as for the public calendar root folder 2016-09-26 11:55:36 +02:00
Thomas Müller
e7085aab38
Allow not-authenticated access to specific urls 2016-09-26 11:55:36 +02:00
Thomas Müller
90ab6e4fd9
Add new root collection public-calendars which holds all public calendars 2016-09-26 11:55:36 +02:00
Thomas Citharel
8da2100e7d
Start work on returning CalDAV published calendars 2016-09-26 11:55:35 +02:00
Thomas Citharel
bd0aae8636
No need to call database twice 2016-09-26 11:55:35 +02:00
Thomas Citharel
7e5a82b968
Use urlgenerator to generate an absolute url
And pass Config the correct way too
2016-09-26 11:55:35 +02:00
Thomas Citharel
72f35f8862
Use ressource ID instead of name 2016-09-26 11:55:35 +02:00
Thomas Citharel
f89961ddba
Fix annotations 2016-09-26 11:55:34 +02:00
Thomas Citharel
4a0e6e2ad0
Remove unnecessary line 2016-09-26 11:55:34 +02:00
Thomas Citharel
1652a74feb
Fix publish-url property & getPublishStatus() fct 2016-09-26 11:55:34 +02:00
Thomas Citharel
981c38f6d9
Remove unnecessary implementation 2016-09-26 11:55:34 +02:00
Thomas Citharel
5824c2493b
Make little corrections
Function getPublishedStatus) is not working atm.
2016-09-26 11:55:34 +02:00
Thomas Citharel
69d3601dcb
Proper work on Publishing 2016-09-26 11:55:33 +02:00
Vincent Petry
b17e836e45
FilesHome now also returns DAV properties
The files home node must also return DAV properties like etag,
permissions, etc for the clients to work like they did with the old
endpoint.

This fix makes FilesHome extend the Sabre Directory class, this makes
the FilesPlugin and other plugins recognize it as a directory and will
retrieve the matching properties when applicable.

Downstream of https://github.com/owncloud/core/pull/26066

Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2016-09-26 11:24:23 +02:00
Thomas Müller
1f825f0fe8
Adding repair step to fix component of birthday calendars 2016-09-20 11:28:00 +02:00
Thomas Müller
6eb1bc55ab
The birthday calendar can only hold VEVENT - refs https://github.com/owncloud/tasks/issues/338 2016-09-20 11:26:09 +02:00
Joas Schilling
1944d9b3ab
Use magic DI 2016-09-20 01:15:24 +02:00
Joas Schilling
44fbf6f734
Close cursors 2016-09-15 09:47:39 +02:00
Joas Schilling
08c6ca5a1a
Chunk if you have too many contacts 2016-09-14 16:29:58 +02:00
Joas Schilling
62f31d67bd
Chunk if you have too many events 2016-09-14 16:29:33 +02:00
Vincent Petry
1ab472b9ad
Improve chunk upload AssemblyStream performance 2016-09-13 09:29:02 +02:00
Roeland Jago Douma
94fb5bcbae
Cast query result to int
Else we never create the default address book
2016-09-09 19:15:27 +02:00
Morris Jobke
3fc37b2fc5 Merge pull request #1342 from nextcloud/throw-exceptions-not-printable
Don't print exception message in HTML
2016-09-09 14:57:23 +02:00
Lukas Reschke
f715b5ea2e
Don't print exception message in HTML
The exception message is potentially influenced by user input and could thus be confusing (e.g. somebody could try to open a file like "Please send a mail to support@foo.com", and then the message would include that string.

It is thus reasonable to not show the exception message by default. Also for the browser view I added an `exit()` at the end, as otherwise the XML exception would be attached.
2016-09-09 13:52:34 +02:00
Lukas Reschke
67439951e6
Filter more mimetypes
There's no need to allow more than those defined mimetypes for images.
2016-09-09 12:33:10 +02:00
Joas Schilling
cf69a2b7eb
UPDATE permissions qualify for renaming a node 2016-09-07 11:22:57 +02:00
Joas Schilling
4c0665b6ec
Only require CREATE permissions when the file does not exist yet 2016-09-07 11:10:48 +02:00
Robin Appelman
344945bfe9 more efficient check if addressbook and calendar exists for user 2016-08-31 15:08:29 +02:00
Joas Schilling
0c4d471c18
Correctly handle multi-values when converting VCards to array 2016-08-30 12:08:39 +02:00
Markus Goetz
0cb34c2fa5
[master] DAV: Return data-fingerprint always when asked (#25482)
For owncloud/client#5056
Users can configure arbitrary subfolders for syncing, therefore we should
always return it when asked for.
The sync client makes sure to not always ask for it to save bandwidth.
2016-08-29 14:37:14 +02:00
Lukas Reschke
4d85ffc27c Merge pull request #1054 from nextcloud/less-cache-hits
Reduce the number of cache operations for dav operations
2016-08-27 22:44:29 +02:00
Joas Schilling
89c78bbce4 Merge pull request #1031 from nextcloud/2fa-infinite-redirect-loop
prevent infinite redirect loops if the there is no 2fa provider to pass
2016-08-26 16:03:05 +02:00
Robin Appelman
7c4d9add0d reuse the userfolder's fileinfo when possible during dav setup 2016-08-25 17:22:22 +02:00
Christoph Wurst
6af2efb679
prevent infinite redirect loops if the there is no 2fa provider to pass
This fixes infinite loops that are caused whenever a user is about to solve a 2FA
challenge, but the provider app is disabled at the same time. Since the session
value usually indicates that the challenge needs to be solved before we grant access
we have to remove that value instead in this special case.
2016-08-24 10:49:23 +02:00
Joas Schilling
3fbb5de74f
Better displaynames for shared address books 2016-08-24 08:50:25 +02:00
Joas Schilling
53182fb780
Better displaynames for shared calendars 2016-08-24 08:50:25 +02:00
Roeland Jago Douma
64ff8ac6fa
Fix phpdoc in Comments 2016-08-16 20:33:09 +02:00
Thomas Müller
6f34c37cfb
Adding quota plugin to new dav endpoint (#25615)
* Adding quota plugin to new dav endpoint

* Added integrated test failing in old endpoint

* Added 0B quota test
2016-07-29 10:03:46 +02:00
Robin Appelman
1fef5d3d06 add dav property to check if a file has a preview available 2016-07-27 12:59:39 +02:00
Joas Schilling
0215b004da
Update with robin 2016-07-21 18:13:58 +02:00
Joas Schilling
813f0a0f40
Fix apps/ 2016-07-21 18:13:57 +02:00
Lukas Reschke
c385423d10 Merge pull request #479 from nextcloud/add-bruteforce-throttler
Implement brute force protection
2016-07-21 00:31:02 +02:00
Lukas Reschke
ba4f12baa0
Implement brute force protection
Class Throttler implements the bruteforce protection for security actions in
Nextcloud.

It is working by logging invalid login attempts to the database and slowing
down all login attempts from the same subnet. The max delay is 30 seconds and
the starting delay are 200 milliseconds. (after the first failed login)
2016-07-20 22:08:56 +02:00
Lukas Reschke
a17ba2f488 Merge pull request #466 from nextcloud/escape-special-characters
Escape special characters (#25429)
2016-07-20 21:24:19 +02:00
Roeland Douma
26cf51403e Merge pull request #464 from nextcloud/master-change-load-order
[master] Change load order of auth backends so that we can throw an exception …
2016-07-20 20:08:22 +02:00
Vincent Petry
e5c4f53eea
Cast share id to string (#25402) 2016-07-20 15:10:10 +02:00
Aaron Wood
7c0de08cc4
Escape special characters (#25429)
* Escape LIKE parameter

* Escape LIKE parameter

* Escape LIKE parameter

* Escape LIKE parameter

* Escape LIKE parameter

* Use correct method in the AbstractMapping class

* Change the getNamesBySearch method so that input can be properly escaped while still supporting matches

* Don't escape hardcoded wildcard
2016-07-20 14:46:47 +02:00
Thomas Müller
e795f7b106
Change load order of auth backends so that we can throw an exception in OCA\DAV\Connector\Sabre\Auth - fixes #25362 (#25476) 2016-07-20 14:40:52 +02:00
Morris Jobke
0a6d95b126 Merge pull request #394 from nextcloud/tags-for-everything
SystemTags for everything not just files
2016-07-19 10:47:12 +02:00
Björn Schießle
ea470f8777 Merge pull request #405 from nextcloud/theming-fixes
Theming fixes
2016-07-18 15:59:47 +02:00
Joas Schilling
7c039bcbf6
Allow apps to register SystemTags plugins 2016-07-18 10:26:42 +02:00
Joas Schilling
c2b077e185
Fix doc blocks 2016-07-18 10:26:42 +02:00
Joas Schilling
8e13ff2c86
Fix TODO and bring in abstraction (similar to comments) 2016-07-18 10:26:36 +02:00
Joas Schilling
2c988ecbf4
Use the themed Defaults everywhere 2016-07-15 09:17:30 +02:00
Roeland Jago Douma
059b7435ab
PasswordLoginForbidden is not a FATAL exception
It is just a 'Sabre\DAV\Exception\NotAuthenticated' exception
with some special meaning.

So just log it as DEBUG and not as FATAL.
2016-07-14 22:53:12 +02:00
Robin Appelman
6da066e7be
Fix test using private propertries 2016-07-08 12:36:25 +02:00
Robin Appelman
f98cb9efa0
Fix type hinting 2016-07-08 12:35:50 +02:00
Robin Appelman
8f84c99e3f
Fix undefined properties 2016-07-08 12:35:16 +02:00
Morris Jobke
ba16fd0d33 Merge branch 'master' into sync-master 2016-07-07 11:29:46 +02:00
Thomas Citharel
7d95cde37d Add all properties while creating a subscription (#25318)
Fixes #24469
2016-07-01 13:42:35 +02:00
Lukas Reschke
179a355b2c Merge remote-tracking branch 'upstream/master' into master-sync-upstream 2016-07-01 11:36:35 +02:00
Bjoern Schiessle
26e14529be fix error message 2016-06-30 13:50:31 +02:00
Lukas Reschke
c771368c4e Add proper throws PHP docs 2016-06-30 13:19:50 +02:00
Lukas Reschke
1e7f0f7341 Add required $message parameter 2016-06-30 13:17:53 +02:00
Bjoern Schiessle
3571207bd9 add some additonal permission checks to the webdav backend 2016-06-30 11:16:49 +02:00
Björn Schießle
5ace6b53f3 get only vcards which match both the address book id and the vcard uri (#25294) 2016-06-29 12:13:59 +02:00
Bjoern Schiessle
5f6944954b get only vcard which match both the address book id and the vcard uri 2016-06-28 16:11:06 +02:00
Georg Ehrke
3c399be6ec fix a ImageExportPlugin Test (#25215) 2016-06-27 21:26:56 +02:00
Vincent Petry
56ad4cdfec
Show error message when posting an invalid comment
When an internal server error occurs while creating or updating a
comment, display a proper error notification in the UI.
2016-06-24 10:17:12 +02:00
Georg Ehrke
1452b74de7 Contacts API: replace raw image data with url (#25081)
* add uri to AddressBookImpl array

* Introduce ImageExportPlugin for CardDav

* add plugin to v1 routes

* replace binary contact photo with link

* update tests

* Adding unit tests
2016-06-21 15:25:44 +02:00
Vincent Petry
2340660a5b
PasswordLoginForbidden must extend NotAuthenticated
The auth code from Sabre will forward NotAuthenticated exceptions but
in the case of a generic exception, it is packaged as "service not
available".
2016-06-17 15:50:24 +02:00
Christoph Wurst
5a8cfab68f
throw PasswordLoginForbidden on DAV 2016-06-17 11:30:24 +02:00
Christoph Wurst
82b50d126c
add PasswordLoginForbiddenException 2016-06-17 11:02:07 +02:00
Thomas Müller
0b7685d326 Move birthday calendar generation to a live migration job (#25135) 2016-06-16 16:14:28 +02:00
Christoph Wurst
331d88bcab
create session token on all APIs 2016-06-13 15:38:34 +02:00
Vincent Petry
68c3b23e04 Merge pull request #24080 from owncloud/support-calendar-class-property
Extract CLASS property from calendar object and store it in the database
2016-06-10 11:22:11 +02:00
Vincent Petry
67c3a97401 Merge pull request #25046 from owncloud/fix-the-realm
Use the correct realm for basic authentication
2016-06-10 10:41:46 +02:00
Vincent Petry
543545505d Merge pull request #25043 from owncloud/webdav-download-mimetype
DAV now returns file name with Content-Disposition header
2016-06-10 09:55:59 +02:00
Vincent Petry
1399e87d57
DAV now returns file name with Content-Disposition header
Fixes issue where Chrome would append ".txt" to XML files when
downloaded in the web UI
2016-06-09 15:51:41 +02:00
Thomas Müller
cf06b17df1
Use the correct realm for basic authentication - fixes #23427 2016-06-09 13:53:32 +02:00
Thomas Müller
f20c617154
Allow login by email address via webdav as well - fixes #24791 2016-06-09 12:08:49 +02:00
Thomas Müller
bfcd1dc49c
Filter confidential calendar objects in shared calendars
Filter private calendar objects in shared calendars
2016-06-09 11:09:14 +02:00
Thomas Müller
082f456b8b
Added unit testing for the migration step 2016-06-09 11:09:14 +02:00
Thomas Müller
369c3b5d7e
Implement classification migration as repair step 2016-06-09 11:09:14 +02:00
Thomas Müller
287e41732c
Bump dav app version and fix variable rename 2016-06-09 11:09:14 +02:00
Thomas Müller
f013cfc530
Add migration step 2016-06-09 11:09:13 +02:00
Thomas Müller
fbdec59f22
Extract CLASS property from calendar object and store it in the database 2016-06-09 11:09:13 +02:00
Robin Appelman
f119769c26 Better handling of forbidden files in dav 2016-06-07 14:01:55 +02:00
Thomas Müller
371a07e3ab Fix checkMove() implementation for dav v2 - fixes #24776 (#24971) 2016-06-06 17:01:27 +02:00
Vincent Petry
3ff2bec5fa Merge pull request #24935 from owncloud/2fa-block-dav
block DAV if 2FA challenge needs to be solved first
2016-06-02 15:31:18 +02:00
Joas Schilling
942e946f06
Catch the ForbiddenException to make sure it gets handled 2016-06-01 16:17:57 +02:00
Christoph Wurst
da03a85c3c
block DAV if 2FA challenge needs to be solved first 2016-06-01 10:42:38 +02:00
Lukas Reschke
aba539703c
Update license headers 2016-05-26 19:57:24 +02:00
Christoph Wurst
28ce7dd262
do not allow client password logins if token auth is enforced or 2FA is enabled 2016-05-24 17:54:02 +02:00
Christoph Wurst
ad10485cec
when generating browser/device token, save the login name for later password checks 2016-05-24 11:49:15 +02:00
Vincent Petry
87fa86a69a Merge pull request #24559 from owncloud/2fa
two factor auth
2016-05-23 20:50:03 +02:00
Vincent Petry
c10d8a37f7 Merge pull request #22690 from owncloud/fix-comments-href-remote.php-files
ensure comments-href returns a value also when propfind is done again…
2016-05-23 14:47:03 +02:00
Christoph Wurst
dfb4d426c2
Add two factor auth to core 2016-05-23 11:21:10 +02:00
Joas Schilling
c9fda84841
Make the root collection neutral so it does not only work for files 2016-05-23 09:03:48 +02:00
Joas Schilling
3a8e537946
Remove unused UserFolder 2016-05-23 09:03:47 +02:00
Vincent Petry
5963128342
Adjust DAV SystemTagPlugin unit tests for groups 2016-05-20 17:56:02 +02:00
Vincent Petry
10fae3994a
Fix system tag update code 2016-05-20 17:56:02 +02:00
Vincent Petry
d7727cdc74
Add admin-only system tag groups property
For setting/getting system tag groups
2016-05-20 17:56:02 +02:00
Vincent Petry
88740f035d
Act on effective system tag canAssign permission
Whenever the server returns true for the can-assign Webdav property of
a system tag, it means the current user is allowed to assign,
regardless of the value of user-assignable.

This commit brings the proper logic to the web UI to make it possible
for users to assign when they have the permission.
2016-05-20 17:56:02 +02:00
Vincent Petry
03d32bc39b
Fix system tags DAV unit tests 2016-05-20 17:56:02 +02:00
Vincent Petry
bede872dbc
Bring back admin permissions to change system tag permissions 2016-05-20 17:56:02 +02:00
Vincent Petry
09b3883d9c
Updated canUser* functions in SystemTagManager to accept objects 2016-05-20 17:56:02 +02:00
Vincent Petry
8343cfb64b
Add interface methods for permission check
Instead of checking for admin perm, use interface method
canUserAssignTag and canUserSeeTag to check for permissions.
Allows for more flexible implementation.
2016-05-20 17:56:02 +02:00
Arthur Schiwon
2b30136ae9
ensure comments-href returns a value also when propfind is done against remote.php/files 2016-05-20 16:22:13 +02:00
Joas Schilling
dd9ee10bc0 Move dav app to PSR-4 (#24527)
* Move Application to correct namespace and PSR-4 it

* Move dav app to PSR-4
2016-05-12 09:42:40 +02:00
Christoph Wurst
0486d750aa
use the UID for creating the session token, not the login name 2016-05-11 13:36:46 +02:00
Christoph Wurst
5e55dfb2d6
create session token for DAV clients (sync clients) 2016-05-11 13:36:46 +02:00
Vincent Petry
47157bcd76 Merge pull request #24400 from owncloud/cache_shareManager
Cache shareManager
2016-05-06 14:25:30 +02:00
Roeland Jago Douma
3c2fee8775
Cache shareManager
There is no need to call \OC::$server->getShareManager for each Node.
We have it available so better pass it around.
2016-05-02 22:27:24 +02:00
Thomas Müller
b10dcfc3b7
Fixing local event delivery for calendar events based on the email address 2016-05-02 14:20:59 +02:00
Björn Schießle
606b756a94 Merge pull request #23918 from owncloud/cruds-for-federated-shares
bring back CRUDS permissions for federated shares
2016-04-22 14:50:42 +02:00
Thomas Müller
3b3cff4f79 Merge pull request #24151 from owncloud/create-personal-calendar
Personal calendar should be generated even if the birthday calendar a…
2016-04-22 11:09:45 +02:00
Thomas Müller
1d1247069f
Birthday calendar should never have write acl - fixes #24154 2016-04-21 13:36:52 +02:00
Thomas Müller
38c7296867
Personal calendar should be generated even if the birthday calendar already exists - fixes #24082 2016-04-21 12:34:20 +02:00
Thomas Müller
cd01c440a0 Merge pull request #23919 from owncloud/cyclyc-share-dep-example
SharedStorage to new sharing code + cleanup
2016-04-20 20:37:27 +02:00
Lukas Reschke
a86fd873d6 Merge pull request #24076 from owncloud/fix-initial-calendar-and-addressbook-names
Fix displayname for initial calendars and address books
2016-04-19 14:30:35 +02:00
Roeland Jago Douma
afa37d363f
Fix related logic 2016-04-19 14:04:00 +02:00
Thomas Müller
748134bd90
Fix displayname for initial calendars and address books - fixes #24057 2016-04-18 23:08:37 +02:00
Thomas Müller
d0ad8e6e69
Revert "Fix displayname for initial calendars and address books - fixes #24057"
This reverts commit a5d3e5ed68.
2016-04-18 23:07:49 +02:00
Thomas Müller
a5d3e5ed68
Fix displayname for initial calendars and address books - fixes #24057 2016-04-18 23:06:38 +02:00
Roeland Jago Douma
dcb2b37e24
Add data-fingerprint property to webdav 2016-04-18 16:08:11 +02:00
Björn Schießle
52669d0ea3
return correct share permissions on propfind 2016-04-18 12:02:06 +02:00
Roeland Jago Douma
0cebb16e7c
Move share-permissions property namespace
Fixes https://github.com/owncloud/core/issues/23741
2016-04-15 10:22:18 +02:00
Thomas Müller
55735e1450
Translate contacts birthday - fixes #23982 2016-04-14 16:58:45 +02:00
Thomas Müller
068e73cc47 Merge pull request #23975 from owncloud/change-default-calendar-and-contacts-names
Use better names for the default calendars and addressbooks
2016-04-14 11:57:43 +02:00
Thomas Müller
439de52534
Remove dav migration for 9.1 2016-04-13 15:53:57 +02:00
Thomas Müller
353449bff7
Use better names for the default calendars and addressbooks - fixes #23720 2016-04-13 15:44:59 +02:00
Thomas Müller
3c0a1d4241 Merge pull request #20118 from owncloud/chunked-upload-dav
Initial implementation of the new chunked upload
2016-04-13 14:37:10 +02:00
Björn Schießle
499d131a09
always return the complete permissions the file was shared with 2016-04-12 17:56:56 +02:00
Thomas Müller
e21642ca31 Fix unit test of file plugin 2016-04-12 15:51:09 +02:00
Thomas Müller
bb2e68f72b Fix chunk file move 2016-04-12 14:26:42 +02:00
Thomas Müller
72f5c539e8 Initial implementation of the new chunked upload - as specified in https://dragotin.wordpress.com/2015/06/22/owncloud-chunking-ng/ 2016-04-12 12:32:04 +02:00
Thomas Müller
8652ef28aa Merge pull request #23868 from owncloud/scrutinizer-patch-2
Scrutinizer Auto-Fixes
2016-04-11 10:38:02 +02:00
Thomas Müller
24c2252ff4 Adding VCFExportPlugin 2016-04-10 12:43:15 +02:00
Scrutinizer Auto-Fixer
3ebeb07a30 Scrutinizer Auto-Fixes
This commit consists of patches automatically generated for this project on https://scrutinizer-ci.com
2016-04-08 15:11:37 +00:00
Thomas Müller
6f3eeeeb36 Merge pull request #23510 from owncloud/birthdays-on-shared-addressbooks
Propagate birthdays of shared addressbooks to the sharee's birthday c…
2016-04-08 15:19:38 +02:00
Roeland Jago Douma
375f6fcab1
Move public webdav auth over to share manager
The public webdav auth should use the shiny new share manager.
2016-04-08 14:17:13 +02:00
Thomas Müller
dda739c0cc Merge pull request #23501 from owncloud/alarms_for_birthdayevents
add VALARM for birthday events
2016-04-06 14:31:07 +02:00
Thomas Müller
f6cea3c9c4 Merge pull request #23557 from owncloud/sabre-plugin-browser-error-page
In case of exception we return an html page in case the client is a b…
2016-04-04 13:51:23 +02:00
Thomas Müller
63b01a3616 Merge pull request #22834 from owncloud/webdav_property_for_share_permissions
Add sharePermissions webdav property
2016-03-31 23:18:53 +02:00
Roeland Jago Douma
89478a0961 Fix unit tests 2016-03-31 21:25:23 +02:00
Roeland Jago Douma
5334bcce66 Correct share permissions for external storages 2016-03-31 20:17:59 +02:00
Roeland Jago Douma
8c0ef4c4bd Add sharePermissions webdav property
This property can be queries by the clients so they know the max
permissions they can use to share a file with. This will improve the UX.

The oc:permissions proptery is not enough since mountpoints have
different permissions (delete + move by default).

By making it a new property the clients can just request it. On older
servers it will just return a 404 for that property (and thus they know
they have to fall back to their hacky work arounds). But if the property
is returned the client can show proper info.

* unit tests
* intergration test
2016-03-31 20:12:34 +02:00
Lukas Reschke
ba69a90ab5 Enforce type 2016-03-31 19:32:30 +02:00
Vincent Petry
262547ba3d Return 401 DummyBasicAuth in case of ajax call 2016-03-31 19:31:31 +02:00
Stefan Weil
65b0127241 apps/dav: Fix typos in comments (found and fixed by codespell)
Signed-off-by: Stefan Weil <sw@weilnetz.de>
2016-03-30 10:14:26 +02:00
Thomas Müller
cd850dc325 Merge pull request #23568 from owncloud/finally-fix-23328-now-for-addressbooks-as-well
Handle group shares of addressbooks on v1 as well ... now FINALLY ....
2016-03-29 18:41:40 +02:00
Achim Königs
596a8416c2 Merge branch 'master' into alarms_for_birthdayevents 2016-03-26 14:27:38 +01:00
Thomas Müller
ab0db65b23 Merge pull request #23549 from owncloud/dav-sharetypes-remote
Return remote shares in oc:share-types Webdav property
2016-03-24 22:44:19 +01:00
Lukas Reschke
95820fbd5b Add magical regex to catch browsers 2016-03-24 19:02:16 +01:00
Thomas Müller
c46f480031 In case of exception we return an html page in case the client is a browser 2016-03-24 19:02:16 +01:00
Thomas Müller
89cd6e228d Handle group shares of addressbooks on v1 as well ... now FINALLY .... 2016-03-24 17:11:07 +01:00
Thomas Müller
3d51682440 Merge pull request #23342 from owncloud/fix-group-sharing-for-v1-caldav-and-carddav
Fix group shares on v1 caldav and carddav
2016-03-24 12:47:18 +01:00
Vincent Petry
9ee1f506f2 Return remote shares in oc:share-types Webdav property
Fixes web UI to properly display the share status icon when an outgoing
remote share exists
2016-03-24 12:16:57 +01:00
Thomas Müller
06e8c70400 Fix acls for calendar objects and cards - fixes #23273 2016-03-24 09:53:36 +01:00
Thomas Müller
8c2b19d2bc Return proper current-user-principal on v1 endpoints - fixes #23306 2016-03-24 09:53:36 +01:00
Thomas Müller
4c738ea9c4 Fix group shares on v1 caldav and carddav - fixes #23328 2016-03-24 09:53:36 +01:00
Lukas Reschke
cc8c0b6a90 Check if request is sent from official ownCloud client
There are authentication backends such as Shibboleth that do send no Basic Auth credentials for DAV requests. This means that the ownCloud DAV backend would consider these requests coming from an untrusted source and require higher levels of security checks. (e.g. a CSRF check)

While an elegant solution would rely on authenticating via token (so that one can properly ensure that the request came indeed from a trusted client) this is a okay'ish workaround for this problem until we have something more reliable in the authentication code.
2016-03-24 08:59:56 +01:00
Achim Königs
4b2f9e4027 add VALARM for birthday events
ACTION=DISPLAY *should* prevents audible alarms.
2016-03-23 23:21:10 +01:00
Thomas Müller
c8d6a9594a Propagate birthday to group shares as well 2016-03-23 14:12:50 +01:00
Thomas Müller
e979b9c735 Propagate birthdays of shared addressbooks to the sharee's birthday calendar as well 2016-03-23 12:29:45 +01:00
Thomas Müller
24331be991 Merge pull request #23431 from owncloud/use-dav-sabre-plugin-for-browser-2
Fix display of vcard and calendar object details page in browser plugin
2016-03-23 11:03:55 +01:00
Thomas Müller
164282c72e Fix display of vcard and calendar object details page in browser plugin 2016-03-23 10:35:21 +01:00
Thomas Müller
48ec8ab3d3 Merge pull request #23404 from owncloud/fix-22988
adjust PrincipalUri as returned from Sabre to effective username
2016-03-22 14:49:54 +01:00
Thomas Müller
9fc371e436 Merge pull request #23320 from owncloud/early-creation-of-birthday-calendar
Create the contact birthday calendar right away as soon as the comman…
2016-03-22 10:31:01 +01:00
Vincent Petry
f28f538029 Do not fire pre/post hooks twice on chunk upload 2016-03-21 15:14:58 +01:00
Thomas Müller
8852fdaee3 Merge pull request #22789 from owncloud/dav-sharesproperty
Add webdav property for share info in PROPFIND response
2016-03-21 11:15:00 +01:00
Thomas Müller
e983bd7db0 Merge pull request #23368 from owncloud/use-dav-sabre-plugin-for-browser
In debugging mode we enable Sabre's browser plugin since it helps a l…
2016-03-21 10:13:27 +01:00
Arthur Schiwon
117c1bffa7 adjust PrincipilUri as returned from Sabre to effective username 2016-03-18 23:31:11 +01:00
Roeland Jago Douma
6e6e002280 Remove duplicated copyright 2016-03-17 19:24:25 +01:00
Thomas Müller
520724d757 Necessary code changes to make browser plugin properly work 2016-03-17 18:00:06 +01:00
Thomas Müller
7d638fdb34 In debugging mode we enable Sabre's browser plugin since it helps a lot when debugging 2016-03-17 16:51:19 +01:00
Vincent Petry
f778e48ee5 Add webdav property for share info in PROPFIND response 2016-03-17 15:35:21 +01:00
Roeland Jago Douma
533fdb4075 Set proper public webdav permissions when public upload disabled
Fixes #23325

It can happen that a user shares a folder with public upload. And some
time later the admin disables public upload on the server.

To make sure this is handled correctly we need to check the config value
and reduce the permissions.

Fix is kept small to be easy backportable.
2016-03-17 11:35:31 +01:00
Thomas Müller
fdb7c59e6c Create the contact birthday calendar right away as soon as the command is executed once - fixes #23203 2016-03-16 17:23:02 +01:00
Thomas Müller
d188ed938c Merge pull request #23082 from owncloud/contacts_calendar_name_color
add title and color to birthday calendar
2016-03-16 17:17:21 +01:00
Thomas Müller
e9eeb3607f Merge pull request #23074 from owncloud/issue-22835-correctly-use-querybuilder-api
Correctly escape join statements and use selectAlias
2016-03-15 12:14:17 +01:00
Thomas Müller
750ec93394 Merge pull request #23080 from owncloud/use-non-localized-birthday-title
Use a birthday title which does not require translation because we ha…
2016-03-11 11:49:13 +01:00
Thomas Müller
07a1313114 Merge pull request #23119 from owncloud/fix-getOwner-on-fileshome-master
getOwner is not available on FileHome
2016-03-10 23:12:51 +01:00
Thomas Müller
e0210058ef Merge pull request #23094 from owncloud/fake-lock-for-windows-7-8-10
Fake LOCK statement for Windows 7, 8 and 10 network mounts
2016-03-10 23:07:45 +01:00
Georg Ehrke
856ca641d1 add title and color to birthday calendar 2016-03-10 21:02:54 +01:00
Thomas Müller
b7adf371c6 getOwner is not available on FileHome - fixes #23116 2016-03-10 20:53:56 +01:00
Thomas Müller
7f16aaefc8 Merge pull request #23048 from owncloud/no-fatal-error-if-DSTART-is-not-set
No fatal error if dstart is not set
2016-03-10 17:58:01 +01:00
Morris Jobke
48e03e0c49 Fake LOCK statement for Windows 7, 8 and 10 network mounts
* fixes #22596
2016-03-10 15:02:37 +01:00
Thomas Müller
85521879cd The birthday_calendar is read-only 2016-03-10 12:50:07 +01:00
Thomas Müller
fe7103506b Use a birthday title which does not require translation because we have no idea about the target device language and forcing English upon all users is kind of bad 2016-03-10 12:41:37 +01:00
Joas Schilling
6b4117df34 Correctly escape join statements and use selectAlias 2016-03-10 10:24:08 +01:00
Thomas Müller
6133253a2c fixes #23004 2016-03-10 09:20:53 +01:00
Thomas Müller
bc434b252c fixes #23020 2016-03-09 18:12:39 +01:00
Thomas Müller
20db92c71a Fix group sharing and sharing permissions - fixes #22932 2016-03-08 11:22:07 +01:00
Thomas Müller
3b25ccef65 Handle addressbook migration issue by writing the faulty event to the log and continue 2016-03-07 15:04:19 +01:00
Thomas Müller
d32b35fc7f Handle calendar migration issue by writing the faulty event to the log and continue 2016-03-07 15:04:19 +01:00
Thomas Müller
bd4b61f52b Merge pull request #22896 from owncloud/fix-v1-carddav-endpoint
Correctly default to null and add type hint
2016-03-07 13:50:53 +01:00
Thomas Müller
296a46cc38 Merge pull request #22244 from owncloud/dont-update-shared-resource-properties
For 9.0 we don't have the possibility to store calendar and addressbo…
2016-03-07 12:42:52 +01:00
Joas Schilling
c99ae62c33 Correctly default to null and add type hint 2016-03-07 10:48:16 +01:00
Roeland Jago Douma
3bdafc2122 Rename and move permissions are set when a file is updatable
* Fix unit tests
2016-03-03 20:03:06 +01:00
C. Montero Luque
4d69e562a0 Merge pull request #22757 from owncloud/apply-license
Update copyright information and author file
2016-03-01 15:36:37 -05:00
Lukas Reschke
c353d51810 Remove Scrutinizer Auto Fixer 2016-03-01 17:48:23 +01:00
Lukas Reschke
c430f5ba53 Map Maci 2016-03-01 17:45:05 +01:00
Lukas Reschke
933f60e314 Update author information
Probably nice for the people that contributed to 9.0 to see themselves in the AUTHORS file :)
2016-03-01 17:25:15 +01:00
Robin Appelman
37f1206818 allow putting the part file in the view root 2016-03-01 15:21:24 +01:00
Thomas Müller
900dcf6594 Merge pull request #22699 from owncloud/checksum_int_test
Checksum intergration tests and fixes
2016-03-01 14:47:09 +01:00
Thomas Müller
a83af96dd3 Merge pull request #22686 from owncloud/cleanup_remote_address_books
remove remote address book if access was revoked
2016-03-01 14:46:51 +01:00
Vincent Petry
57babe032b Save some calls to refreshInfo during upload 2016-03-01 11:44:49 +01:00
Roeland Jago Douma
ac392457f2 Fix unit tests 2016-03-01 11:37:16 +01:00
Roeland Jago Douma
ec140fa2ec Checksums on chunked files
We should also store checksums on chunked files.
We do not checksum individual chunks but only the final file.
2016-03-01 11:37:16 +01:00
Roeland Jago Douma
3e88a5067f Remove checksum on upload of non checksumed file
When we overwrite a checksumed file with a file without a checksum we
should remove the checksum from the server.

This is done by setting the column to empty.
2016-03-01 11:37:16 +01:00
Thomas Müller
25a4571dcd Merge pull request #22731 from owncloud/hide-nodes-from-listening
Hides nodes from listing that the user has no access to
2016-03-01 09:22:08 +01:00
Thomas Müller
fd4742d430 Merge pull request #22613 from owncloud/quota-changedavreturnvaluewhennoquotaset
Don't return quota when none set
2016-03-01 08:30:58 +01:00
Lukas Reschke
d04edfaf0d Hides nodes from listing that the user has no access to 2016-02-29 20:53:38 +01:00
Joas Schilling
7a46b30c94 Allow to change properties of readonly calendars 2016-02-29 17:17:57 +01:00
Bjoern Schiessle
87e47afed8 remove synced remote address book if the remote server revoked access to his system address book 2016-02-29 16:50:34 +01:00
Joas Schilling
6f22784d3d Allow to hide a shared calendar 2016-02-29 16:49:55 +01:00
Thomas Müller
95e218b00c For 9.0 we don't have the possibility to store calendar and addressbook properties on a per-user basis and therefore we simple don't allow this for now 2016-02-29 16:49:55 +01:00
Vincent Petry
11215f4e27 Return -3 for unlimited quota
Returns -3 for unlimited quota in Webdav response.
Also adjusted personal page to show unlimited quota when set.
2016-02-29 14:36:20 +01:00
Joas Schilling
2a0cda74d4 Use IQueryBuilder::PARAM_* instead of \PDO::PARAM_* 2016-02-29 09:44:40 +01:00
Thomas Müller
473cd97a45 Merge pull request #22592 from owncloud/fix-response-header
Add header for attachment disposition only once
2016-02-24 12:15:32 +01:00
Morris Jobke
403f11633c Drop unneeded use statements 2016-02-23 14:53:12 +01:00
Lukas Reschke
fc2c5fe414 Add header for attachment disposition only once
Recent refactorings have resulted in the header being added twice, this makes browsers ignore the header which removes any security gains.

This changeset adds the header only once and adds integration tests ensuring the correct header in future.

https://github.com/owncloud/core/issues/22577
2016-02-23 12:23:41 +01:00
Thomas Müller
4dfdb2720c Case insensitive search in contacts - fixes #22575 2016-02-22 19:47:10 +01:00
Joas Schilling
a0d0edc754 Make non-public-method protected 2016-02-22 15:26:59 +01:00
Thomas Müller
f3b13c7656 Merge pull request #22536 from owncloud/add-integration-tests-for-tags
Add integration tests for tags plus fix permissions
2016-02-22 14:14:51 +01:00
Pierre Jochem
1a8a667863 Solution for Proposal #19974
Show username when writing into owncloud.log
2016-02-22 10:02:45 +01:00
Lukas Reschke
3bd95cca6b Check if user has permission to create such a tag
Fixes https://github.com/owncloud/core/issues/22512
2016-02-19 20:45:20 +01:00
Thomas Müller
5b3a79a28b Merge pull request #22509 from owncloud/add-filesplugin-to-new-webdav-endpoint
Add FilesPlugin
2016-02-19 14:44:02 +01:00
Thomas Müller
66f0ba837f Merge pull request #22348 from owncloud/issue-21812-calendar-old-caldav-url
Fix old calendar dav urls
2016-02-19 13:33:16 +01:00
Thomas Müller
e987d8cd47 Add FilesPlugin - fixes #22507 2016-02-19 12:37:24 +01:00
Thomas Müller
1106c354ac Merge pull request #22515 from owncloud/webdav_checksum_only_for_files
Only add checksum headers for 'real' files
2016-02-19 12:36:56 +01:00
Joas Schilling
b216be8cca Add correct principals for the current user before ACL check 2016-02-19 12:35:33 +01:00
Joas Schilling
4e2f9ce05b Convert the old principal to the new principal before getting calendars 2016-02-19 12:35:33 +01:00
Thomas Müller
ffc2950393 Merge pull request #22198 from owncloud/birthday-calendar
Sync a users contacts birthday to the users birthday calendar
2016-02-19 12:33:19 +01:00
Roeland Jago Douma
751d3df469 Only add checksum headers for files
We can only add the checksum header for real ownCloud files (so we have
a fileinfo object etc).
2016-02-19 10:56:43 +01:00
Thomas Müller
f6e61a296f Merge pull request #22424 from owncloud/add-generic-csrf-protection-to-webdav
Require CSRF token for non WebDAV authenticated requests
2016-02-19 09:13:00 +01:00
Thomas Müller
d8de7d1e73 Adding cli command to sync birthday calendar 2016-02-18 14:49:45 +01:00
Thomas Müller
981c73000c Prevent deletion of birthday calendar 2016-02-18 11:49:16 +01:00
Thomas Müller
c9187cc820 Sync a users contacts birthday to the users birthday calendar 2016-02-18 11:48:34 +01:00
Lukas Reschke
9b3c4e8dc4 Require CSRF token for non WebDAV authenticated requests 2016-02-18 11:18:36 +01:00
Vincent Petry
53eff9792f Check the quota on the actual file's storage in dav quota plugin
Fix quota plugin to use the correct file name when chunking

When chunking, the file name is the compound name, so need to convert it
to the correct final file name before doing the free space check.
This ensures that in the case of shared files, the correct storage is
used for the quota check.
2016-02-17 11:52:49 +01:00
Thomas Müller
1cb3583a9a Merge pull request #22398 from owncloud/fix-card-properties
Queries on the cards table by uri require the addressbook as well
2016-02-16 10:19:51 +01:00
Thomas Müller
f850871415 Merge pull request #22385 from owncloud/issue-22384-invalid-content-location-on-commenting
Posting a comment replies with invalid location URL
2016-02-16 08:30:11 +01:00
Thomas Müller
722809c2bd On login we create a default calendar and a default addressbook for the user - fixes #22360 2016-02-15 14:41:54 +01:00
Thomas Müller
df7280a3c7 Queries on the cards table by uri require the addressbook as well - fixes #22284 2016-02-15 14:29:24 +01:00
Joas Schilling
cb836158f0 Deduplicate slashes 2016-02-15 10:54:56 +01:00
Thomas Müller
248c571c56 Merge pull request #22331 from owncloud/dav-nonexisting-part
fix getNodeForPath for non existing part files
2016-02-13 18:24:00 +01:00
Thomas Müller
b3323a51c9 Merge pull request #22294 from owncloud/carddav-report-list-groups-2
Adding a custom webdav property which holds the list of contacts groups
2016-02-12 13:22:05 +01:00
Robin Appelman
c3e4ced64a fix getNodeForPath for non existing part files 2016-02-11 17:22:40 +01:00
Thomas Müller
26939a2873 Merge pull request #22290 from owncloud/dav-upload-scan-in-lock
scan the file in the write lock when uploading over dav
2016-02-11 14:02:08 +01:00
Thomas Müller
c919b41395 Adding a custom webdav property which holds the list of contacts groups 2016-02-10 17:06:13 +01:00
Robin Appelman
bef70e9448 also fix lock order for chunked dav uploads 2016-02-10 16:31:32 +01:00
Robin Appelman
65554ec333 scan the file in the write lock when uploading over dav 2016-02-10 16:21:13 +01:00
Thomas Müller
159a0eb597 Merge pull request #20073 from owncloud/files-should-add-download-disposition
Serve files with an attachment disposition for new DAV endpoint
2016-02-10 14:35:50 +01:00
Thomas Müller
c1d21cf873 Merge pull request #22263 from owncloud/fix-group-principals
Fix group principal
2016-02-10 14:22:18 +01:00
Thomas Müller
2e94d34dfd Fix group principal 2016-02-10 10:43:32 +01:00
C. Montero Luque
f64dbc67c6 Merge pull request #20928 from owncloud/publicdav-check-permissions
Check that the owner of a link share still has share permissions on access
2016-02-09 22:01:08 +01:00
Thomas Müller
2982017682 Merge pull request #22228 from owncloud/comments-limit-message
Limit comment message to 1k chars
2016-02-09 16:35:23 +01:00
Thomas Müller
4659bf9b4a Merge pull request #22234 from owncloud/systemtags-filter-intersect-empty
Fix system tag filter AND condition
2016-02-09 15:34:06 +01:00
Robin Appelman
fd9166488b Check that the owner of a link share still has share permissions on access 2016-02-09 15:02:34 +01:00
Arthur Schiwon
bbc86e0756 on DAV throw Bad Request if provided message is too long 2016-02-09 13:59:13 +01:00
Joas Schilling
e8d9c288bc Stop when a mid result is empty 2016-02-09 12:07:30 +01:00
Vincent Petry
3028684d89 Fix system tag filter AND condition
If one of the results is empty, no need to do array_intersect and return
an empty result directly.
2016-02-09 11:39:22 +01:00
Thomas Müller
bf3a843e89 Migration of calendars 2016-02-09 11:20:31 +01:00
Thomas Müller
98497aa423 Merge pull request #22199 from owncloud/multiple_checksums
Make checksum propfind future proof
2016-02-09 09:10:32 +01:00
Vincent Petry
2f1a60a64d Add REPORT on files endpoint for filtering
For now only supports filtering by system tags
2016-02-08 21:04:53 +01:00
Thomas Müller
703f3551dc Only set the header if the node exists and in case the request is a GET 2016-02-08 17:49:25 +01:00
Lukas Reschke
2cad9d2b8c Serve files with an attachment disposition for new DAV endpoint
This adds a `Content-Disposition: attachment` header to all files served via the DAV endpoint.
2016-02-08 17:08:34 +01:00
Thomas Müller
33eed35ae4 Merge pull request #21817 from owncloud/support-old-carddav-endpoint
Adding pre oc 9.0 CardDAV endpoint for migration of old clients
2016-02-08 15:46:38 +01:00
Roeland Jago Douma
5486a2b149 For possible future usage allow multiple checksums
Instead of returning

<oc:checksum>TYPE:CHECKSUM</oc:checksum>

Return

<oc:checksums>
  <oc:checksum>TYPE:CHECKSUM</oc:checksum>
</oc:checksums>

This will allow us to expand in the future to multiple checksums.
Without doing just string concatenation.

And even for a single checksum it is now correct.
2016-02-08 11:55:07 +01:00
Lukas Reschke
7199ea2f5e Fix PHPDoc 2016-02-08 11:36:58 +01:00
Thomas Müller
c1ae8b0d81 Adding common name to sharee 2016-02-08 11:36:57 +01:00
Thomas Müller
5b86148d3a Original resources should not be overwritten by shared resources 2016-02-08 11:36:57 +01:00
Thomas Müller
a67f7ad1f3 Remove calendar-proxy support - did this ever work? 2016-02-08 10:52:30 +01:00
Thomas Müller
cca2ade199 Adding pre oc 9.0 CardDAV endpoint for migration of old clients 2016-02-08 10:52:30 +01:00
Vincent Petry
d2a495f190 Mark own comments as read after posting 2016-02-05 16:30:37 +01:00
Arthur Schiwon
a480b2261b Check for authorship on edit and delete attempts 2016-02-04 12:57:48 +01:00
Thomas Müller
81b9721700 Remove entries in dav_shares on deletion of a calendar 2016-02-03 20:18:56 +01:00
Thomas Müller
a3cc448c9d Adding propfind property to retrieve sharee information from a dav resource 2016-02-03 17:18:23 +01:00
Thomas Müller
8c14ce01ba Deleting a shared address book results in unshare 2016-02-03 17:18:22 +01:00
Thomas Müller
ef06d6bdaa Deleting a shared calendar results in unshare 2016-02-03 17:18:22 +01:00
Thomas Müller
6f933fde60 Disallow to share with the owner of the resource 2016-02-03 17:18:22 +01:00
Thomas Müller
4b14ca672f Fix ACLs on shared calendars 2016-02-03 17:18:22 +01:00
Thomas Müller
0753067bcd No duplicate address book if shared with user and group and the user is part of the group 2016-02-03 17:18:22 +01:00
Thomas Müller
18c35bf812 No duplicate calendars if shared with user and group and the user is part of the group 2016-02-03 17:18:22 +01:00
Thomas Müller
9106595608 Add calendar sharing 2016-02-03 17:18:22 +01:00
Roeland Jago Douma
2035a179bc Add store/retrieve checksums
* Add extra db column to filecache
* Bump version
* Update filecache code to actually handle checksum
* Webdav code to store/retrieve checksums
2016-02-03 09:03:51 +01:00
Thomas Müller
77942ad38a Merge pull request #22059 from owncloud/comments-readmark-dav
Comments DAV methods for read mark manipulation (mark comments of a file as read) + return isUnread status
2016-02-03 09:00:32 +01:00
Thomas Müller
37d6fff976 Merge pull request #22055 from owncloud/systemtags-checkfileidowner
Make sure user has access to file for system tag operations
2016-02-02 12:37:52 +01:00
Thomas Müller
dfb88612af Filter contacts from the local system addressbook - remote share with local users is not allowed 2016-02-02 11:24:26 +01:00
Thomas Müller
22de25c382 PHP 5.4 compatibility 2016-02-02 10:56:33 +01:00
Thomas Müller
ca25055cc8 Register all system address books to the contacts manager 2016-02-02 10:56:33 +01:00
Vincent Petry
d72c0ffbc6 Make sure user has access to file for system tag operations
Fixes DAV's SystemTagsObjectTypeCollection to not give access to files
where the current user doesn't have access to.
2016-02-01 18:23:40 +01:00
Arthur Schiwon
29f57eb85c set read marker via proppatch against entity 2016-02-01 17:43:13 +01:00
Arthur Schiwon
b1c8b077b0 Return isUnread property per comment 2016-02-01 16:55:24 +01:00
Thomas Müller
b4853f3fce Merge pull request #21967 from owncloud/comments-webdav
Comments WebDAV adjustements
2016-02-01 16:17:45 +01:00
Thomas Müller
ca5d72e6b0 Catch potential exceptions when accessing the users avatar - e.g. issues with the encrypted file system - fixes #21983 2016-01-29 15:39:39 +01:00
Arthur Schiwon
6dc793338a url encode id 2016-01-29 13:28:17 +01:00
Arthur Schiwon
24025f32f4 standardize datetime output 2016-01-29 13:08:02 +01:00
Arthur Schiwon
d2882b9021 Comments WebDAV adjustements 2016-01-29 13:08:02 +01:00
Thomas Müller
ede1cbf612 Merge pull request #21932 from owncloud/comments-dav-refinements
provide info about plugin, and do not run commit ourselves on proppatch
2016-01-29 10:03:20 +01:00
Thomas Müller
6fc3269670 Merge pull request #21333 from owncloud/migrate-contacts
Migrate contacts
2016-01-28 19:47:48 +01:00
Thomas Müller
0f51851d7d Merge pull request #21895 from owncloud/calendar-sharing
Migrate from CardDAV sharing to more general DAV sharing
2016-01-27 19:32:05 +01:00
Thomas Müller
c7abad65ea Fix sql to get shared addressbooks including unit tests 2016-01-27 12:10:06 +01:00
Thomas Müller
8f4ab55b4b Unit testing database access to old contacts tables 2016-01-27 12:10:06 +01:00
Thomas Müller
b2976eb72c Unit testing migration logic 2016-01-27 12:10:06 +01:00
Thomas Müller
07a5c26583 Add app to migrate contacts and calendars
Add group sharing migration

Migrate all users
2016-01-27 12:10:06 +01:00
Vincent Petry
cfba90a78d Fix system tags proppatch with booleans
Backbone webdav adapter now converts booleans and ints to strings.

Fixed system tags to use "true" / "false" strings for booleans instead
of 1 / 0.
2016-01-27 11:09:43 +01:00
Thomas Müller
ba565edc1e Extract sharing functionality into own backend class for reusability 2016-01-27 09:45:32 +01:00
Thomas Müller
92c7d15739 Fix server ctor including unit test - this shall never happen again 2016-01-27 09:43:44 +01:00
Thomas Müller
d1104954aa Migrate from CardDAV sharing to more generalk DAV sharing 2016-01-27 09:43:44 +01:00
Arthur Schiwon
a5c528ff7e provide info about plugin, and do not run commit ourselves on proppatch 2016-01-26 21:35:12 +01:00
Lukas Reschke
b6ca05f9a0 Add fake locking support for OneNote 2013
Fixes https://github.com/owncloud/core/issues/21925
2016-01-26 17:32:52 +01:00
Thomas Müller
aa598fc701 Merge pull request #21664 from owncloud/comments-dav
Comments DAV implementation
2016-01-26 17:20:32 +01:00
Arthur Schiwon
3b7ded863b files_sharing requires int as file id 2016-01-26 15:45:37 +01:00
Thomas Müller
7b678a8c17 Reassemble behavior on shared address books with respect to uri and displayname 2016-01-26 15:07:50 +01:00
Arthur Schiwon
8afa39682c Revert "utilize elementMap for parsing DateTime string input argument for REPORT method"
This reverts commit 2027bf2686.
2016-01-26 13:04:41 +01:00
Arthur Schiwon
49c8f3d6e4 return 404 instead of 403 when attempting to create a comment on an not existing or unavailable file 2016-01-26 12:47:33 +01:00
Arthur Schiwon
2027bf2686 utilize elementMap for parsing DateTime string input argument for REPORT method 2016-01-26 12:40:05 +01:00
Arthur Schiwon
11ae468c89 smaller changes related to reviews 2016-01-26 12:10:56 +01:00
Arthur Schiwon
ed546bd2a5 Comments DAV implementation 2016-01-26 12:10:14 +01:00
Thomas Müller
6cb95f4e42 Merge pull request #21853 from owncloud/tags-fixpropertyma
Fix oc:tags tag list serializer
2016-01-26 11:37:37 +01:00
Joas Schilling
09ae160463 Replace other usages 2016-01-25 17:17:36 +01:00
Thomas Müller
9d36972e0f Merge pull request #21401 from owncloud/dav-cache-getchildren
Put nodes from Directory->getChildren in the ObjectTree cache
2016-01-25 10:02:32 +01:00
Roeland Jago Douma
d0799af484 Add missing use statements for IGroupManager and IUserSession 2016-01-25 08:05:53 +01:00
Thomas Müller
21131d133a Merge pull request #21814 from owncloud/systemtags-backend-permissions
Fix DAV backend to respect system tags permissions
2016-01-22 16:08:22 +01:00
Vincent Petry
2ef62b0115 Fix TagList serializer 2016-01-22 15:55:54 +01:00
Vincent Petry
2f3e62a27f Fix oc:tags tag list serializer
Fixes propfind/proppatch of oc:tags
2016-01-22 14:07:26 +01:00
Thomas Müller
57b17cdd98 Merge pull request #21826 from owncloud/dav-fix-user-deletion
No card ID when deleting is acceptable
2016-01-22 11:16:30 +01:00
Vincent Petry
94a763a084 Inject user session to check for admin in system tags DAV handlers 2016-01-21 14:22:46 +01:00
Vincent Petry
5639e41cb0 Fix DAV to respect system tags permissions
When queried as regular user, visible tags are not displayed in result
sets and queries for existence will return false.

Non-assignable or non-visible tags cannot be
renamed/assigned/unassigned.

User is not allowed to change tag permissions, only to change the name
if the tag is also assignable.
2016-01-21 14:09:27 +01:00
blizzz
7e853e2c69 remove duplicated array value 2016-01-21 13:59:36 +01:00
Joas Schilling
df27a939ce No card ID when deleting is acceptable 2016-01-21 12:19:28 +01:00
Thomas Müller
ec8022d241 Merge pull request #20847 from owncloud/systemtags-ui
System tags sidebar section
2016-01-21 12:12:40 +01:00
Thomas Müller
f16ddef96a React on OC_User::changeUser hook and update the user's vcard 2016-01-20 14:57:20 +01:00
Vincent Petry
cc0f0a940e Fix content type parsing in system tags plugin 2016-01-20 11:51:06 +01:00
Thomas Müller
33171f5c78 Merge pull request #21785 from owncloud/cron-sync-system-addressbook
Add daily cron job to sync system address book
2016-01-20 07:29:10 +01:00
Vincent Petry
ffba6d0a7e Added system tags GUI in sidebar
Added files details sidebar panel to assign/unassign/rename/delete
system tags.
2016-01-19 16:24:26 +01:00
Thomas Müller
54cbfcbaa1 Add daily cron job to sync system address book 2016-01-18 22:51:23 +01:00
Thomas Müller
ac55bac461 Fix test for ensureSystemAddressBookExists 2016-01-18 22:17:07 +01:00
Thomas Müller
2d16ba9084 Fix join condition for oracle 2016-01-18 22:15:17 +01:00
Thomas Müller
ed24511185 Readjust sharing methods 2016-01-18 22:15:17 +01:00
Thomas Müller
dca0a0eaf1 Save access properly 2016-01-18 22:14:51 +01:00
Thomas Müller
45baf03a2a Test ownCloud CardDAV sharing using CalDAVTester 2016-01-18 22:14:51 +01:00
Thomas Müller
992ccc899a Fix unit test - optimize code 2016-01-18 22:14:30 +01:00
Thomas Müller
8b8edc1f5d Show group shared addressbooks 2016-01-18 22:14:30 +01:00
Thomas Müller
816df90aec Merge pull request #21700 from owncloud/update-system-addressbook-on-user-change
Updating system addressbook as soon as a user is added or removed
2016-01-18 20:28:11 +01:00
Robin Appelman
97a2fb8a54 Put nodes from Directory->getChildren in the ObjectTree cache 2016-01-17 09:33:05 +01:00
Thomas Müller
6a7be4d277 Merge pull request #20927 from owncloud/handle-return-code-on-webdav-put
Handle return code of streamCopy in WebDAV put
2016-01-15 13:33:01 +01:00
Robin Appelman
5fae07f422 add scanner interface 2016-01-14 12:54:42 +01:00
Thomas Müller
a91954907b Start updating system addressbook 2016-01-14 12:10:45 +01:00
Roeland Jago Douma
4a3b6da183 Fix mock call to download
We can only mock public and protected functions in phpunit.
2016-01-13 12:27:48 +01:00
Thomas Müller
4cff03f56b Add missing dispatcher 2016-01-13 12:18:46 +01:00
Joas Schilling
3bdcfef395 Remove the listener plugin 2016-01-13 10:33:08 +01:00
Thomas Müller
c5a200c419 Merge pull request #21653 from owncloud/update-license-headers-2016
Update license headers 2016
2016-01-13 08:29:42 +01:00
Thomas Müller
682821c71e Happy new year! 2016-01-12 15:02:18 +01:00
Björn Schießle
fa561071d2 create urls in a way that sabredav handles it correctly 2016-01-12 14:24:47 +01:00
Thomas Müller
94856cb892 Catch exceptions during sync 2016-01-12 14:24:47 +01:00
Thomas Müller
06dac9726e Address comments 2016-01-12 14:24:47 +01:00
Thomas Müller
451ab84d11 Adding unit tests for the sync service 2016-01-12 14:24:47 +01:00
Thomas Müller
1a20af253b Adding tests and adjust PHPDoc 2016-01-12 14:24:47 +01:00
Thomas Müller
90d9834c8c Decouple federation and dav app 2016-01-12 14:24:47 +01:00
Thomas Müller
dbddbb634b Use EventDispatcher to allow additional setup of auth backends - move federation auth to federation app 2016-01-12 14:24:01 +01:00
Thomas Müller
cdc536c423 Allow trusted servers to authenticate 2016-01-12 14:24:01 +01:00
Thomas Müller
6f526e638c Unit test contact provider registration 2016-01-11 14:36:20 +01:00
Morris Jobke
43f5d8ab70 Handle return code of streamCopy in WebDAV put
* throw a different exception if streamCopy failed
2016-01-11 12:13:01 +01:00
Thomas Müller
1f21f0eb73 Merge pull request #21491 from owncloud/webdav_auth_no_basic_auth
Also allow 'only cookie' auth to webdav
2016-01-08 20:09:16 +01:00
Thomas Müller
173c1640c0 Merge pull request #21540 from owncloud/group-principals
Adding group principals to new dav endpoint
2016-01-08 18:18:57 +01:00
Thomas Müller
bb01efdcbd Adding unit tests for SystemPrincipalBackend 2016-01-08 15:31:33 +01:00
Thomas Müller
b3550db02d Adding IMip scheduling which uses ownClouds mail delivery 2016-01-08 12:21:41 +01:00
Thomas Müller
f9c08112da Adding group principals to new dav endpoint 2016-01-08 12:11:02 +01:00
Roeland Jago Douma
4a38793d11 Allow only cookie auth to webdav 2016-01-07 10:44:26 +01:00
Thomas Müller
40d796dde9 Merge pull request #21195 from owncloud/test-carddav-sharing-plugin
Fix carddav sharing plugin + adding unit tests
2015-12-21 11:40:03 +01:00
Roeland Jago Douma
4f20e3bac0 Removed deprecated OC_Helper::getSecureMimeType 2015-12-18 13:42:59 +01:00
Thomas Müller
67e9506261 Fix failing unit tests 2015-12-18 09:18:38 +01:00
Thomas Müller
aac06a33f1 Fix carddav sharing plugin + adding unit tests 2015-12-18 09:18:38 +01:00
Thomas Müller
792b270f22 Merge pull request #20696 from owncloud/add-carddav-backends-to-ocp-contactsmanager
Add carddav backend to OCP\ContactsManager
2015-12-17 16:36:48 +01:00
Morris Jobke
66c0f4eb59 Use name of ICollection for exception message
* fixes #21230
2015-12-16 14:44:28 +01:00
Björn Schießle
3ce845e2b1 avoid duplicates on search 2015-12-15 15:40:47 +01:00
Thomas Müller
70e9e31497 Fix last Oracle issue 2015-12-15 14:52:27 +01:00
Thomas Müller
e5469a1121 Fix Oracle insert error 2015-12-15 14:52:27 +01:00
Björn Schießle
cd55a19034 implement delete, create, update, search, get permissions 2015-12-15 14:52:27 +01:00
Thomas Müller
32525fa977 save wip 2015-12-11 17:39:27 +01:00
Thomas Müller
f799b27f0e Merge pull request #21144 from owncloud/dav-auth-checkduplicateheader
Properly check X-Requested-With header in case of multiple values
2015-12-11 11:44:43 +01:00
Thomas Müller
c14f4e8506 Merge pull request #21045 from owncloud/scrutinizer-patch-1
Scrutinizer Auto-Fixes
2015-12-11 11:39:25 +01:00
Vincent Petry
13ec2bda2d Properly check X-Requested-With header in case of multiple values
Saw this happening in IE8...
2015-12-11 11:22:38 +01:00
Thomas Müller
19d1e0ebb9 adjust PHPDoc 2015-12-10 16:43:37 +01:00
Scrutinizer Auto-Fixer
ffc49a24f0 Scrutinizer Auto-Fixes
This commit consists of patches automatically generated for this project on https://scrutinizer-ci.com
2015-12-10 16:43:37 +01:00
Vincent Petry
174f7599e5 Catch exception when querying direct download link 2015-12-10 16:17:44 +01:00
Thomas Müller
85409b6701 Merge pull request #20786 from owncloud/systemtags-dav
DAV endpoint for system tags
2015-12-08 13:51:25 +01:00
Vincent Petry
316b907a13 Fixed system tags DAV and API and docs 2015-12-04 17:30:50 +01:00
Vincent Petry
acdd106a24 Fix namespace XML output of files and tags dav 2015-12-03 15:55:10 +01:00
Vincent Petry
fe95fd5bec Unit test for system tags plugin 2015-12-03 15:23:21 +01:00
Thomas Müller
502e454a69 Fix PHPDoc ... 2015-12-03 15:23:21 +01:00
Vincent Petry
cc72c6a30d Added dav endpoints for system tags 2015-12-03 15:23:21 +01:00
Thomas Müller
28ceab2f61 Fix endless recursion 2015-12-02 14:44:41 +01:00
Thomas Müller
f558ac7dd5 Fix update of avatar image 2015-12-02 11:09:15 +01:00
Thomas Müller
4c695e63c0 Fix comments 2015-12-02 09:20:58 +01:00
Thomas Müller
599ba31edc Specify the email type and set name properly 2015-12-02 09:14:41 +01:00
Thomas Müller
906777dc9c Add converter to generate/update a vcard from a given user 2015-12-02 09:14:41 +01:00
Thomas Müller
1e8ad65288 Add system principal to cal of each card 2015-12-02 09:14:41 +01:00
Thomas Müller
6a2dde6400 user and system addressbooks are now living in sub folders 2015-12-02 09:14:41 +01:00
Thomas Müller
dcfd089a6c Adding a second principal backend which holds system principals - as of now only one principals/system/system 2015-12-02 09:14:41 +01:00
Thomas Müller
c91192fb73 Adding system addressbook for users of this instance - a occ command is supplied for synchronizing 2015-12-02 09:08:27 +01:00
Scrutinizer Auto-Fixer
be4c3a8b56 Scrutinizer Auto-Fixes
This commit consists of patches automatically generated for this project on https://scrutinizer-ci.com
2015-11-27 15:32:44 +00:00
Thomas Müller
1d30f0fcdb Merge pull request #20760 from owncloud/webdav-authredirectfix
Only reject ajax auth if user is really logged out
2015-11-27 13:16:01 +01:00
Vincent Petry
d02e0eaaf1 Only reject ajax auth if user is really logged out 2015-11-26 17:04:21 +01:00
Thomas Müller
80c43ffc6c Merge pull request #20702 from owncloud/move-user-principal-into-subfolder
Users are available under it's own principal resource named 'principa…
2015-11-26 16:49:49 +01:00
Thomas Müller
cc8c38e8ba Fix principal collection for CavDAVTester 2015-11-26 12:15:11 +01:00
Thomas Müller
5a33390a69 Merge pull request #20731 from owncloud/per-storage-updater
Make Cache\Updater per storage
2015-11-26 12:01:44 +01:00
Thomas Müller
b799e42b4e Introduce \OCP\IUser::getEMailAddress() 2015-11-25 22:23:34 +01:00
Thomas Müller
c25a7cc4da Users are available under it's own principal resource named 'principals/users' this will allow us to introduce e.g. groups as principals (one day) and system specific principals (needed for federation) 2015-11-25 22:23:34 +01:00
Thomas Müller
d28390a649 Adding sync support - including dav tests 2015-11-25 21:14:15 +01:00
Robin Appelman
b025f07fb7 Make Cache\Updater per storage 2015-11-25 14:16:00 +01:00
Thomas Müller
ae36c01b95 Adjust sabre changes in core 2015-11-24 15:11:54 +01:00
Vincent Petry
055d58bfc3 Do not authenticate over ajax
This makes sure that whenever a Webdav call is done through Ajax, if the
session has expired, it will not send back a challenge but a simple 401
response. Without this fix, the default code would send back a challenge
and trigger the browser's basic auth dialog.
2015-11-23 09:44:30 +01:00
Thomas Müller
79bbda994b Merge pull request #16902 from owncloud/jsocclient
Web UI uses Webdav instead of ajax/* calls
2015-11-23 09:38:01 +01:00
Vincent Petry
ce897f80e6 Send download token as cookie to tell the UI that it started
This used to be done in the ajax download code. Now that single file
downloads are going through Webdav, the token handling needs to be done
here too.
2015-11-22 16:05:51 +01:00
Scrutinizer Auto-Fixer
5573029485 Scrutinizer Auto-Fixes
This commit consists of patches automatically generated for this project on https://scrutinizer-ci.com
2015-11-20 15:42:34 +00:00
Thomas Müller
bcc486ffdc Adding an existing sharee is idempotent 2015-11-19 11:34:59 +01:00
Thomas Müller
0f434e0b9b Implement CSRF protection 2015-11-19 11:34:59 +01:00
Thomas Müller
4eb15885c9 Addressbook sharing added based on a simplified approach which is based on calendar sharing standard 2015-11-19 11:34:31 +01:00
Thomas Müller
3869db1290 Merge pull request #20537 from owncloud/add-internal-locking-to-new-webdav-endpoint
Add internal locking plugin
2015-11-19 10:55:07 +01:00
Thomas Müller
d8b73fde1a Merge pull request #20371 from owncloud/add-caldav-2
Introducing CalDAV into core
2015-11-18 16:32:19 +01:00
Vincent Petry
978303e03e Add internal fileid to webdav response
Introduce a new property "oc:fileid" to return the internal file id.

This is because the original "oc:id" property is a compound and it is
not possible to extract the real id without knowing the instance id. The
instance id is not available to external clients.
2015-11-18 11:41:04 +01:00
Thomas Müller
aba119951e Merge pull request #20494 from owncloud/storage-forbidden-exception
Allow storage wrappers to through a forbidden exception with retry information for clients
2015-11-18 09:13:45 +01:00
Thomas Müller
20c251a575 Merge pull request #20188 from owncloud/webdav-exposeshareowner
Expose share owner id and display name via files webdav
2015-11-17 13:40:25 +01:00
Joas Schilling
e2cfcd992c Allow storage wrappers to through a forbidden exception with retry information 2015-11-17 10:39:52 +01:00
Thomas Müller
e4568234a5 Use uri as displayname 2015-11-16 21:01:27 +01:00
Thomas Müller
a0b649442c components was not written to the database 2015-11-16 17:57:39 +01:00
Thomas Müller
5fc414abfd Add internal locking plugin - fixes #20502 2015-11-16 16:09:04 +01:00
Thomas Müller
867fd94dc6 Add scheduling backend 2015-11-16 15:49:46 +01:00
Vincent Petry
d62f410f92 Add "owner-id" and "owner-display-name" Webdav properties 2015-11-16 15:31:41 +01:00
Thomas Müller
23e7a62717 Fix Oracle 2015-11-16 15:28:34 +01:00
Thomas Müller
2b13c5db0f Introducing CalDAV into core 2015-11-16 13:24:50 +01:00
Lukas Reschke
a3fc40921b Add fake locker plugin for WebDAVFS
WebDAVFS as used by Finder requires a Class 2 compatible WebDAV server. This change introduces a fake locking provider which will simply advertise Locking support when a request originates from WebDAVFS. It will also return successful LOCK and UNLOCK responses.
2015-11-13 23:31:08 +01:00
Thomas Müller
f77c6dbbed Merge pull request #20431 from owncloud/carddav-enforce-displayname
When creating addressbooks, make sure the displayname is set
2015-11-10 14:32:39 +01:00
Thomas Müller
d7232557d9 Merge pull request #20422 from owncloud/fix-20421-master
Ensure the user folder exists
2015-11-10 11:58:33 +01:00
Arthur Schiwon
06d1685e75 When creating addressbooks, make sure the displayname is set 2015-11-10 11:41:27 +01:00
Thomas Müller
a394c1887f Ensure the user folder exists 2015-11-10 10:07:46 +01:00
Thomas Müller
e0f2b86177 Adding CardDAV plugin to provide addressbook-home-set property 2015-11-10 07:27:34 +01:00
Thomas Müller
836173289f Register DAVACL plugin to provide current-user-principal 2015-11-09 13:27:19 +01:00
Thomas Müller
d8e965e59a Introducing CardDAV into core 2015-11-06 15:26:51 +01:00
Vincent Petry
52e213f026 Fix TagList namespace in property map 2015-11-02 14:19:01 +01:00
Robin Appelman
c309193039 Merge pull request #17104 from owncloud/chunked-upload-locking
locking for chunked dav upload
2015-10-27 16:58:00 +01:00
Thomas Müller
d7d5a3bab5 Merge pull request #20066 from owncloud/list-principaly-in-debug-mode
as soon as debug mode is enabled we allow listing of principals
2015-10-27 10:29:50 +01:00
Roeland Jago Douma
db17598a0e Verify the src exists in webdav MOVE
* Unit test added
2015-10-27 09:22:33 +01:00
Thomas Müller
33152c3203 as soon as debug mode is enabled we allow listing of principals 2015-10-26 22:10:00 +01:00
Thomas Müller
26201bd414 Adding required parameters of ctor of class Auth 2015-10-26 13:02:10 +01:00
Thomas Müller
c79496b5a3 Introduced the new webdav endpoint remote.php/dav holding the principals and the files collection 2015-10-26 13:00:00 +01:00
Lukas Reschke
cddc9abc06 Add tests for Sabre Auth plugin + make getCurrentUser compatible 2015-10-23 17:30:47 +02:00
Robin Appelman
283798a220 remove locking for chunks 2015-10-20 14:15:59 +02:00
Robin Appelman
ddc8749814 Adjust for wide locking 2015-10-20 14:14:56 +02:00
Robin Appelman
23eaf27a5b locking for chunked dav upload 2015-10-20 14:14:56 +02:00
Roeland Jago Douma
ca27024fa2 Fix webdav access
* Correct namespace
* Pass the EventDispatcher to the webDAV server
2015-10-16 13:17:12 +02:00
Thomas Müller
2ff55560e2 Remove $ETagFunction - it was never used 2015-10-16 13:17:12 +02:00
Thomas Müller
f2889dc6e4 Consolidate webdav code - move all to one app 2015-10-16 13:17:12 +02:00