Commit Graph

422 Commits

Author SHA1 Message Date
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 a66899c528 Handle null case 2016-03-01 10:41:05 +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
Bjoern Schiessle 7189c72c33 remove remote address book if the admin removes the server from the trusted servers list 2016-02-29 16:50:33 +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
Thomas Müller 9a0950f10b Merge pull request #22569 from owncloud/issue-22566-too-much-mapping-entries
Allow defining a limit and offset for getObjectIdsForTags
2016-02-23 15:02:08 +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
Joas Schilling 3a65bdf4d5 Fix dav unit tests 2016-02-23 09:04:15 +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
Joas Schilling 178914104c Add a test for empty mid-result 2016-02-09 12:07:17 +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 6a550d44e9 Fix path 2016-02-08 10:52:30 +01:00
Thomas Müller 0c9a469f74 Adding pre oc 9.0 CalDAV endpoint for migration of old clients 2016-02-08 10:52:30 +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
Joas Schilling d79b0886d0 Remove deprecated and unused standalone tag 2016-02-03 12:56:42 +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
Lukas Reschke 128d9d7aa6 Add copyright header 2016-01-28 19:27:04 +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
Thomas Müller ea93310623 Merge pull request #21947 from owncloud/oc-backbone-webdav-put-bool-tojson
Fix system tags proppatch with booleans
2016-01-27 11:43:57 +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 c264f9362d Merge pull request #21856 from owncloud/sync-federated-cloud-users-in-cron
Sync federated clouds using a cron job
2016-01-27 10:11:01 +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 e5ba28f934 adjust unit tests 2016-01-26 13:16:14 +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 2d7528bc64 Adding unit tests 2016-01-25 11:39:57 +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
Thomas Müller 2540ac431c Merge pull request #21778 from owncloud/share-calendars
More tests for CalDAV
2016-01-21 12:31:26 +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 c1d8d60754 Add back the current-user-principal test suite 2016-01-19 15:33:57 +01:00
Thomas Müller f18f1e40b7 CalDAV sync tests 2016-01-19 14:03:46 +01:00
Thomas Müller e1d18a8ded Adjust CalDAV tests 2016-01-19 14:03:46 +01:00
Thomas Müller 177387b13c Install cron job on install and update 2016-01-19 12:36:23 +01:00