public function addAction() { $this->layout("layout/admin"); $request = $this->getRequest(); $form = new NewUserForm(); if ($request->isPost()) { $form->addInputFilter(); $form->setData($request->getPost()); if ($form->isValid()) { $u = new User(); $u->exchangeArray($request->getPost()); $this->getUserTable()->add($u); $message = ["User has been successfully added", Messenger::SUCCESS]; } else { $message = ["All inputs have to be filled out", Messenger::ERROR]; } } return ['message' => isset($message) ? $message : null, 'form' => $form]; }
public function indexAction() { $this->layout("layout/admin"); $user = $this->getUserTable()->select("id = " . $this->user->id)->toArray(); $form = new ProfileEditForm(); $request = $this->getRequest(); if ($request->isPost()) { $form->addInputFilter(); $form->setData($request->getPost()); if ($form->isValid()) { $u = new User(); $u->exchangeArray($request->getPost()); $this->getUserTable()->edit($this->user->id, $u->toArray()); $message = ["Profile has been successfully edited", Messenger::SUCCESS]; } else { $message = ["All inputs have to be filled out", Messenger::ERROR]; } } $form->setData($user[0]); return ['message' => isset($message) ? $message : null, 'form' => $form, 'user' => $user, 'images' => $this->getMediaTable()->fetchAll()]; }
public function indexAction() { $this->layout("layout/empty"); $this->logged = new Container('user'); $table = $this->getUserTable(); $form = new LoginForm(); if (!$this->logged->boolLogged) { $messenger = new Messenger(); /* * if user has chosen the option 'remember me on this PC', then load * info from DB a redirect to admin */ if (isset($_COOKIE['sleanded_admin']) && $_COOKIE['sleanded_admin'] != '') { $credentials = explode(";", $_COOKIE['sleanded_admin']); $user = $table->autologin($credentials[0], $credentials[1]); /* * check, if the credentials in COOKIE are same as those in DB */ if (count($user) == 1) { $user = $user[0]; $this->registerSession($user, $this->logged); return $this->redirect()->toRoute('admin', array('controller' => 'index')); } else { unset($_COOKIE['sleanded_admin']); setcookie('sleanded_admin', '', time() - 3600); $message = ["Autologin failed, please log in", Messenger::ERROR]; } } $request = $this->getRequest(); if ($request->isPost()) { $form->addInputFilter(); $form->setData($request->getPost()); if ($form->isValid()) { /* * checks, if a pass & name are OK */ $u = new User(); $u->exchangeArray($request->getPost()); $user = $table->login($u->name, $u->password); if (count($user) == 1) { /* registering session * ---------------- * if option 'remember me on this PC' is selected: * save cookie + set param to DB */ $user = $user[0]; $this->registerSession($user, $this->logged); if ($u->remember == 1) { setcookie('sleanded_admin', $user['name'] . ';' . $user['password'], time() + 3600 * 24 * 15); $table->edit($user['id'], ['ip' => $_SERVER['REMOTE_ADDR'], 'remember' => 1]); } /* * redirecting to admin index page */ return $this->redirect()->toRoute('admin', array('controller' => 'index')); } else { $message = ["Invalid name/email or password. Please, try to log in again!", Messenger::ERROR]; } } else { $message = ["All form fields have to be filled!", Messenger::NOTICE]; } } } else { $this->logout(); } return ['message' => isset($message) ? $message : null, 'loginForm' => $form]; }