Файл: vxas.ru/sys/fnc/links.php
Строк: 31
<?
function img_preg($arr)
{
return '<img src="http://'.htmlspecialchars($_SERVER['HTTP_HOST']).'/go.php?go='.base64_encode(html_entity_decode($arr[1])).'" alt="img" />';
}
function links_preg1($arr)
{
global $set;
if (preg_match('#^http://'.preg_quote($_SERVER['HTTP_HOST']).'#',$arr[1]) || !preg_match('#://#',$arr[1]))
return '<a href="'.htmlspecialchars($arr[1]).'">'.htmlspecialchars($arr[2]).'</a>';
else
return '<a'.htmlspecialchars($set['web']?' target="_blank"':null).' href="http://'.htmlspecialchars($_SERVER['HTTP_HOST']).'/go.php?go='.base64_encode(html_entity_decode($arr[1])).'">'.htmlspecialchars($arr[2]).'</a>';
}
function links_preg2($arr)
{
global $set;
if (preg_match('#^http://'.preg_quote($_SERVER['HTTP_HOST']).'#',$arr[2]))
return $arr[1].'<a href="'.htmlspecialchars($arr[2]).'">'.htmlspecialchars($arr[2]).'</a>'.$arr[4];
else
return $arr[1].'<a'.htmlspecialchars($set['web']?' target="_blank"':null).' href="http://'.htmlspecialchars($_SERVER['HTTP_HOST']).'/go.php?go='.base64_encode(html_entity_decode($arr[2])).'">'.htmlspecialchars($arr[2]).'</a>'.$arr[4];
}
function links($msg)
{
global $set;
if ($set['bb_img'])$msg=preg_replace_callback('/[img](.+)[/img]/isU', 'img_preg', $msg);
if ($set['bb_url'])$msg=preg_replace_callback('/[url=(.+)](.+)[/url]/isU', 'links_preg1', $msg);
if ($set['bb_http'])$msg=preg_replace_callback('~(^|s)([a-z]+://([^ rnt`'"]+))(s|$)~iu', 'links_preg2', $msg);
return $msg;
}
?>