adding app/listeners/ActivityLog.php
This commit is contained in:
parent
5890337179
commit
8666e3b707
1 changed files with 68 additions and 0 deletions
68
app/listeners/ActivityLog.php
Normal file
68
app/listeners/ActivityLog.php
Normal file
|
|
@ -0,0 +1,68 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Listener;
|
||||||
|
|
||||||
|
use Phalcon\Mvc\User\Plugin,
|
||||||
|
Phalcon\Events\Event,
|
||||||
|
App\Model\Data\User,
|
||||||
|
App\Model\Data\ActivityLog as ActivityLogger,
|
||||||
|
Httpcb\Auth;
|
||||||
|
|
||||||
|
class ActivityLog extends Plugin
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* @var ActivityLogger
|
||||||
|
*/
|
||||||
|
protected $_table = null;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* On login event.
|
||||||
|
*
|
||||||
|
* @param Event $event
|
||||||
|
* @param Auth $auth
|
||||||
|
* @param $type
|
||||||
|
*/
|
||||||
|
public function onLogin(Event $event, Auth $auth, $type)
|
||||||
|
{
|
||||||
|
$this->_log($auth->getUser(), "Logged in ({$type})");
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param Event $event
|
||||||
|
* @param User $auth
|
||||||
|
*/
|
||||||
|
public function onPasswordCreated(Event $event, User $user)
|
||||||
|
{
|
||||||
|
$this->_log($user, "Created password");
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param Event $event
|
||||||
|
* @param User $auth
|
||||||
|
*/
|
||||||
|
public function onPasswordChanged(Event $event, User $user)
|
||||||
|
{
|
||||||
|
$this->_log($user, "Changed password");
|
||||||
|
}
|
||||||
|
|
||||||
|
protected function _log(User $user, $message)
|
||||||
|
{
|
||||||
|
$ip = (new \Phalcon\Http\Request())->getClientAddress();
|
||||||
|
|
||||||
|
$data = [
|
||||||
|
'user_id' => $user->getId(),
|
||||||
|
'ip' => $ip,
|
||||||
|
'message' => $message
|
||||||
|
];
|
||||||
|
|
||||||
|
return $this->_getLogger()->create($data);
|
||||||
|
}
|
||||||
|
|
||||||
|
protected function _getLogger()
|
||||||
|
{
|
||||||
|
if ($this->_table === null) {
|
||||||
|
$this->_table = new ActivityLogger();
|
||||||
|
}
|
||||||
|
return $this->_table;
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in a new issue