Bolt\Controller\Backend\Users::profile PHP Method

profile() public method

User profile page route.
public profile ( Request $request ) : TemplateResponse | RedirectResponse
$request Symfony\Component\HttpFoundation\Request The Symfony Request
return Bolt\Response\TemplateResponse | Symfony\Component\HttpFoundation\RedirectResponse
    public function profile(Request $request)
    {
        $user = $this->getUser();
        // Get the form
        $form = $this->getUserForm($user, false);
        // Set the validation
        $form = $this->setUserFormValidation($form, false);
        /** @var \Symfony\Component\Form\Form */
        $form = $form->getForm();
        // Check if the form was POST-ed, and valid. If so, store the user.
        if ($request->isMethod('POST')) {
            $form->submit($request->get($form->getName()));
            if ($form->isValid()) {
                $this->app['logger.system']->info(Trans::__('page.edit-users.log.user-updated', ['%user%' => $user->getDisplayname()]), ['event' => 'security']);
                $user = new Entity\Users($form->getData());
                if ($this->getRepository('Bolt\\Storage\\Entity\\Users')->save($user)) {
                    $this->flashes()->success(Trans::__('page.edit-users.message.user-saved', ['%user%' => $user->getDisplayname()]));
                } else {
                    $this->flashes()->error(Trans::__('page.edit-users.message.saving-user', ['%user%' => $user->getDisplayname()]));
                }
                return $this->redirectToRoute('profile');
            }
        }
        $context = ['kind' => 'profile', 'form' => $form->createView(), 'note' => '', 'displayname' => $user->getDisplayname()];
        return $this->render('@bolt/edituser/edituser.twig', $context);
    }