summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrion Vibber <brion@pobox.com>2009-11-25 12:07:19 -0800
committerBrion Vibber <brion@pobox.com>2009-11-25 12:11:41 -0800
commitf1b64c4db52d6881c845704bfde3e3514e3ebe8f (patch)
tree57273d34e2b8b80338079539654ae8965ac1a508
parent71d5990ea3fd7864c3595ea738f35c613d52b62f (diff)
Fix fatal error on OMB subscription for first-timers
-rw-r--r--actions/finishremotesubscribe.php13
1 files changed, 9 insertions, 4 deletions
diff --git a/actions/finishremotesubscribe.php b/actions/finishremotesubscribe.php
index b1cec66f4..deee70f36 100644
--- a/actions/finishremotesubscribe.php
+++ b/actions/finishremotesubscribe.php
@@ -89,12 +89,16 @@ class FinishremotesubscribeAction extends Action
}
$remote = Remote_profile::staticGet('uri', $service->getListenerURI());
+ if ($remote) {
+ // Note remote profile may not have been saved yet.
+ // @fixme not convinced this is correct at all!
- $profile = Profile::staticGet($remote->id);
+ $profile = Profile::staticGet($remote->id);
- if ($user->hasBlocked($profile)) {
- $this->clientError(_('That user has blocked you from subscribing.'));
- return;
+ if ($user->hasBlocked($profile)) {
+ $this->clientError(_('That user has blocked you from subscribing.'));
+ return;
+ }
}
/* Perform the handling itself via libomb. */
@@ -122,6 +126,7 @@ class FinishremotesubscribeAction extends Action
/* The service URLs are not accessible from datastore, so setting them
after insertion of the profile. */
+ $remote = Remote_profile::staticGet('uri', $service->getListenerURI());
$orig_remote = clone($remote);
$remote->postnoticeurl =