Subversion Repositories oidplus

Rev

Rev 1283 | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1283 Rev 1293
Line 24... Line 24...
24
// phpcs:enable PSR1.Files.SideEffects
24
// phpcs:enable PSR1.Files.SideEffects
25
 
25
 
26
class OIDplusPagePublicForgotPassword extends OIDplusPagePluginPublic {
26
class OIDplusPagePublicForgotPassword extends OIDplusPagePluginPublic {
27
 
27
 
28
        /**
28
        /**
29
         * @param string $actionID
-
 
30
         * @param array $params
29
         * @param array $params
31
         * @return array
30
         * @return array
32
         * @throws OIDplusException
31
         * @throws OIDplusException
33
         * @throws OIDplusMailException
32
         * @throws OIDplusMailException
34
         */
33
         */
35
        public function action(string $actionID, array $params): array {
34
        private function action_Request(array $params): array {
36
                if ($actionID == 'forgot_password') {
-
 
37
                        _CheckParamExists($params, 'email');
35
                _CheckParamExists($params, 'email');
38
                        $email = $params['email'];
36
                $email = $params['email'];
39
 
37
 
40
                        if (!OIDplus::mailUtils()->validMailAddress($email)) {
38
                if (!OIDplus::mailUtils()->validMailAddress($email)) {
41
                                throw new OIDplusException(_L('Invalid email address'));
39
                        throw new OIDplusException(_L('Invalid email address'));
Line 51... Line 49...
51
                        $message = str_replace('{{ACTIVATE_URL}}', $activate_url, $message);
49
                $message = str_replace('{{ACTIVATE_URL}}', $activate_url, $message);
52
 
50
 
53
                        OIDplus::mailUtils()->sendMail($email, OIDplus::config()->getValue('system_title').' - Password reset request', $message);
51
                OIDplus::mailUtils()->sendMail($email, OIDplus::config()->getValue('system_title').' - Password reset request', $message);
54
 
52
 
55
                        return array("status" => 0);
53
                return array("status" => 0);
-
 
54
        }
56
 
55
 
-
 
56
        /**
-
 
57
         * @param array $params
-
 
58
         * @return array
57
                } else if ($actionID == 'reset_password') {
59
         * @throws OIDplusException
-
 
60
         * @throws OIDplusMailException
58
 
61
         */
-
 
62
        private function action_Activate(array $params): array {
59
                        _CheckParamExists($params, 'password1');
63
                _CheckParamExists($params, 'password1');
60
                        _CheckParamExists($params, 'password2');
64
                _CheckParamExists($params, 'password2');
61
                        _CheckParamExists($params, 'email');
65
                _CheckParamExists($params, 'email');
62
                        _CheckParamExists($params, 'auth');
66
                _CheckParamExists($params, 'auth');
63
 
67
 
Line 83... Line 87...
83
 
87
 
84
                        $ra = new OIDplusRA($email);
88
                $ra = new OIDplusRA($email);
85
                        $ra->change_password($password1);
89
                $ra->change_password($password1);
86
 
90
 
87
                        return array("status" => 0);
91
                return array("status" => 0);
-
 
92
        }
-
 
93
 
-
 
94
        /**
-
 
95
         * @param string $actionID
-
 
96
         * @param array $params
-
 
97
         * @return array
-
 
98
         * @throws OIDplusException
-
 
99
         * @throws OIDplusMailException
-
 
100
         */
-
 
101
        public function action(string $actionID, array $params): array {
-
 
102
                if ($actionID == 'forgot_password') {
-
 
103
                        return $this->action_Request($params);
-
 
104
                } else if ($actionID == 'reset_password') {
-
 
105
                        return $this->action_Activate($params);
88
                } else {
106
                } else {
89
                        return parent::action($actionID, $params);
107
                        return parent::action($actionID, $params);
90
                }
108
                }
91
        }
109
        }
92
 
110