X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=include%2Ftext.php;h=c7fb7a67d657376e3cd2469a7fc8f6dac23392cd;hb=b00426c9fb375c6b1d985f88d7132c8a669c2a7e;hp=0e33c678c23f85f68c35df7c374faa20cd1b7325;hpb=28b085569abe388473399555d9e3d5b9c7ce5580;p=friendica.git
diff --git a/include/text.php b/include/text.php
index 0e33c678c2..c7fb7a67d6 100644
--- a/include/text.php
+++ b/include/text.php
@@ -9,19 +9,38 @@
// depending on the order in which they were declared in the array.
require_once("include/template_processor.php");
+require_once("include/friendica_smarty.php");
if(! function_exists('replace_macros')) {
function replace_macros($s,$r) {
global $t;
-
- //$ts = microtime();
- $r = $t->replace($s,$r);
- //$tt = microtime() - $ts;
-
- //$a = get_app();
- //$a->page['debug'] .= "$tt
\n";
- return template_unescape($r);
+// $ts = microtime();
+ $a = get_app();
+
+ if($a->theme['template_engine'] === 'smarty3') {
+ $template = '';
+ if(gettype($s) === 'string') {
+ $template = $s;
+ $s = new FriendicaSmarty();
+ }
+ foreach($r as $key=>$value) {
+ if($key[0] === '$') {
+ $key = substr($key, 1);
+ }
+ $s->assign($key, $value);
+ }
+ $output = $s->parsed($template);
+ }
+ else {
+ $r = $t->replace($s,$r);
+
+ $output = template_unescape($r);
+ }
+// $tt = microtime() - $ts;
+// $a = get_app();
+// $a->page['debug'] .= "$tt
\n";
+ return $output;
}}
@@ -292,11 +311,11 @@ function alt_pager(&$a, $i) {
$o .= '
'; + $s = str_replace(array('', '', ''), array($mailquote, $mailquote, $mailquote), $s); return $s; } - $arr = explode(',',$item['attach']); + $arr = explode('[/attach],',$item['attach']); if(count($arr)) { $s .= ''; foreach($arr as $r) { $matches = false; $icon = ''; - $cnt = preg_match_all('|\[attach\]href=\"(.*?)\" length=\"(.*?)\" type=\"(.*?)\" title=\"(.*?)\"\[\/attach\]|',$r,$matches, PREG_SET_ORDER); + $cnt = preg_match_all('|\[attach\]href=\"(.*?)\" length=\"(.*?)\" type=\"(.*?)\" title=\"(.*?)\"|',$r,$matches, PREG_SET_ORDER); if($cnt) { foreach($matches as $mtch) { - $icontype = strtolower(substr($mtch[3],0,strpos($mtch[3],'/'))); + $filetype = strtolower(substr( $mtch[3], 0, strpos($mtch[3],'/') )); + if($filetype) { + $filesubtype = strtolower(substr( $mtch[3], strpos($mtch[3],'/') + 1 )); + $filesubtype = str_replace('.', '-', $filesubtype); + } + else { + $filetype = 'unkn'; + $filesubtype = 'unkn'; + } + + $icon = ''; + /*$icontype = strtolower(substr($mtch[3],0,strpos($mtch[3],'/'))); switch($icontype) { case 'video': case 'audio': @@ -1000,7 +1072,8 @@ function prepare_body($item,$attach = false) { default: $icon = ''; break; - } + }*/ + $title = ((strlen(trim($mtch[4]))) ? escape_tags(trim($mtch[4])) : escape_tags($mtch[1])); $title .= ' ' . $mtch[2] . ' ' . t('bytes'); if((local_user() == $item['uid']) && ($item['contact-id'] != $a->contact['id']) && ($item['network'] == NETWORK_DFRN))