[Share 2.0] Fix pre_share and post_share hooks
This commit is contained in:
parent
d0a690fde4
commit
4cc2230c58
|
@ -452,6 +452,16 @@ class Manager {
|
|||
$target = \OC\Files\Filesystem::normalizePath($target);
|
||||
$share->setTarget($target);
|
||||
|
||||
//Get sharewith for hooks
|
||||
$sharedWith = null;
|
||||
if ($share->getShareType() === \OCP\Share::SHARE_TYPE_USER) {
|
||||
$sharedWith = $share->getSharedWith()->getUID();
|
||||
} else if ($share->getShareType() === \OCP\Share::SHARE_TYPE_GROUP) {
|
||||
$sharedWith = $share->getSharedWith()->getGID();
|
||||
} else {
|
||||
$sharedWith = $share->getSharedWith();
|
||||
}
|
||||
|
||||
// Pre share hook
|
||||
$run = true;
|
||||
$error = '';
|
||||
|
@ -464,8 +474,10 @@ class Manager {
|
|||
'fileSource' => $share->getPath()->getId(),
|
||||
'expiration' => $share->getExpirationDate(),
|
||||
'token' => $share->getToken(),
|
||||
'itemTarget' => $share->getTarget(),
|
||||
'shareWith' => $sharedWith,
|
||||
'run' => &$run,
|
||||
'error' => &$error
|
||||
'error' => &$error,
|
||||
];
|
||||
\OC_Hook::emit('OCP\Share', 'pre_shared', $preHookData);
|
||||
|
||||
|
@ -488,7 +500,11 @@ class Manager {
|
|||
'expiration' => $share->getExpirationDate(),
|
||||
'token' => $share->getToken(),
|
||||
'id' => $share->getId(),
|
||||
'shareWith' => $sharedWith,
|
||||
'itemTarget' => $share->getTarget(),
|
||||
'fileTarget' => $share->getTarget(),
|
||||
];
|
||||
|
||||
\OC_Hook::emit('OCP\Share', 'post_shared', $postHookData);
|
||||
|
||||
return $share;
|
||||
|
|
|
@ -1364,6 +1364,8 @@ class ManagerTest extends \Test\TestCase {
|
|||
$share->expects($this->once())
|
||||
->method('setTarget')
|
||||
->with('/target');
|
||||
$share->method('getTarget')
|
||||
->willReturn('/target');
|
||||
$share->expects($this->once())
|
||||
->method('setExpirationDate')
|
||||
->with($date);
|
||||
|
@ -1388,6 +1390,8 @@ class ManagerTest extends \Test\TestCase {
|
|||
'token' => 'token',
|
||||
'run' => true,
|
||||
'error' => '',
|
||||
'itemTarget' => '/target',
|
||||
'shareWith' => null,
|
||||
];
|
||||
|
||||
$hookListnerExpectsPost = [
|
||||
|
@ -1400,6 +1404,9 @@ class ManagerTest extends \Test\TestCase {
|
|||
'expiration' => $date,
|
||||
'token' => 'token',
|
||||
'id' => 42,
|
||||
'itemTarget' => '/target',
|
||||
'fileTarget' => '/target',
|
||||
'shareWith' => null,
|
||||
];
|
||||
|
||||
$share->method('getId')->willReturn(42);
|
||||
|
|
Loading…
Reference in New Issue