diff options
author | Lukas Reschke <lukas@statuscode.ch> | 2014-05-28 19:06:47 +0200 |
---|---|---|
committer | Lukas Reschke <lukas@statuscode.ch> | 2014-05-28 19:06:47 +0200 |
commit | ce9d5df6df37e51587dcde638086dfe501892b56 (patch) | |
tree | 3a5e9a2cb22ede6c9c21f9847f05ec2ec7dd5826 /core | |
parent | 6d57e4c491aa8e09ff20f7ef9e2fb5618f75de48 (diff) | |
parent | 3a21c3e2f46fd01cbbab237d36a3e8abbbca3cca (diff) | |
download | nextcloud-server-ce9d5df6df37e51587dcde638086dfe501892b56.tar.gz nextcloud-server-ce9d5df6df37e51587dcde638086dfe501892b56.zip |
Merge pull request #8681 from owncloud/logintimestamp
Record login timestamp per user. Required for new user managament.
Diffstat (limited to 'core')
-rw-r--r-- | core/command/user/lastseen.php | 47 | ||||
-rw-r--r-- | core/register_command.php | 1 |
2 files changed, 48 insertions, 0 deletions
diff --git a/core/command/user/lastseen.php b/core/command/user/lastseen.php new file mode 100644 index 00000000000..7a8db013e3a --- /dev/null +++ b/core/command/user/lastseen.php @@ -0,0 +1,47 @@ +<?php +/** + * Copyright (c) 2014 Arthur Schiwon <blizzz@owncloud.com> + * This file is licensed under the Affero General Public License version 3 or + * later. + * See the COPYING-README file. + */ + +namespace OC\Core\Command\User; + +use Symfony\Component\Console\Command\Command; +use Symfony\Component\Console\Input\InputInterface; +use Symfony\Component\Console\Output\OutputInterface; +use Symfony\Component\Console\Input\InputArgument; + +class LastSeen extends Command { + protected function configure() { + $this + ->setName('user:lastseen') + ->setDescription('shows when the user was logged it last time') + ->addArgument( + 'uid', + InputArgument::REQUIRED, + 'the username' + ); + } + + protected function execute(InputInterface $input, OutputInterface $output) { + $userManager = \OC::$server->getUserManager(); + $user = $userManager->get($input->getArgument('uid')); + if(is_null($user)) { + $output->writeln('User does not exist'); + return; + } + + $lastLogin = $user->getLastLogin(); + if($lastLogin === 0) { + $output->writeln('User ' . $user->getUID() . + ' has never logged in, yet.'); + } else { + $date = new \DateTime(); + $date->setTimestamp($lastLogin); + $output->writeln($user->getUID() . + '`s last login: ' . $date->format('d.m.Y H:i')); + } + } +} diff --git a/core/register_command.php b/core/register_command.php index f1361c859fc..dfb5134eff9 100644 --- a/core/register_command.php +++ b/core/register_command.php @@ -17,3 +17,4 @@ $application->add(new OC\Core\Command\App\Enable()); $application->add(new OC\Core\Command\App\ListApps()); $application->add(new OC\Core\Command\Maintenance\Repair(new \OC\Repair())); $application->add(new OC\Core\Command\User\Report()); +$application->add(new OC\Core\Command\User\LastSeen()); |