]> git.mxchange.org Git - friendica.git/blobdiff - include/api.php
Merge pull request #9802 from annando/mod-include
[friendica.git] / include / api.php
index 87ce982b099fb9f5667160354315096dbe8cdc54..b649d224816a006a2c028fbc1c4b8438529bccd4 100644 (file)
@@ -41,6 +41,7 @@ use Friendica\Model\Item;
 use Friendica\Model\Mail;
 use Friendica\Model\Notify;
 use Friendica\Model\Photo;
+use Friendica\Model\Post;
 use Friendica\Model\User;
 use Friendica\Model\UserItem;
 use Friendica\Model\Verb;
@@ -67,7 +68,6 @@ use Friendica\Util\Proxy as ProxyUtils;
 use Friendica\Util\Strings;
 use Friendica\Util\XML;
 
-require_once __DIR__ . '/../mod/share.php';
 require_once __DIR__ . '/../mod/item.php';
 require_once __DIR__ . '/../mod/wall_upload.php';
 
@@ -1366,7 +1366,7 @@ function api_get_last_status($ownerId, $uid)
  */
 function api_get_item(array $condition)
 {
-       $item = Item::selectFirst(Item::DISPLAY_FIELDLIST, $condition, ['order' => ['id' => true]]);
+       $item = Post::selectFirst(Item::DISPLAY_FIELDLIST, $condition, ['order' => ['id' => true]]);
 
        return $item;
 }
@@ -1674,7 +1674,7 @@ function api_statuses_home_timeline($type)
        }
 
        if (!empty($idarray)) {
-               $unseen = Item::exists(['unseen' => true, 'id' => $idarray]);
+               $unseen = Post::exists(['unseen' => true, 'id' => $idarray]);
                if ($unseen) {
                        Item::update(['unseen' => false], ['unseen' => true, 'id' => $idarray]);
                }
@@ -1881,12 +1881,12 @@ function api_statuses_show($type)
        $conversation = !empty($_REQUEST['conversation']);
 
        // try to fetch the item for the local user - or the public item, if there is no local one
-       $uri_item = Item::selectFirst(['uri'], ['id' => $id]);
+       $uri_item = Post::selectFirst(['uri'], ['id' => $id]);
        if (!DBA::isResult($uri_item)) {
                throw new BadRequestException("There is no status with this id.");
        }
 
-       $item = Item::selectFirst(['id'], ['uri' => $uri_item['uri'], 'uid' => [0, api_user()]], ['order' => ['uid' => true]]);
+       $item = Post::selectFirst(['id'], ['uri' => $uri_item['uri'], 'uid' => [0, api_user()]], ['order' => ['uid' => true]]);
        if (!DBA::isResult($item)) {
                throw new BadRequestException("There is no status with this id.");
        }
@@ -1964,12 +1964,12 @@ function api_conversation_show($type)
        Logger::info(API_LOG_PREFIX . '{subaction}', ['module' => 'api', 'action' => 'conversation', 'subaction' => 'show', 'id' => $id]);
 
        // try to fetch the item for the local user - or the public item, if there is no local one
-       $item = Item::selectFirst(['parent-uri'], ['id' => $id]);
+       $item = Post::selectFirst(['parent-uri'], ['id' => $id]);
        if (!DBA::isResult($item)) {
                throw new BadRequestException("There is no status with this id.");
        }
 
-       $parent = Item::selectFirst(['id'], ['uri' => $item['parent-uri'], 'uid' => [0, api_user()]], ['order' => ['uid' => true]]);
+       $parent = Post::selectFirst(['id'], ['uri' => $item['parent-uri'], 'uid' => [0, api_user()]], ['order' => ['uid' => true]]);
        if (!DBA::isResult($parent)) {
                throw new BadRequestException("There is no status with this id.");
        }
@@ -2164,10 +2164,10 @@ function api_statuses_mentions($type)
        // get last network messages
 
        // params
-       $since_id = $_REQUEST['since_id'] ?? 0;
-       $max_id   = $_REQUEST['max_id']   ?? 0;
-       $count    = $_REQUEST['count']    ?? 20;
-       $page     = $_REQUEST['page']     ?? 1;
+       $since_id = intval($_REQUEST['since_id'] ?? 0);
+       $max_id   = intval($_REQUEST['max_id']   ?? 0);
+       $count    = intval($_REQUEST['count']    ?? 20);
+       $page     = intval($_REQUEST['page']     ?? 1);
 
        $start = max(0, ($page - 1) * $count);
 
@@ -4220,7 +4220,7 @@ function api_fr_photo_create_update($type)
        $deny_cid  = $_REQUEST['deny_cid' ] ?? null;
        $allow_gid = $_REQUEST['allow_gid'] ?? null;
        $deny_gid  = $_REQUEST['deny_gid' ] ?? null;
-       $visibility = !empty($_REQUEST['visibility']) && $_REQUEST['visibility'] !== "false";
+       $visibility = !$allow_cid && !$deny_cid && !$allow_gid && !$deny_gid;
 
        // do several checks on input parameters
        // we do not allow calls without album string
@@ -4766,7 +4766,6 @@ function post_photo_item($hash, $allow_cid, $deny_cid, $allow_gid, $deny_gid, $f
        $arr['guid']          = System::createUUID();
        $arr['uid']           = intval(api_user());
        $arr['uri']           = $uri;
-       $arr['parent-uri']    = $uri;
        $arr['type']          = 'photo';
        $arr['wall']          = 1;
        $arr['resource-id']   = $hash;
@@ -4881,7 +4880,7 @@ function prepare_photo_data($type, $scale, $photo_id)
 
        // retrieve item element for getting activities (like, dislike etc.) related to photo
        $condition = ['uid' => api_user(), 'resource-id' => $photo_id, 'type' => 'photo'];
-       $item = Item::selectFirst(['id', 'uid', 'uri', 'parent', 'allow_cid', 'deny_cid', 'allow_gid', 'deny_gid'], $condition);
+       $item = Post::selectFirst(['id', 'uid', 'uri', 'parent', 'allow_cid', 'deny_cid', 'allow_gid', 'deny_gid'], $condition);
        if (!DBA::isResult($item)) {
                throw new NotFoundException('Photo-related item not found.');
        }
@@ -5077,7 +5076,7 @@ function api_share_as_retweet(&$item)
        }
 
        if (!empty($condition)) {
-               $original_item = Item::selectFirst([], $condition);
+               $original_item = Post::selectFirst([], $condition);
                if (DBA::isResult($original_item)) {
                        $reshared_item = array_merge($reshared_item, $original_item);
                }
@@ -5104,7 +5103,7 @@ function api_in_reply_to($item)
        $in_reply_to['screen_name'] = null;
 
        if (($item['thr-parent'] != $item['uri']) && ($item['gravity'] != GRAVITY_PARENT)) {
-               $parent = Item::selectFirst(['id'], ['uid' => $item['uid'], 'uri' => $item['thr-parent']]);
+               $parent = Post::selectFirst(['id'], ['uid' => $item['uid'], 'uri' => $item['thr-parent']]);
                if (DBA::isResult($parent)) {
                        $in_reply_to['status_id'] = intval($parent['id']);
                } else {
@@ -5114,7 +5113,7 @@ function api_in_reply_to($item)
                $in_reply_to['status_id_str'] = (string) intval($in_reply_to['status_id']);
 
                $fields = ['author-nick', 'author-name', 'author-id', 'author-link'];
-               $parent = Item::selectFirst($fields, ['id' => $in_reply_to['status_id']]);
+               $parent = Post::selectFirst($fields, ['id' => $in_reply_to['status_id']]);
 
                if (DBA::isResult($parent)) {
                        $in_reply_to['screen_name'] = (($parent['author-nick']) ? $parent['author-nick'] : $parent['author-name']);