X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=include%2Fitems.php;h=38f4a58fba4bfb3b1e157c78fa9b5e0fb66baea1;hb=b837c487c5ead3228298d7e96f9e096457829488;hp=ef55acab14a4fdcd826c97a311b985b9bef9024a;hpb=ab8997f9db910ba70c592bf106a7f5fc41a55b2d;p=friendica.git diff --git a/include/items.php b/include/items.php index ef55acab14..38f4a58fba 100644 --- a/include/items.php +++ b/include/items.php @@ -1,9 +1,24 @@ . + * */ -use Friendica\Core\Config; use Friendica\Core\Hook; use Friendica\Core\Logger; use Friendica\Core\Protocol; @@ -73,7 +88,7 @@ function add_page_info_data(array $data, $no_photos = false) $preview = str_replace(["[", "]"], ["[", "]"], htmlentities($data["images"][0]["src"], ENT_QUOTES, 'UTF-8', false)); // if the preview picture is larger than 500 pixels then show it in a larger mode // But only, if the picture isn't higher than large (To prevent huge posts) - if (!Config::get('system', 'always_show_preview') && ($data["images"][0]["width"] >= 500) + if (!DI::config()->get('system', 'always_show_preview') && ($data["images"][0]["width"] >= 500) && ($data["images"][0]["width"] >= $data["images"][0]["height"])) { $text .= " image='".$preview."'"; } else { @@ -88,8 +103,7 @@ function add_page_info_data(array $data, $no_photos = false) $hashtags = "\n"; foreach ($data["keywords"] as $keyword) { /// @TODO make a positive list of allowed characters - $hashtag = str_replace([" ", "+", "/", ".", "#", "'", "’", "`", "(", ")", "„", "“"], - ["", "", "", "", "", "", "", "", "", "", "", ""], $keyword); + $hashtag = str_replace([' ', '+', '/', '.', '#', '@', "'", '"', '’', '`', '(', ')', '„', '“'], '', $keyword); $hashtags .= "#[url=" . DI::baseUrl() . "/search?tag=" . $hashtag . "]" . $hashtag . "[/url] "; } } @@ -127,25 +141,22 @@ function query_page_info($url, $photo = "", $keywords = false, $keyword_blacklis return $data; } -function add_page_keywords($url, $photo = "", $keywords = false, $keyword_blacklist = "") +function get_page_keywords($url, $photo = "", $keywords = false, $keyword_blacklist = "") { $data = query_page_info($url, $photo, $keywords, $keyword_blacklist); + if (empty($data["keywords"]) || !is_array($data["keywords"])) { + return []; + } - $tags = ""; - if (isset($data["keywords"]) && count($data["keywords"])) { - foreach ($data["keywords"] as $keyword) { - $hashtag = str_replace([" ", "+", "/", ".", "#", "'"], - ["", "", "", "", "", ""], $keyword); - - if ($tags != "") { - $tags .= ", "; - } + $taglist = []; + foreach ($data['keywords'] as $keyword) { + $hashtag = str_replace([" ", "+", "/", ".", "#", "'"], + ["", "", "", "", "", ""], $keyword); - $tags .= "#[url=" . DI::baseUrl() . "/search?tag=" . $hashtag . "]" . $hashtag . "[/url]"; - } + $taglist[] = $hashtag; } - return $tags; + return $taglist; } function add_page_info($url, $no_photos = false, $photo = "", $keywords = false, $keyword_blacklist = "")