X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FModel%2FItem.php;h=939ee43bf4f45b9dfda722969ac6c76960572fa4;hb=e0a763b07f12ecb7389925100959f9ac6ebe85a8;hp=c088685e8df421ccdfff3c8a8e1b8e5494b3e6cf;hpb=063f0e9cb06bb09d06c2630d4b6cecc5eb381fdc;p=friendica.git diff --git a/src/Model/Item.php b/src/Model/Item.php index c088685e8d..939ee43bf4 100644 --- a/src/Model/Item.php +++ b/src/Model/Item.php @@ -36,10 +36,6 @@ use Friendica\Util\Security; use Friendica\Util\Strings; use Text_LanguageDetect; -require_once 'boot.php'; -require_once 'include/items.php'; -require_once 'include/text.php'; - class Item extends BaseObject { // Posting types, inspired by https://www.w3.org/TR/activitystreams-vocabulary/#object-types @@ -832,7 +828,7 @@ class Item extends BaseObject $files = $fields['file']; $fields['file'] = null; } else { - $files = ''; + $files = null; } $delivery_data = ['postopts' => defaults($fields, 'postopts', ''), @@ -911,7 +907,7 @@ class Item extends BaseObject } } - if (!empty($files)) { + if (!is_null($files)) { Term::insertFromFileFieldByItemId($item['id'], $files); if (!empty($item['file'])) { DBA::update('item', ['file' => ''], ['id' => $item['id']]); @@ -1011,10 +1007,8 @@ class Item extends BaseObject $matches = false; $cnt = preg_match_all('/<(.*?)>/', $item['file'], $matches, PREG_SET_ORDER); - if ($cnt) - { - foreach ($matches as $mtch) - { + if ($cnt) { + foreach ($matches as $mtch) { FileTag::unsaveFile($item['uid'], $item['id'], $mtch[1],true); } } @@ -1023,10 +1017,8 @@ class Item extends BaseObject $cnt = preg_match_all('/\[(.*?)\]/', $item['file'], $matches, PREG_SET_ORDER); - if ($cnt) - { - foreach ($matches as $mtch) - { + if ($cnt) { + foreach ($matches as $mtch) { FileTag::unsaveFile($item['uid'], $item['id'], $mtch[1],false); } } @@ -1150,7 +1142,7 @@ class Item extends BaseObject private static function guid($item, $notify) { if (!empty($item['guid'])) { - return Strings::removeTags(trim($item['guid'])); + return Strings::escapeTags(trim($item['guid'])); } if ($notify) { @@ -1265,7 +1257,7 @@ class Item extends BaseObject } $item['guid'] = self::guid($item, $notify); - $item['uri'] = Strings::removeTags(trim(defaults($item, 'uri', self::newURI($item['uid'], $item['guid'])))); + $item['uri'] = Strings::escapeTags(trim(defaults($item, 'uri', self::newURI($item['uid'], $item['guid'])))); // Store URI data $item['uri-id'] = ItemURI::insert(['uri' => $item['uri'], 'guid' => $item['guid']]); @@ -1363,15 +1355,15 @@ class Item extends BaseObject $item['owner-name'] = trim(defaults($item, 'owner-name', '')); $item['owner-link'] = trim(defaults($item, 'owner-link', '')); $item['owner-avatar'] = trim(defaults($item, 'owner-avatar', '')); - $item['received'] = ((x($item, 'received') !== false) ? DateTimeFormat::utc($item['received']) : DateTimeFormat::utcNow()); - $item['created'] = ((x($item, 'created') !== false) ? DateTimeFormat::utc($item['created']) : $item['received']); - $item['edited'] = ((x($item, 'edited') !== false) ? DateTimeFormat::utc($item['edited']) : $item['created']); - $item['changed'] = ((x($item, 'changed') !== false) ? DateTimeFormat::utc($item['changed']) : $item['created']); - $item['commented'] = ((x($item, 'commented') !== false) ? DateTimeFormat::utc($item['commented']) : $item['created']); + $item['received'] = (isset($item['received']) ? DateTimeFormat::utc($item['received']) : DateTimeFormat::utcNow()); + $item['created'] = (isset($item['created']) ? DateTimeFormat::utc($item['created']) : $item['received']); + $item['edited'] = (isset($item['edited']) ? DateTimeFormat::utc($item['edited']) : $item['created']); + $item['changed'] = (isset($item['changed']) ? DateTimeFormat::utc($item['changed']) : $item['created']); + $item['commented'] = (isset($item['commented']) ? DateTimeFormat::utc($item['commented']) : $item['created']); $item['title'] = trim(defaults($item, 'title', '')); $item['location'] = trim(defaults($item, 'location', '')); $item['coord'] = trim(defaults($item, 'coord', '')); - $item['visible'] = ((x($item, 'visible') !== false) ? intval($item['visible']) : 1); + $item['visible'] = (isset($item['visible']) ? intval($item['visible']) : 1); $item['deleted'] = 0; $item['parent-uri'] = trim(defaults($item, 'parent-uri', $item['uri'])); $item['post-type'] = defaults($item, 'post-type', self::PT_ARTICLE); @@ -1630,7 +1622,7 @@ class Item extends BaseObject // It is mainly used in the "post_local" hook. unset($item['api_source']); - if (x($item, 'cancel')) { + if (!empty($item['cancel'])) { Logger::log('post cancelled by addon.'); return 0; } @@ -2452,15 +2444,15 @@ class Item extends BaseObject $basetag = str_replace('_',' ',substr($tag,1)); - $newtag = '#[url=' . System::baseUrl() . '/search?tag=' . rawurlencode($basetag) . ']' . $basetag . '[/url]'; + $newtag = '#[url=' . System::baseUrl() . '/search?tag=' . $basetag . ']' . $basetag . '[/url]'; $item["body"] = str_replace($tag, $newtag, $item["body"]); if (!stristr($item["tag"], "/search?tag=" . $basetag . "]" . $basetag . "[/url]")) { if (strlen($item["tag"])) { - $item["tag"] = ','.$item["tag"]; + $item["tag"] = ',' . $item["tag"]; } - $item["tag"] = $newtag.$item["tag"]; + $item["tag"] = $newtag . $item["tag"]; } } @@ -3218,7 +3210,7 @@ class Item extends BaseObject } } - public static function getPermissionsSQLByUserId($owner_id, $remote_verified = false, $groups = null) + public static function getPermissionsSQLByUserId($owner_id, $remote_verified = false, $groups = null, $remote_cid = null) { $local_user = local_user(); $remote_user = remote_user(); @@ -3241,7 +3233,7 @@ class Item extends BaseObject * If pre-verified, the caller is expected to have already * done this and passed the groups into this function. */ - $set = PermissionSet::get($owner_id, $remote_user, $groups); + $set = PermissionSet::get($owner_id, $remote_cid, $groups); if (!empty($set)) { $sql_set = " OR (`item`.`private` IN (1,2) AND `item`.`wall` AND `item`.`psid` IN (" . implode(',', $set) . "))"; @@ -3447,7 +3439,7 @@ class Item extends BaseObject $filesubtype = 'unkn'; } - $title = Strings::escapeHtml(trim(!empty($mtch[4]) ? $mtch[4] : $mtch[1])); + $title = Strings::escapeHtml(trim(defaults($mtch, 4, $mtch[1]))); $title .= ' ' . $mtch[2] . ' ' . L10n::t('bytes'); $icon = '
'; @@ -3459,7 +3451,7 @@ class Item extends BaseObject } // Map. - if (strpos($s, '
') !== false && x($item, 'coord')) { + if (strpos($s, '
') !== false && !empty($item['coord'])) { $x = Map::byCoordinates(trim($item['coord'])); if ($x) { $s = preg_replace('/\
/', '$0' . $x, $s);