X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=actions%2Fsubscribe.php;h=ce1d367cf894fe01a009a23dfe62d82423cecb5a;hb=25198a8d4cee5b2182f1ecb99192a4108a01afa4;hp=b1243f393333fdea7245bead2c7c1bda9738e982;hpb=8dfc8f1635940b096e7f4025e3aef0ca4f909eb2;p=quix0rs-gnu-social.git diff --git a/actions/subscribe.php b/actions/subscribe.php index b1243f3933..ce1d367cf8 100644 --- a/actions/subscribe.php +++ b/actions/subscribe.php @@ -1,7 +1,7 @@ clientError(_('This action only accepts POST requests.')); return false; } @@ -83,6 +83,7 @@ class SubscribeAction extends Action $token = $this->trimmed('token'); if (!$token || $token != common_session_token()) { + // TRANS: Client error displayed when the session token is not okay. $this->clientError(_('There was a problem with your session token.'. ' Try again, please.')); return false; @@ -93,6 +94,7 @@ class SubscribeAction extends Action $this->user = common_current_user(); if (empty($this->user)) { + // TRANS: Error message displayed when trying to perform an action that requires a logged in user. $this->clientError(_('Not logged in.')); return false; } @@ -104,21 +106,11 @@ class SubscribeAction extends Action $this->other = Profile::staticGet('id', $other_id); if (empty($this->other)) { + // TRANS: Client error displayed trying to subscribe to a non-existing profile. $this->clientError(_('No such profile.')); return false; } - // OMB 0.1 doesn't have a mechanism for local-server- - // originated subscription. - - $omb01 = Remote_profile::staticGet('id', $other_id); - - if (!empty($omb01)) { - $this->clientError(_('You cannot subscribe to an OMB 0.1'. - ' remote profile with this action.')); - return false; - } - return true; } @@ -131,22 +123,26 @@ class SubscribeAction extends Action * * @return void */ - function handle($args) { // Throws exception on error - Subscription::start($this->user->getProfile(), - $this->other); + $sub = Subscription::start($this->user->getProfile(), + $this->other); if ($this->boolean('ajax')) { $this->startHTML('text/xml;charset=utf-8'); $this->elementStart('head'); + // TRANS: Page title when subscription succeeded. $this->element('title', null, _('Subscribed')); $this->elementEnd('head'); $this->elementStart('body'); - $unsubscribe = new UnsubscribeForm($this, $this->other); - $unsubscribe->show(); + if ($sub instanceof Subscription) { + $form = new UnsubscribeForm($this, $this->other); + } else { + $form = new CancelSubscriptionForm($this, $this->other); + } + $form->show(); $this->elementEnd('body'); $this->elementEnd('html'); } else {