mirror of
https://github.com/nextcloud/passman.git
synced 2025-11-13 07:31:16 +08:00
catch error for using the same source and destination account in the credential mover
This commit is contained in:
parent
1e15710bdb
commit
11d774405b
3 changed files with 44 additions and 33 deletions
|
|
@ -79,6 +79,8 @@ class AdminController extends ApiController {
|
||||||
}
|
}
|
||||||
|
|
||||||
public function moveCredentials($source_account, $destination_account) {
|
public function moveCredentials($source_account, $destination_account) {
|
||||||
|
$succeed = false;
|
||||||
|
if ($source_account != $destination_account){
|
||||||
$vaults = $this->vaultService->getByUser($source_account);
|
$vaults = $this->vaultService->getByUser($source_account);
|
||||||
foreach ($vaults as $vault) {
|
foreach ($vaults as $vault) {
|
||||||
$credentials = $this->credentialService->getCredentialsByVaultId($vault->getId(), $source_account);
|
$credentials = $this->credentialService->getCredentialsByVaultId($vault->getId(), $source_account);
|
||||||
|
|
@ -110,7 +112,10 @@ class AdminController extends ApiController {
|
||||||
$file->setUserId($destination_account);
|
$file->setUserId($destination_account);
|
||||||
$this->fileService->updateFile($file);
|
$this->fileService->updateFile($file);
|
||||||
}
|
}
|
||||||
return new JSONResponse(array('success' => true));
|
$succeed = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
return new JSONResponse(array('success' => $succeed));
|
||||||
}
|
}
|
||||||
|
|
||||||
public function listRequests(){
|
public function listRequests(){
|
||||||
|
|
|
||||||
|
|
@ -174,12 +174,17 @@ $(document).ready(function () {
|
||||||
$(self).html('<i class="fa fa-spinner fa-spin"></i> ' + OC.L10N.translate('passman', 'Moving') + '...');
|
$(self).html('<i class="fa fa-spinner fa-spin"></i> ' + OC.L10N.translate('passman', 'Moving') + '...');
|
||||||
if (accountMover.source_account && accountMover.destination_account) {
|
if (accountMover.source_account && accountMover.destination_account) {
|
||||||
$.post(OC.generateUrl('apps/passman/admin/move'), accountMover, function (data) {
|
$.post(OC.generateUrl('apps/passman/admin/move'), accountMover, function (data) {
|
||||||
if (data.success) {
|
|
||||||
$(self).removeAttr('disabled');
|
$(self).removeAttr('disabled');
|
||||||
$(self).html('Move');
|
$(self).html('Move');
|
||||||
$('#moveStatus').fadeIn();
|
if (data.success) {
|
||||||
|
$('#moveStatusSucceeded').fadeIn();
|
||||||
setTimeout(function () {
|
setTimeout(function () {
|
||||||
$('#moveStatus').fadeOut();
|
$('#moveStatusSucceeded').fadeOut();
|
||||||
|
}, 3500);
|
||||||
|
} else {
|
||||||
|
$('#moveStatusFailed').fadeIn();
|
||||||
|
setTimeout(function () {
|
||||||
|
$('#moveStatusFailed').fadeOut();
|
||||||
}, 3500);
|
}, 3500);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
|
||||||
|
|
@ -131,7 +131,8 @@ style('passman', 'vendor/font-awesome/font-awesome.min');
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
<button class="success" id="move_credentials">Move</button>
|
<button class="success" id="move_credentials">Move</button>
|
||||||
<span id="moveStatus" style="display: none;"><?php p($l->t('Credentials moved!')); ?></span>
|
<span id="moveStatusSucceeded" style="display: none;"><?php p($l->t('Credentials moved!')); ?></span>
|
||||||
|
<span id="moveStatusFailed" style="display: none;"><?php p($l->t('An error occurred!')); ?></span>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<div id="tabs-3">
|
<div id="tabs-3">
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue