Commit Graph

1300 Commits

Author SHA1 Message Date
Roeland Jago Douma ef34f72167
Have share permissions on link shares if it is enabled
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-05-15 08:18:03 +02:00
John Molakvoæ (skjnldsv) a26ca1e638
Do not filter id matching userId on non-user-share shares
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
Signed-off-by: npmbuildbot[bot] <npmbuildbot[bot]@users.noreply.github.com>
2020-05-05 21:36:46 +02:00
John Molakvoæ (skjnldsv) ff20da637e Fix federated link sharing permissions
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
Signed-off-by: npmbuildbot[bot] <npmbuildbot[bot]@users.noreply.github.com>
2020-05-04 11:48:11 +00:00
Roeland Jago Douma d466a7b808 Allow to navigate to others with access from the sidebar
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
Signed-off-by: npmbuildbot[bot] <npmbuildbot[bot]@users.noreply.github.com>
2020-04-29 17:53:35 +00:00
Christoph Wurst cb057829f7
Update license headers for 19
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-29 11:57:22 +02:00
Morris Jobke 1738e17e20
Merge pull request #19793 from nextcloud/bugfix/noid/link-to-federated-reshare
Fix resharing of federated shares that were created out of links
2020-04-27 11:05:34 +02:00
Roeland Jago Douma 4114bce1e5
Merge pull request #17623 from j3l11234/master
Add support for download share on old android browser
2020-04-24 16:01:45 +02:00
Robin Appelman 7a4ea4a6b6
make php-cs happy
Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-04-23 13:35:30 +02:00
Morris Jobke f0ad46dec8
Merge pull request #20575 from nextcloud/fix/sharing-suggestions
Fix Sharing recommendation user display
2020-04-22 14:56:01 +02:00
Roeland Jago Douma 8f650feede
Merge pull request #20114 from nextcloud/techdebt/noid/allow-some-apps-to-have-root-urls
Allow some apps to have root URLs in their own routing file
2020-04-21 16:00:34 +02:00
Julius Härtl 5646f7c761
Link shares have reshare permission if outgoing federated shares are enabled
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-04-21 14:35:29 +02:00
John Molakvoæ (skjnldsv) 7eceba7dae Fix Sharing recommendation user display
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
Signed-off-by: npmbuildbot[bot] <npmbuildbot[bot]@users.noreply.github.com>
2020-04-21 07:48:10 +00:00
Robin Appelman 9735b5d61f
Add method to storage backends to get directory content with metadata
Currently you need to use `opendir` and then call `getMetadata` for
every file, which adds overhead because most storage backends already
get the metadata when doing the `opendir`.

While storagebackends can (and do) use caching to relief this problem,
this adds cache invalidation dificulties and only a limited number of
items are generally cached (to prevent memory usage exploding when
scanning large storages)

With this new methods storage backends can use the child metadata they
got from listing the folder to return metadata without having to keep
seperate caches.

Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-04-20 15:45:04 +02:00
Joas Schilling 1b93d5f1db
PHP CS fixes
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-04-18 11:21:28 +02:00
Joas Schilling 685d7b0637
Directly use the class to get the service
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-04-18 11:21:28 +02:00
Joas Schilling e45c87cd2e
Fix creating the share controller
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-04-18 11:21:28 +02:00
Joas Schilling 609b8aff12
Also disallow ; in remote urls
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-04-14 18:56:06 +02:00
Christoph Wurst 28f8eb5dba
Add visibility to all constants
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-10 16:54:27 +02:00
Christoph Wurst 1584c9ae9c
Add visibility to all methods and position of static keyword
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-10 16:51:06 +02:00
Christoph Wurst caff1023ea
Format control structures, classes, methods and function
To continue this formatting madness, here's a tiny patch that adds
unified formatting for control structures like if and loops as well as
classes, their methods and anonymous functions. This basically forces
the constructs to start on the same line. This is not exactly what PSR2
wants, but I think we can have a few exceptions with "our" style. The
starting of braces on the same line is pracrically standard for our
code.

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

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-10 14:19:56 +02:00
Christoph Wurst 14c996d982
Use elseif instead of else if
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-10 10:35:09 +02:00
Christoph Wurst 008e6d7e84
Merge pull request #20391 from nextcloud/refactor/spaces-cleanup
Remove all extra whitespace PSR2 does not like
2020-04-09 20:39:37 +02:00
Christoph Wurst 64510932b8
Merge pull request #20384 from nextcloud/techdebt/lowercase-keywords
Use php keywords in lowercase
2020-04-09 16:25:14 +02:00
Christoph Wurst f4c09f299d
Make sure there is exactly one newline after imports
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-09 16:14:31 +02:00
Christoph Wurst bcd13296de
Make sure every file ends with an empty newline
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-09 16:11:50 +02:00
Christoph Wurst 44577e4345
Remove trailing and in between spaces
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-09 16:07:47 +02:00
Christoph Wurst 36b3bc8148
Use php keywords in lowercase
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-09 14:04:56 +02:00
Christoph Wurst afbd9c4e6e
Unify function spacing to PSR2 recommendation
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-09 13:54:22 +02:00
Christoph Wurst 41b5e5923a
Use exactly one empty line after the namespace declaration
For PSR2

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-09 11:48:10 +02:00
Christoph Wurst 2fbad1ed72
Fix (array) indent style to always use one tab
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-09 10:16:08 +02:00
Christoph Wurst 85e369cddb
Fix multiline comments
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-08 22:24:54 +02:00
Joas Schilling f878ea9606
Remove user name from public sharing page
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-04-01 17:14:38 +02:00
Christoph Wurst 1a9330cd69
Update the license headers for Nextcloud 19
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-03-31 14:52:54 +02:00
Christoph Wurst 463b388589
Merge pull request #20170 from nextcloud/techdebt/remove-unused-imports
Remove unused imports
2020-03-27 17:14:08 +01:00
Christoph Wurst b80ebc9674
Use the short array syntax, everywhere
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-03-26 16:34:56 +01:00
Christoph Wurst 74936c49ea
Remove unused imports
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-03-25 22:08:08 +01:00
Christoph Wurst 37786c4d74
Convert share event to an interaction event
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-03-25 16:16:45 +01:00
Roeland Jago Douma e6ec084a58
Auto accept group shares for users added to a group
In case auto accepting is enabled (the default). Users that are newly
added to a group should not have to accept those shares.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-03-25 08:51:27 +01:00
Julius Härtl 87393a760e Remove unused properties in ShareesAPIController
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-03-20 10:43:56 +01:00
Joas Schilling 6edb93fc4a
Allow the video player on the hide download
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-03-19 15:14:00 +01:00
Joas Schilling 8db32805be
Fix willReturnOnConsecutiveCalls
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-03-13 11:11:00 +01:00
Joas Schilling 3930ab8e8a
Don't allow anchors and queries in remote urls
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-03-12 13:44:48 +01:00
John Molakvoæ 9fda1ee39f
Merge pull request #19777 from nextcloud/fix/viewer-public
Properly emit Viewer event on files and files_sharing
2020-03-12 08:47:14 +01:00
Joas Schilling 24d0fb9fcd
Merge pull request #19861 from nextcloud/bugfix/noid/load-remote-shares-also-when-one-is-down
Don't break when one remote share is down
2020-03-11 09:36:57 +01:00
John Molakvoæ (skjnldsv) 92a6530c0f Properly emit Viewer event on files and files_sharing
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2020-03-11 09:28:27 +01:00
John Molakvoæ (skjnldsv) 6c968fe77d Fix import order and formatting
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2020-03-11 09:27:20 +01:00
Joas Schilling f4918f208e
Unify the code a bit
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-03-10 19:36:57 +01:00
Joas Schilling bbef026aa0
Use contacts name on federated activities
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-03-10 19:36:56 +01:00
Joas Schilling 886293fdcc
Don't break when one remote share is down
getFileInfo can also return false

Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-03-09 17:00:31 +01:00
Roeland Jago Douma 7613681627
Don't try to format deleted shares
Fixes #15455

The issue is that we have a fallback for shares to use the target. So
when the target exists again we happily format it (not that the shares
are still invalid).

This just tries to get the node. If we can't then boom.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-03-02 09:18:04 +01:00
Joas Schilling a792a31448
Allow single file downloads so the video player works again
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-02-28 16:25:09 +01:00
Joas Schilling 841f2f3b04
Allow to overwrite share target mountpoints
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-02-17 09:04:19 +01:00
Roeland Jago Douma 302ea0650e
Merge pull request #19349 from nextcloud/bugfix/noid/prevent-download-on-secure-view
Prevent archieved download on secure view
2020-02-08 10:18:24 +01:00
Joas Schilling 35d4ca4d5d
Prevent archieved download on secure view
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-02-07 12:46:23 +01:00
Roeland Jago Douma 260892eb3b
Disable link shares of disabled users
Fixes #10869

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-02-07 07:47:38 +01:00
Roeland Jago Douma 8f15e2d57a
Use the target for file notifications
The node is not yet accessible if you did not accept the share yet.
So trying to get it results in an acception.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-01-24 12:43:17 +01:00
Julius Härtl eb4c42d3d1
Make auto accepting the default and provide setting to enforce the share acceptance process
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-01-16 22:07:51 +01:00
Julius Härtl fa966ebaf1
Remove global share accepter since auto-accepting is the default
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-01-16 22:07:51 +01:00
Roeland Jago Douma 960d89ae31
Listen to the right even for auto share accept
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-01-15 23:10:21 +01:00
Roeland Jago Douma fc77f530d7
Don't show link shares hash in inherited share list
This adds no value at all. Just showing the text "(Shared link)" now.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-01-15 09:21:53 +01:00
Christoph Wurst 6127c288e8 Fix license headers
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-01-13 14:23:49 +01:00
Maxence Lange 554c4a7cf8 moving ->getParent earlier
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2020-01-08 08:56:14 -01:00
Julius Härtl 445274cf93
Add pending share list to frontend
Signed-off-by: Julius Härtl <jus@bitgrid.net>
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-01-07 19:35:45 +01:00
Roeland Jago Douma fbed6a3416
A pending shares overview
Now that we accept shares we should show an overview of shares that are
pending. This first part is the small API to get a list of the currently
pending shares.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-01-07 08:53:33 +01:00
Roeland Jago Douma fb6b84b5c9
Accept shares when you open mail
Fixes #18380

When you open a direct share to yourself. We should autoaccept the
share.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-01-06 16:48:21 +01:00
Roeland Jago Douma 1672ff3bef
Do not use $_GET
The appframework is more than capable of handling this properly.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-01-05 20:13:11 +01:00
Maxence Lange 441b81a3af confirm resharing rights if viewer is current owner
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2020-01-02 11:34:20 -01:00
Christoph Wurst 1b46621cd3
Update license headers for 18
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2019-12-20 09:23:25 +01:00
Roeland Jago Douma b86990988e
Use the user from the notification
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-12-18 08:37:03 +01:00
Roeland Jago Douma e7dc91002f
Allow users to specify to accept (internal) shares by default
Fixes #18255

A new user setting allows a user to always accept (internal) shares. For
example if they don't like accepting shares manually ;)

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-12-17 10:49:29 +01:00
Roeland Jago Douma bb4264c565
config.php setting to always accept internal shares
Part of #18255

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-12-16 09:07:25 +01:00
Roeland Jago Douma c0229768f2
Fetch the share for the recipient
Fixes #18020

For group shares your invite might be handled but that doesn't mean the
whole share is handled. So we just need to make sure to fetch the share
for the current user.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-12-09 12:23:38 +01:00
Christoph Wurst 5bf3d1bb38
Update license headers
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2019-12-05 15:38:45 +01:00
Roeland Jago Douma 5e14b299bc
Expose capability if the lookup server should be queried by default
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-12-05 08:38:33 +01:00
Roeland Jago Douma 7a45413559
Always do sharee lookup on lookup server in GS
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-12-05 08:38:33 +01:00
Maxence Lange f2c7ca4584
fixing tests + avoid duplicate in getFormattedShares()
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2019-12-03 08:13:22 +01:00
Maxence Lange ccf7d87c11
integration tests
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
add tests on non-owner pov

Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
duplicate

Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
small fixes

Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
removed tags

Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2019-12-03 08:10:27 +01:00
Maxence Lange 5794f14df9
Inherited Shares
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
working on users with resharing rights

Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
-getLogger()

Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
cleaning

Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
fix type

Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
Update SharingRightsException.php
2019-12-03 08:10:27 +01:00
John Molakvoæ (skjnldsv) 5cb11ca642
Fix tests
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
Signed-off-by: npmbuildbot[bot] <npmbuildbot[bot]@users.noreply.github.com>
2019-12-02 13:08:43 +01:00
John Molakvoæ (skjnldsv) 0bf6fcd6cd
Create sharing entry point with constants
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
Signed-off-by: npmbuildbot[bot] <npmbuildbot[bot]@users.noreply.github.com>
2019-12-02 08:58:50 +01:00
John Molakvoæ (skjnldsv) f8af027686
Fix files_sharing app LoadSidebar event
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2019-12-02 08:58:50 +01:00
Roeland Jago Douma 8797ff70eb
Add capabilities
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-11-27 14:33:13 +01:00
Roeland Jago Douma 77d136cbdf
Apply share permission mask to all files obtained via shareinfo
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-11-26 11:07:01 +01:00
Roeland Jago Douma c7d5b8fc49
Merge pull request #18079 from nextcloud/fixes/phpcs
Some php-cs fixes
2019-11-25 14:07:00 +01:00
Roeland Jago Douma 68748d4f85
Some php-cs fixes
* Order the imports
* No leading slash on imports
* Empty line before namespace
* One line per import
* Empty after imports
* Emmpty line at bottom of file

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-11-22 20:52:10 +01:00
waleczny 6e3ea09b1c
Get first element of nodes array
Geting first element of nodes array instead of element with key 0. In some cases key 0 not exists in this array ie. when file is shared from group folder with member of this group who have no permission to read this file.
2019-11-18 23:33:26 +01:00
Roeland Jago Douma e16321368f
Fixes
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-11-18 16:11:03 +01:00
Joas Schilling d3b62893af
Make sure the super share also has a valid type
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-11-12 17:37:47 +01:00
Joas Schilling 6d9afca14f
Fix "Invalid parameter number: mixed named and positional parameters"
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-11-12 17:37:47 +01:00
Joas Schilling 0fe4b717dc
Correctly use the displayname of the sharer in the notification
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-11-12 17:37:47 +01:00
Joas Schilling e79ab7d0c5
The share manager knows which provider can accept shares
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-11-12 17:37:47 +01:00
Joas Schilling 19e1892d50
Use constants for the magic strings
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-11-12 17:37:45 +01:00
Joas Schilling 43517cfac6
Accept existing shares on update
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-11-12 17:37:00 +01:00
Joas Schilling 60da25681e
Only restrict loading of group and user shares for now
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-11-12 17:37:00 +01:00
Joas Schilling 8986910a7d
Add notifications for users that are added to the group
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-11-12 17:37:00 +01:00
Joas Schilling 520042bbd0
Allow to accept group shares
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-11-12 17:36:58 +01:00
Joas Schilling c79a56481b
Notifications for group shares
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-11-12 17:33:53 +01:00
Joas Schilling e96c9e0e4a
Add the notifier and the API endpoint for user shares
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-11-12 17:33:50 +01:00
Joas Schilling dcdbea54e6
Respect the accepted flag for group and user shares
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-11-12 17:13:38 +01:00
Roeland Jago Douma 1ac57e76fa
Add notification for shares about to expire
Introduces a new command that will create notifications for users if
they have shares that will expire the next day.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-11-01 08:53:18 +01:00