]> git.mxchange.org Git - friendica.git/blobdiff - include/api.php
Remove unneeded "unset"
[friendica.git] / include / api.php
index 8db59070b55b11733ccd4f8f2ee11a4227931bf0..e526c3c35090a620935465e5a631044d3e0be206 100644 (file)
@@ -49,7 +49,6 @@ use Friendica\Network\HTTPException\NotFoundException;
 use Friendica\Network\HTTPException\TooManyRequestsException;
 use Friendica\Network\HTTPException\UnauthorizedException;
 use Friendica\Object\Image;
-use Friendica\Protocol\Activity;
 use Friendica\Security\BasicAuth;
 use Friendica\Util\DateTimeFormat;
 use Friendica\Util\Images;
@@ -245,83 +244,6 @@ function api_format_messages($item, $recipient, $sender)
        return $ret;
 }
 
-/**
- * return likes, dislikes and attend status for item
- *
- * @param array  $item array
- * @param string $type Return type (atom, rss, xml, json)
- *
- * @return array
- *            likes => int count,
- *            dislikes => int count
- * @throws BadRequestException
- * @throws ImagickException
- * @throws InternalServerErrorException
- * @throws UnauthorizedException
- */
-function api_format_items_activities($item, $type = "json")
-{
-       $activities = [
-               'like' => [],
-               'dislike' => [],
-               'attendyes' => [],
-               'attendno' => [],
-               'attendmaybe' => [],
-               'announce' => [],
-       ];
-
-       $condition = ['uid' => $item['uid'], 'thr-parent' => $item['uri'], 'gravity' => GRAVITY_ACTIVITY];
-       $ret = Post::selectForUser($item['uid'], ['author-id', 'verb'], $condition);
-
-       while ($parent_item = Post::fetch($ret)) {
-               // not used as result should be structured like other user data
-               //builtin_activity_puller($i, $activities);
-
-               // get user data and add it to the array of the activity
-               $user = DI::twitterUser()->createFromContactId($parent_item['author-id'], $item['uid'])->toArray();
-               switch ($parent_item['verb']) {
-                       case Activity::LIKE:
-                               $activities['like'][] = $user;
-                               break;
-                       case Activity::DISLIKE:
-                               $activities['dislike'][] = $user;
-                               break;
-                       case Activity::ATTEND:
-                               $activities['attendyes'][] = $user;
-                               break;
-                       case Activity::ATTENDNO:
-                               $activities['attendno'][] = $user;
-                               break;
-                       case Activity::ATTENDMAYBE:
-                               $activities['attendmaybe'][] = $user;
-                               break;
-                       case Activity::ANNOUNCE:
-                               $activities['announce'][] = $user;
-                               break;
-                       default:
-                               break;
-               }
-       }
-
-       DBA::close($ret);
-
-       if ($type == "xml") {
-               $xml_activities = [];
-               foreach ($activities as $k => $v) {
-                       // change xml element from "like" to "friendica:like"
-                       $xml_activities["friendica:".$k] = $v;
-                       // add user data into xml output
-                       $k_user = 0;
-                       foreach ($v as $user) {
-                               $xml_activities["friendica:".$k][$k_user++.":user"] = $user;
-                       }
-               }
-               $activities = $xml_activities;
-       }
-
-       return $activities;
-}
-
 /**
  *
  * @param string $acl_string
@@ -643,7 +565,7 @@ function prepare_photo_data($type, $scale, $photo_id, $uid)
                throw new NotFoundException('Photo-related item not found.');
        }
 
-       $data['photo']['friendica_activities'] = api_format_items_activities($item, $type);
+       $data['photo']['friendica_activities'] = DI::friendicaActivities()->createFromUriId($item['uri-id'], $item['uid'], $type);
 
        // retrieve comments on photo
        $condition = ["`parent` = ? AND `uid` = ? AND `gravity` IN (?, ?)",
@@ -761,23 +683,6 @@ function group_create($name, $uid, $users = [])
        return ['success' => true, 'gid' => $gid, 'name' => $name, 'status' => $status, 'wrong users' => $errorusers];
 }
 
-/**
- * Get data from $_POST or $_GET
- *
- * @param string $k
- * @return null
- */
-function requestdata($k)
-{
-       if (!empty($_POST[$k])) {
-               return $_POST[$k];
-       }
-       if (!empty($_GET[$k])) {
-               return $_GET[$k];
-       }
-       return null;
-}
-
 /**
  * TWITTER API
  */
@@ -801,12 +706,6 @@ function api_account_verify_credentials($type)
        BaseApi::checkAllowedScope(BaseApi::SCOPE_READ);
        $uid = BaseApi::getCurrentUserID();
 
-       unset($_REQUEST['user_id']);
-       unset($_GET['user_id']);
-
-       unset($_REQUEST['screen_name']);
-       unset($_GET['screen_name']);
-
        $skip_status = $_REQUEST['skip_status'] ?? false;
 
        $user_info = DI::twitterUser()->createFromUserId($uid, $skip_status)->toArray();
@@ -843,7 +742,7 @@ function api_statuses_mediap($type)
 
        $_REQUEST['profile_uid'] = $uid;
        $_REQUEST['api_source'] = true;
-       $txt = requestdata('status') ?? '';
+       $txt = $_REQUEST['status'] ?? '';
 
        if ((strpos($txt, '<') !== false) || (strpos($txt, '>') !== false)) {
                $txt = HTML::toBBCodeVideo($txt);
@@ -892,8 +791,8 @@ function api_statuses_update($type)
        $a = DI::app();
 
        // convert $_POST array items to the form we use for web posts.
-       if (requestdata('htmlstatus')) {
-               $txt = requestdata('htmlstatus') ?? '';
+       if (!empty($_REQUEST['htmlstatus'])) {
+               $txt = $_REQUEST['htmlstatus'];
                if ((strpos($txt, '<') !== false) || (strpos($txt, '>') !== false)) {
                        $txt = HTML::toBBCodeVideo($txt);
 
@@ -906,12 +805,12 @@ function api_statuses_update($type)
                        $_REQUEST['body'] = HTML::toBBCode($txt);
                }
        } else {
-               $_REQUEST['body'] = requestdata('status');
+               $_REQUEST['body'] = $_REQUEST['status'] ?? null;
        }
 
-       $_REQUEST['title'] = requestdata('title');
+       $_REQUEST['title'] = $_REQUEST['title'] ?? null;
 
-       $parent = requestdata('in_reply_to_status_id');
+       $parent = $_REQUEST['in_reply_to_status_id'] ?? null;
 
        // Twidere sends "-1" if it is no reply ...
        if ($parent == -1) {
@@ -924,8 +823,8 @@ function api_statuses_update($type)
                $_REQUEST['parent_uri'] = $parent;
        }
 
-       if (requestdata('lat') && requestdata('long')) {
-               $_REQUEST['coord'] = sprintf("%s %s", requestdata('lat'), requestdata('long'));
+       if (!empty($_REQUEST['lat']) && !empty($_REQUEST['long'])) {
+               $_REQUEST['coord'] = sprintf("%s %s", $_REQUEST['lat'], $_REQUEST['long']);
        }
        $_REQUEST['profile_uid'] = $uid;
 
@@ -974,8 +873,8 @@ function api_statuses_update($type)
                }
        }
 
-       if (requestdata('media_ids')) {
-               $ids = explode(',', requestdata('media_ids') ?? '');
+       if (!empty($_REQUEST['media_ids'])) {
+               $ids = explode(',', $_REQUEST['media_ids']);
        } elseif (!empty($_FILES['media'])) {
                // upload the image if we have one
                $picture = wall_upload_post($a, false);
@@ -1166,20 +1065,7 @@ function api_users_show($type)
        BaseApi::checkAllowedScope(BaseApi::SCOPE_READ);
        $uid = BaseApi::getCurrentUserID();
 
-       $user_info = DI::twitterUser()->createFromUserId($uid)->toArray();
-
-       $condition = [
-               'author-id'=> $user_info['pid'],
-               'uid'      => $uid,
-               'gravity'  => [GRAVITY_PARENT, GRAVITY_COMMENT],
-               'private'  => [Item::PUBLIC, Item::UNLISTED]
-       ];
-
-       $item = Post::selectFirst(['uri-id', 'id'], $condition);
-       if (!empty($item)) {
-               $include_entities = strtolower(($_REQUEST['include_entities'] ?? 'false') == 'true');
-               $user_info['status'] = DI::twitterStatus()->createFromUriId($item['uri-id'], $item['uid'], $include_entities)->toArray();
-       }
+       $user_info = DI::twitterUser()->createFromUserId($uid, false)->toArray();
 
        // "uid" is only needed for some internal stuff, so remove it from here
        unset($user_info['uid']);
@@ -1224,7 +1110,7 @@ function api_users_search($type)
                if (DBA::isResult($contacts)) {
                        $k = 0;
                        foreach ($contacts as $contact) {
-                               $user_info = DI::twitterUser()->createFromContactId($contact['id'], $uid)->toArray();
+                               $user_info = DI::twitterUser()->createFromContactId($contact['id'], $uid, false)->toArray();
 
                                if ($type == 'xml') {
                                        $userlist[$k++ . ':user'] = $user_info;
@@ -1269,7 +1155,7 @@ function api_users_lookup($type)
        if (!empty($_REQUEST['user_id'])) {
                foreach (explode(',', $_REQUEST['user_id']) as $cid) {
                        if (!empty($cid) && is_numeric($cid)) {
-                               $users[] = DI::twitterUser()->createFromContactId((int)$cid, $uid)->toArray();
+                               $users[] = DI::twitterUser()->createFromContactId((int)$cid, $uid, false)->toArray();
                        }
                }
        }
@@ -1410,12 +1296,6 @@ function api_statuses_home_timeline($type)
        BaseApi::checkAllowedScope(BaseApi::SCOPE_READ);
        $uid = BaseApi::getCurrentUserID();
 
-       unset($_REQUEST['user_id']);
-       unset($_GET['user_id']);
-
-       unset($_REQUEST['screen_name']);
-       unset($_GET['screen_name']);
-
        // get last network messages
 
        // params
@@ -1889,12 +1769,6 @@ function api_statuses_mentions($type)
        BaseApi::checkAllowedScope(BaseApi::SCOPE_READ);
        $uid = BaseApi::getCurrentUserID();
 
-       unset($_REQUEST['user_id']);
-       unset($_GET['user_id']);
-
-       unset($_REQUEST['screen_name']);
-       unset($_GET['screen_name']);
-
        // get last network messages
 
        // params
@@ -2166,7 +2040,7 @@ function api_lists_ownerships($type)
        $uid = BaseApi::getCurrentUserID();
 
        // params
-       $user_info = DI::twitterUser()->createFromUserId($uid)->toArray();
+       $user_info = DI::twitterUser()->createFromUserId($uid, true)->toArray();
 
        $groups = DBA::select('group', [], ['deleted' => 0, 'uid' => $uid]);
 
@@ -2209,12 +2083,6 @@ function api_lists_statuses($type)
        BaseApi::checkAllowedScope(BaseApi::SCOPE_READ);
        $uid = BaseApi::getCurrentUserID();
 
-       unset($_REQUEST['user_id']);
-       unset($_GET['user_id']);
-
-       unset($_REQUEST['screen_name']);
-       unset($_GET['screen_name']);
-
        if (empty($_REQUEST['list_id'])) {
                throw new BadRequestException('list_id not specified');
        }
@@ -2331,7 +2199,7 @@ function api_statuses_f($qtype)
 
        $ret = [];
        foreach ($r as $cid) {
-               $user = DI::twitterUser()->createFromContactId($cid['id'], $uid)->toArray();
+               $user = DI::twitterUser()->createFromContactId($cid['id'], $uid, false)->toArray();
                // "uid" is only needed for some internal stuff, so remove it from here
                unset($user['uid']);
 
@@ -2458,7 +2326,7 @@ function api_direct_messages_new($type)
                return;
        }
 
-       $sender = DI::twitterUser()->createFromUserId($uid)->toArray();
+       $sender = DI::twitterUser()->createFromUserId($uid, true)->toArray();
 
        $cid = BaseApi::getContactIDForSearchterm($_POST['screen_name'] ?? '', $_POST['user_id'] ?? 0, $uid);
        if (empty($cid)) {
@@ -2484,7 +2352,7 @@ function api_direct_messages_new($type)
 
        if ($id > -1) {
                $mail = DBA::selectFirst('mail', [], ['id' => $id]);
-               $ret = api_format_messages($mail, DI::twitterUser()->createFromContactId($cid, $uid)->toArray(), $sender);
+               $ret = api_format_messages($mail, DI::twitterUser()->createFromContactId($cid, $uid, true)->toArray(), $sender);
        } else {
                $ret = ["error" => $id];
        }
@@ -2665,14 +2533,7 @@ function api_direct_messages_box($type, $box, $verbose)
        $user_id = $_REQUEST['user_id'] ?? '';
        $screen_name = $_REQUEST['screen_name'] ?? '';
 
-       //  caller user info
-       unset($_REQUEST['user_id']);
-       unset($_GET['user_id']);
-
-       unset($_REQUEST['screen_name']);
-       unset($_GET['screen_name']);
-
-       $user_info = DI::twitterUser()->createFromUserId($uid)->toArray();
+       $user_info = DI::twitterUser()->createFromUserId($uid, true)->toArray();
 
        $profile_url = $user_info["url"];
 
@@ -2718,9 +2579,9 @@ function api_direct_messages_box($type, $box, $verbose)
        foreach ($r as $item) {
                if ($box == "inbox" || $item['from-url'] != $profile_url) {
                        $recipient = $user_info;
-                       $sender = DI::twitterUser()->createFromContactId($item['contact-id'], $uid)->toArray();
+                       $sender = DI::twitterUser()->createFromContactId($item['contact-id'], $uid, true)->toArray();
                } elseif ($box == "sentbox" || $item['from-url'] == $profile_url) {
-                       $recipient = DI::twitterUser()->createFromContactId($item['contact-id'], $uid)->toArray();
+                       $recipient = DI::twitterUser()->createFromContactId($item['contact-id'], $uid, true)->toArray();
                        $sender = $user_info;
                }
 
@@ -3127,7 +2988,7 @@ function api_account_update_profile($type)
        BaseApi::checkAllowedScope(BaseApi::SCOPE_WRITE);
        $uid = BaseApi::getCurrentUserID();
 
-       $api_user = DI::twitterUser()->createFromUserId($uid)->toArray();
+       $api_user = DI::twitterUser()->createFromUserId($uid, true)->toArray();
 
        if (!empty($_POST['name'])) {
                DBA::update('profile', ['name' => $_POST['name']], ['uid' => $uid]);
@@ -3191,13 +3052,13 @@ function api_friendica_group_show($type)
                        $user_element = "users";
                        $k = 0;
                        foreach ($members as $member) {
-                               $user = DI::twitterUser()->createFromContactId($member['contact-id'], $uid)->toArray();
+                               $user = DI::twitterUser()->createFromContactId($member['contact-id'], $uid, true)->toArray();
                                $users[$k++.":user"] = $user;
                        }
                } else {
                        $user_element = "user";
                        foreach ($members as $member) {
-                               $user = DI::twitterUser()->createFromContactId($member['contact-id'], $uid)->toArray();
+                               $user = DI::twitterUser()->createFromContactId($member['contact-id'], $uid, true)->toArray();
                                $users[] = $user;
                        }
                }
@@ -3246,7 +3107,7 @@ function api_lists_destroy($type)
                        'name' => $group['name'],
                        'id' => intval($gid),
                        'id_str' => (string) $gid,
-                       'user' => DI::twitterUser()->createFromUserId($uid)->toArray()
+                       'user' => DI::twitterUser()->createFromUserId($uid, true)->toArray()
                ];
 
                return DI::apiResponse()->formatData("lists", $type, ['lists' => $list]);
@@ -3311,7 +3172,7 @@ function api_lists_create($type)
                        'name' => $success['name'],
                        'id' => intval($success['gid']),
                        'id_str' => (string) $success['gid'],
-                       'user' => DI::twitterUser()->createFromUserId($uid)->toArray()
+                       'user' => DI::twitterUser()->createFromUserId($uid, true)->toArray()
                ];
 
                return DI::apiResponse()->formatData("lists", $type, ['lists' => $grp]);
@@ -3427,7 +3288,7 @@ function api_lists_update($type)
                        'name' => $name,
                        'id' => intval($gid),
                        'id_str' => (string) $gid,
-                       'user' => DI::twitterUser()->createFromUserId($uid)->toArray()
+                       'user' => DI::twitterUser()->createFromUserId($uid, true)->toArray()
                ];
 
                return DI::apiResponse()->formatData("lists", $type, ['lists' => $list]);
@@ -3516,7 +3377,7 @@ function api_friendica_direct_messages_search($type, $box = "")
        $uid = BaseApi::getCurrentUserID();
 
        // params
-       $user_info = DI::twitterUser()->createFromUserId($uid)->toArray();
+       $user_info = DI::twitterUser()->createFromUserId($uid, true)->toArray();
        $searchstring = $_REQUEST['searchstring'] ?? '';
 
        // error if no searchstring specified
@@ -3544,9 +3405,9 @@ function api_friendica_direct_messages_search($type, $box = "")
                foreach ($r as $item) {
                        if ($box == "inbox" || $item['from-url'] != $profile_url) {
                                $recipient = $user_info;
-                               $sender = DI::twitterUser()->createFromContactId($item['contact-id'], $uid)->toArray();
+                               $sender = DI::twitterUser()->createFromContactId($item['contact-id'], $uid, true)->toArray();
                        } elseif ($box == "sentbox" || $item['from-url'] == $profile_url) {
-                               $recipient = DI::twitterUser()->createFromContactId($item['contact-id'], $uid)->toArray();
+                               $recipient = DI::twitterUser()->createFromContactId($item['contact-id'], $uid, true)->toArray();
                                $sender = $user_info;
                        }