Ejemplo n.º 1
0
 public function resetPassword($params)
 {
     //mehul change
     // add main menu
     $mainMenu = new BASE_CMP_MainMenu();
     //$this->addMenu(BOL_NavigationService::MENU_TYPE_MAIN, $mainMenu);
     $this->addComponent('main_menu', $mainMenu);
     // add bottom menu
     $bottomMenu = new BASE_CMP_BottomMenu();
     //$this->addMenu(BOL_NavigationService::MENU_TYPE_BOTTOM, $bottomMenu);
     $this->addComponent('bottom_menu', $bottomMenu);
     $this->assign('site_url', OW_URL_HOME);
     $this->assign('theme_css_url', OW_URL_STATIC . "themes/morning/");
     //mehul change over
     $language = OW::getLanguage();
     if (OW::getUser()->isAuthenticated()) {
         $this->redirect(OW::getRouter()->urlForRoute('base_member_dashboard'));
     }
     $this->setPageHeading($language->text('base', 'reset_password_heading'));
     if (empty($params['code'])) {
         throw new Redirect404Exception();
     }
     $resetCode = $this->userService->findResetPasswordByCode($params['code']);
     if ($resetCode == null) {
         throw new RedirectException(OW::getRouter()->urlForRoute('base.reset_user_password_expired_code'));
     }
     $user = $this->userService->findUserById($resetCode->getUserId());
     if ($user === null) {
         throw new Redirect404Exception();
     }
     $form = $this->userService->getResetPasswordForm();
     $this->addForm($form);
     $this->assign('formText', $language->text('base', 'reset_password_form_text', array('username' => $user->getUsername())));
     OW::getDocument()->getMasterPage()->setTemplate(OW::getThemeManager()->getMasterPageTemplate(OW_MasterPage::TEMPLATE_BLANK));
     if (OW::getRequest()->isPost()) {
         if ($form->isValid($_POST)) {
             $data = $form->getValues();
             try {
                 $this->userService->processResetPasswordForm($data, $user, $resetCode);
             } catch (LogicException $e) {
                 OW::getFeedback()->error($e->getMessage());
                 $this->redirect();
             }
             OW::getFeedback()->info(OW::getLanguage()->text('base', 'reset_password_success_message'));
             $this->redirect(OW::getRouter()->urlForRoute('static_sign_in'));
         } else {
             OW::getFeedback()->error('Invalid Data');
             $this->redirect();
         }
     }
 }
Ejemplo n.º 2
0
 public function resetPassword($params)
 {
     $language = OW::getLanguage();
     if (OW::getUser()->isAuthenticated()) {
         $this->redirect(OW::getRouter()->urlForRoute('base_member_dashboard'));
     }
     $this->setPageHeading($language->text('base', 'reset_password_heading'));
     if (empty($params['code'])) {
         throw new Redirect404Exception();
     }
     $resetCode = $this->userService->findResetPasswordByCode($params['code']);
     if ($resetCode == null) {
         throw new RedirectException(OW::getRouter()->urlForRoute('base.reset_user_password_expired_code'));
     }
     $user = $this->userService->findUserById($resetCode->getUserId());
     if ($user === null) {
         throw new Redirect404Exception();
     }
     $form = $this->userService->getResetPasswordForm();
     $this->addForm($form);
     $this->assign('formText', $language->text('base', 'reset_password_form_text', array('username' => $user->getUsername())));
     OW::getDocument()->getMasterPage()->setTemplate(OW::getThemeManager()->getMasterPageTemplate(OW_MasterPage::TEMPLATE_BLANK));
     if (OW::getRequest()->isPost()) {
         if ($form->isValid($_POST)) {
             $data = $form->getValues();
             try {
                 $this->userService->processResetPasswordForm($data, $user, $resetCode);
             } catch (LogicException $e) {
                 OW::getFeedback()->error($e->getMessage());
                 $this->redirect();
             }
             OW::getFeedback()->info(OW::getLanguage()->text('base', 'reset_password_success_message'));
             $this->redirect(OW::getRouter()->urlForRoute('static_sign_in'));
         } else {
             OW::getFeedback()->error('Invalid Data');
             $this->redirect();
         }
     }
 }