summaryrefslogtreecommitdiff
path: root/plugins/OStatus/actions/ostatussub.php
diff options
context:
space:
mode:
authorEvan Prodromou <evan@status.net>2010-02-21 11:24:04 -0500
committerEvan Prodromou <evan@status.net>2010-02-21 11:24:04 -0500
commit727773cdfa8f229babbfe8a620645f2f4db9bbd8 (patch)
tree476bcf90d948a5a793f2a57d72f1a34418dc615e /plugins/OStatus/actions/ostatussub.php
parentdf7c6b37c8b8f548a56193181acd5b2d8ee9bd9e (diff)
redirect ostatussub if not logged in
Diffstat (limited to 'plugins/OStatus/actions/ostatussub.php')
-rw-r--r--plugins/OStatus/actions/ostatussub.php16
1 files changed, 13 insertions, 3 deletions
diff --git a/plugins/OStatus/actions/ostatussub.php b/plugins/OStatus/actions/ostatussub.php
index 524403143..bbbd1b7e6 100644
--- a/plugins/OStatus/actions/ostatussub.php
+++ b/plugins/OStatus/actions/ostatussub.php
@@ -58,7 +58,6 @@ class OStatusSubAction extends Action
$this->showPage();
}
-
/**
* Content area of the page
*
@@ -116,7 +115,18 @@ class OStatusSubAction extends Action
function prepare($args)
{
parent::prepare($args);
+
+ if (!common_logged_in()) {
+ // XXX: selfURL() didn't work. :<
+ common_set_returnto($_SERVER['REQUEST_URI']);
+ if (Event::handle('RedirectToLogin', array($this, null))) {
+ common_redirect(common_local_url('login'), 303);
+ }
+ return false;
+ }
+
$this->profile_uri = $this->arg('profile');
+
return true;
}
@@ -173,13 +183,13 @@ class OStatusSubAction extends Action
function validateFeed()
{
$profile_uri = trim($this->arg('profile'));
-
+
if ($profile_uri == '') {
$this->showForm(_m('Empty remote profile URL!'));
return;
}
$this->profile_uri = $profile_uri;
-
+
// @fixme validate, normalize bla bla
try {
$oprofile = Ostatus_profile::ensureProfile($this->profile_uri);