diff --git a/src/Controller/ModuleController.php b/src/Controller/ModuleController.php index 2a0abb0..6d8d5cc 100644 --- a/src/Controller/ModuleController.php +++ b/src/Controller/ModuleController.php @@ -228,4 +228,36 @@ class ModuleController extends AbstractController ] ); } + + public function user( + Request $request + ): Response + { + // Check user session exist + $username = false; + + if (!empty($request->cookies->get('KEVACHAT_SESSION')) && preg_match('/[A-z0-9]{32}/', $request->cookies->get('KEVACHAT_SESSION'))) + { + // Connect memcached + $memcached = new \Memcached(); + $memcached->addServer( + $this->getParameter('app.memcached.host'), + $this->getParameter('app.memcached.port') + ); + + // Check username exist for this session + if ($value = $memcached->get($request->cookies->get('KEVACHAT_SESSION'))) + { + $username = $value; + } + } + + return $this->render( + 'default/module/user.html.twig', + [ + 'username' => $username, + 'request' => $request + ] + ); + } } \ No newline at end of file diff --git a/templates/default/module/user.html.twig b/templates/default/module/user.html.twig new file mode 100644 index 0000000..4f6e5cb --- /dev/null +++ b/templates/default/module/user.html.twig @@ -0,0 +1,9 @@ +
+ {% if username %} + @{{ username }} + | + {{ 'logout' | trans }} + {% else %} + {{ 'register' | trans }} + {% endif %} +
\ No newline at end of file diff --git a/templates/default/user/list.html.twig b/templates/default/user/list.html.twig index f44ce53..2dfd6c7 100644 --- a/templates/default/user/list.html.twig +++ b/templates/default/user/list.html.twig @@ -33,4 +33,16 @@ {% endif %} +{% endblock %} +{% block footer_content %} + {{ + render( + controller( + 'App\\Controller\\ModuleController::user', + { + request: request + } + ) + ) + }} {% endblock %} \ No newline at end of file