X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=plugins%2FOpenID%2Ffinishaddopenid.php;h=5182e50778736d2325f3e6a20de29bfcf8ae07df;hb=2a70ed27e71e2e6e88359c88229d9c9ac5bb91a0;hp=32bceecfd547dac41e2036808d970c6fc3876f9c;hpb=2b79b4d21fa33844911f28b9e33ec958cbac3de9;p=quix0rs-gnu-social.git diff --git a/plugins/OpenID/finishaddopenid.php b/plugins/OpenID/finishaddopenid.php index 32bceecfd5..5182e50778 100644 --- a/plugins/OpenID/finishaddopenid.php +++ b/plugins/OpenID/finishaddopenid.php @@ -1,6 +1,6 @@ . * * @category Settings - * @package Laconica - * @author Evan Prodromou - * @copyright 2008-2009 Control Yourself, Inc. + * @package StatusNet + * @author Evan Prodromou + * @copyright 2008-2009 StatusNet, Inc. * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0 - * @link http://laconi.ca/ + * @link http://status.net/ */ -if (!defined('LACONICA')) { +if (!defined('STATUSNET')) { exit(1); } -require_once INSTALLDIR.'/lib/openid.php'; +require_once INSTALLDIR.'/plugins/OpenID/openid.php'; /** * Complete adding an OpenID @@ -39,12 +39,11 @@ require_once INSTALLDIR.'/lib/openid.php'; * Handle the return from an OpenID verification * * @category Settings - * @package Laconica - * @author Evan Prodromou + * @package StatusNet + * @author Evan Prodromou * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0 - * @link http://laconi.ca/ + * @link http://status.net/ */ - class FinishaddopenidAction extends Action { var $msg = null; @@ -59,12 +58,12 @@ class FinishaddopenidAction extends Action * * @return void */ - function handle($args) { parent::handle($args); if (!common_logged_in()) { - $this->clientError(_('Not logged in.')); + // TRANS: Error message displayed when trying to perform an action that requires a logged in user. + $this->clientError(_m('Not logged in.')); } else { $this->tryLogin(); } @@ -77,19 +76,20 @@ class FinishaddopenidAction extends Action * * @return void */ - function tryLogin() { - $consumer =& oid_consumer(); + $consumer = oid_consumer(); $response = $consumer->complete(common_local_url('finishaddopenid')); if ($response->status == Auth_OpenID_CANCEL) { - $this->message(_('OpenID authentication cancelled.')); + // TRANS: Status message in case the response from the OpenID provider is that the logon attempt was cancelled. + $this->message(_m('OpenID authentication cancelled.')); return; } else if ($response->status == Auth_OpenID_FAILURE) { - // Authentication failed; display the error message. - $this->message(sprintf(_('OpenID authentication failed: %s'), + // TRANS: OpenID authentication failed; display the error message. + // TRANS: %s is the error message. + $this->message(sprintf(_m('OpenID authentication failed: %s.'), $response->message)); } else if ($response->status == Auth_OpenID_SUCCESS) { @@ -103,15 +103,24 @@ class FinishaddopenidAction extends Action $sreg = $sreg_resp->contents(); } - $cur =& common_current_user(); + // Launchpad teams extension + if (!oid_check_teams($response)) { + // TRANS: OpenID authentication error. + $this->message(_m('OpenID authentication aborted: You are not allowed to login to this site.')); + return; + } + + $cur = common_current_user(); $other = oid_get_user($canonical); if ($other) { if ($other->id == $cur->id) { - $this->message(_('You already have this OpenID!')); + // TRANS: Message in case a user tries to add an OpenID that is already connected to them. + $this->message(_m('You already have this OpenID!')); } else { - $this->message(_('Someone else already has this OpenID.')); + // TRANS: Message in case a user tries to add an OpenID that is already used by another user. + $this->message(_m('Someone else already has this OpenID.')); } return; } @@ -123,15 +132,20 @@ class FinishaddopenidAction extends Action $result = oid_link_user($cur->id, $canonical, $display); if (!$result) { - $this->message(_('Error connecting user.')); + // TRANS: Message in case the OpenID object cannot be connected to the user. + $this->message(_m('Error connecting user.')); return; } - if ($sreg) { - if (!oid_update_user($cur, $sreg)) { - $this->message(_('Error updating profile')); - return; + if (Event::handle('StartOpenIDUpdateUser', array($cur, $canonical, &$sreg))) { + if ($sreg) { + if (!oid_update_user($cur, $sreg)) { + // TRANS: Message in case the user or the user profile cannot be saved in StatusNet. + $this->message(_m('Error updating profile.')); + return; + } } } + Event::handle('EndOpenIDUpdateUser', array($cur, $canonical, $sreg)); // success! @@ -152,7 +166,6 @@ class FinishaddopenidAction extends Action * * @return void */ - function message($msg) { $this->message = $msg; @@ -164,10 +177,10 @@ class FinishaddopenidAction extends Action * * @return string title */ - function title() { - return _('OpenID Login'); + // TRANS: Title after getting the status of the OpenID authorisation request. + return _m('OpenID Login'); } /** @@ -175,7 +188,6 @@ class FinishaddopenidAction extends Action * * @return void */ - function showPageNotice() { if ($this->message) {