@@ -253,7 +253,19 @@ protected function doExecute()
253253 * $this->input->getCmd('option'); or $this->input->getCmd('view');
254254 * ex: due of the sef urls
255255 */
256- $ this ->checkUserRequireReset ('com_users ' , 'profile ' , 'edit ' , 'com_users/profile.save,com_users/profile.apply,com_users/user.logout ' );
256+ $ this ->checkUserRequiresReset ('com_users ' , 'profile ' , 'edit ' , [
257+ ['option ' => 'com_users ' , 'task ' => 'profile.save ' ],
258+ ['option ' => 'com_users ' , 'task ' => 'profile.apply ' ],
259+ ['option ' => 'com_users ' , 'task ' => 'user.logout ' ],
260+ ['option ' => 'com_users ' , 'task ' => 'user.menulogout ' ],
261+ ['option ' => 'com_users ' , 'task ' => 'captive.validate ' ],
262+ ['option ' => 'com_users ' , 'view ' => 'captive ' ],
263+ ['option ' => 'com_users ' , 'view ' => 'methods ' ],
264+ ['option ' => 'com_users ' , 'view ' => 'method ' ],
265+ ['option ' => 'com_users ' , 'task ' => 'method.add ' ],
266+ ['option ' => 'com_users ' , 'task ' => 'method.save ' ],
267+ ['option ' => 'com_users ' , 'view ' => 'profile ' , 'layout ' => 'edit ' ],
268+ ]);
257269 }
258270
259271 // Dispatch the application
@@ -664,7 +676,26 @@ public function login($credentials, $options = [])
664676 // Set the access control action to check.
665677 $ options ['action ' ] = 'core.login.site ' ;
666678
667- return parent ::login ($ credentials , $ options );
679+ $ result = parent ::login ($ credentials , $ options );
680+
681+ if (!($ result instanceof \Exception) && $ result ) {
682+ // Check if the user is required to reset their password
683+ $ this ->checkUserRequiresReset ('com_users ' , 'profile ' , 'edit ' , [
684+ ['option ' => 'com_users ' , 'task ' => 'profile.save ' ],
685+ ['option ' => 'com_users ' , 'task ' => 'profile.apply ' ],
686+ ['option ' => 'com_users ' , 'task ' => 'user.logout ' ],
687+ ['option ' => 'com_users ' , 'task ' => 'user.menulogout ' ],
688+ ['option ' => 'com_users ' , 'task ' => 'captive.validate ' ],
689+ ['option ' => 'com_users ' , 'view ' => 'captive ' ],
690+ ['option ' => 'com_users ' , 'view ' => 'methods ' ],
691+ ['option ' => 'com_users ' , 'view ' => 'method ' ],
692+ ['option ' => 'com_users ' , 'task ' => 'method.add ' ],
693+ ['option ' => 'com_users ' , 'task ' => 'method.save ' ],
694+ ['option ' => 'com_users ' , 'view ' => 'profile ' , 'layout ' => 'edit ' ],
695+ ]);
696+ }
697+
698+ return $ result ;
668699 }
669700
670701 /**
0 commit comments