| version 1.135, 2015/11/24 17:21:05 |
version 1.136, 2016/01/15 17:26:58 |
|
|
| * http://platon.sk/projects/Metafox/ |
* http://platon.sk/projects/Metafox/ |
| */ |
*/ |
| |
|
| /* $Platon: Metafox/functions.inc.php,v 1.134 2015/10/28 14:23:47 igor Exp $ */ |
/* $Platon: Metafox/functions.inc.php,v 1.135 2015/11/24 17:21:05 igor Exp $ */ |
| |
|
| function ezin_eval($evalcode) /* {{{ */ |
function ezin_eval($evalcode) /* {{{ */ |
| { |
{ |
| Line 58 function ezin_process_text_flags(&$str, |
|
| Line 58 function ezin_process_text_flags(&$str, |
|
| // pad it with a space so we can match things at the start of the 1st line. |
// pad it with a space so we can match things at the start of the 1st line. |
| $str = ' ' . $str; |
$str = ' ' . $str; |
| |
|
| $http_substs && $str = preg_replace( |
$http_substs && $str = preg_replace_callback( |
| "#([\n ])([a-z]+?)://([a-z0-9\-\.,\?!%\*_\#:;~\\&$@\/=\+]+)#ie", |
"#([\n ])([a-z]+?)://([a-z0-9\-\.,\?!%\*_\#:;~\\&$@\/=\+]+)#i", |
| "'\\1<a href=\"\\2://\\3\" target=\"_blank\">\\2://'.Platon::pretty_substr('\\3',$max_word_size).'</a>'", $str); |
function($matches) { |
| |
return $matches[1].'<a href="'.$matches[2].'://'.$matches[3].'" target="_blank">'.$matches[2].'://'.Platon::pretty_substr($matches[3],$max_word_size).'</a>'; |
| |
}, |
| |
$str); |
| |
|
| $www_substs && $str = preg_replace( |
$www_substs && $str = preg_replace( |
| "#([\n ])www\.([a-z0-9\-]+)\.([a-z0-9\-.\~]+)((?:/[a-z0-9\-\.,\?!%\*_\#:;~\\&$@\/=\+]*)?)#i", |
"#([\n ])www\.([a-z0-9\-]+)\.([a-z0-9\-.\~]+)((?:/[a-z0-9\-\.,\?!%\*_\#:;~\\&$@\/=\+]*)?)#i", |
| "\\1<a href=\"http://www.\\2.\\3\\4\" target=\"_blank\">www.\\2.\\3\\4</a>", $str); |
"\\1<a href=\"http://www.\\2.\\3\\4\" target=\"_blank\">www.\\2.\\3\\4</a>", $str); |
| |
|
| $email_substs && $str = preg_replace( |
$email_substs && $str = preg_replace_callback( |
| "#([\n ])([a-z0-9\-_.]+?)@([\w\-]+\.([\w\-\.]+\.)?[\w]+)#ie", |
"#([\n ])([a-z0-9\-_.]+?)@([\w\-]+\.([\w\-\.]+\.)?[\w]+)#i", |
| '\'\\1\'.Platon::escape_email(\'\\2@\\3\', \'hypertext_link\')', $str); |
function($matches) { |
| |
return $matches[1].Platon::escape_email($matches[2].'@'.$matches[3], 'hypertext_link'); |
| |
}, |
| |
$str); |
| |
|
| if ($line_wrap_p) { |
if ($line_wrap_p) { |
| if ($special) { |
if ($special) { |
| Line 371 function ezin_handle_special_tags(&$str, |
|
| Line 377 function ezin_handle_special_tags(&$str, |
|
| $rrplc[] = ezin_str_rev_args(strrev('<a target="_blank" href="'.$repository_url),'\\2','"','\\1','>','\\2',strrev('</a>')); |
$rrplc[] = ezin_str_rev_args(strrev('<a target="_blank" href="'.$repository_url),'\\2','"','\\1','>','\\2',strrev('</a>')); |
| } /* }}} */ |
} /* }}} */ |
| if (strpos($mask, 'M') !== false) { /* {{{ */ |
if (strpos($mask, 'M') !== false) { /* {{{ */ |
| |
$str2 = strrev($str); |
| $opentag = ezin_str_rev_args(strrev('<mail-link'),'\s+','([^<>\s]+)','([^<>]*?)','>'); |
$opentag = ezin_str_rev_args(strrev('<mail-link'),'\s+','([^<>\s]+)','([^<>]*?)','>'); |
| $rpttr[] = sprintf('|%s\s*(.*?)\s*%s|sie', strrev('</mail-link>'), $opentag); |
$str2_pattern = sprintf('|%s\s*(.*?)\s*%s|si', strrev('</mail-link>'), $opentag); |
| $rpttr[] = sprintf('|%s|ie', $opentag); |
$str2 = preg_replace_callback($str2_pattern, function($matches) { return ezin_str_rev_args(strrev('<a href="'), strrev(Platon::escape_email(strrev($matches[3]), 'mailto')),'"',$matches[2],'>',$matches[1],strrev('</a>')); }, $str2); |
| $rrplc[] = ezin_str_rev_args("'",strrev('<a href="\''),'strrev(Platon::escape_email(strrev(\'\\3\'), \'mailto\'))','\'"','\\2'.'>'.'\\1'.strrev('</a>'),"'"); |
$str2_pattern = sprintf('|%s|i', $opentag); |
| $rrplc[] = 'strrev(Platon::escape_email(strrev(\'\\2\'), \'hypertext_link\', \'\\1\'))'; |
$str2 = preg_replace_callback($str2_pattern, function($matches) { return strrev(Platon::escape_email(strrev($matches[2]), 'hypertext_link', $matches[1])); }, $str2); |
| |
$str = strrev($str2); |
| } /* }}} */ |
} /* }}} */ |
| if (strpos($mask, 'S') !== false) { /* {{{ */ |
if (strpos($mask, 'S') !== false) { /* {{{ */ |
| switch($link_file_type) { |
switch($link_file_type) { |