function show($id, Request $request, Application $app) { $this->build($id, $request, $app); $form = $app['form.factory']->create(new ActionForm()); if ('POST' == $request->getMethod()) { $form->bind($request); if ($form->isValid()) { $data = $form->getData(); $action = new ActionParser($data['action']); $uar = new UserAccountRepository(); if ($action->getCommand() == 'editor' && $action->getParam(0) == 'yes') { $this->parameters['user']->setIsEditor(true); $uar->edit($this->parameters['user']); return $app->redirect('/sysadmin/user/' . $this->parameters['user']->getId()); } else { if ($action->getCommand() == 'editor' && $action->getParam(0) == 'no') { $this->parameters['user']->setIsEditor(false); $uar->edit($this->parameters['user']); return $app->redirect('/sysadmin/user/' . $this->parameters['user']->getId()); } else { if ($action->getCommand() == 'sysadmin' && $action->getParam(0) == 'yes') { $this->parameters['user']->setIsSystemAdmin(true); $uar->edit($this->parameters['user']); return $app->redirect('/sysadmin/user/' . $this->parameters['user']->getId()); } else { if ($action->getCommand() == 'sysadmin' && $action->getParam(0) == 'no') { $this->parameters['user']->setIsSystemAdmin(false); $uar->edit($this->parameters['user']); return $app->redirect('/sysadmin/user/' . $this->parameters['user']->getId()); } else { if ($action->getCommand() == 'verifyemail') { $uar->verifyEmail($this->parameters['user']); return $app->redirect('/sysadmin/user/' . $this->parameters['user']->getId()); } else { if ($action->getCommand() == 'resendverificationemail' && !$this->parameters['user']->getIsEmailVerified()) { $repo = new UserAccountVerifyEmailRepository(); $verify = $repo->create($this->parameters['user']); $verify->sendEmail($app, $this->parameters['user']); $app['flashmessages']->addMessage('Sent'); return $app->redirect('/sysadmin/user/' . $this->parameters['user']->getId()); } else { if ($action->getCommand() == 'close') { $uar->systemAdminShuts($this->parameters['user'], $app['currentUser'], $action->getParam(0)); return $app->redirect('/sysadmin/user/' . $this->parameters['user']->getId()); } else { if ($action->getCommand() == 'open') { $uar->systemAdminOpens($this->parameters['user'], $app['currentUser']); return $app->redirect('/sysadmin/user/' . $this->parameters['user']->getId()); } else { if ($action->getCommand() == 'email' && filter_var($action->getParam(0), FILTER_VALIDATE_EMAIL)) { $this->parameters['user']->setEmail($action->getParam(0)); $uar->editEmail($this->parameters['user']); return $app->redirect('/sysadmin/user/' . $this->parameters['user']->getId()); } } } } } } } } } } } $this->parameters['form'] = $form->createView(); return $app['twig']->render('sysadmin/user/show.html.twig', $this->parameters); }