| @@ -38,50 +38,50 @@ | ||
| 38 | 38 | class SharingACL extends PermissionEntity implements \JsonSerializable | 
| 39 | 39 |  { | 
| 40 | 40 | |
| 41 | - protected | |
| 42 | - $itemId, | |
| 43 | - $itemGuid, | |
| 44 | - $userId, | |
| 45 | - $created, | |
| 46 | - $expire, | |
| 41 | + protected | |
| 42 | + $itemId, | |
| 43 | + $itemGuid, | |
| 44 | + $userId, | |
| 45 | + $created, | |
| 46 | + $expire, | |
| 47 | 47 | $expireViews, | 
| 48 | - $permissions, | |
| 49 | - $vaultId, | |
| 50 | - $vaultGuid, | |
| 51 | - $sharedKey; | |
| 48 | + $permissions, | |
| 49 | + $vaultId, | |
| 50 | + $vaultGuid, | |
| 51 | + $sharedKey; | |
| 52 | 52 | |
| 53 | 53 | |
| 54 | -    public function __construct() { | |
| 55 | - // add types in constructor | |
| 56 | -        $this->addType('itemId', 'integer'); | |
| 57 | -        $this->addType('created', 'integer'); | |
| 58 | -        $this->addType('expire', 'integer'); | |
| 59 | -        $this->addType('expireViews', 'integer'); | |
| 60 | -        $this->addType('permissions', 'integer'); | |
| 61 | - } | |
| 54 | +	public function __construct() { | |
| 55 | + // add types in constructor | |
| 56 | +		$this->addType('itemId', 'integer'); | |
| 57 | +		$this->addType('created', 'integer'); | |
| 58 | +		$this->addType('expire', 'integer'); | |
| 59 | +		$this->addType('expireViews', 'integer'); | |
| 60 | +		$this->addType('permissions', 'integer'); | |
| 61 | + } | |
| 62 | 62 | |
| 63 | - /** | |
| 64 | - * Specify data which should be serialized to JSON | |
| 65 | - * @link http://php.net/manual/en/jsonserializable.jsonserialize.php | |
| 66 | - * @return mixed data which can be serialized by <b>json_encode</b>, | |
| 67 | - * which is a value of any type other than a resource. | |
| 68 | - * @since 5.4.0 | |
| 69 | - */ | |
| 70 | - function jsonSerialize() | |
| 71 | -    { | |
| 72 | - return [ | |
| 73 | - 'acl_id' => $this->getId(), | |
| 74 | - 'item_id' => $this->getItemId(), | |
| 75 | - 'item_guid' => $this->getItemGuid(), | |
| 76 | - 'user_id' => $this->getUserId(), | |
| 77 | - 'created' => $this->getCreated(), | |
| 78 | - 'expire' => $this->getExpire(), | |
| 79 | - 'expire_views' => $this->getExpireViews(), | |
| 80 | - 'permissions' => $this->getPermissions(), | |
| 81 | - 'vault_id' => $this->getVaultId(), | |
| 82 | - 'vault_guid' => $this->getVaultGuid(), | |
| 83 | - 'shared_key' => $this->getSharedKey(), | |
| 84 | - 'pending' => false, | |
| 85 | - ]; | |
| 86 | - } | |
| 63 | + /** | |
| 64 | + * Specify data which should be serialized to JSON | |
| 65 | + * @link http://php.net/manual/en/jsonserializable.jsonserialize.php | |
| 66 | + * @return mixed data which can be serialized by <b>json_encode</b>, | |
| 67 | + * which is a value of any type other than a resource. | |
| 68 | + * @since 5.4.0 | |
| 69 | + */ | |
| 70 | + function jsonSerialize() | |
| 71 | +	{ | |
| 72 | + return [ | |
| 73 | + 'acl_id' => $this->getId(), | |
| 74 | + 'item_id' => $this->getItemId(), | |
| 75 | + 'item_guid' => $this->getItemGuid(), | |
| 76 | + 'user_id' => $this->getUserId(), | |
| 77 | + 'created' => $this->getCreated(), | |
| 78 | + 'expire' => $this->getExpire(), | |
| 79 | + 'expire_views' => $this->getExpireViews(), | |
| 80 | + 'permissions' => $this->getPermissions(), | |
| 81 | + 'vault_id' => $this->getVaultId(), | |
| 82 | + 'vault_guid' => $this->getVaultGuid(), | |
| 83 | + 'shared_key' => $this->getSharedKey(), | |
| 84 | + 'pending' => false, | |
| 85 | + ]; | |
| 86 | + } | |
| 87 | 87 | } | 
| 88 | 88 | \ No newline at end of file | 
| @@ -30,11 +30,11 @@ discard block | ||
| 30 | 30 |  	public function getRevisions($credential_id, $user_id = null) { | 
| 31 | 31 | $sql = 'SELECT * FROM `*PREFIX*passman_revisions` ' . | 
| 32 | 32 | 'WHERE `credential_id` = ?'; | 
| 33 | - $params = [$credential_id]; | |
| 34 | -        if ($user_id !== null) { | |
| 35 | - $sql.= ' and `user_id` = ? '; | |
| 36 | - $params[] = $user_id; | |
| 37 | - } | |
| 33 | + $params = [$credential_id]; | |
| 34 | +		if ($user_id !== null) { | |
| 35 | + $sql.= ' and `user_id` = ? '; | |
| 36 | + $params[] = $user_id; | |
| 37 | + } | |
| 38 | 38 | return $this->findEntities($sql, $params); | 
| 39 | 39 | } | 
| 40 | 40 | |
| @@ -46,11 +46,11 @@ discard block | ||
| 46 | 46 |  	public function getRevision($revision_id, $user_id = null) { | 
| 47 | 47 | $sql = 'SELECT * FROM `*PREFIX*passman_revisions` ' . | 
| 48 | 48 | 'WHERE `id` = ?'; | 
| 49 | - $params = [$revision_id]; | |
| 50 | -        if ($user_id !== null) { | |
| 51 | - $sql.= ' and `user_id` = ? '; | |
| 52 | - $params[] = $user_id; | |
| 53 | - } | |
| 49 | + $params = [$revision_id]; | |
| 50 | +		if ($user_id !== null) { | |
| 51 | + $sql.= ' and `user_id` = ? '; | |
| 52 | + $params[] = $user_id; | |
| 53 | + } | |
| 54 | 54 | return $this->findEntity($sql, $params); | 
| 55 | 55 | } | 
| 56 | 56 | |
| @@ -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 | 
| @@ -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,60 +37,60 @@ | ||
| 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'); | |
| 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 | 56 |  		$this->addType('created', 'integer'); | 
| 57 | 57 |  		$this->addType('targetVaultId', 'integer'); | 
| 58 | - } | |
| 58 | + } | |
| 59 | 59 | |
| 60 | - /** | |
| 61 | - * Specify data which should be serialized to JSON | |
| 62 | - * @link http://php.net/manual/en/jsonserializable.jsonserialize.php | |
| 63 | - * @return mixed data which can be serialized by <b>json_encode</b>, | |
| 64 | - * which is a value of any type other than a resource. | |
| 65 | - * @since 5.4.0 | |
| 66 | - */ | |
| 67 | - function jsonSerialize() | |
| 68 | -    { | |
| 69 | - return [ | |
| 70 | - 'req_id' => $this->getId(), | |
| 71 | - 'item_id' => $this->getItemId(), | |
| 72 | - 'item_guid' => $this->getItemGuid(), | |
| 73 | - 'target_user_id' => $this->getTargetUserId(), | |
| 74 | - 'target_vault_id' => $this->getTargetVaultId(), | |
| 75 | - 'target_vault_guid' => $this->getTargetVaultGuid(), | |
| 76 | - 'from_user_id' => $this->getFromUserId(), | |
| 77 | - 'shared_key' => $this->getSharedKey(), | |
| 78 | - 'permissions' => $this->getPermissions(), | |
| 79 | - 'created' => $this->getCreated(), | |
| 80 | - ]; | |
| 81 | - } | |
| 60 | + /** | |
| 61 | + * Specify data which should be serialized to JSON | |
| 62 | + * @link http://php.net/manual/en/jsonserializable.jsonserialize.php | |
| 63 | + * @return mixed data which can be serialized by <b>json_encode</b>, | |
| 64 | + * which is a value of any type other than a resource. | |
| 65 | + * @since 5.4.0 | |
| 66 | + */ | |
| 67 | + function jsonSerialize() | |
| 68 | +	{ | |
| 69 | + return [ | |
| 70 | + 'req_id' => $this->getId(), | |
| 71 | + 'item_id' => $this->getItemId(), | |
| 72 | + 'item_guid' => $this->getItemGuid(), | |
| 73 | + 'target_user_id' => $this->getTargetUserId(), | |
| 74 | + 'target_vault_id' => $this->getTargetVaultId(), | |
| 75 | + 'target_vault_guid' => $this->getTargetVaultGuid(), | |
| 76 | + 'from_user_id' => $this->getFromUserId(), | |
| 77 | + 'shared_key' => $this->getSharedKey(), | |
| 78 | + 'permissions' => $this->getPermissions(), | |
| 79 | + 'created' => $this->getCreated(), | |
| 80 | + ]; | |
| 81 | + } | |
| 82 | 82 | |
| 83 | -    function asACLJson(){ | |
| 84 | - return [ | |
| 85 | - 'item_id' => $this->getItemId(), | |
| 86 | - 'item_guid' => $this->getItemGuid(), | |
| 87 | - 'user_id' => $this->getTargetUserId(), | |
| 88 | - 'created' => $this->getCreated(), | |
| 89 | - 'permissions' => $this->getPermissions(), | |
| 90 | - 'vault_id' => $this->getTargetVaultId(), | |
| 91 | - 'vault_guid' => $this->getTargetVaultGuid(), | |
| 92 | - 'shared_key' => $this->getSharedKey(), | |
| 93 | - 'pending' => true, | |
| 94 | - ]; | |
| 95 | - } | |
| 83 | +	function asACLJson(){ | |
| 84 | + return [ | |
| 85 | + 'item_id' => $this->getItemId(), | |
| 86 | + 'item_guid' => $this->getItemGuid(), | |
| 87 | + 'user_id' => $this->getTargetUserId(), | |
| 88 | + 'created' => $this->getCreated(), | |
| 89 | + 'permissions' => $this->getPermissions(), | |
| 90 | + 'vault_id' => $this->getTargetVaultId(), | |
| 91 | + 'vault_guid' => $this->getTargetVaultGuid(), | |
| 92 | + 'shared_key' => $this->getSharedKey(), | |
| 93 | + 'pending' => true, | |
| 94 | + ]; | |
| 95 | + } | |
| 96 | 96 | } | 
| 97 | 97 | \ No newline at end of file | 
| @@ -30,66 +30,66 @@ | ||
| 30 | 30 | use OCA\Passman\Utility\Utils; | 
| 31 | 31 | |
| 32 | 32 |  class SharingACLMapper extends Mapper { | 
| 33 | - const TABLE_NAME = '*PREFIX*passman_sharing_acl'; | |
| 33 | + const TABLE_NAME = '*PREFIX*passman_sharing_acl'; | |
| 34 | 34 | |
| 35 | -    public function __construct(IDBConnection $db) { | |
| 36 | - parent::__construct($db, 'passman_sharing_acl'); | |
| 37 | - } | |
| 35 | +	public function __construct(IDBConnection $db) { | |
| 36 | + parent::__construct($db, 'passman_sharing_acl'); | |
| 37 | + } | |
| 38 | 38 | |
| 39 | -    public function createACLEntry(SharingACL $acl){ | |
| 40 | - return $this->insert($acl); | |
| 41 | - } | |
| 39 | +	public function createACLEntry(SharingACL $acl){ | |
| 40 | + return $this->insert($acl); | |
| 41 | + } | |
| 42 | 42 | |
| 43 | - /** | |
| 44 | - * Gets the currently accepted share requests from the given user for the given vault guid | |
| 45 | - * @param $user_id | |
| 46 | - * @param $vault_guid | |
| 47 | - * @return SharingACL[] | |
| 48 | - */ | |
| 49 | -    public function getVaultEntries($user_id, $vault_guid) { | |
| 50 | - $q = "SELECT * FROM ". self::TABLE_NAME ." WHERE user_id = ? AND vault_guid = ?"; | |
| 51 | - return $this->findEntities($q, [$user_id, $vault_guid]); | |
| 52 | - } | |
| 43 | + /** | |
| 44 | + * Gets the currently accepted share requests from the given user for the given vault guid | |
| 45 | + * @param $user_id | |
| 46 | + * @param $vault_guid | |
| 47 | + * @return SharingACL[] | |
| 48 | + */ | |
| 49 | +	public function getVaultEntries($user_id, $vault_guid) { | |
| 50 | + $q = "SELECT * FROM ". self::TABLE_NAME ." WHERE user_id = ? AND vault_guid = ?"; | |
| 51 | + return $this->findEntities($q, [$user_id, $vault_guid]); | |
| 52 | + } | |
| 53 | 53 | |
| 54 | - /** | |
| 55 | - * Gets the acl for a given item guid | |
| 56 | - * @param $user_id | |
| 57 | - * @param $item_guid | |
| 58 | - * @return SharingACL | |
| 59 | - */ | |
| 60 | -    public function getItemACL($user_id, $item_guid) { | |
| 61 | - $q = "SELECT * FROM " . self::TABLE_NAME . " WHERE item_guid = ? AND "; | |
| 62 | - $filter = [$item_guid]; | |
| 63 | - $q .= ($user_id === null) ? 'user_id is null' : 'user_id = ? '; | |
| 64 | -        if ($user_id !== null){ | |
| 54 | + /** | |
| 55 | + * Gets the acl for a given item guid | |
| 56 | + * @param $user_id | |
| 57 | + * @param $item_guid | |
| 58 | + * @return SharingACL | |
| 59 | + */ | |
| 60 | +	public function getItemACL($user_id, $item_guid) { | |
| 61 | + $q = "SELECT * FROM " . self::TABLE_NAME . " WHERE item_guid = ? AND "; | |
| 62 | + $filter = [$item_guid]; | |
| 63 | + $q .= ($user_id === null) ? 'user_id is null' : 'user_id = ? '; | |
| 64 | +		if ($user_id !== null){ | |
| 65 | 65 | $filter[] = $user_id; | 
| 66 | - } | |
| 66 | + } | |
| 67 | 67 | |
| 68 | - return $this->findEntity($q, $filter); | |
| 69 | - } | |
| 68 | + return $this->findEntity($q, $filter); | |
| 69 | + } | |
| 70 | 70 | |
| 71 | - /** | |
| 72 | - * Update the acl for a given item guid | |
| 73 | - * @param $user_id | |
| 74 | - * @param $item_guid | |
| 75 | - * @return SharingACL | |
| 76 | - */ | |
| 77 | -    public function updateCredentialACL(SharingACL $sharingACL) { | |
| 78 | - return $this->update($sharingACL); | |
| 79 | - } | |
| 71 | + /** | |
| 72 | + * Update the acl for a given item guid | |
| 73 | + * @param $user_id | |
| 74 | + * @param $item_guid | |
| 75 | + * @return SharingACL | |
| 76 | + */ | |
| 77 | +	public function updateCredentialACL(SharingACL $sharingACL) { | |
| 78 | + return $this->update($sharingACL); | |
| 79 | + } | |
| 80 | 80 | |
| 81 | - /** | |
| 82 | - * Gets the currently accepted share requests from the given user for the given vault guid | |
| 83 | - * @param $user_id | |
| 84 | - * @param $vault_id | |
| 85 | - * @return SharingACL[] | |
| 86 | - */ | |
| 87 | -    public function getCredentialAclList($item_guid) { | |
| 88 | - $q = "SELECT * FROM ". self::TABLE_NAME ." WHERE item_guid = ?"; | |
| 89 | - return $this->findEntities($q, [$item_guid]); | |
| 90 | - } | |
| 81 | + /** | |
| 82 | + * Gets the currently accepted share requests from the given user for the given vault guid | |
| 83 | + * @param $user_id | |
| 84 | + * @param $vault_id | |
| 85 | + * @return SharingACL[] | |
| 86 | + */ | |
| 87 | +	public function getCredentialAclList($item_guid) { | |
| 88 | + $q = "SELECT * FROM ". self::TABLE_NAME ." WHERE item_guid = ?"; | |
| 89 | + return $this->findEntities($q, [$item_guid]); | |
| 90 | + } | |
| 91 | 91 | |
| 92 | -    public function deleteShareACL(SharingACL $ACL){ | |
| 93 | - return $this->delete($ACL); | |
| 92 | +	public function deleteShareACL(SharingACL $ACL){ | |
| 93 | + return $this->delete($ACL); | |
| 94 | 94 | } | 
| 95 | 95 | } | 
| 96 | 96 | \ No newline at end of file | 
| @@ -24,10 +24,10 @@ discard block | ||
| 24 | 24 | namespace OCA\Passman\Utility; | 
| 25 | 25 | |
| 26 | 26 |  class Utils { | 
| 27 | - /** | |
| 28 | - * Gets the unix epoch UTC timestamp | |
| 29 | - * @return int | |
| 30 | - */ | |
| 27 | + /** | |
| 28 | + * Gets the unix epoch UTC timestamp | |
| 29 | + * @return int | |
| 30 | + */ | |
| 31 | 31 |  	public static function getTime() { | 
| 32 | 32 | return (new \DateTime())->getTimestamp(); | 
| 33 | 33 | } | 
| @@ -38,10 +38,10 @@ discard block | ||
| 38 | 38 | return microtime(true); | 
| 39 | 39 | } | 
| 40 | 40 | |
| 41 | - /** | |
| 42 | - * Generates a Globally Unique ID | |
| 43 | - * @return string | |
| 44 | - */ | |
| 41 | + /** | |
| 42 | + * Generates a Globally Unique ID | |
| 43 | + * @return string | |
| 44 | + */ | |
| 45 | 45 |  	public static function GUID() { | 
| 46 | 46 |  		if (function_exists('com_create_guid') === true) | 
| 47 | 47 |  		{ | 
| @@ -31,122 +31,122 @@ | ||
| 31 | 31 | use OCP\IDBConnection; | 
| 32 | 32 | |
| 33 | 33 |  class ShareRequestMapper extends Mapper { | 
| 34 | - const TABLE_NAME = 'passman_share_request'; | |
| 35 | - | |
| 36 | -    public function __construct(IDBConnection $db) { | |
| 37 | - parent::__construct($db, self::TABLE_NAME); | |
| 38 | - } | |
| 39 | - | |
| 40 | -    public function createRequest(ShareRequest $request){ | |
| 41 | - return $this->insert($request); | |
| 42 | - } | |
| 43 | - | |
| 44 | - /** | |
| 45 | - * Obtains a request by the given item and vault GUID pair | |
| 46 | - * @param $item_guid | |
| 47 | - * @param $target_vault_guid | |
| 48 | - * @return ShareRequest | |
| 49 | - */ | |
| 50 | -    public function getRequestByItemAndVaultGuid($item_guid, $target_vault_guid){ | |
| 51 | - $q = "SELECT * FROM *PREFIX*" . self::TABLE_NAME . " WHERE item_guid = ? AND target_vault_guid = ?"; | |
| 52 | - return $this->findEntity($q, [$item_guid, $target_vault_guid]); | |
| 53 | - } | |
| 54 | - | |
| 55 | - /** | |
| 56 | - * Get shared items for the given item_guid | |
| 57 | - * @param $item_guid | |
| 58 | - * @return ShareRequest[] | |
| 59 | - */ | |
| 60 | -    public function getRequestsByItemGuidGroupedByUser($item_guid){ | |
| 61 | -    	if (strtolower($this->db->getDatabasePlatform()->getName()) === 'mysql'){ | |
| 62 | -    		$this->db->executeQuery("SET sql_mode = '';"); | |
| 34 | + const TABLE_NAME = 'passman_share_request'; | |
| 35 | + | |
| 36 | +	public function __construct(IDBConnection $db) { | |
| 37 | + parent::__construct($db, self::TABLE_NAME); | |
| 38 | + } | |
| 39 | + | |
| 40 | +	public function createRequest(ShareRequest $request){ | |
| 41 | + return $this->insert($request); | |
| 42 | + } | |
| 43 | + | |
| 44 | + /** | |
| 45 | + * Obtains a request by the given item and vault GUID pair | |
| 46 | + * @param $item_guid | |
| 47 | + * @param $target_vault_guid | |
| 48 | + * @return ShareRequest | |
| 49 | + */ | |
| 50 | +	public function getRequestByItemAndVaultGuid($item_guid, $target_vault_guid){ | |
| 51 | + $q = "SELECT * FROM *PREFIX*" . self::TABLE_NAME . " WHERE item_guid = ? AND target_vault_guid = ?"; | |
| 52 | + return $this->findEntity($q, [$item_guid, $target_vault_guid]); | |
| 53 | + } | |
| 54 | + | |
| 55 | + /** | |
| 56 | + * Get shared items for the given item_guid | |
| 57 | + * @param $item_guid | |
| 58 | + * @return ShareRequest[] | |
| 59 | + */ | |
| 60 | +	public function getRequestsByItemGuidGroupedByUser($item_guid){ | |
| 61 | +		if (strtolower($this->db->getDatabasePlatform()->getName()) === 'mysql'){ | |
| 62 | +			$this->db->executeQuery("SET sql_mode = '';"); | |
| 63 | 63 | } | 
| 64 | - $q = "SELECT *, target_user_id FROM *PREFIX*" . self::TABLE_NAME . " WHERE item_guid = ? GROUP BY target_user_id;"; | |
| 65 | - return $this->findEntities($q, [$item_guid]); | |
| 66 | - } | |
| 67 | - | |
| 68 | - /** | |
| 69 | - * Deletes all pending requests for the given user to the given item | |
| 70 | - * @param $item_id The item ID | |
| 71 | - * @param $target_user_id The target user | |
| 72 | - * @return \PDOStatement The result of running the db query | |
| 73 | - */ | |
| 74 | -    public function cleanItemRequestsForUser($item_id, $target_user_id){ | |
| 64 | + $q = "SELECT *, target_user_id FROM *PREFIX*" . self::TABLE_NAME . " WHERE item_guid = ? GROUP BY target_user_id;"; | |
| 65 | + return $this->findEntities($q, [$item_guid]); | |
| 66 | + } | |
| 67 | + | |
| 68 | + /** | |
| 69 | + * Deletes all pending requests for the given user to the given item | |
| 70 | + * @param $item_id The item ID | |
| 71 | + * @param $target_user_id The target user | |
| 72 | + * @return \PDOStatement The result of running the db query | |
| 73 | + */ | |
| 74 | +	public function cleanItemRequestsForUser($item_id, $target_user_id){ | |
| 75 | 75 | $q = "DELETE FROM *PREFIX*" . self::TABLE_NAME . " WHERE item_id = ? AND target_user_id = ?"; | 
| 76 | 76 | $this->execute($q, [$item_id, $target_user_id]); | 
| 77 | - return $this->execute($q, [$item_id, $target_user_id]); | |
| 78 | - } | |
| 79 | - | |
| 80 | - /** | |
| 81 | - * Obtains all pending share requests for the given user ID | |
| 82 | - * @param $user_id | |
| 83 | - * @return ShareRequest[] | |
| 84 | - */ | |
| 85 | -    public function getUserPendingRequests($user_id){ | |
| 86 | - $q = "SELECT * FROM *PREFIX*". self::TABLE_NAME ." WHERE target_user_id = ?"; | |
| 87 | - return $this->findEntities($q, [$user_id]); | |
| 88 | - } | |
| 89 | - | |
| 90 | - /** | |
| 91 | - * Deletes the given share request | |
| 92 | - * @param ShareRequest $shareRequest Request to delete | |
| 93 | - * @return ShareRequest The deleted request | |
| 94 | - */ | |
| 95 | -    public function deleteShareRequest(ShareRequest $shareRequest){ | |
| 96 | - return $this->delete($shareRequest); | |
| 77 | + return $this->execute($q, [$item_id, $target_user_id]); | |
| 78 | + } | |
| 79 | + | |
| 80 | + /** | |
| 81 | + * Obtains all pending share requests for the given user ID | |
| 82 | + * @param $user_id | |
| 83 | + * @return ShareRequest[] | |
| 84 | + */ | |
| 85 | +	public function getUserPendingRequests($user_id){ | |
| 86 | + $q = "SELECT * FROM *PREFIX*". self::TABLE_NAME ." WHERE target_user_id = ?"; | |
| 87 | + return $this->findEntities($q, [$user_id]); | |
| 97 | 88 | } | 
| 98 | 89 | |
| 99 | - /** | |
| 100 | - * Gets a share request by it's unique incremental id | |
| 101 | - * @param $id | |
| 102 | - * @return ShareRequest | |
| 90 | + /** | |
| 91 | + * Deletes the given share request | |
| 92 | + * @param ShareRequest $shareRequest Request to delete | |
| 93 | + * @return ShareRequest The deleted request | |
| 94 | + */ | |
| 95 | +	public function deleteShareRequest(ShareRequest $shareRequest){ | |
| 96 | + return $this->delete($shareRequest); | |
| 97 | + } | |
| 98 | + | |
| 99 | + /** | |
| 100 | + * Gets a share request by it's unique incremental id | |
| 101 | + * @param $id | |
| 102 | + * @return ShareRequest | |
| 103 | 103 | * @throws DoesNotExistException | 
| 104 | - */ | |
| 104 | + */ | |
| 105 | 105 |  	public function getShareRequestById($id){ | 
| 106 | 106 | $q = "SELECT * FROM *PREFIX*" . self::TABLE_NAME . " WHERE id = ?"; | 
| 107 | 107 | return $this->findEntity($q, [$id]); | 
| 108 | 108 | } | 
| 109 | 109 | |
| 110 | - /** | |
| 111 | - * Gets all share requests by a given item GUID | |
| 112 | - * @param $item_guid | |
| 113 | - * @return ShareRequest[] | |
| 114 | - */ | |
| 110 | + /** | |
| 111 | + * Gets all share requests by a given item GUID | |
| 112 | + * @param $item_guid | |
| 113 | + * @return ShareRequest[] | |
| 114 | + */ | |
| 115 | 115 |  	public function getShareRequestsByItemGuid($item_guid){ | 
| 116 | 116 | $q = "SELECT * FROM *PREFIX*" . self::TABLE_NAME . " WHERE item_guid = ?"; | 
| 117 | 117 | return $this->findEntities($q, [$item_guid]); | 
| 118 | 118 | } | 
| 119 | 119 | |
| 120 | - /** | |
| 121 | - * Updates the given share request, | |
| 122 | - * @param ShareRequest $shareRequest | |
| 123 | - * @return ShareRequest | |
| 124 | - */ | |
| 120 | + /** | |
| 121 | + * Updates the given share request, | |
| 122 | + * @param ShareRequest $shareRequest | |
| 123 | + * @return ShareRequest | |
| 124 | + */ | |
| 125 | 125 |  	public function updateShareRequest(ShareRequest $shareRequest){ | 
| 126 | 126 | return $this->update($shareRequest); | 
| 127 | 127 | } | 
| 128 | 128 | |
| 129 | - /** | |
| 130 | - * Finds pending requests sent to the given user to the given item. | |
| 131 | - * @param $item_guid | |
| 132 | - * @param $user_id | |
| 133 | - * @return ShareRequest[] | |
| 134 | - */ | |
| 129 | + /** | |
| 130 | + * Finds pending requests sent to the given user to the given item. | |
| 131 | + * @param $item_guid | |
| 132 | + * @param $user_id | |
| 133 | + * @return ShareRequest[] | |
| 134 | + */ | |
| 135 | 135 |  	public function getPendingShareRequests($item_guid, $user_id){ | 
| 136 | 136 | $q = "SELECT * FROM *PREFIX*" . self::TABLE_NAME . " WHERE item_guid = ? and target_user_id= ?"; | 
| 137 | 137 | return $this->findEntities($q, [$item_guid, $user_id]); | 
| 138 | 138 | } | 
| 139 | 139 | |
| 140 | - /** | |
| 141 | - * Updates all pending requests with the given permissions | |
| 142 | - * @param $item_guid The item for which to update the requests | |
| 143 | - * @param $user_id The user for which to update the requests | |
| 144 | - * @param $permissions The new permissions to apply | |
| 145 | - * @return \PDOStatement The result of the operation | |
| 146 | - */ | |
| 140 | + /** | |
| 141 | + * Updates all pending requests with the given permissions | |
| 142 | + * @param $item_guid The item for which to update the requests | |
| 143 | + * @param $user_id The user for which to update the requests | |
| 144 | + * @param $permissions The new permissions to apply | |
| 145 | + * @return \PDOStatement The result of the operation | |
| 146 | + */ | |
| 147 | 147 |  	public function updatePendingRequestPermissions($item_guid, $user_id, $permissions){ | 
| 148 | - $q = "UPDATE *PREFIX*" . self::TABLE_NAME . " SET permissions = ? WHERE item_guid = ? AND target_user_id = ?"; | |
| 149 | - return $this->execute($q, [$permissions, $item_guid, $user_id]); | |
| 150 | - } | |
| 148 | + $q = "UPDATE *PREFIX*" . self::TABLE_NAME . " SET permissions = ? WHERE item_guid = ? AND target_user_id = ?"; | |
| 149 | + return $this->execute($q, [$permissions, $item_guid, $user_id]); | |
| 150 | + } | |
| 151 | 151 | |
| 152 | 152 | } | 
| 153 | 153 | \ No newline at end of file |