function UserFormSubmitted(Form $form) { $data = $form->getValues(); // vezmeme data z formuláře $action = $form['action']->getValue(); if ($action == 0) { //vkládáme nového uživatele try { //jestliže neexistuje uživatel s požadovaným uživatelským jménem if (!UsersModel::getUserByUserName($data['userName'])) { UsersModel::createUser($data); dibi::query('COMMIT'); $this->flashMessage("Uživatel byl úspěšně vytvořen."); $redirect = true; } else { $this->flashMessage("Uživatel se zadaným uživatelským jménem již existuje. Vyberte prosím jiné uživatelské jméno."); $redirect = false; } } catch (Exception $e) { dibi::query('ROLLBACK'); Debug::processException($e); $this->flashMessage(ERROR_MESSAGE . " Error description: " . $e->getMessage(), 'error'); } if ($redirect) { $this->redirect('User:default'); } } elseif ($action == 1) { //editujeme uživatele try { UsersModel::editUser($data); $this->flashMessage("Užovatel byl úspěšně aktualizován."); dibi::query('COMMIT'); } catch (Exception $e) { dibi::query('ROLLBACK'); Debug::processException($e); $this->flashMessage(ERROR_MESSAGE . " Error description: " . $e->getMessage(), 'error'); } if ($this->user->isInRole('Administrator')) { $this->redirect('User:default'); } else { $this->redirect('User:default'); } } elseif ($action == 2) { //měníme pouze heslo try { UsersModel::editPassword($data); $this->flashMessage("Heslo bylo úspěšně změněno."); dibi::query('COMMIT'); } catch (Exception $e) { dibi::query('ROLLBACK'); Debug::processException($e); $this->flashMessage(ERROR_MESSAGE . " Error description: " . $e->getMessage(), 'error'); } if ($this->user->isInRole('Administrator')) { $this->redirect('User:default'); } else { $this->redirect('Default:'); } } }