summaryrefslogtreecommitdiffstats
path: root/settings/Controller
diff options
context:
space:
mode:
authorDaniel Kesselberg <mail@danielkesselberg.de>2019-01-20 20:55:02 +0100
committerDaniel Kesselberg <mail@danielkesselberg.de>2019-02-01 21:37:30 +0100
commit86f0f867ec80ed47df80e66848936f1d0a1aa271 (patch)
tree3fce66718e8ea04d114b89f321ffadfc20a49834 /settings/Controller
parent0972a559120ce8ccfca89c869edd481683504b84 (diff)
downloadnextcloud-server-86f0f867ec80ed47df80e66848936f1d0a1aa271.tar.gz
nextcloud-server-86f0f867ec80ed47df80e66848936f1d0a1aa271.zip
Make app password description editable
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
Diffstat (limited to 'settings/Controller')
-rw-r--r--settings/Controller/AuthSettingsController.php14
1 files changed, 11 insertions, 3 deletions
diff --git a/settings/Controller/AuthSettingsController.php b/settings/Controller/AuthSettingsController.php
index 5f834b30134..46ef21cb2c6 100644
--- a/settings/Controller/AuthSettingsController.php
+++ b/settings/Controller/AuthSettingsController.php
@@ -31,10 +31,12 @@ use BadMethodCallException;
use OC\AppFramework\Http;
use OC\Authentication\Exceptions\InvalidTokenException;
use OC\Authentication\Exceptions\PasswordlessTokenException;
+use OC\Authentication\Token\DefaultToken;
use OC\Authentication\Token\IProvider;
use OC\Authentication\Token\IToken;
use OC\Settings\Activity\Provider;
use OCP\Activity\IManager;
+use OC\Authentication\Token\PublicKeyToken;
use OCP\AppFramework\Controller;
use OCP\AppFramework\Http\JSONResponse;
use OCP\ILogger;
@@ -112,11 +114,11 @@ class AuthSettingsController extends Controller {
return array_map(function (IToken $token) use ($sessionToken) {
$data = $token->jsonSerialize();
+ $data['canDelete'] = true;
+ $data['canRename'] = $token instanceof DefaultToken || $token instanceof PublicKeyToken;
if ($sessionToken->getId() === $token->getId()) {
$data['canDelete'] = false;
$data['current'] = true;
- } else {
- $data['canDelete'] = true;
}
return $data;
}, $tokens);
@@ -212,9 +214,10 @@ class AuthSettingsController extends Controller {
*
* @param int $id
* @param array $scope
+ * @param string $name
* @return array|JSONResponse
*/
- public function update($id, array $scope) {
+ public function update($id, array $scope, string $name) {
try {
$token = $this->findTokenByIdAndUser($id);
} catch (InvalidTokenException $e) {
@@ -225,6 +228,11 @@ class AuthSettingsController extends Controller {
'filesystem' => $scope['filesystem']
]);
+
+ if ($token instanceof DefaultToken || $token instanceof PublicKeyToken) {
+ $token->setName($name);
+ }
+
$this->tokenProvider->updateToken($token);
$this->publishActivity(Provider::APP_TOKEN_UPDATED, $token->getId(), $token->getName());
return [];