Change AdminLog logging request behavior, fixing issue #145

This commit is contained in:
Manuel Raynaud
2013-12-14 14:16:45 +01:00
parent aa66067f0e
commit f4c5f23d00
4 changed files with 22 additions and 4 deletions

View File

@@ -99,7 +99,7 @@ class SessionController extends BaseAdminController
$this->getSecurityContext()->setAdminUser($user);
// Log authentication success
AdminLog::append("admin", "LOGIN", "Authentication successful", $request, $user);
AdminLog::append("admin", "LOGIN", "Authentication successful", $request, $user, false);
/**
* FIXME: we have tou find a way to send cookie

View File

@@ -147,7 +147,7 @@ abstract class BaseController extends ContainerAware
}
/**
* @return \Symfony\Component\HttpFoundation\Request
* @return \Thelia\Core\HttpFoundation\Request
*/
protected function getRequest()
{

View File

@@ -34,6 +34,11 @@ use Symfony\Component\HttpFoundation\Request as BaseRequest;
class Request extends BaseRequest
{
private $excludeContent = array(
'username',
'password'
);
public function getProductId()
{
return $this->get("product_id");
@@ -66,4 +71,17 @@ class Request extends BaseRequest
{
return parent::getSession();
}
public function toString($withContent = true)
{
$string =
sprintf('%s %s %s', $this->getMethod(), $this->getRequestUri(), $this->server->get('SERVER_PROTOCOL'))."\r\n".
$this->headers."\r\n";
if (true === $withContent) {
$string .= $this->getContent();
}
return $string;
}
}

View File

@@ -18,7 +18,7 @@ class AdminLog extends BaseAdminLog
* @param Request $request
* @param Base\Admin $adminUser
*/
public static function append($resource, $action, $message, Request $request, BaseAdminUser $adminUser = null) {
public static function append($resource, $action, $message, Request $request, BaseAdminUser $adminUser = null, $withRequestContent = true) {
$log = new AdminLog();
@@ -29,7 +29,7 @@ class AdminLog extends BaseAdminLog
->setResource($resource)
->setAction($action)
->setMessage($message)
->setRequest($request->__toString())
->setRequest($request->toString($withRequestContent))
;
try {