mirror of
https://github.com/nextcloud/server.git
synced 2026-04-20 22:00:39 -04:00
Extract updateSharePasswordIfNeeded function
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
This commit is contained in:
parent
51e658da2a
commit
faea890b87
1 changed files with 30 additions and 22 deletions
|
|
@ -715,16 +715,7 @@ class Manager implements IManager {
|
|||
} else if ($share->getShareType() === \OCP\Share::SHARE_TYPE_LINK) {
|
||||
$this->linkCreateChecks($share);
|
||||
|
||||
// Password updated.
|
||||
if ($share->getPassword() !== $originalShare->getPassword()) {
|
||||
//Verify the password
|
||||
$this->verifyPassword($share->getPassword());
|
||||
|
||||
// If a password is set. Hash it!
|
||||
if ($share->getPassword() !== null) {
|
||||
$share->setPassword($this->hasher->hash($share->getPassword()));
|
||||
}
|
||||
}
|
||||
$this->updateSharePasswordIfNeeded($share, $originalShare);
|
||||
|
||||
if ($share->getExpirationDate() != $originalShare->getExpirationDate()) {
|
||||
//Verify the expiration date
|
||||
|
|
@ -732,18 +723,9 @@ class Manager implements IManager {
|
|||
$expirationDateUpdated = true;
|
||||
}
|
||||
} else if ($share->getShareType() === \OCP\Share::SHARE_TYPE_EMAIL) {
|
||||
$plainTextPassword = null;
|
||||
|
||||
// Password updated.
|
||||
if ($share->getPassword() !== $originalShare->getPassword()) {
|
||||
//Verify the password
|
||||
$this->verifyPassword($share->getPassword());
|
||||
|
||||
// If a password is set. Hash it!
|
||||
if ($share->getPassword() !== null) {
|
||||
$plainTextPassword = $share->getPassword();
|
||||
$share->setPassword($this->hasher->hash($plainTextPassword));
|
||||
}
|
||||
$plainTextPassword = $share->getPassword();
|
||||
if (!$this->updateSharePasswordIfNeeded($share, $originalShare)) {
|
||||
$plainTextPassword = null;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -796,6 +778,32 @@ class Manager implements IManager {
|
|||
return $share;
|
||||
}
|
||||
|
||||
/**
|
||||
* Updates the password of the given share if it is not the same as the
|
||||
* password of the original share.
|
||||
*
|
||||
* @param \OCP\Share\IShare $share the share to update its password.
|
||||
* @param \OCP\Share\IShare $originalShare the original share to compare its
|
||||
* password with.
|
||||
* @return boolean whether the password was updated or not.
|
||||
*/
|
||||
private function updateSharePasswordIfNeeded(\OCP\Share\IShare $share, \OCP\Share\IShare $originalShare) {
|
||||
// Password updated.
|
||||
if ($share->getPassword() !== $originalShare->getPassword()) {
|
||||
//Verify the password
|
||||
$this->verifyPassword($share->getPassword());
|
||||
|
||||
// If a password is set. Hash it!
|
||||
if ($share->getPassword() !== null) {
|
||||
$share->setPassword($this->hasher->hash($share->getPassword()));
|
||||
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
* Delete all the children of this share
|
||||
* FIXME: remove once https://github.com/owncloud/core/pull/21660 is in
|
||||
|
|
|
|||
Loading…
Reference in a new issue