This commit is contained in:
Комраков Василий 2015-09-01 19:59:03 +00:00
commit 06a3b619ac
3 changed files with 31 additions and 12 deletions

2
.gitignore vendored
View file

@ -33,3 +33,5 @@ $RECYCLE.BIN/
.Trashes
*.orig
*.rej
/vendor/

7
composer.json Normal file
View file

@ -0,0 +1,7 @@
{
"name": "diolektor/torrentpier",
"description": "Fork TorrentPier. Web torrent tracker.",
"type": "project",
"minimum-stability": "dev",
"require": {}
}

View file

@ -699,21 +699,31 @@ class bbcode
{
global $bb_cfg;
$url = trim($m[1]);
$url_name = (isset($m[2])) ? trim($m[2]) : $url;
//TODO: Refactoring. When will use DI.
$uri = new \Zend\Uri\Uri(trim($m[1]));
if (!preg_match("#^https?://#isu", $url) && !preg_match("/^#/", $url)) $url = 'http://' . $url;
if ($uri->isValid()) {
if (in_array(parse_url($url, PHP_URL_HOST), $bb_cfg['nofollow']['allowed_url']) || $bb_cfg['nofollow']['disabled'])
{
$link = "<a href=\"$url\" class=\"postLink\">$url_name</a>";
}
else
{
$link = "<a href=\"$url\" class=\"postLink\" rel=\"nofollow\">$url_name</a>";
$title = isset($m[2]) && !empty(trim($m[2])) ? $m[2] : $uri->toString();
$attributes = [
'class' => 'postLink',
'href' => $uri->toString(),
'title' => $uri->toString()
];
if (in_array($uri->getHost(), $bb_cfg['nofollow']['allowed_url']) || $bb_cfg['nofollow']['disabled']) {
$attributes['rel'] = 'nofollow';
}
foreach ($attributes as $key => $value) {
$attributes[$key] = $key . "=\"" . $value . "\"";
}
return '<a '.join(' ', $attributes).'>'.$title.'</a>';
}
return $link;
return $m[2];
}
/**