Browse Source

Remove the notification if accepting/declining failed because of 404

tags/v9.0.0beta2
Joas Schilling 8 years ago
parent
commit
2263b8b693
2 changed files with 10 additions and 4 deletions
  1. 7
    1
      apps/files_sharing/api/remote.php
  2. 3
    3
      apps/files_sharing/lib/external/manager.php

+ 7
- 1
apps/files_sharing/api/remote.php View File

@@ -67,6 +67,9 @@ class Remote {
return new \OC_OCS_Result();
}

// Make sure the user has no notification for something that does not exist anymore.
$externalManager->processNotification((int) $params['id']);

return new \OC_OCS_Result(null, 404, "wrong share ID, share doesn't exist.");
}

@@ -90,12 +93,15 @@ class Remote {
return new \OC_OCS_Result();
}

// Make sure the user has no notification for something that does not exist anymore.
$externalManager->processNotification((int) $params['id']);

return new \OC_OCS_Result(null, 404, "wrong share ID, share doesn't exist.");
}

/**
* @param array $share Share with info from the share_external table
* @return enriched share info with data from the filecache
* @return array enriched share info with data from the filecache
*/
private static function extendShareInfo($share) {
$view = new \OC\Files\View('/' . \OC_User::getUser() . '/files/');

+ 3
- 3
apps/files_sharing/lib/external/manager.php View File

@@ -194,7 +194,7 @@ class Manager {

\OC_Hook::emit('OCP\Share', 'federated_share_added', ['server' => $share['remote']]);

$this->scrapNotification($id);
$this->processNotification($id);
return true;
}

@@ -217,7 +217,7 @@ class Manager {
$removeShare->execute(array($id, $this->uid));
$this->sendFeedbackToRemote($share['remote'], $share['share_token'], $share['remote_id'], 'decline');

$this->scrapNotification($id);
$this->processNotification($id);
return true;
}

@@ -227,7 +227,7 @@ class Manager {
/**
* @param int $remoteShare
*/
protected function scrapNotification($remoteShare) {
public function processNotification($remoteShare) {
$filter = $this->notificationManager->createNotification();
$filter->setApp('files_sharing')
->setUser($this->uid)

Loading…
Cancel
Save