use Friendica\Core\Cache;
use Friendica\Core\Config;
use Friendica\Core\L10n;
+use Friendica\Core\Logger;
use Friendica\Core\Protocol;
+use Friendica\Core\Renderer;
use Friendica\Core\System;
use Friendica\Model\Contact;
use Friendica\Model\Event;
use Friendica\Util\Network;
use Friendica\Util\ParseUrl;
use Friendica\Util\Proxy as ProxyUtils;
+use Friendica\Util\Strings;
class BBCode extends BaseObject
{
$c = preg_match_all('/\[img.*?\](.*?)\[\/img\]/ism', $s, $matches, PREG_SET_ORDER);
if ($c) {
foreach ($matches as $mtch) {
- logger('scale_external_image: ' . $mtch[1]);
+ Logger::log('scale_external_image: ' . $mtch[1]);
$hostname = str_replace('www.', '', substr(System::baseUrl(), strpos(System::baseUrl(), '://') + 3));
if (stristr($mtch[1], $hostname)) {
$Image->scaleDown(640);
$new_width = $Image->getWidth();
$new_height = $Image->getHeight();
- logger('scale_external_images: ' . $orig_width . '->' . $new_width . 'w ' . $orig_height . '->' . $new_height . 'h' . ' match: ' . $mtch[0], LOGGER_DEBUG);
+ Logger::log('scale_external_images: ' . $orig_width . '->' . $new_width . 'w ' . $orig_height . '->' . $new_height . 'h' . ' match: ' . $mtch[0], Logger::DEBUG);
$s = str_replace(
$mtch[0],
'[img=' . $new_width . 'x' . $new_height. ']' . $scaled . '[/img]'
: ''),
$s
);
- logger('scale_external_images: new string: ' . $s, LOGGER_DEBUG);
+ Logger::log('scale_external_images: new string: ' . $s, Logger::DEBUG);
}
}
}
// than the maximum, then don't waste time looking for the images
if ($maxlen && (strlen($body) > $maxlen)) {
- logger('the total body length exceeds the limit', LOGGER_DEBUG);
+ Logger::log('the total body length exceeds the limit', Logger::DEBUG);
$orig_body = $body;
$new_body = '';
if (($textlen + $img_start) > $maxlen) {
if ($textlen < $maxlen) {
- logger('the limit happens before an embedded image', LOGGER_DEBUG);
+ Logger::log('the limit happens before an embedded image', Logger::DEBUG);
$new_body = $new_body . substr($orig_body, 0, $maxlen - $textlen);
$textlen = $maxlen;
}
if (($textlen + $img_end) > $maxlen) {
if ($textlen < $maxlen) {
- logger('the limit happens before the end of a non-embedded image', LOGGER_DEBUG);
+ Logger::log('the limit happens before the end of a non-embedded image', Logger::DEBUG);
$new_body = $new_body . substr($orig_body, 0, $maxlen - $textlen);
$textlen = $maxlen;
}
if (($textlen + strlen($orig_body)) > $maxlen) {
if ($textlen < $maxlen) {
- logger('the limit happens after the end of the last image', LOGGER_DEBUG);
+ Logger::log('the limit happens after the end of the last image', Logger::DEBUG);
$new_body = $new_body . substr($orig_body, 0, $maxlen - $textlen);
}
} else {
- logger('the text size with embedded images extracted did not violate the limit', LOGGER_DEBUG);
+ Logger::log('the text size with embedded images extracted did not violate the limit', Logger::DEBUG);
$new_body = $new_body . $orig_body;
}
$attributes['avatar'] = ProxyUtils::proxifyUrl($attributes['avatar'], false, ProxyUtils::SIZE_THUMB);
}
- return $callback($attributes, $author_contact, $match[3], trim($match[1]) != '');
+ return $match[1] . $callback($attributes, $author_contact, $match[3], trim($match[1]) != '');
},
$text
);
case 3: // Diaspora
$headline = '<p><b>' . html_entity_decode('♲ ', ENT_QUOTES, 'UTF-8') . $mention . ':</b></p>' . "\n";
- if (stripos(normalise_link($attributes['link']), 'http://twitter.com/') === 0) {
+ if (stripos(Strings::normaliseLink($attributes['link']), 'http://twitter.com/') === 0) {
$text = ($is_quote_share? '<hr />' : '') . '<p><a href="' . $attributes['link'] . '">' . $attributes['link'] . '</a></p>' . "\n";
} else {
$text = ($is_quote_share? '<hr />' : '') . $headline . '<blockquote>' . trim($content) . '</blockquote>' . "\n";
break;
default:
// Transforms quoted tweets in rich attachments to avoid nested tweets
- if (stripos(normalise_link($attributes['link']), 'http://twitter.com/') === 0 && OEmbed::isAllowedURL($attributes['link'])) {
+ if (stripos(Strings::normaliseLink($attributes['link']), 'http://twitter.com/') === 0 && OEmbed::isAllowedURL($attributes['link'])) {
try {
$text = ($is_quote_share? '<br />' : '') . OEmbed::getHTML($attributes['link']);
} catch (Exception $e) {
} else {
$text = ($is_quote_share? "\n" : '');
- $tpl = get_markup_template('shared_content.tpl');
- $text .= replace_macros($tpl, [
+ $tpl = Renderer::getMarkupTemplate('shared_content.tpl');
+ $text .= Renderer::replaceMacros($tpl, [
'$profile' => $attributes['profile'],
'$avatar' => $attributes['avatar'],
'$author' => $attributes['author'],
// Handle Diaspora posts
$text = preg_replace_callback(
- "&\[url=/posts/([^\[\]]*)\](.*)\[\/url\]&Usi",
+ "&\[url=/?posts/([^\[\]]*)\](.*)\[\/url\]&Usi",
function ($match) {
return "[url=" . System::baseUrl() . "/display/" . $match[1] . "]" . $match[2] . "[/url]";
}, $text
$text = preg_replace("/\[mail\=([$MAILSearchString]*)\](.*?)\[\/mail\]/", '<a href="mailto:$1">$2</a>', $text);
// leave open the posibility of [map=something]
- // this is replaced in prepare_body() which has knowledge of the item location
+ // this is replaced in Item::prepareBody() which has knowledge of the item location
if (strpos($text, '[/map]') !== false) {
$text = preg_replace_callback(
$text = str_replace('[hr]', '<hr />', $text);
- // This is actually executed in prepare_body()
+ // This is actually executed in Item::prepareBody()
$text = str_replace('[nosmile]', '', $text);