|
36 | 36 | use OCP\IURLGenerator;
|
37 | 37 | use OCP\IUser;
|
38 | 38 | use OCP\Share;
|
| 39 | +use Symfony\Component\EventDispatcher\GenericEvent; |
39 | 40 |
|
40 | 41 | /**
|
41 | 42 | * The class to handle the filesystem hooks
|
@@ -224,32 +225,54 @@ protected function getSourcePathAndOwner($path) {
|
224 | 225 |
|
225 | 226 | /**
|
226 | 227 | * Manage sharing events
|
227 |
| - * @param array $params The hook params |
| 228 | + * @param GenericEvent $params The hook params |
228 | 229 | */
|
229 |
| - public function share($params) { |
230 |
| - if ($params['itemType'] === 'file' || $params['itemType'] === 'folder') { |
231 |
| - if ((int) $params['shareType'] === Share::SHARE_TYPE_USER) { |
232 |
| - $this->shareFileOrFolderWithUser($params['shareWith'], (int) $params['fileSource'], $params['itemType'], $params['fileTarget'], true); |
233 |
| - } else if ((int) $params['shareType'] === Share::SHARE_TYPE_GROUP) { |
234 |
| - $this->shareFileOrFolderWithGroup($params['shareWith'], (int) $params['fileSource'], $params['itemType'], $params['fileTarget'], (int) $params['id'], true); |
| 230 | + public function share(GenericEvent $params) { |
| 231 | + \OC::$server->getLogger()->warning(__METHOD__ . " LOOPING . First take the count = " . count($params->getArguments())); |
| 232 | + foreach ($params->getArguments() as $argument) { |
| 233 | + \OC::$server->getLogger()->warning(__METHOD__ . " val = $argument"); |
| 234 | + } |
| 235 | + if ($params->getArgument('itemType') === 'file' || $params->getArgument('itemType') === 'folder') { |
| 236 | + if ((int) $params->getArgument('shareType') === Share::SHARE_TYPE_USER) { |
| 237 | + $this->shareFileOrFolderWithUser($params->getArgument('shareWith'), |
| 238 | + (int) $params->getArgument('fileSource'), |
| 239 | + $params->getArgument('itemType'), |
| 240 | + $params->getArgument('fileTarget'), true); |
| 241 | + } else if ((int) $params->getArgument('shareType') === Share::SHARE_TYPE_GROUP) { |
| 242 | + $this->shareFileOrFolderWithGroup($params->getArgument('shareWith'), |
| 243 | + (int) $params->getArgument('fileSource'), |
| 244 | + $params->getArgument('itemType'), |
| 245 | + $params->getArgument('fileTarget'), |
| 246 | + (int) $params->getArgument('id'), true); |
235 | 247 | } else if ((int) $params['shareType'] === Share::SHARE_TYPE_LINK) {
|
236 |
| - $this->shareFileOrFolderByLink((int) $params['fileSource'], $params['itemType'], $params['uidOwner'], true); |
| 248 | + $this->shareFileOrFolderByLink((int) $params->getArgument('fileSource'), |
| 249 | + $params->getArgument('itemType'), |
| 250 | + $params->getArgument('uidOwner'), true); |
237 | 251 | }
|
238 | 252 | }
|
239 | 253 | }
|
240 | 254 |
|
241 | 255 | /**
|
242 | 256 | * Manage sharing events
|
243 |
| - * @param array $params The hook params |
| 257 | + * @param GenericEvent $params The hook params |
244 | 258 | */
|
245 |
| - public function unShare($params) { |
246 |
| - if ($params['itemType'] === 'file' || $params['itemType'] === 'folder') { |
247 |
| - if ((int) $params['shareType'] === Share::SHARE_TYPE_USER) { |
248 |
| - $this->shareFileOrFolderWithUser($params['shareWith'], (int) $params['fileSource'], $params['itemType'], $params['fileTarget'], false); |
249 |
| - } else if ((int) $params['shareType'] === Share::SHARE_TYPE_GROUP) { |
250 |
| - $this->shareFileOrFolderWithGroup($params['shareWith'], (int) $params['fileSource'], $params['itemType'], $params['fileTarget'], (int) $params['id'], false); |
| 259 | + public function unShare(GenericEvent $params) { |
| 260 | + if ($params->getArgument('itemType') === 'file' || $params->getArgument('itemType') === 'folder') { |
| 261 | + if ((int) $params->getArgument('shareType') === Share::SHARE_TYPE_USER) { |
| 262 | + $this->shareFileOrFolderWithUser($params->getArgument('shareWith'), |
| 263 | + (int) $params->getArgument('fileSource'), |
| 264 | + $params->getArgument('itemType'), |
| 265 | + $params->getArgument('fileTarget'), false); |
| 266 | + } else if ((int) $params->getArgument('shareType') === Share::SHARE_TYPE_GROUP) { |
| 267 | + $this->shareFileOrFolderWithGroup($params->getArgument('shareWith'), |
| 268 | + (int) $params->getArgument('fileSource'), |
| 269 | + $params->getArgument('itemType'), |
| 270 | + $params->getArgument('fileTarget'), |
| 271 | + (int) $params->getArgument('id'), false); |
251 | 272 | } else if ((int) $params['shareType'] === Share::SHARE_TYPE_LINK) {
|
252 |
| - $this->shareFileOrFolderByLink((int) $params['fileSource'], $params['itemType'], $params['uidOwner'], false); |
| 273 | + $this->shareFileOrFolderByLink((int) $params->getArgument('fileSource'), |
| 274 | + $params->getArgument('itemType'), |
| 275 | + $params->getArgument('uidOwner'), false); |
253 | 276 | }
|
254 | 277 | }
|
255 | 278 | }
|
|
0 commit comments