Commit graph

1105 commits

Author SHA1 Message Date
Roeland Jago Douma
9daf41e05a
Add files drop capability for clients 2016-08-13 14:02:09 +02:00
Roeland Jago Douma
ba922c9f73 Merge pull request #807 from nextcloud/ocs_dataresponse
OCSController requires DataResponse
2016-08-10 22:36:25 +02:00
Lukas Reschke
67d016833d Merge pull request #810 from nextcloud/shared-cachethepropagatorinstance
Store the shared propagator instance
2016-08-10 17:24:57 +02:00
Roeland Jago Douma
4006763f5b
Move the Share20OCS code over to use the proper DataResponse 2016-08-10 12:40:32 +02:00
Vincent Petry
412b5c5407
Store the shared propagator instance
This instead of recreating it for every call.
2016-08-10 10:57:49 +02:00
Robin Appelman
a999420c75 get shared storage storage id without setting up the storage 2016-08-09 15:52:13 +02:00
Lukas Reschke
70eef2a82e Merge pull request #445 from nextcloud/ocs_share_to_appframework
OCS Share API to appframework
2016-08-08 14:59:59 +02:00
Roeland Jago Douma
0556e40d3e
Fix tests 2016-08-05 14:17:32 +02:00
Roeland Jago Douma
d9418c105e
Add OCSShareAPIMiddleware tests 2016-08-05 14:17:32 +02:00
Roeland Jago Douma
4504d7f5e9
DataResponse required ['data' => DATA] 2016-08-05 14:17:31 +02:00
Roeland Jago Douma
7fdc2f32fa
More exceptions 2016-08-05 14:17:31 +02:00
Roeland Jago Douma
3a31b2875b
Add OCSShareAPIMiddleware
* This will cleanup the locks after each request
* Move check for enabled share api to the middleware
2016-08-05 14:17:31 +02:00
Roeland Jago Douma
8b160077f1
Throw OCSNotFoundExceptions 2016-08-05 14:17:25 +02:00
Roeland Jago Douma
54f21bccdf
Remove unneeded wrapper 2016-08-05 14:17:25 +02:00
Roeland Jago Douma
a32caa4904
Convert Share API to use the AppFramework 2016-08-05 14:17:25 +02:00
Joas Schilling
f37fa6e45c
Move Share backends to PSR-4 instead of using class path (#24941) 2016-08-05 14:13:41 +02:00
Vincent Petry
2404f6a5a7
Make share target consistent when grouping group share with user share
In some situations, a group share is created before a user share, and
the recipient renamed the received share before the latter is created.
In this situation, the "file_target" was already modified and the second
created share must align to the already renamed share.

To achieve this, the MountProvider now groups only by "item_source"
value and sorts by share time. This makes it so that the least recent
share is selected as super-share and its "file_target" value is then
adjusted in all grouped shares.

This fixes the issue where this situation would have different
"file_target" values resulting in two shared folders appearing instead
of one.
2016-08-03 10:16:28 +02:00
Vincent Petry
714d7ec936
Improved share grouping readability + fixed test 2016-08-03 10:16:28 +02:00
Roeland Jago Douma
04d5465228
Group shares with same source and target
Fixes #24575

Note that this is a very limited solution and eventually we want smarter
merging!
2016-08-03 10:16:28 +02:00
Joas Schilling
4e5fb74773
Do not allow to delete/update group shares as a group member 2016-08-02 10:50:35 +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
Björn Schießle
f7d26e4aa5 Merge pull request #414 from nextcloud/files_sharing_event_dispatcher
Files sharing event dispatcher
2016-07-18 16:10:21 +02:00
Roeland Jago Douma
773250be24
Cleanup coding style 2016-07-18 13:35:35 +02:00
Roeland Jago Douma
1c5e082ee1
Add eventdispatcher to public link view 2016-07-18 13:35:35 +02:00
Roeland Jago Douma
ea3035aa0e
Move JS inclusion to Controller
* This way we can easier load files conditionally
2016-07-18 13:34:32 +02:00
Roeland Jago Douma
ff54141639
Move SetupFromToken to ShareManager 2016-07-18 10:53:49 +02:00
Morris Jobke
40328114f9 Merge pull request #379 from nextcloud/create_federated_share_on_mount
Create federated share on mount
2016-07-18 09:22:48 +02:00
Bjoern Schiessle
dc53788711
remove unused parameter 2016-07-14 16:39:48 +02:00
Joas Schilling
76736731eb
Allow shares with create permissions only aswell 2016-07-14 10:27:29 +02:00
Robin Appelman
d0e6fdba4d
combine if statements 2016-07-08 12:36:15 +02:00
Robin Appelman
f98cb9efa0
Fix type hinting 2016-07-08 12:35:50 +02:00
Robin Appelman
f0b9eba9c2
dont overwrite a variable with a different type 2016-07-08 12:35:23 +02:00
Lukas Reschke
179a355b2c Merge remote-tracking branch 'upstream/master' into master-sync-upstream 2016-07-01 11:36:35 +02:00
Robin Appelman
2a72eff9ee Fix getting the certificate bundle for dav external storage (#25274)
* Fix getting the certificate bundle for dav external storages

* Log the original exception in dav external storage
2016-06-27 22:26:43 +02:00
Robin Appelman
88ef163276 handle unavailable fed shares while testing for availability (#25277)
* More explicit http status codes

* handle unavailable fed shares while testing for availability
2016-06-27 21:34:28 +02:00
Lukas Reschke
6670d37658 Merge remote-tracking branch 'upstream/master' into master-sync-upstream 2016-06-27 18:23:00 +02:00
Lukas Reschke
7a9d60d87e
Merge remote-tracking branch 'upstream/master' into master-upstream-sync 2016-06-26 12:55:05 +02:00
Vincent Petry
955635c7aa Add explicit delete permission to link shares
Link shares always allowed deletion, however internally the permissions
were stored as 7 which lacked delete permissions. This created an
inconsistency in the Webdav permissions.

This fix makes sure we include delete permissions in the share
permissions, which now become 15.

In case a client is still passing 7 for legacy reasons, it gets
converted automatically to 15.
2016-06-24 09:48:48 +02:00
Vincent Petry
ec968a48e4
Increase fed share timeout from 3 to 10 + unit tests 2016-06-22 10:29:40 +02:00
Joas Schilling
3e763ac81e
Add timeouts to make the UI usable again when a remote share is unreachable 2016-06-22 10:29:40 +02:00
Vincent Petry
ca168265ef Filter out group shares for owner where owner is included (#25190) 2016-06-21 11:36:28 +02:00
Lukas Reschke
2b493e2f9d
Merge remote-tracking branch 'upstream/master' into master-sync-upstream 2016-06-21 11:18:22 +02:00
Robin Appelman
bb465a7ab4 Catch exceptions while creating shared mounts (#25077) 2016-06-20 22:11:05 +02:00
Vincent Petry
a636078e6c
Make getShareFolder use given view instead of static FS 2016-06-17 11:11:59 +02:00
Robin Appelman
4f02bd1dff disable cleanFolder for the federated share storage 2016-06-14 17:29:09 +02:00
Arthur Schiwon
42c66efea5
Merge branch 'master' of https://github.com/owncloud/core into downstream-160611 2016-06-11 15:34:43 +02:00
Vincent Petry
14fde6650c Merge pull request #25003 from owncloud/fix_ocs_path_response
Fix OCS Share API path response
2016-06-10 16:49:50 +02:00
Lukas Reschke
075bf73c80
Prevent access to shareinfo if share if read-only 2016-06-09 15:15:17 +02:00
Bjoern Schiessle
bb54ab0db8
add hide file list option 2016-06-09 15:15:17 +02:00
Roeland Jago Douma
b0dd0634e3
Bring back sharedstorage hooks 2016-06-09 14:00:02 +02:00
Robin Appelman
e7a55c4fef
handle path not being set in shared cache (#24993) 2016-06-09 13:59:59 +02:00
Roeland Jago Douma
4a3c67fdb4
Bring back sharedstorage hooks 2016-06-08 08:19:32 +02:00
Roeland Jago Douma
7c040c0bf9
Show the path relative to the requesting user
A share can only be requested by 3 'types' of people

* owner
* initiator
* recipient

So we have to get the path as the current user. Since that is the only
path that has any meaning to the user.
2016-06-07 15:09:19 +02:00
Robin Appelman
7a0254b15b handle path not being set in shared cache (#24993) 2016-06-06 17:01:55 +02:00
Joas Schilling
5c8e0596e6
Allow public upload when the quota is unlimited 2016-06-02 15:27:16 +02:00
Torben Dannhauer
718f0757e4 Fix for #23066 (#24689) 2016-05-31 06:53:28 +02:00
Lukas Reschke
aba539703c
Update license headers 2016-05-26 19:57:24 +02:00
Joas Schilling
b72706b450
Move background job to PSR-4 2016-05-25 14:59:59 +02:00
Joas Schilling
3a716ae91c
Move lib/ to PSR-4 2016-05-25 14:59:59 +02:00
Joas Schilling
5001036fd4
Move classes from outside lib/ to PSR-4 2016-05-25 14:59:59 +02:00
Vincent Petry
465cf9fe9b Merge pull request #24346 from lenz1111/fix_24331
Fix: Bugs in shared link with video #24331
2016-05-24 13:49:02 +02:00
Piotr Filiciak
11b2e98a30 video poster 2016-05-24 12:34:37 +02:00
Vincent Petry
adcf942901 Merge pull request #24750 from owncloud/lenz1111-share_download_range_requests_support
Http Range requests support in downloads
2016-05-23 21:01:26 +02:00
Björn Schießle
20852fd8c0
remove reshares and the mapping in the federated_reshares table on unshare from self 2016-05-20 21:15:16 +02:00
Björn Schießle
e25fbaf65d
move motifier from the files_sharing app to the federatedfilessharing app 2016-05-20 21:15:16 +02:00
Björn Schießle
81e3787f9c
close cursor after select to avoid db lock 2016-05-20 21:15:11 +02:00
Björn Schießle
d23df4cba7
create re-share by owner and propagate unshare and unshare-from self request
correctly accross share owner and share initiator
2016-05-20 21:15:11 +02:00
Piotr Filiciak
9999e05660
Http Range requests support in downloads
Http range requests support is required for video preview
2016-05-20 18:16:44 +02:00
Roeland Jago Douma
354329acf2
Cleanup Files_Sharing CLASSPATH
* OC\Files\Cache\SharedScanner
* OC\Files\Cache\Shared_Cache
* OC\Files\Cache\Shared_Permissions
* OC\Files\Cache\Shared_Updater
* OC\Files\Cache\Shared_Watcher
* OCA\Files\Share\Maintainer
* OCA\Files\Share\Proxy
2016-05-02 16:15:40 +02:00
Roeland Jago Douma
45d618a133
Remove dead code
Ancient files_sharing updater code I came across.
2016-05-02 08:20:42 +02:00
Roeland Jago Douma
420b5273b1
There is no need to do old etag propagation
Etags are calculated differently now and don't require manual updating.
2016-04-30 10:40:45 +02:00
Robin Appelman
dbfdc6282a
do propagation in a single query 2016-04-25 16:18:59 +02:00
Björn Schießle
e10105474f
move federated sharing settings to the federatedfilesharing app 2016-04-22 14:55:40 +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
Björn Schießle
e906796f99
ask for share-permissions on propfind 2016-04-20 17:47:32 +02:00
Roeland Jago Douma
b53d6598f1
Move moveFromCache to CacheJail 2016-04-19 14:04:00 +02:00
Roeland Jago Douma
f27d7cbf99
Move copy- and moveFromStorage to jail 2016-04-19 14:04:00 +02:00
Robin Appelman
2f1c62ce0b
Only construct the storage when we start using it 2016-04-19 14:04:00 +02:00
Roeland Jago Douma
c98fef8a51
Fix resolve path 2016-04-19 14:04:00 +02:00
Roeland Jago Douma
6123badbfa
Move SharedStorage et al over to the shareManager and jail 2016-04-19 14:04:00 +02:00
Roeland Douma
411fac892a On mount make sure multiple shares with same target map to unique ones (#23937)
Scenario:
user0 shares a folder 'foo' with user2
user1 shares a folder 'foo' with user2
user2 logs in

Before: show only the 'foo' from user1

After: show both.

* Added intergration tests
2016-04-14 11:50:27 +02:00
Stefan Weil
16df1c5188 apps: Fix typos (found by codespell) (#23862)
Signed-off-by: Stefan Weil <sw@weilnetz.de>
2016-04-12 12:52:51 +02:00
Roeland Jago Douma
db5ea95e29 Add capability to show if group sharing is enabled
fixes #23477

Now clients can correct wording to properly reflect who a user can share
with.
2016-04-04 19:35:01 +02:00
Thomas Müller
d4a8d5d2ea Merge pull request #22998 from owncloud/delay-loading-the-scanner
Delay check till scanner is used
2016-03-15 12:16:02 +01:00
Robin Appelman
a8db587b1f move failedstorage to core 2016-03-11 13:15:45 +01:00
Robin Appelman
3bd6fc797d dont break when there is an invalid share 2016-03-11 13:15:45 +01:00
Lukas Reschke
80b91264e1 Delay check till scanner is used
Fixes https://github.com/owncloud/core/issues/22973 and https://github.com/owncloud/core/issues/22987
2016-03-09 16:01:53 +01:00
Thomas Müller
30cec687ae Merge pull request #22972 from owncloud/use-httpclient-instead-of-file-get-contents
Use HTTPClient instead of file_get_contents
2016-03-09 12:20:06 +01:00
Lukas Reschke
c0200bc5c3 Use "hasKey" instead of checking the value
If the check is negative it would depending on the used cache store the value as an empty string. When reading the value this check would thus return "false" even if a value exists.
2016-03-08 23:24:44 +01:00
Lukas Reschke
8214fae9ae Use HTTPClient instead of file_get_contents
Allows us to catch exceptions like 404's and thus prevents stuff like:

```
{"reqId":"fnmS0hc+fL4+WXKAruo5","remoteAddr":"192.168.39.100","app":"PHP","message":"file_get_contents(http:\/\/ckamm.blaucloud.de\/\/status.php): failed to open stream: HTTP request failed! HTTP\/1.1 404 Not Found\r\n at \/var\/www\/owncloud\/apps\/files_sharing\/lib\/external\/storage.php#260","level":3,"time":"2016-03-08T21:00:33+00:00","method":"PROPFIND","url":"\/remote.php\/webdav\/"}
```
2016-03-08 22:13:00 +01:00
Vincent Petry
e5a107cc45 Fix share mounting recursion 2016-03-08 14:46:42 +01:00
Vincent Petry
d8e592d670 Fix archive file name when downloading public share
When download a public link share folder using the button on the top
right, it doesn't provide a list of files.

This fix makes sure to trigger the correct logic when no file list was
given.
2016-03-07 11:37:49 +01:00
Lukas Reschke
63bd6b25db Cache results of testRemoteUrl
Otherwise setting up the storage will result in a HTTP request and thus slowing down ownCloud.

Replaces https://github.com/owncloud/core/pull/22855
2016-03-04 15:13:56 +01:00
Lukas Reschke
c353d51810 Remove Scrutinizer Auto Fixer 2016-03-01 17:48:23 +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
Thomas Müller
5fe5233f41 Merge pull request #22681 from owncloud/add-autodiscovery-for-ocs
Add autodiscovery support to server-to-server sharing implementation
2016-03-01 11:27:28 +01:00
Thomas Müller
73e145cf63 Merge pull request #22728 from owncloud/external-share-testremote
use ocs discover endpoint to test remote
2016-03-01 11:27:07 +01:00
Lukas Reschke
9ca1e9c7e9 Only use scanner if remote is an ownCloud 2016-03-01 07:01:52 +01:00
Lukas Reschke
e965dcaebf /shareinfo is not required 2016-03-01 07:01:52 +01:00
Lukas Reschke
74e47da883 Add missing trailing slash 2016-03-01 07:01:51 +01:00
Robin Appelman
080a62231e use ocs discover endpoint to test remote 2016-03-01 07:01:51 +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
Lukas Reschke
59028cced0 Add autodiscovery support to server-to-server sharing
Adds autodiscovery support to server-to-server sharing as specified in the specification. If no discovery data is found it is using the fallback ownCloud endpoints for legacy support.
2016-02-26 09:26:55 +01:00
Robin Appelman
f338329ddf inject the correct external share manager into the storage 2016-02-25 14:49:25 +01:00
Thomas Müller
d1ef43481d Merge pull request #22444 from owncloud/fix-federated-share-delete
get the actual user instead of a federated cloud id
2016-02-18 16:44:57 +01:00
Vincent Petry
e1dbae1467 Properly trigger testRemote after getting a 404 from remote fed share
Whenever a remote fed share's shareinfo call returns a 404, don't
directly assume the storage is not available by throwing
StorageNotAvailableException. We need to properly throw
NotFoundException to trigger the later logic that calls testRemote()
that verifies that the 404 is not from a broken server but really from
an obsolete share.
2016-02-18 11:57:03 +01:00
Bjoern Schiessle
8985181305 get the actual user instead of a federated cloud id
$view->getUidAndFilename($filename); returns the federated cloud id in case of
a federated share. But in this case we need the local user who "owns" the file
which is the current logged in user in case of a federated share
2016-02-18 10:17:00 +01:00
Thomas Müller
e99c4d83dc Merge pull request #22317 from owncloud/fix_invisible_linkshares
Do not allow invisible link shares
2016-02-12 11:10:58 +01:00
Thomas Müller
4d24929e05 Merge pull request #22307 from owncloud/remove-notification-on-unshare-and-on-errors
Remove notification on unshare and on errors
2016-02-11 14:02:44 +01:00
Roeland Jago Douma
745bfda41f Fix migration step to avoind invisible shares 2016-02-11 13:29:23 +01:00
Joas Schilling
2263b8b693 Remove the notification if accepting/declining failed because of 404 2016-02-11 10:41:55 +01:00
Joas Schilling
5dc63e34b4 Add translations of unshare activities 2016-02-10 15:42:48 +01:00
Joas Schilling
65e1e4a202 Mark the accept button as primary 2016-02-10 08:40:45 +01:00
Joas Schilling
c769f5775d Create the actions with the correct ID 2016-02-10 08:40:45 +01:00
Joas Schilling
49dd693d8f Bring the messages inline 2016-02-10 08:40:45 +01:00
Joas Schilling
3ff88c8c84 Revert "Disable the remote sharing notifications until they work properly"
This reverts commit 6bc93c7401.

Conflicts:
	apps/files_sharing/lib/external/manager.php
2016-02-10 08:40:44 +01:00
Robin Appelman
f9f2800016 check share permissions in share controller 2016-02-09 15:03:00 +01:00
Roeland Jago Douma
623a0e4637 Example hook check 2016-02-09 10:36:44 +01:00
Arthur Schiwon
cd68500731 throw hooks when accessing a link share 2016-02-09 00:34:10 +01:00
Roeland Jago Douma
3c4e511792 Update the migration step to include federated shares
Now federated shares will also be updated to the flat
reshare model.
2016-02-08 15:11:48 +01:00
Roeland Jago Douma
f4edfb6dfb Gracefull handle link shares rename hook
Fixes #21678

The hook is called on all renames. However when we use a link share
the getUserFolder fails. We now just opt out.
2016-02-05 13:57:57 +01:00
Roeland Jago Douma
453ea6698d [Share 2.0] Fix public link sharing 2016-02-03 19:25:29 +01:00
Roeland Jago Douma
4d7130ad31 [Share 2.0] Add exceptions to OCP 2016-02-02 14:07:11 +01:00
Thomas Müller
e60b217156 Merge pull request #22015 from owncloud/share-no-permissions
Block shares that dont have the correct source permissions
2016-02-02 10:26:06 +01:00
Robin Appelman
e3b5639fc1 Block shares that dont have the correct source permissions 2016-01-29 13:05:53 +01:00
Roeland Jago Douma
6151a0540b Update the initiator of the share as well in migration 2016-01-28 19:24:23 +01:00
Roeland Jago Douma
b85770d636 Update reshares in batches as not to run out of memory 2016-01-28 19:24:23 +01:00
Björn Schießle
dc8d43575f upgrade to sharing 2.0, remove hierarchical re-shares 2016-01-28 19:24:23 +01:00
Robin Appelman
1369f2c684 cleanup shared cache 2016-01-28 11:46:43 +01:00
Roeland Jago Douma
34e912ab6b [Share 2.0] Fix interfaces and comments
* Made comments more clear
* Removed unneeded methods
* IShares shareTime is now a proper DateTime object
* IShares getPath -> getNode & setPath -> setNode
* Fix unit tests
2016-01-28 07:54:09 +01:00
Roeland Jago Douma
185b9c6edd [Share 2.0] Move IShare to OCP 2016-01-27 22:04:37 +01:00
Joas Schilling
ee02165005 Move the notification API to public namespace 2016-01-22 10:32:42 +01:00
Roeland Jago Douma
18421e7e68 Directly get from the server container
* Updated unit tests
2016-01-20 21:12:26 +01:00
Roeland Jago Douma
67f5216160 Do not use deprected activities API 2016-01-20 21:12:26 +01:00
Roeland Jago Douma
9467859e42 Get correct path for activity downloads 2016-01-20 21:12:26 +01:00
Roeland Jago Douma
894a88ca51 [Share 2.0] Make public link work without view 2016-01-20 21:12:26 +01:00
Roeland Jago Douma
8734ebe505 [Share 2.0] Make link share download use share manager 2016-01-20 21:12:26 +01:00
Roeland Jago Douma
717697313b [Share 2.0] Move tests over the sharemanager
Nice side effect... pure unit tests!
2016-01-20 21:12:26 +01:00
Roeland Jago Douma
0ebc92c44a [Share 2.0] Move showing link share to sharing 2.0 2016-01-20 21:12:26 +01:00
Robin Appelman
30d6222e64 handle noopscanner in shared scanner 2016-01-15 15:37:31 +01:00
Robin Appelman
ddbbe1742f propagate folder size in the same query for write updates 2016-01-15 15:36:52 +01:00
Thomas Müller
6824704699 Merge pull request #21117 from owncloud/owner-file-exists
Only return an owner if the file exists + improved getUidAndFilename
2016-01-15 13:31:56 +01:00
Robin Appelman
a3d50ef49a add watcher interface 2016-01-14 12:54:42 +01:00
Robin Appelman
5fae07f422 add scanner interface 2016-01-14 12:54:42 +01:00
Robin Appelman
6d321f5f6b Return a class from cache operations instead of an array 2016-01-14 12:54:42 +01:00
Thomas Müller
a5e46226ef Merge pull request #21615 from owncloud/shared-islocal
implement isLocal for shared storage
2016-01-13 10:34:23 +01:00
Thomas Müller
682821c71e Happy new year! 2016-01-12 15:02:18 +01:00
Robin Appelman
af1e810607 implement isLocal for shared storage 2016-01-11 13:58:22 +01:00
Robin Appelman
300eb54c87 de-deplicate getUidAndFilename 2016-01-11 11:40:58 +01:00
Björn Schießle
c4b65170f2 show display name but internally use the user name 2015-12-14 17:25:10 +01:00
Thomas Müller
54dbe5b8d5 Merge pull request #20989 from owncloud/fix_20769
Update parent when moving share into recieved share
2015-12-09 13:07:57 +01:00
Thomas Müller
bc744ff6de Merge pull request #21038 from owncloud/share-computesharepermissions-notstore
Fix (re)share permission checks in a few code paths
2015-12-09 10:04:56 +01:00
Vincent Petry
6e4006d139 Add reshare permission checks
Added in isSharable() in incoming remote share.
Added in isSharable() in regular incoming share.
Added in FileInfo to make sure the proper attributes are returned to the
clients.
2015-12-08 13:13:26 +01:00
Joas Schilling
5453daab03 More fixes to the docs 2015-12-08 09:11:50 +01:00
Scrutinizer Auto-Fixer
0f1be1b601 Scrutinizer Auto-Fixes
This commit consists of patches automatically generated for this project on https://scrutinizer-ci.com
2015-12-07 20:08:20 +00:00
Roeland Jago Douma
d38949f423 Update parent when moving share into recieved share
Fixes #20769

When I receive a share and move a share of myself into that share (which
is allowed currently) I effectively hand over ownership of the files I
move. So we need to update the share I move to have as a parent the
share I move it into. Else our mounting system gets confused.
2015-12-07 16:28:33 +01:00
Scrutinizer Auto-Fixer
97f9213da9 Scrutinizer Auto-Fixes
This commit consists of patches automatically generated for this project on https://scrutinizer-ci.com
2015-12-07 12:05:27 +00:00
Thomas Müller
df6fc6cc70 Add the user's cloud id to the vCard 2015-12-02 09:14:41 +01:00
Thomas Müller
50f6817ce9 Merge pull request #20439 from owncloud/etag-propagate-in-storage
Take submount etag into account for folder etags
2015-11-25 12:49:54 +01:00
Björn Schießle
964fa1fce3 use hooks to auto add server to the list of trusted servers once a federated share was created 2015-11-24 11:34:38 +01:00
Robin Appelman
888df3933d take the etag of child mounts into account for the folder etag
this replaces shared etag propagation
2015-11-19 13:32:00 +01:00
Robin Appelman
1d82d93baa Implement getOwner for external share storage 2015-11-18 17:08:02 +01:00
Robin Appelman
0397871f7e Split checkUpdate 2015-11-03 18:23:22 +01:00
Lukas Reschke
8f09d5b67c Update license headers 2015-10-26 14:04:01 +01:00
Lukas Reschke
13e817e901 Throw exception on getPath if file does not exist
Currently the `getPath` methods returned `NULL` in case when a file with the specified ID does not exist. This however mandates that developers are checking for the `NULL` case and if they do not the door for bugs with all kind of impact is widely opened.

This is especially harmful if used in context with Views where the final result is limited based on the result of `getPath`, if `getPath` returns `NULL` PHP type juggles this to an empty string resulting in all possible kind of bugs.

While one could argue that this is a misusage of the API the fact is that it is very often misused and an exception will trigger an immediate stop of execution as well as log this behaviour and show a pretty error page.

I also adjusted some usages where I believe that we need to catch these errors, in most cases this is though simply an error that should hard-fail.
2015-10-25 17:58:21 +01:00
Morris Jobke
db25f41da8 handle NoUserException in sharing code
* setup LDAP users
* share from an LDAP user
* delete that LDAP user
* log in as share recipient
* before: unhandled NoUserException
* after: NoUserEception is logged and share is not shown anymore
2015-10-22 17:04:36 +02:00
Roeland Jago Douma
ec296b0b7d Add backgroundjob to expire link shares
Simple background job to expire the link shares.

* added unit tests
2015-10-20 08:18:53 +02:00
Thomas Müller
f2889dc6e4 Consolidate webdav code - move all to one app 2015-10-16 13:17:12 +02:00
Thomas Müller
8cbf76755e Merge pull request #19643 from owncloud/public-download-spinner
Set download cookie on public download
2015-10-09 14:10:29 +02:00
Vincent Petry
ececa90709 Set download cookie on public download 2015-10-08 12:50:56 +02:00
Thomas Müller
b2872ef759 Merge pull request #19589 from owncloud/shares-external-mount-provider
Move the setup of external share mounts to a mountprovider
2015-10-07 17:46:33 +02:00
Robin Appelman
59cf817308 Merge pull request #19511 from owncloud/etag-share-permissions-update
Mark shares as dirty when changing permissions
2015-10-06 18:09:12 +02:00
Robin Appelman
17756ebf5b fix phpdoc 2015-10-06 16:37:43 +02:00
Robin Appelman
d3c1fcf961 Fix getEtag for roots of shared storages 2015-10-06 16:33:37 +02:00
Vincent Petry
d546c5bb59 Propagate shares etag when group membership changed 2015-10-06 15:02:22 +02:00
Robin Appelman
47c71d8e87 use microtime 2015-10-06 13:00:30 +02:00
Robin Appelman
0817024e6f Mark shares as dirty when changing permissions 2015-10-06 11:38:41 +02:00
Morris Jobke
8366ce2767 deduplicate @xenopathic 2015-10-06 09:52:19 +02:00
Morris Jobke
b945d71384 update licence headers via script 2015-10-05 21:15:52 +02:00
Robin Appelman
e468b38bd4 sanitize mountpoint 2015-10-05 17:14:39 +02:00
Robin Appelman
e1c562f66b extract the mount provider from the manager 2015-10-05 16:39:11 +02:00
Robin Appelman
76a528e511 Make the external share manager a mount provider 2015-10-05 16:18:14 +02:00
Thomas Müller
710b7dd81c Merge pull request #19487 from owncloud/split_share_middleware
Split files_sharing middelware
2015-10-05 10:57:11 +02:00
Thomas Müller
ccbdcf0ab3 Merge pull request #19522 from owncloud/activity-395-less-sidebar-text
Activity 395 less sidebar text
2015-10-02 12:13:53 +02:00
Roeland Jago Douma
3d2acb5003 sharingcheckmiddleware now handles externalshares as well
Added new annotations for the externalsharescontroller class
* @NoOutgoingFederatedSharingRequired
* @NoIncomingFederatedSharingRequired

By default both are required for all functions in the
externalSharesController.

A proper exception is thrown and then a 405 is returned instead of the
default error page. Since it is only an API endpoint this makes more
sense.

Unit tests added and updated
2015-10-02 12:03:53 +02:00
Roeland Jago Douma
dc38e674a5 Split files_sharing middelware
Since for external shares there is no need for link shares to be enabled
we should check which controller is actually being called.

This makes sure that in all cases we verify that the files_sharing app
is enabled. But only for the share controller (public shares) we check
if the API is enabled and if links are enabled.

TODO: add checks for federated sharing as well
2015-10-02 11:56:11 +02:00
Joas Schilling
e478d925c3 Fix intendation 2015-10-02 10:01:33 +02:00
Joas Schilling
17ab8e6c39 Use shorter text on the sidebar for files_sharing activities 2015-10-02 10:01:33 +02:00
Roeland Jago Douma
c924b6740a Do not return unneeded info 2015-10-02 08:11:50 +02:00
Roeland Jago Douma
7310c4166a Added '../remote_shares' endpoint
* list incoming remote shares at 'remote_shares'
* get per share info at 'remote_shares/<ID>'
* delete remote share with a DELETE to 'remote_shares/<ID>'
2015-10-02 07:40:04 +02:00
Lukas Reschke
22e724e829 Only intercept exceptions of type "NotFoundException" instead of any Exception
The sharing backend may throw another exception for example when the activity app encounters a problem. Previously this just triggered a 404 error page and the exception got not logged at all. With this change such exceptions get not intercepted and regularly handled as exceptions so that we have meaningful log data. Also the user will be shown a window informing him that an error happened.

Helps to debug cases such as https://github.com/owncloud/core/issues/19465
2015-09-30 13:32:20 +02:00
Vincent Petry
b4998e7d29 Allow public auth to recognize sesssion
When a public link password has been input, its auth is stored in the
session.
This fix makes it possible to recognize the session when using public
webdav from the files UI.
2015-09-28 11:52:04 +02:00
Roeland Jago Douma
db02173627 Reflect enabled shareAPI in capabilities
If the shareAPI is disabled we not return the other sharing
capabilities.

This allows clients to properly check if sharing is even available.
2015-09-25 20:12:41 +02:00
Thomas Müller
2c37d5f7d8 Merge pull request #13145 from owncloud/issue/11951-activity-sharing-email
Publish an activity when sending a share link via email
2015-09-25 13:48:33 +02:00
Robin Appelman
7d53427ee6 only initialize once 2015-09-23 16:22:53 +02:00
Robin Appelman
88f03192ba Delay listening to owner changes untill we use a share for that owner 2015-09-23 16:22:53 +02:00
Roeland Jago Douma
4dba046712 Respect disabled sharing API settings
If the sharing API setting is disabled that sharing check middle ware
should block the request. Thus making link shares unavailable.
Fixes #18970

* Unit test added
* Unit tests updated
2015-09-22 15:12:16 +02:00
Joas Schilling
2e1cfe03e9 Publish an activity when sending a share link via email 2015-09-22 13:09:21 +02:00
Thomas Müller
75425b28df Merge pull request #18679 from owncloud/add-reshare-activities
Add reshare activities for the parent sharee and the original file owner
2015-09-18 11:59:30 +02:00
Thomas Müller
93eb73b0bb Merge pull request #18986 from owncloud/federated_capabilities
Expose federated sharing capabilities to authenticated users
2015-09-18 11:58:54 +02:00
Joas Schilling
6bc93c7401 Disable the remote sharing notifications until they work properly 2015-09-17 11:14:28 +02:00
Joas Schilling
59967599ac Fix the parameter order in the translation 2015-09-16 06:47:40 +02:00
Joas Schilling
fe8ef0dd36 Add reshare activities for the parent sharee and the original file owner 2015-09-15 17:36:56 +02:00
Roeland Jago Douma
91dfcab055 Expose federated sharing capabilities to authenticated users 2015-09-15 15:10:13 +02:00
Joas Schilling
38001d824b Move interfaces to private until they are no longer experimental 2015-09-08 09:01:02 +02:00
Joas Schilling
805f1d0096 Scrap the notifications when the share is accepted or declined 2015-09-08 09:01:01 +02:00
Joas Schilling
d191a0dacc Add notifications for remote shares 2015-09-08 09:01:01 +02:00
Joas Schilling
7af7fdd929 Use context function call instead of static 2015-09-07 14:28:20 +02:00
Roeland Douma
24f5f50b20 Merge pull request #18742 from owncloud/mimetype-updatedb
Introduce mimetype DB update occ command
2015-09-06 16:56:35 +02:00
Robin McCorkell
cdf01f0419 Split mimetype handling to new class 2015-09-04 17:28:20 +01:00
Morris Jobke
e1a79cd651 Avoid re-propagation of shares during one propagation run
* fix was proposed by @nickvergessen
2015-09-04 16:17:27 +02:00
Robin Appelman
fd7b210654 Delay setting up the filesystem for a share owner untill the share is used 2015-09-03 13:46:08 +02:00
Vincent Petry
6848f25c0d Merge pull request #18477 from owncloud/fed-alwaysdetectremotechanges
Always detect remote changes for fed sharing
2015-08-24 12:17:23 +02:00
Lukas Reschke
0a1d551090 Use IClientService to check for remote ownCloud instances
1. Allows to set a timeout (though still not perfect but way better than before)
2. Allows to have unit tests
3. I also added unit tests for the existing controller code
4. Corrected PHPDoc on IClient
2015-08-22 14:39:43 +02:00
Vincent Petry
d658d8dd4e Always detect remote changes for fed sharing
This is even more important now that filesystem_check_changes is 0 by
default.
2015-08-21 15:32:53 +02:00
Robin McCorkell
99b54e102d Prevent shares being added to oc_storages via availability 2015-08-20 22:43:46 +01:00
Robin McCorkell
6e47661afd Fix extracting basename from path in sharing 2015-08-18 13:41:47 +01:00
Roeland Jago Douma
dce5d9b5d1 Add public upload to capability 2015-08-14 20:03:32 +02:00
Joas Schilling
70504920e7 Fix default values of sharing capabilities
The problem is the UI used a different default than the capabilities.
So when you never touched the config, the setting in admins said "disabled"
while the capabilities said "enabled".
2015-08-13 12:46:52 +02:00
Joas Schilling
acd54fbeda Merge pull request #16528 from owncloud/activity-302-improve-settings
Activity 302 improve settings
2015-08-11 11:24:27 +02:00
Roeland Jago Douma
e84cffc063 Moved core apps to the capabilities manager
* Files
* Files_Sharing
* Files_Trashbin
* Files_Versions
2015-08-10 10:45:16 +02:00
Robin Appelman
859da8f0b3 just pass the share instead of searching for it 2015-08-05 15:41:29 +02:00
Robin Appelman
7b70343dc3 fix infinite loops with propagating etags on reshares 2015-08-03 17:33:12 +02:00
Joas Schilling
a1037f1679 Do not use magic strings when there are constants for it 2015-07-22 15:10:34 +02:00
Morris Jobke
2d691c2fb4 Merge pull request #17381 from owncloud/fix_sharing_add_to_group
[sharing] fix addToGroup hook
2015-07-21 13:30:41 +02:00
Vincent Petry
3d6be69f25 Throw storage not available on guzzle error
If the remote server is in maintenance mode, we must throw storage not
available exception instead of not found which might auto-remove the
share.
2015-07-13 18:51:25 +02:00
Thomas Müller
14eef434ff Merge pull request #17290 from owncloud/remove-readonly-wrapper
Replace readonly wrapper with permissions mask
2015-07-06 15:36:11 +02:00
Joas Schilling
4dbc8ab77f Merge pull request #17335 from owncloud/better-federated-cloud-sharing-activities
Improve federated cloud sharing activities
2015-07-06 10:23:33 +02:00
Bjoern Schiessle
763b601e4a use the correct user if we update the share table 2015-07-03 15:58:52 +02:00
Joas Schilling
2118713477 Add OCS api to get, accept and decline remote shares 2015-07-03 09:30:49 +02:00
Joas Schilling
ddb8cc2303 Use federated cloud id as a parameter type 2015-07-02 13:14:02 +02:00
Vincent Petry
aedf4848f7 Merge pull request #17324 from owncloud/fix-duplicated-line-in-doc-block
Fix duplicated line in doc block
2015-07-02 13:00:22 +02:00
Joas Schilling
aa7c8ad191 Add the item name to the federated sahre activity 2015-07-02 12:28:48 +02:00
Joas Schilling
95faaad5cf Use the app constant to fix the grouping 2015-07-02 12:27:58 +02:00
Joas Schilling
7e3f8d3ac1 Use the item name when refering to the unaccepted remote share 2015-07-02 12:26:06 +02:00
Joas Schilling
bfcb8ffeb3 Merge pull request #17246 from owncloud/share-lock-owner-parent
lock parent folders for the owner when locking a shared file as recipient
2015-07-02 10:38:08 +02:00
Joas Schilling
a6ea91996c Fix duplicated line in doc block 2015-07-02 10:24:16 +02:00
Vincent Petry
9c06975bd5 Fix scanFile signature to avoid boring warning 2015-07-01 16:29:11 +02:00
Robin Appelman
dd20cd1995 remove no longer needed readonly wrapper 2015-07-01 15:45:54 +02:00
Robin Appelman
3c0be7d126 only lock the parent folders 2015-07-01 15:10:25 +02:00
Robin Appelman
d6f56ea609 lock parent folders for the owner when locking a shared file as recipient 2015-07-01 15:10:22 +02:00
Vincent Petry
5d3aa36355 Catch more error codes thrown by federated shares
Most of the time it doesn't make sense to forward Guzzle's
RequestException, so we convert it to StorageNotAvailable instead.

This prevents unpredictable error codes to block access to unrelated
folders needlessly.
2015-07-01 11:14:03 +02:00
Morris Jobke
044d2ece07 Merge pull request #15506 from rullzer/core_apps_oc_log2ocp_util
Move core apps from OC_Log::write to OCP\Util
2015-07-01 08:53:16 +02:00
Morris Jobke
f25b71f70e Merge pull request #15475 from rullzer/files_sharing_OCP_DB
Move files sharing app (mostly) to OCP\DB
2015-07-01 08:53:03 +02:00
Vincent Petry
b55f71ee03 Merge pull request #17083 from owncloud/share-etag-update-target
take share target into account when updating recipient etags
2015-06-29 09:10:37 +02:00
Lukas Reschke
d1f0ff372e Merge pull request #17163 from owncloud/update-licenses
Update license headers
2015-06-27 20:22:23 +02:00
Olivier Paroz
b30515ddda Signature of overriding method should match the parent 2015-06-26 17:45:04 +02:00
Thomas Müller
9558562883 Merge pull request #17082 from owncloud/shared-etag-propagate-file
Fix etag propagation for single file shares
2015-06-26 12:36:17 +02:00
Robin Appelman
0128a86df1 add some docs 2015-06-25 14:29:40 +02:00
Morris Jobke
f63915d0c8 update license headers and authors 2015-06-25 14:13:49 +02:00
Robin Appelman
c87ab65081 fix etag propagation for single file shares 2015-06-24 18:16:03 +02:00
Morris Jobke
4f2f8a6f28 [sharing] handle shares of users that aren't available anymore
* properly handle the case where an abandoned share is left and
  simply skip it
2015-06-23 18:22:36 +02:00
Robin Appelman
5e1865530b take share target into account when updating recipient etags 2015-06-22 18:21:54 +02:00
Morris Jobke
7550bf0917 Disable video preview if previews are disabled 2015-06-09 17:49:59 +02:00
Lukas Reschke
1cccb227c3 Merge pull request #16686 from owncloud/show_cloud_id
show federated cloud id in the personal settings
2015-06-02 17:05:33 +02:00
Bjoern Schiessle
6e5ed81064 show federated cloud id in the personal settings 2015-06-02 14:09:53 +02:00
Robin Appelman
661c9e2444 add changeLock to the storage api 2015-06-01 13:24:02 +02:00
Robin Appelman
536e187e51 add locking to the storage api 2015-06-01 13:22:56 +02:00
Thomas Müller
f9d04f62a8 Merge pull request #16440 from owncloud/scrutinizer-patch-1
Scrutinizer Auto-Fixes
2015-05-19 22:12:35 +02:00
Joas Schilling
d832c4ae23 Fix unexisting class and broken doc 2015-05-19 15:27:50 +02:00
Scrutinizer Auto-Fixer
fdbc21fc6c Scrutinizer Auto-Fixes
This commit consists of patches automatically generated for this project on https://scrutinizer-ci.com
2015-05-19 11:23:06 +00:00
Roeland Jago Douma
dd3d0194a6 Move files sharing app (mostly) to OCP\DB 2015-05-18 11:06:23 +02:00
Roeland Jago Douma
7a8072e958 Move core apps from OC_Log::write to OCP\Util 2015-05-18 10:57:52 +02:00
Bjoern Schiessle
887be709f5 a new approach to display the error message 2015-05-18 10:15:17 +02:00
Robin Appelman
3b1dde7005 dont go trough the view when renaming/copying on shared storages 2015-05-12 17:09:37 +02:00
Morris Jobke
90d8e4bc00 Merge pull request #15815 from owncloud/unshare-etag-propagate
Update etag of direct parent on unshare
2015-05-11 13:42:20 +02:00
Lukas Reschke
d9746d8abd Fix PHPDoc for the ext. share controller 2015-05-04 18:06:16 +02:00
Morris Jobke
760ce3bd63 Fix DeleteOrphanedSharesJob
* remove unneeded use statements
* the the interval properly in the constructor
* set the log level to debug (from info) - fixes #16036
2015-05-04 13:58:58 +02:00
Joas Schilling
34181c3aef Correctly send Federate-Cloud Share Feedback against the remote share ID 2015-04-28 14:29:04 +02:00
Vincent Petry
65fbb5eda0 Update etag of direct parent on unshare
Only call dirname() once instead of twice when propagating etags to the
recipient's parent folders.
2015-04-28 13:11:23 +02:00
Joas Schilling
8f7c64253e Correctly generate the feedback URL for remote share
The trailing slash was added in c78e3c4a7f
to correctly generate the encryption keys
2015-04-28 11:28:54 +02:00
Robin Appelman
5304afbecb dont pass floats as timestamp to the changepropagator 2015-04-27 15:18:25 +02:00
Robin Appelman
32067f9e80 use microtime to prevent race conditions 2015-04-27 14:07:16 +02:00
Robin Appelman
2e897f05b1 triger propagation for webdav uploads
use post hooks for share etag propagator
2015-04-27 14:07:16 +02:00
Robin Appelman
45784f213f fix propagation when renaming a directly reshared folder 2015-04-27 14:07:16 +02:00
Robin Appelman
f488624e5f minor fixes 2015-04-27 14:07:16 +02:00
Robin Appelman
526ea3fcba add rename hook for propagation 2015-04-27 14:07:16 +02:00
Robin Appelman
77fbb4125b propagate changes up reshares 2015-04-27 14:07:16 +02:00
Robin Appelman
8cb40f6043 Make sure the owner mountpoints are setup 2015-04-27 14:07:16 +02:00
Robin Appelman
30ad56813a propagate etags for all user of a share 2015-04-27 14:07:15 +02:00
Robin Appelman
57f49391dc remove unneeded readonlycache 2015-04-22 20:07:54 +02:00
Robin Appelman
03b7f1d015 use the permissions mask cache wrapper instead of the read only cache 2015-04-22 15:28:06 +02:00
Olivier Paroz
fcc1b9b3cc Thou shalt not corrupt the answer of a cache request 2015-04-18 12:33:43 +02:00
Morris Jobke
82cab25762 Merge pull request #13360 from owncloud/cross-storage-move
Proper copy/move between multiple local storages
2015-04-14 14:35:08 +02:00
Robin Appelman
0f21303b75 a bit more phpdoc 2015-04-14 12:35:53 +02:00
Robin Appelman
f605c98531 Fix cross storage move with shared storages 2015-04-13 17:10:05 +02:00
Robin Appelman
8688660825 check that we know the parent 2015-04-13 17:10:02 +02:00
Robin Appelman
6b5daca7b7 check for source cache 2015-04-13 17:10:02 +02:00
Robin Appelman
d4c91dc835 add missing return for shared 2015-04-13 15:13:03 +02:00
Robin Appelman
d726db7459 Implement move/copyFromStorage for shared storage 2015-04-13 15:13:03 +02:00
Vincent Petry
b51b5b64e6 Fix converting Guzzle error codes in s2s storage 2015-04-10 12:12:05 +02:00
Vincent Petry
73afca6207 Catch more exceptions when connecting to remote DAV server
Added InvalidArgumentException to catch HTML parsing errors when XML was
expected.
Made convertSabreException more generic to be able to handle more
exception cases.
2015-04-10 12:02:06 +02:00
Vincent Petry
4feb97d8e4 Properly catch guzzle 503 when querying share info 2015-04-09 18:55:28 +02:00
Vincent Petry
08a9d1d2dc Remove unused $toRemove 2015-04-09 12:34:19 +02:00
Vincent Petry
461302244e Keep shares when deleting shared folders
The share entries will be linked with the fileid while they are kept in
the trashbin.

In the future a background just will scrape orphaned shares and delete
them.
2015-04-09 10:16:40 +02:00
Vincent Petry
17b141337a Delete orphaned shares in a background job 2015-04-08 10:47:55 +02:00
Bjoern Schiessle
60d8a39f03 store init status per user 2015-04-07 13:30:30 +02:00
Bjoern Schiessle
de4ec21c39 work arround to make sure that shares are initialized only once 2015-04-07 13:30:30 +02:00
Bjoern Schiessle
0eee3a2618 remove unencrypted_size from the cache, size will contain the unencrypted size 2015-04-07 13:30:28 +02:00
Roeland Jago Douma
2b81d0f237 Move core apps from private to public functions
Apps still use OC_Helper and OC_Util functions even when public ones are
already available. Sometimes the public one is even used in the same
file.
2015-04-01 12:06:04 +02:00
Joas Schilling
4c9c73bef9 Correct the app name for sharing events 2015-03-30 15:14:31 +02:00
Morris Jobke
cfe241a959 Merge pull request #13964 from rullzer/capabilities
Add OCS sharing info to capabilities - take 2
2015-03-30 10:06:05 +02:00
Morris Jobke
d082e37270 Merge pull request #15244 from owncloud/use_default_share_folder
always fall back to default share folder
2015-03-26 22:39:04 +01:00
Morris Jobke
e8109f0bc3 Merge pull request #13802 from owncloud/share-partfilepermissions
Fix share permission checks
2015-03-26 22:01:05 +01:00
Bjoern Schiessle
a3592534ef always fall back to default share folder 2015-03-26 21:56:44 +01:00
Thomas Müller
7bff0681fe Merge pull request #15001 from owncloud/kill-share-proxy
Replace share proxy with a hook
2015-03-26 21:20:05 +01:00
Robin Appelman
1be7da4a57 replace share proxy with hook 2015-03-26 19:56:57 +01:00
Lukas Reschke
071a339593 Remove IDE autocomplete fail
🙈 *cough* *cough*
2015-03-26 19:39:15 +01:00
Jenkins for ownCloud
b585d87d9d Update license headers 2015-03-26 11:44:36 +01:00
Lukas Reschke
5f044ebf1b Add wrapper for Guzzle 2015-03-25 16:04:41 +01:00
Morris Jobke
1db177b841 Merge pull request #15055 from owncloud/share-activity-grouping
Group sharing activities by user/group and file respectively
2015-03-24 20:23:36 +01:00
Joas Schilling
7de15f3125 *cough* 2015-03-24 17:08:03 +01:00
Morris Jobke
965d97a8f5 Merge pull request #14580 from owncloud/issue/13765-duplicate-remote-share
"Integrity constraint violation" when sharing the same item twice with the same user
2015-03-24 15:05:58 +01:00
Robin Appelman
d46b7d73e7 when the path doesnt exist show a proper error page 2015-03-24 12:21:25 +01:00
Lukas Reschke
e2453d78c0 Properly catch whether a share is null
Despite it's PHPDoc the function might return `null` which was not properly catched and thus in some situations the share was resolved to the sharing users root directory.

To test this perform the following steps:

* Share file in owncloud 7 (7.0.4.2)
* Delete the parent folder of the shared file
* The share stays is in the DB and the share via the sharelink is inaccessible. (which is good)
* Upgrade to owncloud 8 (8.0.2) (This step is crucial. The bug is not reproduceable without upgrading from 7 to 8. It seems like the old tokens are handled different than the newer ones)
* Optional Step: Logout, Reset Browser Session, etc.
* Access the share via the old share url: almost empty page, but there is a dowload button which adds a "/download" to the URL.
* Upon clicking, a download.zip is downloaded which contains EVERYTHING from the owncloud directory (of the user who shared the file)
* No exception is thrown and no error is logged.

This will add a check whether the share is a valid one and also adds unit tests to prevent further regressions in the future. Needs to be backported to ownCloud 8.

Adding a proper clean-up of the orphaned shares is out-of-scope and would probably require some kind of FK or so.

Fixes https://github.com/owncloud/core/issues/15097
2015-03-24 11:21:58 +01:00
Thomas Müller
afa8872955 Merge pull request #14857 from owncloud/preview-provider-registration-in-manager
Preview provider registration in manager
2015-03-20 16:34:22 +01:00
Joas Schilling
7776e088d6 Group sharing activities by user/group and file respectively 2015-03-20 09:49:33 +01:00
Vincent Petry
5f7b3a4dbe Rename must be possible with update-only permission
and this as long as the rename is done within the same folder.
2015-03-19 21:55:56 +01:00
Robin Appelman
be6edd465a Merge pull request #14537 from owncloud/oci-external-share
Fix external shares without password on oracle
2015-03-19 16:20:12 +01:00
Vincent Petry
c2315aa015 Fix shared storage permission checks 2015-03-18 19:56:31 +01:00
Joas Schilling
8ebb198ef3 Add a unit test for the naming conflict on the mountpoint name 2015-03-17 16:55:03 +01:00
Joas Schilling
ba3e4ede39 Use insertIfNotExists() instead of manual logic 2015-03-17 16:03:24 +01:00
Joas Schilling
05c4848954 Correctly get the unique mountpoint name when mounting the share
Previously the mount name was checked for uniqueness prior to inserting the
share. This caused problems, when two shares with the same name where done
or folder, mount point, local share with the same name was done, between
sending and accepting of the remote share
2015-03-17 16:03:24 +01:00
Lukas Reschke
db033e4e19 Fix PHPDoc and Co.
Ref https://github.com/owncloud/core/pull/14929#discussion_r26501240
2015-03-17 10:37:09 +01:00
Vincent Petry
b9d9405135 Fix scanFile signature warnings 2015-03-16 16:45:11 +01:00
Joas Schilling
47af533183 Move mimetype check from template to controller 2015-03-16 12:45:18 +01:00
Roeland Jago Douma
e9a003fe21 Slight better formatting 2015-03-11 15:11:50 +01:00
Roeland Jago Douma
09ee297356 New array syntax 2015-03-11 15:02:55 +01:00
Roeland Jago Douma
c985186246 Added new header 2015-03-11 15:02:55 +01:00
Roeland Jago Douma
af76716775 Now added enabled element
This change allows for more generic parsing for the capabilities.
2015-03-11 15:02:55 +01:00
Roeland Jago Douma
39b0f0725e Add file_sharing info to capabilities
Display the capabilities regarding file sharing in the capabilities API.
This will allow the clients to provide users a better experince.
2015-03-11 15:02:55 +01:00
Joas Schilling
6a677ce8fe Do not make setupMounts() public just because of testing 2015-03-11 11:10:43 +01:00
Robin Appelman
dcd2d7aff5 Add unit tests for external share mananger 2015-03-10 10:17:53 +01:00
Lukas Reschke
48243a2949 Allow iframes from same domain in share view
This is required because the PDF Viewer itself is embedded using an iframe from the same domain. The default policy is blocking this.

Going on further, we have to come up with a solution in the future how to handle previews by applications, one example might be that they call their own endpoint and not the generic share page to allow applications to have full control over how to display previews.

Anyways, to test this behaviour use a decent newer browser (such as Chrome 41) and share a PDF file, obviously the PDF viewer needs to be enabled as well. Without this patch publicly shared PDF files should not get previewed and an error is thrown. (if it isn't then your browser is probably not obeying our Content-Security-Policy and you might consider switching to another one ;))
2015-03-10 10:06:15 +01:00
Vincent Petry
4322287fc3 Fix size propagation over shared storage boundary 2015-03-05 22:23:47 +01:00
Robin Appelman
c65c717379 Fix external shares without password on oracle 2015-02-27 13:22:57 +01:00
Thomas Müller
f72f9e0159 Merge pull request #14530 from owncloud/revert-14403
Revert "Updating license headers"
2015-02-27 00:39:29 -08:00
Morris Jobke
06aef4e8b1 Revert "Updating license headers"
This reverts commit 6a1a4880f0.
2015-02-26 11:37:37 +01:00
Lukas Reschke
5bb0889b30 Remove uneeded assignment
'files' is neither used in the controller or the template
2015-02-24 19:50:23 +01:00
Jenkins for ownCloud
6a1a4880f0 Updating license headers 2015-02-23 12:13:59 +01:00
Vincent Petry
837365fff2 Merge pull request #14210 from owncloud/activity/225-sharing-extension-jenkins
Activity/225 sharing extension
2015-02-18 14:46:58 +01:00
Joas Schilling
0833a6e332 Correctly create activities for public downloads 2015-02-17 17:26:03 +01:00
Joas Schilling
b768a70616 Use filterNotificationTypes to filter the types and group the methods 2015-02-13 11:30:36 +01:00
Joas Schilling
9ccfbc14f6 Copy sharing related activity code to Files_Sharing activity extension 2015-02-13 11:16:43 +01:00
Morris Jobke
1bb6de7c1b Merge pull request #13425 from owncloud/phpdoc_cleanup
Cleanup of PHPDoc return types
2015-02-10 01:14:00 +01:00
Lukas Reschke
a67627140c Revert "Add OCS sharing info to capabilities" 2015-02-07 00:12:26 +01:00
Roeland Jago Douma
3be3e20c0f Bit better formatting when using json output 2015-02-06 10:55:33 +01:00
Roeland Jago Douma
d4e361db44 Updated sharing capabilities
Moved to files_sharing
Added more capabilities.
Tried to order to capabilities more OO style
2015-02-06 10:33:08 +01:00
Roeland Jago Douma
0452fde212 Converted getCapabilities to non static function 2015-02-04 14:56:31 +01:00
Roeland Jago Douma
4801d9c02a Use single quotes 2015-02-04 14:56:31 +01:00
Roeland Jago Douma
ea1f726b7d Only return capabilities if they are set 2015-02-04 14:56:31 +01:00
Roeland Jago Douma
b3ea849a87 Added capabilities whether a server allows public links
This fixes #13673.
It now lists link sharing, passwords enforced, and if public uploads are
allowed.
2015-02-04 14:56:31 +01:00
Morris Jobke
87b39e8f03 Merge pull request #13525 from owncloud/s2s-fixscanfileforbrokenstorage
Catch storage exception in scanner for remote shares
2015-01-28 00:31:37 +01:00
Vincent Petry
bd888748bd Merge pull request #13490 from owncloud/fix_reshare_s2s_share
use uid provided by setupfs hook to mount server2server shares
2015-01-26 19:54:14 +01:00
Bjoern Schiessle
5ba19ba7fc certificate manager should always use a \OC\Files\View otherwise we will get problems for different primary storages 2015-01-26 16:58:52 +01:00
Bjoern Schiessle
67da1f7e5a certificate manager only needs the user-id, no need to pass on the complete user object 2015-01-26 16:58:52 +01:00
Bjoern Schiessle
66f0db30b2 use uid provided by setupfs hook to mount server2server shares, otherwise mount will fail for public link shares 2015-01-26 16:54:50 +01:00
Vincent Petry
d5b61f9afe Prevent double slash in shareinfo request URL 2015-01-26 16:19:38 +01:00
Vincent Petry
f6e644b43f Catch storage exception in scanner for remote shares
Whenever an exception occurs during scan of a remote share, the share is
checked for availability. If the storage is gone, it will be removed
automatically.

Also, getDirectoryContent() will now skip unavailable storages.
2015-01-26 13:59:49 +01:00
Bjoern Schiessle
73a058e301 by default send mail for new server-to-server share 2015-01-23 21:59:07 +01:00
Bjoern Schiessle
7216983a08 delete all server-to-server shares if a user gets deleted 2015-01-21 17:11:34 +01:00
Thomas Müller
8ba42abbe4 Merge pull request #13432 from owncloud/animate_gifs_public_sharing
show animated gifs on public sharing page
2015-01-21 17:09:46 +01:00
Vincent Petry
9fbdd1072e Fix webdav mkdir for remote shares 2015-01-21 15:14:57 +01:00
Thomas Müller
87a754c72e avoid $this->cache being null - fixes #13491 2015-01-20 12:38:54 +01:00
Georg Ehrke
374ddbff55 show animated gifs on public sharing page 2015-01-19 16:20:06 +01:00
Robin McCorkell
2b99fc76ec Cleanup of PHPDoc return types 2015-01-16 20:30:43 +00:00
Morris Jobke
9b7c1a0093 Merge pull request #13347 from owncloud/share-scanpermissionsfromsource
Use source storage permissions when scanning shared storage
2015-01-15 11:15:15 +01:00
Robin McCorkell
9d0915013b Merge pull request #13352 from owncloud/hhvm-array-key
HHVM: Do not use key() on array as the result depends on the internal array pointer.
2015-01-15 01:06:45 +00:00
Andreas Fischer
b4a52e889a Do not use key() on array as the result depends on the internal array pointer. 2015-01-15 00:48:10 +01:00
Vincent Petry
a9f0582e3e Use source storage permissions when scanning shared storage 2015-01-14 18:11:23 +01:00
Thomas Müller
25806346c2 remove deprecated code - fixes #13119 2015-01-14 13:56:49 +01:00
Bjoern Schiessle
d50e70ba3a set accept to 1 (=true) for all server-to-server shares on update, at this point in time all shares are created by the first version of server-to-server sharing and are accepted if they were added to the table 2015-01-13 17:24:00 +01:00
Vincent Petry
01c83158bb Fix source path when share is a mount point
Whenever an external storage mount point is shared directly, its path is
empty which causes a leading slash to appear in the source path.

This fix removes the bogus leading slash in such situation.
2015-01-08 11:46:11 +01:00
Joas Schilling
70dcebbf92 Correctly return false when translating a foreign activity 2015-01-07 15:02:25 +01:00
Bjoern Schiessle
8c48be453e only send activity if we have a valid path and the file is readable 2014-12-23 13:32:54 +01:00
Robin Appelman
3afcc71764 Make sure the path passed to the activity manager is normalized 2014-12-22 18:50:00 +01:00
Bjoern Schiessle
393deb5961 add activity if public shared file/folder was downloaded 2014-12-22 18:50:00 +01:00
Morris Jobke
510488ad3e Merge pull request #12942 from owncloud/favs-missingsharedsubdirs
Fix issues with searchByTag in shared storage
2014-12-21 10:38:34 +01:00
Bjoern Schiessle
24993280ed Next step in server-to-server sharing next generation, see #12285
Beside some small improvements and bug fixes this will probably the final state for OC8.

To test this you need to set up two ownCloud instances. Let's say:

URL: myPC/firstOwnCloud user: user1
URL: myPC/secondOwnCloud user: user2
Now user1 can share a file with user2 by entering the username and the URL to the second ownCloud to the share-drop-down, in this case "user2@myPC/secondOwnCloud".

The next time user2 login he will get a notification that he received a server-to-server share with the option to accept/decline it. If he accept it the share will be mounted. In both cases a event will be send back to user1 and add a notification to the activity stream that the share was accepted/declined.

If user1 decides to unshare the file again from user2 the share will automatically be removed from the second ownCloud server and user2 will see a notification in his activity stream that user1@myPC/firstOwnCloud has unshared the file/folder from him.
2014-12-19 15:20:24 +01:00
Jörn Friedrich Dreyer
49318b4d93 Merge pull request #12896 from owncloud/drop-deprecated
first step to drop \OCP\Config:: in favour of IConfig
2014-12-18 23:01:49 +01:00
Vincent Petry
11b3aa2dbe Fix issues with searchByTag in shared storage 2014-12-18 17:27:56 +01:00
Robin Appelman
e656af4c83 Root always exists 2014-12-17 16:09:41 +01:00
Morris Jobke
d41082f4d6 first step to drop \OCP\Config:: in favour of IConfig 2014-12-17 11:12:37 +01:00
Vincent Petry
4b57892c4e Merge pull request #12778 from owncloud/searchbytags2
Added searchByTags to view, storage and cache
2014-12-12 14:27:19 +01:00
Joas Schilling
46def69574 Specify list of activity parameters for sharing extension 2014-12-12 11:41:01 +01:00
Vincent Petry
15ecb28d50 Make $userId mandatory for searchByTags
$userId is now a mandatory parameter for searchByTags.

Also fixed some places in the code where the argument was missing (Node
API and View)
2014-12-12 11:18:35 +01:00
Vincent Petry
25dde7e93b Added searchByTags to view, storage and cache 2014-12-11 17:38:50 +01:00
Morris Jobke
3026cdbc80 Merge pull request #12549 from owncloud/shared-cache-non-existing
Dont return cached date in shared cache when the file doesn't exist
2014-12-10 08:49:40 +01:00
Lukas Reschke
25a87d4058 Merge pull request #12577 from owncloud/public-mount-api
Add a public api for apps to add mounts
2014-12-08 22:57:33 +01:00
Robin Appelman
f4701d7721 Add public api for mount configurations 2014-12-04 16:47:27 +01:00
Bjoern Schiessle
698ecbf308 OCS API for server-to-server sharing 2014-12-04 13:18:13 +01:00
Robin Appelman
ce10b93519 Dont return cached date in shared cache when the file doesn't exist 2014-12-02 15:28:11 +01:00
Morris Jobke
c5fa8f1bdc Merge pull request #12421 from owncloud/issue/6101-remove-namespace-permission-constants
Issue/6101 remove namespace permission constants
2014-11-26 08:31:23 +01:00
Thomas Müller
e6a7022037 Merge pull request #12410 from owncloud/no_session_for_public_share_key
don't store private public-share-key in session
2014-11-25 22:26:40 +01:00
Joas Schilling
2c39aec8cb Replace deprecated constant with new class constant 2014-11-25 16:30:21 +01:00
Bjoern Schiessle
1d33503487 we no longer need to keep the session open for encryption 2014-11-25 13:37:11 +01:00
Morris Jobke
6fb2477fb7 Merge pull request #12262 from owncloud/removeAbsoluteDirectoryPathFromTemplate
Don't disclose relative directory path for single shared files of user
2014-11-25 10:09:16 +01:00
Lukas Reschke
8589079590 Close session only if encryption app is not enabled
Fixes https://github.com/owncloud/core/issues/12389
2014-11-24 15:02:49 +01:00
Bjoern Schiessle
a7ebfe87c9 also check for the correct owner if it was submitted 2014-11-21 16:17:37 +01:00