]> git.mxchange.org Git - quix0rs-gnu-social.git/commitdiff
redirect ostatussub if not logged in
authorEvan Prodromou <evan@status.net>
Sun, 21 Feb 2010 16:24:04 +0000 (11:24 -0500)
committerEvan Prodromou <evan@status.net>
Sun, 21 Feb 2010 16:24:04 +0000 (11:24 -0500)
plugins/OStatus/actions/ostatussub.php

index 5244031437fc81b9468be7aec0f11d0b8b12203b..bbbd1b7e691284e7734b198aac0bea3b4de140e1 100644 (file)
@@ -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);