@@ -38,7 +38,7 @@ discard block |
||
| 38 | 38 | protected $userId; |
| 39 | 39 | protected $created; |
| 40 | 40 | protected $credentialData; |
| 41 | - protected $editedBy; |
|
| 41 | + protected $editedBy; |
|
| 42 | 42 | |
| 43 | 43 | |
| 44 | 44 | public function __construct() { |
@@ -56,7 +56,7 @@ discard block |
||
| 56 | 56 | 'guid' => $this->getGuid(), |
| 57 | 57 | 'created' => $this->getCreated(), |
| 58 | 58 | 'credential_data' => json_decode(base64_decode($this->getCredentialData())), |
| 59 | - 'edited_by' => $this->getEditedBy(), |
|
| 59 | + 'edited_by' => $this->getEditedBy(), |
|
| 60 | 60 | ]; |
| 61 | 61 | } |
| 62 | 62 | } |
| 63 | 63 | \ No newline at end of file |
@@ -14,11 +14,11 @@ |
||
| 14 | 14 | |
| 15 | 15 | class NotFoundJSONResponse extends JSONResponse { |
| 16 | 16 | |
| 17 | - /** |
|
| 18 | - * Creates a new json response with a not found status code. |
|
| 19 | - * @param array $response_data |
|
| 20 | - */ |
|
| 21 | - public function __construct($response_data = []) { |
|
| 22 | - parent::__construct($response_data, Http::STATUS_NOT_FOUND); |
|
| 23 | - } |
|
| 17 | + /** |
|
| 18 | + * Creates a new json response with a not found status code. |
|
| 19 | + * @param array $response_data |
|
| 20 | + */ |
|
| 21 | + public function __construct($response_data = []) { |
|
| 22 | + parent::__construct($response_data, Http::STATUS_NOT_FOUND); |
|
| 23 | + } |
|
| 24 | 24 | } |
| 25 | 25 | \ No newline at end of file |
@@ -12,10 +12,10 @@ discard block |
||
| 12 | 12 | namespace OCA\Passman\Utility; |
| 13 | 13 | |
| 14 | 14 | class Utils { |
| 15 | - /** |
|
| 16 | - * Gets the unix epoch UTC timestamp |
|
| 17 | - * @return int |
|
| 18 | - */ |
|
| 15 | + /** |
|
| 16 | + * Gets the unix epoch UTC timestamp |
|
| 17 | + * @return int |
|
| 18 | + */ |
|
| 19 | 19 | public static function getTime() { |
| 20 | 20 | return (new \DateTime())->getTimestamp(); |
| 21 | 21 | } |
@@ -27,10 +27,10 @@ discard block |
||
| 27 | 27 | return $secs . substr($millisecs, 2, 6); |
| 28 | 28 | } |
| 29 | 29 | |
| 30 | - /** |
|
| 31 | - * Generates a Globally Unique ID |
|
| 32 | - * @return string |
|
| 33 | - */ |
|
| 30 | + /** |
|
| 31 | + * Generates a Globally Unique ID |
|
| 32 | + * @return string |
|
| 33 | + */ |
|
| 34 | 34 | public static function GUID() { |
| 35 | 35 | if (function_exists('com_create_guid') === true) |
| 36 | 36 | { |
@@ -52,19 +52,19 @@ |
||
| 52 | 52 | //Sharing stuff |
| 53 | 53 | ['name' => 'share#search', 'url' => '/api/v2/sharing/search', 'verb' => 'POST'], |
| 54 | 54 | ['name' => 'share#getVaultsByUser', 'url' => '/api/v2/sharing/vaults/{user_id}', 'verb' => 'GET'], |
| 55 | - ['name' => 'share#applyIntermediateShare', 'url' => '/api/v2/sharing/share', 'verb' => 'POST'], |
|
| 56 | - ['name' => 'share#savePendingRequest', 'url' => '/api/v2/sharing/save', 'verb' => 'POST'], |
|
| 57 | - ['name' => 'share#getPendingRequests', 'url' => '/api/v2/sharing/pending', 'verb' => 'GET'], |
|
| 58 | - ['name' => 'share#deleteShareRequest', 'url' => '/api/v2/sharing/decline/{share_request_id}', 'verb' => 'DELETE'], |
|
| 59 | - ['name' => 'share#getVaultItems', 'url' => '/api/v2/sharing/vault/{vault_guid}/get', 'verb' => 'GET'], |
|
| 60 | - ['name' => 'share#createPublicShare', 'url' => '/api/v2/sharing/public', 'verb' => 'POST'], |
|
| 61 | - ['name' => 'share#getPublicCredentialData', 'url' => '/api/v2/sharing/credential/{credential_guid}/public', 'verb' => 'GET'], |
|
| 62 | - ['name' => 'share#unshareCredential', 'url' => '/api/v2/sharing/credential/{item_guid}', 'verb' => 'DELETE'], |
|
| 63 | - ['name' => 'share#unshareCredentialFromUser', 'url' => '/api/v2/sharing/credential/{item_guid}/{user_id}', 'verb' => 'DELETE'], |
|
| 64 | - ['name' => 'share#getRevisions', 'url' => '/api/v2/sharing/credential/{item_guid}/revisions', 'verb' => 'GET'], |
|
| 65 | - ['name' => 'share#getItemAcl', 'url' => '/api/v2/sharing/credential/{item_guid}/acl', 'verb' => 'GET'], |
|
| 66 | - ['name' => 'share#getFile', 'url' => '/api/v2/sharing/credential/{item_guid}/file/{file_guid}', 'verb' => 'GET'], |
|
| 67 | - ['name' => 'share#updateSharedCredentialACL', 'url' => '/api/v2/sharing/credential/{item_guid}/acl', 'verb' => 'PATCH'], |
|
| 55 | + ['name' => 'share#applyIntermediateShare', 'url' => '/api/v2/sharing/share', 'verb' => 'POST'], |
|
| 56 | + ['name' => 'share#savePendingRequest', 'url' => '/api/v2/sharing/save', 'verb' => 'POST'], |
|
| 57 | + ['name' => 'share#getPendingRequests', 'url' => '/api/v2/sharing/pending', 'verb' => 'GET'], |
|
| 58 | + ['name' => 'share#deleteShareRequest', 'url' => '/api/v2/sharing/decline/{share_request_id}', 'verb' => 'DELETE'], |
|
| 59 | + ['name' => 'share#getVaultItems', 'url' => '/api/v2/sharing/vault/{vault_guid}/get', 'verb' => 'GET'], |
|
| 60 | + ['name' => 'share#createPublicShare', 'url' => '/api/v2/sharing/public', 'verb' => 'POST'], |
|
| 61 | + ['name' => 'share#getPublicCredentialData', 'url' => '/api/v2/sharing/credential/{credential_guid}/public', 'verb' => 'GET'], |
|
| 62 | + ['name' => 'share#unshareCredential', 'url' => '/api/v2/sharing/credential/{item_guid}', 'verb' => 'DELETE'], |
|
| 63 | + ['name' => 'share#unshareCredentialFromUser', 'url' => '/api/v2/sharing/credential/{item_guid}/{user_id}', 'verb' => 'DELETE'], |
|
| 64 | + ['name' => 'share#getRevisions', 'url' => '/api/v2/sharing/credential/{item_guid}/revisions', 'verb' => 'GET'], |
|
| 65 | + ['name' => 'share#getItemAcl', 'url' => '/api/v2/sharing/credential/{item_guid}/acl', 'verb' => 'GET'], |
|
| 66 | + ['name' => 'share#getFile', 'url' => '/api/v2/sharing/credential/{item_guid}/file/{file_guid}', 'verb' => 'GET'], |
|
| 67 | + ['name' => 'share#updateSharedCredentialACL', 'url' => '/api/v2/sharing/credential/{item_guid}/acl', 'verb' => 'PATCH'], |
|
| 68 | 68 | |
| 69 | 69 | //Internal API |
| 70 | 70 | ['name' => 'internal#remind', 'url' => '/api/internal/notifications/remind/{credential_id}', 'verb' => 'POST'], |
@@ -255,26 +255,26 @@ |
||
| 255 | 255 | * @NoAdminRequired |
| 256 | 256 | */ |
| 257 | 257 | public function getRevision($credential_guid) { |
| 258 | - try { |
|
| 259 | - $credential = $this->credentialService->getCredentialByGUID($credential_guid); |
|
| 260 | - } |
|
| 261 | - catch (DoesNotExistException $ex){ |
|
| 262 | - return new NotFoundJSONResponse(); |
|
| 263 | - } |
|
| 258 | + try { |
|
| 259 | + $credential = $this->credentialService->getCredentialByGUID($credential_guid); |
|
| 260 | + } |
|
| 261 | + catch (DoesNotExistException $ex){ |
|
| 262 | + return new NotFoundJSONResponse(); |
|
| 263 | + } |
|
| 264 | 264 | |
| 265 | - // If the request was made by the owner of the credential |
|
| 266 | - if ($this->userId === $credential->getUserId()) { |
|
| 267 | - $result = $this->credentialRevisionService->getRevisions($credential->getId(), $this->userId); |
|
| 268 | - } |
|
| 269 | - else { |
|
| 270 | - $acl = $this->sharingService->getACL($this->userId, $credential_guid); |
|
| 271 | - if ($acl->hasPermission(SharingACL::HISTORY)){ |
|
| 272 | - $result = $this->credentialRevisionService->getRevisions($credential->getId()); |
|
| 273 | - } |
|
| 274 | - else { |
|
| 275 | - return new NotFoundJSONResponse(); |
|
| 276 | - } |
|
| 277 | - } |
|
| 265 | + // If the request was made by the owner of the credential |
|
| 266 | + if ($this->userId === $credential->getUserId()) { |
|
| 267 | + $result = $this->credentialRevisionService->getRevisions($credential->getId(), $this->userId); |
|
| 268 | + } |
|
| 269 | + else { |
|
| 270 | + $acl = $this->sharingService->getACL($this->userId, $credential_guid); |
|
| 271 | + if ($acl->hasPermission(SharingACL::HISTORY)){ |
|
| 272 | + $result = $this->credentialRevisionService->getRevisions($credential->getId()); |
|
| 273 | + } |
|
| 274 | + else { |
|
| 275 | + return new NotFoundJSONResponse(); |
|
| 276 | + } |
|
| 277 | + } |
|
| 278 | 278 | |
| 279 | 279 | return new JSONResponse($result); |
| 280 | 280 | } |
@@ -23,11 +23,11 @@ discard block |
||
| 23 | 23 | class CredentialService { |
| 24 | 24 | |
| 25 | 25 | private $credentialMapper; |
| 26 | - private $sharingACL; |
|
| 26 | + private $sharingACL; |
|
| 27 | 27 | |
| 28 | 28 | public function __construct(CredentialMapper $credentialMapper, SharingACLMapper $sharingACL) { |
| 29 | 29 | $this->credentialMapper = $credentialMapper; |
| 30 | - $this->sharingACL = $sharingACL; |
|
| 30 | + $this->sharingACL = $sharingACL; |
|
| 31 | 31 | } |
| 32 | 32 | |
| 33 | 33 | /** |
@@ -65,23 +65,23 @@ discard block |
||
| 65 | 65 | } |
| 66 | 66 | |
| 67 | 67 | public function getCredentialById($credential_id, $user_id){ |
| 68 | - $credential = $this->credentialMapper->getCredentialById($credential_id); |
|
| 69 | - if ($credential->getUserId() === $user_id){ |
|
| 70 | - return $credential; |
|
| 71 | - } |
|
| 72 | - else { |
|
| 73 | - $acl = $this->sharingACL->getItemACL($user_id, $credential->getGuid()); |
|
| 74 | - if ($acl->hasPermission(SharingACL::READ)); |
|
| 75 | - return $credential; |
|
| 76 | - } |
|
| 77 | - |
|
| 78 | - throw new DoesNotExistException("Did expect one result but found none when executing"); |
|
| 68 | + $credential = $this->credentialMapper->getCredentialById($credential_id); |
|
| 69 | + if ($credential->getUserId() === $user_id){ |
|
| 70 | + return $credential; |
|
| 71 | + } |
|
| 72 | + else { |
|
| 73 | + $acl = $this->sharingACL->getItemACL($user_id, $credential->getGuid()); |
|
| 74 | + if ($acl->hasPermission(SharingACL::READ)); |
|
| 75 | + return $credential; |
|
| 76 | + } |
|
| 77 | + |
|
| 78 | + throw new DoesNotExistException("Did expect one result but found none when executing"); |
|
| 79 | 79 | } |
| 80 | 80 | public function getCredentialLabelById($credential_id){ |
| 81 | 81 | return $this->credentialMapper->getCredentialLabelById($credential_id); |
| 82 | 82 | } |
| 83 | 83 | |
| 84 | 84 | public function getCredentialByGUID($credential_guid, $user_id = null){ |
| 85 | - return $this->credentialMapper->getCredentialByGUID($credential_guid, $user_id); |
|
| 86 | - } |
|
| 85 | + return $this->credentialMapper->getCredentialByGUID($credential_guid, $user_id); |
|
| 86 | + } |
|
| 87 | 87 | } |
| 88 | 88 | \ No newline at end of file |
@@ -13,40 +13,40 @@ |
||
| 13 | 13 | use OCP\AppFramework\Db\Entity; |
| 14 | 14 | |
| 15 | 15 | class PermissionEntity extends Entity { |
| 16 | - CONST READ = 0b00000001; |
|
| 17 | - CONST WRITE = 0b00000010; |
|
| 18 | - CONST FILES = 0b00000100; |
|
| 19 | - CONST HISTORY = 0b00001000; |
|
| 20 | - CONST OWNER = 0b10000000; |
|
| 16 | + CONST READ = 0b00000001; |
|
| 17 | + CONST WRITE = 0b00000010; |
|
| 18 | + CONST FILES = 0b00000100; |
|
| 19 | + CONST HISTORY = 0b00001000; |
|
| 20 | + CONST OWNER = 0b10000000; |
|
| 21 | 21 | |
| 22 | - /** |
|
| 23 | - * Checks wether a user matches one or more permissions at once |
|
| 24 | - * @param $permission |
|
| 25 | - * @return bool |
|
| 26 | - */ |
|
| 27 | - public function hasPermission($permission) { |
|
| 28 | - $tmp = $this->getPermissions(); |
|
| 29 | - $tmp = $tmp & $permission; |
|
| 30 | - return $tmp === $permission; |
|
| 31 | - } |
|
| 22 | + /** |
|
| 23 | + * Checks wether a user matches one or more permissions at once |
|
| 24 | + * @param $permission |
|
| 25 | + * @return bool |
|
| 26 | + */ |
|
| 27 | + public function hasPermission($permission) { |
|
| 28 | + $tmp = $this->getPermissions(); |
|
| 29 | + $tmp = $tmp & $permission; |
|
| 30 | + return $tmp === $permission; |
|
| 31 | + } |
|
| 32 | 32 | |
| 33 | - /** |
|
| 34 | - * Adds the given permission or permissions set to the user current permissions |
|
| 35 | - * @param $permission |
|
| 36 | - */ |
|
| 37 | - public function addPermission($permission) { |
|
| 38 | - $tmp = $this->getPermissions(); |
|
| 39 | - $tmp = $tmp | $permission; |
|
| 40 | - $this->setPermissions($tmp); |
|
| 41 | - } |
|
| 33 | + /** |
|
| 34 | + * Adds the given permission or permissions set to the user current permissions |
|
| 35 | + * @param $permission |
|
| 36 | + */ |
|
| 37 | + public function addPermission($permission) { |
|
| 38 | + $tmp = $this->getPermissions(); |
|
| 39 | + $tmp = $tmp | $permission; |
|
| 40 | + $this->setPermissions($tmp); |
|
| 41 | + } |
|
| 42 | 42 | |
| 43 | - /** |
|
| 44 | - * Takes the given permission or permissions out from the user |
|
| 45 | - * @param $permission |
|
| 46 | - */ |
|
| 47 | - public function removePermission($permission) { |
|
| 48 | - $tmp = $this->getPermissions(); |
|
| 49 | - $tmp = $tmp & ~$permission; |
|
| 50 | - $this->setPermissions($tmp); |
|
| 51 | - } |
|
| 43 | + /** |
|
| 44 | + * Takes the given permission or permissions out from the user |
|
| 45 | + * @param $permission |
|
| 46 | + */ |
|
| 47 | + public function removePermission($permission) { |
|
| 48 | + $tmp = $this->getPermissions(); |
|
| 49 | + $tmp = $tmp & ~$permission; |
|
| 50 | + $this->setPermissions($tmp); |
|
| 51 | + } |
|
| 52 | 52 | } |
| 53 | 53 | \ No newline at end of file |
@@ -37,58 +37,58 @@ |
||
| 37 | 37 | |
| 38 | 38 | class ShareRequest extends PermissionEntity implements \JsonSerializable { |
| 39 | 39 | |
| 40 | - protected |
|
| 41 | - $itemId, |
|
| 42 | - $itemGuid, |
|
| 43 | - $targetUserId, |
|
| 44 | - $targetVaultId, |
|
| 45 | - $targetVaultGuid, |
|
| 46 | - $sharedKey, |
|
| 47 | - $permissions, |
|
| 48 | - $created, |
|
| 40 | + protected |
|
| 41 | + $itemId, |
|
| 42 | + $itemGuid, |
|
| 43 | + $targetUserId, |
|
| 44 | + $targetVaultId, |
|
| 45 | + $targetVaultGuid, |
|
| 46 | + $sharedKey, |
|
| 47 | + $permissions, |
|
| 48 | + $created, |
|
| 49 | 49 | $fromUserId; |
| 50 | 50 | |
| 51 | - public function __construct() { |
|
| 52 | - // add types in constructor |
|
| 53 | - $this->addType('itemId', 'integer'); |
|
| 54 | - $this->addType('vaultId', 'integer'); |
|
| 55 | - $this->addType('permissions', 'integer'); |
|
| 56 | - } |
|
| 51 | + public function __construct() { |
|
| 52 | + // add types in constructor |
|
| 53 | + $this->addType('itemId', 'integer'); |
|
| 54 | + $this->addType('vaultId', 'integer'); |
|
| 55 | + $this->addType('permissions', 'integer'); |
|
| 56 | + } |
|
| 57 | 57 | |
| 58 | - /** |
|
| 59 | - * Specify data which should be serialized to JSON |
|
| 60 | - * @link http://php.net/manual/en/jsonserializable.jsonserialize.php |
|
| 61 | - * @return mixed data which can be serialized by <b>json_encode</b>, |
|
| 62 | - * which is a value of any type other than a resource. |
|
| 63 | - * @since 5.4.0 |
|
| 64 | - */ |
|
| 65 | - function jsonSerialize() |
|
| 66 | - { |
|
| 67 | - return [ |
|
| 68 | - 'req_id' => $this->getId(), |
|
| 69 | - 'item_id' => $this->getItemId(), |
|
| 70 | - 'item_guid' => $this->getItemGuid(), |
|
| 71 | - 'target_user_id' => $this->getTargetUserId(), |
|
| 72 | - 'target_vault_id' => $this->getTargetVaultId(), |
|
| 73 | - 'target_vault_guid' => $this->getTargetVaultGuid(), |
|
| 74 | - 'from_user_id' => $this->getFromUserId(), |
|
| 75 | - 'shared_key' => $this->getSharedKey(), |
|
| 76 | - 'permissions' => $this->getPermissions(), |
|
| 77 | - 'created' => $this->getCreated(), |
|
| 78 | - ]; |
|
| 79 | - } |
|
| 58 | + /** |
|
| 59 | + * Specify data which should be serialized to JSON |
|
| 60 | + * @link http://php.net/manual/en/jsonserializable.jsonserialize.php |
|
| 61 | + * @return mixed data which can be serialized by <b>json_encode</b>, |
|
| 62 | + * which is a value of any type other than a resource. |
|
| 63 | + * @since 5.4.0 |
|
| 64 | + */ |
|
| 65 | + function jsonSerialize() |
|
| 66 | + { |
|
| 67 | + return [ |
|
| 68 | + 'req_id' => $this->getId(), |
|
| 69 | + 'item_id' => $this->getItemId(), |
|
| 70 | + 'item_guid' => $this->getItemGuid(), |
|
| 71 | + 'target_user_id' => $this->getTargetUserId(), |
|
| 72 | + 'target_vault_id' => $this->getTargetVaultId(), |
|
| 73 | + 'target_vault_guid' => $this->getTargetVaultGuid(), |
|
| 74 | + 'from_user_id' => $this->getFromUserId(), |
|
| 75 | + 'shared_key' => $this->getSharedKey(), |
|
| 76 | + 'permissions' => $this->getPermissions(), |
|
| 77 | + 'created' => $this->getCreated(), |
|
| 78 | + ]; |
|
| 79 | + } |
|
| 80 | 80 | |
| 81 | - function asACLJson(){ |
|
| 82 | - return [ |
|
| 83 | - 'item_id' => $this->getItemId(), |
|
| 84 | - 'item_guid' => $this->getItemGuid(), |
|
| 85 | - 'user_id' => $this->getTargetUserId(), |
|
| 86 | - 'created' => $this->getCreated(), |
|
| 87 | - 'permissions' => $this->getPermissions(), |
|
| 88 | - 'vault_id' => $this->getTargetVaultId(), |
|
| 89 | - 'vault_guid' => $this->getTargetVaultGuid(), |
|
| 90 | - 'shared_key' => $this->getSharedKey(), |
|
| 91 | - 'pending' => true, |
|
| 92 | - ]; |
|
| 93 | - } |
|
| 81 | + function asACLJson(){ |
|
| 82 | + return [ |
|
| 83 | + 'item_id' => $this->getItemId(), |
|
| 84 | + 'item_guid' => $this->getItemGuid(), |
|
| 85 | + 'user_id' => $this->getTargetUserId(), |
|
| 86 | + 'created' => $this->getCreated(), |
|
| 87 | + 'permissions' => $this->getPermissions(), |
|
| 88 | + 'vault_id' => $this->getTargetVaultId(), |
|
| 89 | + 'vault_guid' => $this->getTargetVaultGuid(), |
|
| 90 | + 'shared_key' => $this->getSharedKey(), |
|
| 91 | + 'pending' => true, |
|
| 92 | + ]; |
|
| 93 | + } |
|
| 94 | 94 | } |
| 95 | 95 | \ No newline at end of file |
@@ -16,68 +16,68 @@ |
||
| 16 | 16 | use OCA\Passman\Utility\Utils; |
| 17 | 17 | |
| 18 | 18 | class SharingACLMapper extends Mapper { |
| 19 | - const TABLE_NAME = '*PREFIX*passman_sharing_acl'; |
|
| 19 | + const TABLE_NAME = '*PREFIX*passman_sharing_acl'; |
|
| 20 | 20 | |
| 21 | - public function __construct(IDBConnection $db) { |
|
| 22 | - parent::__construct($db, 'passman_sharing_acl'); |
|
| 23 | - } |
|
| 21 | + public function __construct(IDBConnection $db) { |
|
| 22 | + parent::__construct($db, 'passman_sharing_acl'); |
|
| 23 | + } |
|
| 24 | 24 | |
| 25 | - public function createACLEntry(SharingACL $acl){ |
|
| 26 | - return $this->insert($acl); |
|
| 27 | - } |
|
| 25 | + public function createACLEntry(SharingACL $acl){ |
|
| 26 | + return $this->insert($acl); |
|
| 27 | + } |
|
| 28 | 28 | |
| 29 | - /** |
|
| 30 | - * Gets the currently accepted share requests from the given user for the given vault guid |
|
| 31 | - * @param $user_id |
|
| 32 | - * @param $vault_guid |
|
| 33 | - * @return SharingACL[] |
|
| 34 | - */ |
|
| 35 | - public function getVaultEntries($user_id, $vault_guid) { |
|
| 36 | - $q = "SELECT * FROM ". self::TABLE_NAME ." WHERE user_id = ? AND vault_guid = ?"; |
|
| 37 | - return $this->findEntities($q, [$user_id, $vault_guid]); |
|
| 38 | - } |
|
| 29 | + /** |
|
| 30 | + * Gets the currently accepted share requests from the given user for the given vault guid |
|
| 31 | + * @param $user_id |
|
| 32 | + * @param $vault_guid |
|
| 33 | + * @return SharingACL[] |
|
| 34 | + */ |
|
| 35 | + public function getVaultEntries($user_id, $vault_guid) { |
|
| 36 | + $q = "SELECT * FROM ". self::TABLE_NAME ." WHERE user_id = ? AND vault_guid = ?"; |
|
| 37 | + return $this->findEntities($q, [$user_id, $vault_guid]); |
|
| 38 | + } |
|
| 39 | 39 | |
| 40 | - /** |
|
| 41 | - * Gets the acl for a given item guid |
|
| 42 | - * @param $user_id |
|
| 43 | - * @param $item_guid |
|
| 44 | - * @return SharingACL |
|
| 45 | - */ |
|
| 46 | - public function getItemACL($user_id, $item_guid) { |
|
| 47 | - $q = "SELECT * FROM " . self::TABLE_NAME . " WHERE item_guid = ? AND "; |
|
| 48 | - $filter = [$item_guid]; |
|
| 49 | - if ($user_id === null){ |
|
| 50 | - $q .= 'user_id is null'; |
|
| 51 | - } |
|
| 52 | - else { |
|
| 53 | - $q .= 'user_id = ? '; |
|
| 54 | - $filter[] = $user_id; |
|
| 55 | - } |
|
| 56 | - return $this->findEntity($q, $filter); |
|
| 57 | - } |
|
| 40 | + /** |
|
| 41 | + * Gets the acl for a given item guid |
|
| 42 | + * @param $user_id |
|
| 43 | + * @param $item_guid |
|
| 44 | + * @return SharingACL |
|
| 45 | + */ |
|
| 46 | + public function getItemACL($user_id, $item_guid) { |
|
| 47 | + $q = "SELECT * FROM " . self::TABLE_NAME . " WHERE item_guid = ? AND "; |
|
| 48 | + $filter = [$item_guid]; |
|
| 49 | + if ($user_id === null){ |
|
| 50 | + $q .= 'user_id is null'; |
|
| 51 | + } |
|
| 52 | + else { |
|
| 53 | + $q .= 'user_id = ? '; |
|
| 54 | + $filter[] = $user_id; |
|
| 55 | + } |
|
| 56 | + return $this->findEntity($q, $filter); |
|
| 57 | + } |
|
| 58 | 58 | |
| 59 | - /** |
|
| 60 | - * Update the acl for a given item guid |
|
| 61 | - * @param $user_id |
|
| 62 | - * @param $item_guid |
|
| 63 | - * @return SharingACL |
|
| 64 | - */ |
|
| 65 | - public function updateCredentialACL(SharingACL $sharingACL) { |
|
| 66 | - return $this->update($sharingACL); |
|
| 67 | - } |
|
| 59 | + /** |
|
| 60 | + * Update the acl for a given item guid |
|
| 61 | + * @param $user_id |
|
| 62 | + * @param $item_guid |
|
| 63 | + * @return SharingACL |
|
| 64 | + */ |
|
| 65 | + public function updateCredentialACL(SharingACL $sharingACL) { |
|
| 66 | + return $this->update($sharingACL); |
|
| 67 | + } |
|
| 68 | 68 | |
| 69 | - /** |
|
| 70 | - * Gets the currently accepted share requests from the given user for the given vault guid |
|
| 71 | - * @param $user_id |
|
| 72 | - * @param $vault_id |
|
| 73 | - * @return SharingACL[] |
|
| 74 | - */ |
|
| 75 | - public function getCredentialAclList($item_guid) { |
|
| 76 | - $q = "SELECT * FROM ". self::TABLE_NAME ." WHERE item_guid = ?"; |
|
| 77 | - return $this->findEntities($q, [$item_guid]); |
|
| 78 | - } |
|
| 69 | + /** |
|
| 70 | + * Gets the currently accepted share requests from the given user for the given vault guid |
|
| 71 | + * @param $user_id |
|
| 72 | + * @param $vault_id |
|
| 73 | + * @return SharingACL[] |
|
| 74 | + */ |
|
| 75 | + public function getCredentialAclList($item_guid) { |
|
| 76 | + $q = "SELECT * FROM ". self::TABLE_NAME ." WHERE item_guid = ?"; |
|
| 77 | + return $this->findEntities($q, [$item_guid]); |
|
| 78 | + } |
|
| 79 | 79 | |
| 80 | - public function deleteShareACL(SharingACL $ACL){ |
|
| 81 | - return $this->delete($ACL); |
|
| 80 | + public function deleteShareACL(SharingACL $ACL){ |
|
| 81 | + return $this->delete($ACL); |
|
| 82 | 82 | } |
| 83 | 83 | } |
| 84 | 84 | \ No newline at end of file |