|
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