Commit Graph

570 Commits

Author SHA1 Message Date
Vincent Petry c68e273664
Goodbye Iframe transport !
Not needed any more in IE >= 11

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2016-10-24 21:45:00 +02:00
Vincent Petry 59c5be1cc5
Use Webdav PUT for uploads in the web browser
- uses PUT method with jquery.fileupload for regular and public file
  lists
- for IE and browsers that don't support it, use POST with iframe
  transport
- implemented Sabre plugin to handle iframe transport and redirect the
  embedded PUT request to the proper handler
- added RFC5995 POST to file collection with "add-member" property to
  make it possible to auto-rename conflicting file names
- remove obsolete ajax/upload.php and obsolete ajax routes

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2016-10-24 21:45:00 +02:00
Vincent Petry 44cf67accd
Storage 503 message improvements
"Storage not available" is now "Storage temporarily not available".
Exceptions are now logged in DEBUG level, not FATAL.
2016-10-24 15:43:15 +02:00
Thomas Müller bf85139f53
Adding capability about new chunking - refs #25682 (#26368)
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2016-10-21 16:33:37 +02:00
Morris Jobke 2b76d14330 Merge pull request #1834 from nextcloud/downstream-26186
Add more files plugins to new DAV endpoint
2016-10-21 09:44:15 +02:00
Roeland Jago Douma 50b6ee67cb Merge pull request #1806 from nextcloud/karakayasemi_1767
Update file.php put function posthook calls
2016-10-21 08:45:51 +02:00
Vincent Petry 73e216e0a7
Add more files plugins to new DAV endpoint (#26186)
* Add more files plugins to new DAV endpoint

Also fix report plugin to properly retrieve the path from the
prolongated URL

* In case the report is not for this plugin -> simply return to allow other plugins to get executed

* Adjust onReport tests to match new behavior
2016-10-20 21:36:15 +02:00
Semih Serhat Karakaya 33cee3502a
Update file.php put function posthook calls
Logicaly, postHooks should emit after touch. For chunking file it is already emitting after touch.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2016-10-20 21:07:15 +02:00
Joas Schilling 246bb9f33d
Move OC\Files\Storage\Shared to the right namespace 2016-10-20 20:27:44 +02:00
Morris Jobke 98c8464564 Merge pull request #1821 from nextcloud/downstream-26366
Code style changes from downstream
2016-10-20 20:18:47 +02:00
Lukas Reschke 0864f53675 Merge pull request #1796 from nextcloud/oc_fav-report
Make it possible to filter by tags with REPORT method
2016-10-20 18:32:51 +02:00
Thomas Müller 08d6884107
Sanitize length headers when validating quota 2016-10-20 15:15:48 +02:00
Vincent Petry 361f008c70
Make it possible to filter by tags with REPORT method
Enhanced the REPORT method on the Webdav endpoint and added a
"oc:favorite" filter rule. When set, it will return a flat list of
results filtered with only favorite files.

The web UI was also adjusted to use this REPORT method instead of the
private API endpoint.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2016-10-19 11:06:29 +02:00
Joas Schilling 05223a39f9
Make sure we only use numbers as length
Signed-off-by: Joas Schilling <coding@schilljs.com>
2016-10-19 09:28:54 +02:00
Arthur Schiwon 5d98ab83e9
resolve displayname via manager and registerable resolvers
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2016-10-19 00:34:00 +02:00
Arthur Schiwon fea3e20a80
move mention extraction to (I)Comment and report mentions via DAV
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2016-10-19 00:33:55 +02:00
Lukas Reschke 0923d2665f Merge pull request #1742 from nextcloud/us_sync-date-of-death
[oc] Sync deathdate and anniversary to birthday calendar
2016-10-18 17:14:53 +02:00
Morris Jobke 96f8f209b9 Merge pull request #1449 from nextcloud/comments-user-mention
Notifications for simple @-mentioning in comments
2016-10-17 09:30:47 +02:00
Thomas Citharel 3b055b160e
fix typo
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2016-10-14 11:48:18 +02:00
Thomas Müller 5cd90d4116
[9.2] Sync deathdate and anniversary to birthday calendar (#25655)
* Sync deathdate and anniversary to birthday calendar (which should be renamed maybe)

* Sync deathdate and anniversary to birthday calendar (which should be renamed maybe)

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2016-10-14 10:12:43 +02:00
Arthur Schiwon 1bcd2ca8e3
emit pre-update event for comments
* notifications can be cleaned up, no polluted DB
* updating comments will re-notify users or remove notifications, depending on the message

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2016-10-12 18:06:22 +02:00
Morris Jobke 6278d3bbfd Merge pull request #1144 from nextcloud/translate-default-calendar
translate default calendar & default address book displaynames & add …
2016-10-06 23:00:26 +02:00
Joas Schilling ce964f0a10
Translate the Contacts addressbook when it's default
Signed-off-by: Joas Schilling <coding@schilljs.com>
2016-10-06 14:20:01 +02:00
Joas Schilling a4f82f13f3
Translate the personal calendar
Signed-off-by: Joas Schilling <coding@schilljs.com>
2016-10-06 14:19:58 +02:00
Joas Schilling f6e8da186d Merge pull request #1525 from nextcloud/newdav-tagsplugin
Newdav tagsplugin
2016-10-06 11:13:48 +02:00
Morris Jobke ff3e8c2139 Merge pull request #1518 from nextcloud/dav-fileshome-directory-properties
FilesHome now also returns DAV properties
2016-10-06 00:21:44 +02:00
Vincent Petry 5d25563634
New dav endpoint register tags plugin
This makes it possible to retrieve and PROPPATCH the favorite info

Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2016-10-05 08:19:41 +02:00
Olivier Mehani 60cab0d73e Unset user PHOTO before setting new one in OCA\DAV\CardDAV\Converter::updateCard (#26243)
Signed-off-by: Olivier Mehani <shtrom@ssji.net>

#26242
2016-09-29 17:09:24 +02:00
Morris Jobke 85301df817 Merge pull request #1513 from nextcloud/fix-etag-on-move
Return ETag and OC-ETag in case of a move (#25683)
2016-09-28 21:46:51 +02:00
Morris Jobke ef0760f84f Merge pull request #1545 from nextcloud/delete-calendars-with-their-users
Delete calendars with their users
2016-09-28 21:42:55 +02:00
Thomas Müller bd96c6aa38
Return ETag and OC-ETag in case of a move (#25683)
Downstreaming of https://github.com/owncloud/core/pull/25683

Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2016-09-28 21:12:50 +02:00
Thomas Citharel 6c8bcb38f1
Rename deleteAllSharesForUser() to deleteAllSharesByUser()
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2016-09-28 15:32:03 +02:00
Lukas Reschke 06e969cb74 Merge pull request #1197 from nextcloud/oc-public-sharing
CalDAV calendar public sharing
2016-09-27 18:51:40 +02:00
Thomas Citharel da1543eef7
fix deletion of calendars
Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2016-09-27 18:33:56 +02:00
Thomas Citharel 5215833fe4
delete shares to an user
Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2016-09-27 18:30:19 +02:00
Thomas Müller 97a47f49a1
Adjust delete logic and ann unit tests
Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2016-09-27 18:30:10 +02:00
Thomas Citharel 18c07f0692
delete also addressbooks on user deletion
Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2016-09-27 18:30:02 +02:00
Thomas Citharel 7db01ff805
delete calendars when users are deleted
Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2016-09-27 18:29:53 +02:00
Lukas Reschke 4f4286932f Merge pull request #1457 from nextcloud/upstream-fix-birthday-calendar-component
[Upstream] fix birthday calendar component
2016-09-26 13:21:08 +02:00
Thomas Citharel dcc23114e9
fix annotations & copyright headers 2016-09-26 11:55:43 +02:00
Thomas Citharel 17d5dfdeb1
add in same request 2016-09-26 11:55:43 +02:00
Thomas Citharel 8360222554
fix public calendars 2016-09-26 11:55:42 +02: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
Lukas Reschke 4659e3ab59
Add new constructor args 2016-09-26 11:55:42 +02:00
Thomas Citharel 3e9a346223
add calendarserver-sharing to the list of advertised features 2016-09-26 11:55:41 +02:00
Thomas Citharel ad0eeaaf1c
use AllowedSharingModes for can-be-published & can-be-shared 2016-09-26 11:55:41 +02:00
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