X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=lib%2Fprofileformaction.php;h=57065282239c2e74702931c39fcb77af6712db14;hb=b7d07466943a73e1c009467c8daa6e499810080f;hp=0ffafe5fb8d1279aeea4828b4da54c38869dae7a;hpb=3da50c19dfff7645dc46f1b836ebf4ecda726129;p=quix0rs-gnu-social.git diff --git a/lib/profileformaction.php b/lib/profileformaction.php index 0ffafe5fb8..5706528223 100644 --- a/lib/profileformaction.php +++ b/lib/profileformaction.php @@ -40,7 +40,6 @@ if (!defined('STATUSNET') && !defined('LACONICA')) { * @license http://www.fsf.org/licensing/licenses/agpl.html AGPLv3 * @link http://status.net/ */ - class ProfileFormAction extends RedirectingAction { var $profile = null; @@ -52,7 +51,6 @@ class ProfileFormAction extends RedirectingAction * * @return boolean success flag */ - function prepare($args) { parent::prepare($args); @@ -60,13 +58,24 @@ class ProfileFormAction extends RedirectingAction $this->checkSessionToken(); if (!common_logged_in()) { - $this->clientError(_('Not logged in.')); + if ($_SERVER['REQUEST_METHOD'] == 'POST') { + // TRANS: Client error displayed when trying to change user options while not logged in. + $this->clientError(_('Not logged in.')); + } else { + // Redirect to login. + common_set_returnto($this->selfUrl()); + $user = common_current_user(); + if (Event::handle('RedirectToLogin', array($this, $user))) { + common_redirect(common_local_url('login'), 303); + } + } return false; } $id = $this->trimmed('profileid'); if (!$id) { + // TRANS: Client error displayed when trying to change user options without specifying a user to work on. $this->clientError(_('No profile specified.')); return false; } @@ -74,6 +83,7 @@ class ProfileFormAction extends RedirectingAction $this->profile = Profile::staticGet('id', $id); if (!$this->profile) { + // TRANS: Client error displayed when trying to change user options without specifying an existing user to work on. $this->clientError(_('No profile with that ID.')); return false; } @@ -90,14 +100,13 @@ class ProfileFormAction extends RedirectingAction * * @return void */ - function handle($args) { parent::handle($args); if ($_SERVER['REQUEST_METHOD'] == 'POST') { $this->handlePost(); - $this->returnToArgs(); + $this->returnToPrevious(); } } @@ -108,9 +117,9 @@ class ProfileFormAction extends RedirectingAction * * @return void */ - function handlePost() { + // TRANS: Server error displayed when using an unimplemented method. $this->serverError(_("Unimplemented method.")); } }