mirror of
https://github.com/nextcloud/passman.git
synced 2025-12-27 10:50:50 +08:00
Fixes for cleanItemRequestsForUser
This commit is contained in:
parent
2978800c43
commit
14c2ec26fb
3 changed files with 22 additions and 13 deletions
|
|
@ -194,8 +194,6 @@ class ShareController extends ApiController {
|
|||
}
|
||||
|
||||
public function deleteShareRequest($share_request_id){
|
||||
echo $share_request_id;
|
||||
|
||||
$manager = \OC::$server->getNotificationManager();
|
||||
$notification = $manager->createNotification();
|
||||
$notification->setApp('passman')
|
||||
|
|
@ -203,7 +201,9 @@ class ShareController extends ApiController {
|
|||
->setUser($this->userId->getUID());
|
||||
$manager->markProcessed($notification);
|
||||
//@TODO load other requests and delete them by item id.
|
||||
$this->shareService->deleteShareRequestById($share_request_id);
|
||||
$sr = $this->shareService->getShareRequestById($share_request_id);
|
||||
$this->shareService->cleanItemRequestsForUser($sr);
|
||||
return new JSONResponse(array('result'=> true));
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -38,10 +38,9 @@ class ShareRequestMapper extends Mapper {
|
|||
}
|
||||
|
||||
public function cleanItemRequestsForUser($item_id, $target_user_id){
|
||||
$req = new ShareRequest();
|
||||
$req->setItemId($item_id);
|
||||
$req->setTargetUserId($target_user_id);
|
||||
return $this->delete($req);
|
||||
$q = "DELETE FROM *PREFIX*" . self::TABLE_NAME . " WHERE item_id = ? AND target_user_id = ?";
|
||||
$this->execute($q, [$item_id, $target_user_id]);
|
||||
return $this->execute($q, [$item_id, $target_user_id]);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -57,4 +56,9 @@ class ShareRequestMapper extends Mapper {
|
|||
public function deleteShareRequest(ShareRequest $shareRequest){
|
||||
$this->delete($shareRequest);
|
||||
}
|
||||
|
||||
public function getShareRequestById($id){
|
||||
$q = "SELECT * FROM *PREFIX*" . self::TABLE_NAME . " WHERE id = ?";
|
||||
return $this->findEntity($q, [$id]);
|
||||
}
|
||||
}
|
||||
|
|
@ -9,6 +9,7 @@
|
|||
namespace OCA\Passman\Service;
|
||||
|
||||
|
||||
use Icewind\SMB\Share;
|
||||
use OCA\Passman\Db\CredentialMapper;
|
||||
use OCA\Passman\Db\ShareRequest;
|
||||
use OCA\Passman\Db\ShareRequestMapper;
|
||||
|
|
@ -106,13 +107,17 @@ class ShareService {
|
|||
|
||||
/**
|
||||
* Deletes an share reuqest by id
|
||||
* @param $share_request_id
|
||||
*
|
||||
* @param ShareRequest $request
|
||||
* @return \OCA\Passman\Db\ShareRequest[]
|
||||
*/
|
||||
public function deleteShareRequestById($id){
|
||||
$t = new ShareRequest();
|
||||
$t->setId($id);
|
||||
$this->shareRequest->deleteShareRequest($t);
|
||||
public function cleanItemRequestsForUser(ShareRequest $request){
|
||||
return $this->shareRequest->cleanItemRequestsForUser($request->getItemId(), $request->getTargetUserId());
|
||||
}
|
||||
|
||||
/**
|
||||
* Get an share request by id
|
||||
*/
|
||||
public function getShareRequestById($id){
|
||||
return $this->shareRequest->getShareRequestById($id);
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Reference in a new issue