]> git.mxchange.org Git - quix0rs-gnu-social.git/blobdiff - actions/apilistsubscriber.php
Merge remote-tracking branch 'upstream/master' into social-master
[quix0rs-gnu-social.git] / actions / apilistsubscriber.php
index cd10568e1b3fb9c2cc6de471f5d11035f4b8753c..a19ceec2fd93b18cf92550a04aedbc8a698b5045 100644 (file)
@@ -29,51 +29,43 @@ if (!defined('STATUSNET')) {
     exit(1);
 }
 
-require_once INSTALLDIR . '/lib/apiauth.php';
-
 class ApiListSubscriberAction extends ApiBareAuthAction
 {
     var $list   = null;
 
-    function prepare($args)
+    function prepare(array $args=array())
     {
         parent::prepare($args);
 
-        $this->user = $this->getTargetUser($this->arg('id'));
+        $this->target = $this->getTargetProfile($this->arg('id'));
         $this->list = $this->getTargetList($this->arg('user'), $this->arg('list_id'));
 
         if (empty($this->list)) {
             // TRANS: Client error displayed trying to perform an action related to a non-existing list.
-            $this->clientError(_('List not found.'), 404, $this->format);
-            return false;
+            $this->clientError(_('List not found.'), 404);
         }
 
-        if (empty($this->user)) {
+        if (!($this->target instanceof Profile)) {
             // TRANS: Client error displayed trying to perform an action related to a non-existing user.
-            $this->clientError(_('No such user.'), 404, $this->format);
-            return false;
+            $this->clientError(_('No such user.'), 404);
         }
         return true;
     }
 
-    function handle($args)
+    function handle(array $args=array())
     {
         parent::handle($args);
 
         $arr = array('profile_tag_id' => $this->list->id,
-                      'profile_id' => $this->user->id);
+                      'profile_id' => $this->target->id);
         $sub = Profile_tag_subscription::pkeyGet($arr);
 
         if(empty($sub)) {
-            $this->clientError(
-                // TRANS: Client error displayed when a membership check for a user is nagative.
-                _('The specified user is not a subscriber of this list.'),
-                400,
-                $this->format
-            );
+            // TRANS: Client error displayed when a membership check for a user is nagative.
+            $this->clientError(_('The specified user is not a subscriber of this list.'));
         }
 
-        $user = $this->twitterUserArray($this->user->getProfile(), true);
+        $user = $this->twitterUserArray($this->target, true);
 
         switch($this->format) {
         case 'xml':