diff options
Diffstat (limited to 'include/text.php')
-rw-r--r-- | include/text.php | 137 |
1 files changed, 69 insertions, 68 deletions
diff --git a/include/text.php b/include/text.php index 713911af2..7692a6f3e 100644 --- a/include/text.php +++ b/include/text.php @@ -9,6 +9,7 @@ use Michelf\MarkdownExtra; use Ramsey\Uuid\Uuid; use Ramsey\Uuid\Exception\UnableToBuildUuidException; +use Zotlabs\Lib\Config; use Zotlabs\Lib\Crypto; use Zotlabs\Lib\SvgSanitizer; use Zotlabs\Lib\Libzot; @@ -741,9 +742,9 @@ function logger($msg, $level = LOGGER_NORMAL, $priority = LOG_INFO) { $loglevel = LOGGER_ALL; } else { - $debugging = get_config('system', 'debugging'); - $loglevel = intval(get_config('system', 'loglevel')); - $logfile = get_config('system', 'logfile'); + $debugging = Config::Get('system', 'debugging'); + $loglevel = intval(Config::Get('system', 'loglevel')); + $logfile = Config::Get('system', 'logfile'); } if((! $debugging) || (! $logfile) || ($level > $loglevel)) @@ -846,9 +847,9 @@ function dlogger($msg, $level = 0) { if(App::$module == 'setup') return; - $debugging = get_config('system','debugging'); - $loglevel = intval(get_config('system','loglevel')); - $logfile = get_config('system','dlogfile'); + $debugging = Config::Get('system','debugging'); + $loglevel = intval(Config::Get('system','loglevel')); + $logfile = Config::Get('system','dlogfile'); if((! $debugging) || (! $logfile) || ($level > $loglevel)) return; @@ -1144,7 +1145,7 @@ function chanlink_cid($d) { function magiclink_url($observer,$myaddr,$url) { return (($observer) - ? z_root() . '/magic?f=&owa=1&bdest=' . bin2hex($url) . '&addr=' . $myaddr + ? z_root() . '/magic?owa=1&bdest=' . bin2hex($url) . '&addr=' . $myaddr : $url ); } @@ -1253,7 +1254,7 @@ function sslify($s) { // The downside is that http: media files will likely be blocked by your browser // Complain to your browser maker - $allow = get_config('system','sslify_everything'); + $allow = Config::Get('system','sslify_everything'); $pattern = (($allow) ? "/\<(.*?)src=[\"|'](http\:.*?)[\"|'](.*?)\>/" : "/\<img(.*?)src=[\"|'](http\:.*?)[\"|'](.*?)\>/" ); $matches = null; @@ -1407,7 +1408,7 @@ function list_smilies($default_only = false) { */ function smilies($s, $sample = false) { - if(intval(get_config('system', 'no_smilies')) + if(intval(Config::Get('system', 'no_smilies')) || (local_channel() && intval(get_pconfig(local_channel(), 'system', 'no_smilies')))) return $s; @@ -1578,15 +1579,13 @@ function theme_attachments(&$item) { $title = t('Size') . ' ' . (isset($r['length']) ? userReadableSize($r['length']) : t('unknown')); - $revision = $r['revision'] ?? ''; - require_once('include/channel.php'); if (isset($r['href'])) { if(is_foreigner($item['author_xchan'])) $url = $r['href']; else - $url = z_root() . '/magic?f=&owa=1&hash=' . $item['author_xchan'] . '&bdest=' . bin2hex($r['href'] . '/' . $revision); + $url = z_root() . '/magic?owa=1&bdest=' . bin2hex($r['href']); } if (isset($label) && isset($url) && isset($icon) && isset($title)) { @@ -1651,7 +1650,7 @@ function format_hashtags(&$item) { if($s) $s .= ' '; - $s .= '<span class="badge rounded-pill bg-info"><i class="fa fa-hashtag"></i> <a class="text-white" href="' . zid($t['url']) . '" >' . $term . '</a></span>'; + $s .= '<span class="badge rounded-pill bg-info"><i class="bi bi-hash"></i> <a class="text-white" href="' . zid($t['url']) . '" >' . $term . '</a></span>'; } } @@ -1674,7 +1673,7 @@ function format_mentions(&$item) { continue; if($s) $s .= ' '; - $s .= '<span class="badge rounded-pill bg-success"><i class="fa fa-at"></i> <a class="text-white" href="' . zid($t['url']) . '" >' . $term . '</a></span>'; + $s .= '<span class="badge rounded-pill bg-success"><i class="bi bi-at"></i> <a class="text-white" href="' . zid($t['url']) . '" >' . $term . '</a></span>'; } } @@ -2003,7 +2002,7 @@ function format_poll($item,$s,$opts) { $message .= t('Poll has ended'); } else { - $message .= sprintf(t('Poll ends in %s'), '<span class="autotime" title="' . $t . '"></span>'); + $message .= sprintf(t('Poll ends %s'), '<span class="autotime" title="' . $t . '"></span>'); } } @@ -2081,10 +2080,15 @@ function prepare_text($text, $content_type = 'text/bbcode', $opts = false) { default: require_once('include/bbcode.php'); - if(stristr($text, '[nosmile]')) - $s = bbcode($text, ((is_array($opts)) ? $opts : [] )); - else - $s = smilies(bbcode($text, ((is_array($opts)) ? $opts : [] ))); + // events are handled in format_event_obj() + if (empty($opts['is_event_item'])) { + if(stristr($text, '[nosmile]')) { + $s = bbcode($text, ((is_array($opts)) ? $opts : [] )); + } + else { + $s = smilies(bbcode($text, ((is_array($opts)) ? $opts : [] ))); + } + } $s = zidify_links($s); @@ -2113,7 +2117,7 @@ function create_export_photo_body(&$item) { * @return string */ function feed_hublinks() { - $hub = get_config('system', 'huburl'); + $hub = Config::Get('system', 'huburl'); $hubxml = ''; if(strlen($hub)) { @@ -2496,7 +2500,7 @@ function check_webbie($arr) { // These names conflict with the CalDAV server $taken = [ 'principals', 'addressbooks', 'calendars' ]; - $reservechan = get_config('system','reserved_channels'); + $reservechan = Config::Get('system','reserved_channels'); if(strlen($reservechan)) { $taken = array_merge($taken,explode(',', $reservechan)); } @@ -2633,13 +2637,13 @@ function xchan_query(&$items, $abook = true, $effective_uid = 0) { if(count($arr)) { if($abook) { $chans = q("select * from xchan left join hubloc on hubloc_hash = xchan_hash left join abook on abook_xchan = xchan_hash and abook_channel = %d - where xchan_hash in (" . protect_sprintf(implode(',', $arr)) . ") and hubloc_deleted = 0 order by hubloc_primary desc", + where xchan_hash in (" . protect_sprintf(implode(',', $arr)) . ") order by hubloc_primary desc, hubloc_deleted ASC", intval($item['uid']) ); } else { $chans = q("select xchan.*,hubloc.* from xchan left join hubloc on hubloc_hash = xchan_hash - where xchan_hash in (" . protect_sprintf(implode(',', $arr)) . ") and hubloc_deleted = 0 order by hubloc_primary desc"); + where xchan_hash in (" . protect_sprintf(implode(',', $arr)) . ") order by hubloc_primary desc, hubloc_deleted ASC"); } $xchans = q("select * from xchan where xchan_hash in (" . protect_sprintf(implode(',',$arr)) . ") and xchan_network in ('rss','unknown', 'anon', 'token')"); if(! $chans) @@ -3197,53 +3201,53 @@ function linkify_tags(&$body, $uid, $in_network = true) { function getIconFromType($type) { $iconMap = array( //Folder - 'Collection' => 'fa-folder-o', - 'multipart/mixed' => 'fa-folder-o', //dirs in attach use this mime type + 'Collection' => 'bi-folder', + 'multipart/mixed' => 'bi-folder', //dirs in attach use this mime type //Common file - 'application/octet-stream' => 'fa-file-o', + 'application/octet-stream' => 'bi-file-earmark', //Text - 'text/plain' => 'fa-file-text-o', - 'text/markdown' => 'fa-file-text-o', - 'text/bbcode' => 'fa-file-text-o', - 'text/html' => 'fa-file-text-o', - 'application/msword' => 'fa-file-word-o', - 'application/pdf' => 'fa-file-pdf-o', - 'application/vnd.oasis.opendocument.text' => 'fa-file-word-o', - 'application/epub+zip' => 'fa-book', + 'text/plain' => 'bi-file-earmark-text', + 'text/markdown' => 'bi-filetype-md', + 'text/bbcode' => 'bi-file-earmark-text', + 'text/html' => 'bi-filetype-html', + 'application/msword' => 'bi-file-earmark-word', + 'application/pdf' => 'bi-file-earmark-pdf', + 'application/vnd.oasis.opendocument.text' => 'bifile--earmark-text', + 'application/epub+zip' => 'bi-file-earmark-text', //Spreadsheet - 'application/vnd.oasis.opendocument.spreadsheet' => 'fa-file-excel-o', - 'application/vnd.ms-excel' => 'fa-file-excel-o', + 'application/vnd.oasis.opendocument.spreadsheet' => 'bi-file-earmark-spreadsheet', + 'application/vnd.ms-excel' => 'bi-file-earmark-spreadsheet', //Image - 'image/jpeg' => 'fa-picture-o', - 'image/png' => 'fa-picture-o', - 'image/gif' => 'fa-picture-o', - 'image/webp' => 'fa-picture-o', - 'image/svg+xml' => 'fa-picture-o', + 'image/jpeg' => 'bi-file-earmark-image', + 'image/png' => 'bi-file-earmark-image', + 'image/gif' => 'bi-file-earmark-image', + 'image/webp' => 'bi-file-earmark-image', + 'image/svg+xml' => 'bi-filetype-svg', //Archive - 'application/zip' => 'fa-file-archive-o', - 'application/x-rar-compressed' => 'fa-file-archive-o', + 'application/zip' => 'bi-file-earmark-zip', + 'application/x-rar-compressed' => 'bi-file-earmark-zip', //Audio - 'audio/mpeg' => 'fa-file-audio-o', - 'audio/wav' => 'fa-file-audio-o', - 'application/ogg' => 'fa-file-audio-o', - 'audio/ogg' => 'fa-file-audio-o', - 'audio/webm' => 'fa-file-audio-o', - 'audio/mp4' => 'fa-file-audio-o', + 'audio/mpeg' => 'bi-file-earmark-music', + 'audio/wav' => 'bi-file-earmark-music', + 'application/ogg' => 'bi-file-earmark-music', + 'audio/ogg' => 'bi-file-earmark-music', + 'audio/webm' => 'bi-file-earmark-music', + 'audio/mp4' => 'bi-file-earmark-music', //Video - 'video/quicktime' => 'fa-file-video-o', - 'video/webm' => 'fa-file-video-o', - 'video/mp4' => 'fa-file-video-o', - 'video/x-matroska' => 'fa-file-video-o' + 'video/quicktime' => 'bi-file-earmark-play', + 'video/webm' => 'bi-file-earmark-play', + 'video/mp4' => 'bi-file-earmark-play', + 'video/x-matroska' => 'bi-file-earmark-play' ); $catMap = [ - 'application' => 'fa-file-code-o', - 'multipart' => 'fa-folder', - 'audio' => 'fa-file-audio-o', - 'video' => 'fa-file-video-o', - 'text' => 'fa-file-text-o', - 'image' => 'fa=file-picture-o', - 'message' => 'fa-file-text-o' + 'application' => 'bi-file-earmark', + 'multipart' => 'bi-folder', + 'audio' => 'bi-file-earmark-music', + 'video' => 'bi-file-earmark-play', + 'text' => 'bi-file-earmark-text', + 'image' => 'bi-file-earmark-image', + 'message' => 'bi-file-earmark-text' ]; @@ -3260,7 +3264,7 @@ function getIconFromType($type) { } if(! $iconFromType) { - $iconFromType = 'fa-file-o'; + $iconFromType = 'bi-file-earmark'; } @@ -3749,12 +3753,9 @@ function cleanup_bbcode($body) { $body = preg_replace_callback('/\[img(.*?)\[\/(img)\]/ism','\red_escape_codeblock',$body); $body = preg_replace_callback('/\[zmg(.*?)\[\/(zmg)\]/ism','\red_escape_codeblock',$body); - $body = preg_replace_callback("/([^\]\='".'"'."\;\/\{]|^|\#\^)(https?\:\/\/[a-zA-Z0-9\pL\:\/\-\?\&\;\.\=\@\_\~\#\%\$\!\\ -+\,\(\)]+)/ismu", '\nakedoembed', $body); - - $body = preg_replace_callback("/([^\]\='".'"'."\;\/\{]|^|\#\^)(https?\:\/\/[a-zA-Z0-9\pL\:\/\-\?\&\;\.\=\@\_\~\#\%\$\!\\ -+\,\(\)]+)/ismu", '\red_zrl_callback', $body); + $body = preg_replace_callback("/([^\]\='".'"'."\;\/\{]|^|\#\^)(https?\:\/\/[a-zA-Z0-9\pL\:\/\-\?\&\;\.\=\@\_\~\#\%\$\!\\+\,\(\)]+)/ismu", '\nakedoembed', $body); + $body = preg_replace_callback("/([^\]\='".'"'."\;\/\{]|^|\#\^)(https?\:\/\/[a-zA-Z0-9\pL\:\/\-\?\&\;\.\=\@\_\~\#\%\$\!\\+\,\(\)]+)/ismu", '\red_zrl_callback', $body); $body = preg_replace_callback('/\[\$b64code(.*?)\[\/(code)\]/ism','\red_unescape_codeblock',$body); $body = preg_replace_callback('/\[\$b64summary(.*?)\[\/(summary)\]/ism','\red_unescape_codeblock',$body); @@ -3840,7 +3841,7 @@ function featured_sort($a,$b) { function unpunify($s) { - if (function_exists('idn_to_utf8') && isset($s)) { + if (function_exists('idn_to_utf8') && !empty($s)) { return idn_to_utf8($s); } return $s; @@ -3848,7 +3849,7 @@ function unpunify($s) { function punify($s) { - if (function_exists('idn_to_ascii') && isset($s)) { + if (function_exists('idn_to_ascii') && !empty($s)) { return idn_to_ascii($s); } return $s; |