Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/server.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/apps
diff options
context:
space:
mode:
authorVincent Petry <vincent@nextcloud.com>2022-03-11 13:55:01 +0300
committerGitHub <noreply@github.com>2022-03-11 13:55:01 +0300
commitcec00df21c8d212c4eb07836972d2ac73aa1b59c (patch)
tree215ad0281b5c8f2c9fbd8ab773c2556464473213 /apps
parent2cf0edf03ce02e4a813abce262a4f60abaab4855 (diff)
parent50ccf7e2cff8dfe6345d32e5c3b69a544eef52ea (diff)
Merge pull request #31519 from nextcloud/bugfix/noid/fix-occ-user-add-apppassword
Fix occ user:add-app-password
Diffstat (limited to 'apps')
-rw-r--r--apps/settings/lib/Activity/Provider.php6
-rw-r--r--apps/settings/lib/Listener/AppPasswordCreatedActivityListener.php8
2 files changed, 12 insertions, 2 deletions
diff --git a/apps/settings/lib/Activity/Provider.php b/apps/settings/lib/Activity/Provider.php
index 2d5c858f5e8..a6314fdfb11 100644
--- a/apps/settings/lib/Activity/Provider.php
+++ b/apps/settings/lib/Activity/Provider.php
@@ -115,7 +115,11 @@ class Provider implements IProvider {
} elseif ($event->getSubject() === self::EMAIL_CHANGED) {
$subject = $this->l->t('Your email address was changed by an administrator');
} elseif ($event->getSubject() === self::APP_TOKEN_CREATED) {
- $subject = $this->l->t('You created app password "{token}"');
+ if ($event->getAffectedUser() === $event->getAuthor()) {
+ $subject = $this->l->t('You created app password "{token}"');
+ } else {
+ $subject = $this->l->t('An administrator created app password "{token}"');
+ }
} elseif ($event->getSubject() === self::APP_TOKEN_DELETED) {
$subject = $this->l->t('You deleted app password "{token}"');
} elseif ($event->getSubject() === self::APP_TOKEN_RENAMED) {
diff --git a/apps/settings/lib/Listener/AppPasswordCreatedActivityListener.php b/apps/settings/lib/Listener/AppPasswordCreatedActivityListener.php
index 3eec74f4604..587d626ef97 100644
--- a/apps/settings/lib/Listener/AppPasswordCreatedActivityListener.php
+++ b/apps/settings/lib/Listener/AppPasswordCreatedActivityListener.php
@@ -31,6 +31,7 @@ use OCA\Settings\Activity\Provider;
use OCP\Activity\IManager as IActivityManager;
use OCP\EventDispatcher\Event;
use OCP\EventDispatcher\IEventListener;
+use OCP\IUserSession;
use Psr\Log\LoggerInterface;
/**
@@ -40,12 +41,17 @@ class AppPasswordCreatedActivityListener implements IEventListener {
/** @var IActivityManager */
private $activityManager;
+ /** @var IUserSession */
+ private $userSession;
+
/** @var LoggerInterface */
private $logger;
public function __construct(IActivityManager $activityManager,
+ IUserSession $userSession,
LoggerInterface $logger) {
$this->activityManager = $activityManager;
+ $this->userSession = $userSession;
$this->logger = $logger;
}
@@ -58,7 +64,7 @@ class AppPasswordCreatedActivityListener implements IEventListener {
$activity->setApp('settings')
->setType('security')
->setAffectedUser($event->getToken()->getUID())
- ->setAuthor($event->getToken()->getUID())
+ ->setAuthor($this->userSession->getUser() ? $this->userSession->getUser()->getUID() : '')
->setSubject(Provider::APP_TOKEN_CREATED, ['name' => $event->getToken()->getName()])
->setObject('app_token', $event->getToken()->getId());