BB Code редактор. Как сделать ссылку без домена?

TorSav

Пользователь
Пользовался я форумом популярного торент трекера. Так, там если пишешь в редакторе BB Кода сообщений со строкой:
Код:
[url=search.php?mode=searchuser]Найти пользователя[/url]
. И дальше его сохраняешь. То ссылка каким то образом остается рабочей. Даже если указателем мышки наводишь. То высвечивается полная длинна ссылки. А если снова нажать редактировать сообщение. То опять отображается ссылка без домена.

Я об этом чего подумал? Торент трекеры - это такая вещь, что часто теряют свои домены. И приходится открывать такое же но в других зонах. В общем в ссылке, указание домена - это не надежно. Весь форум через лет так 5, будет в ломаных ссылках. Править их никто не будет. А ощущение будет отвратительное.

Вот я и прикинул. Может кто подскажет? Как в редакторе BB Кода сделать запись типа: "search.php?mode=searchuser". А после сохранения и наведения мышки. Отображалась полная ссылка. Блин удобно же!
Подошла так же и инфа на сторонних ресурсах. Я на разных правда искал, но так ничего и не понял. Вот как сделать компоненту обработку события клика мышей в Visual C++ API или BCB 6 VCL я понимаю, это одно дело. А вот тут на PHP, что то ну совсем не ясно, как мудрецы эту делают. Мда.

Так же проверял BB коды ссылок на сообщения и темы в движке Torent Pier. Но увы они не работают. Хорошая альтернатива была бы.
 
Последнее редактирование:

belomaxorka

Разработчик
Администратор
Делается это не сложно, добавлю в новой версии чтобы было изначально, ну и выложу как мод для всех остальных. Ждите в общем
 

sхс

Легенда
Торент трекеры - это такая вещь, что часто теряют свои домены.
-

Please Login or Register to view hidden text.


- Освойте

Please Login or Register to view hidden text.

и перенесите туда свой проект. Большинство массовых правок будет делаться в одик клик
- Также изучите регулярные выражения. Песочница тут

Please Login or Register to view hidden text.


И подобные вопросы отпадут

А что касается
Код:
[url=search.php?mode=searchuser]Найти пользователя[/url]
Это просто удобство, которое избавляет пользователя прописывать полный путь. Но дело в том, что большинство ссылок на трекерах ведут на сторонние файлообменники. И если брать рутрекер во внимание, то там полно таких ссылок и большая часть из них ведет на мертвые файлоопомойки
 
Последнее редактирование:

Lange

Легенда
-

Please Login or Register to view hidden text.


- Освойте

Please Login or Register to view hidden text.

и перенесите туда свой проект. Большинство массовых правок будет делаться в одик клик
- Также изучите регулярные выражения. Песочница тут

Please Login or Register to view hidden text.


И подобные вопросы отпадут

А что касается
Код:
[url=search.php?mode=searchuser]Найти пользователя[/url]
Это просто удобство, которое избавляет пользователя прописывать полный путь. Но дело в том, что большинство ссылок на трекерах ведут на сторонние файлообменники. И если брать рутрекер во внимание, то там полно таких ссылок и большая часть из них ведет на мертвые файлоопомойки
Когда хочешь нормальное коммьюнити, но токсичность из тебя так и прет)
 

belomaxorka

Разработчик
Администратор
TorSav

Открыть src/Legacy/BBCode.php и найти:
PHP:
$url_name = isset($m[2]) ? trim($m[2]) : $url;
Ниже вставить:

PHP:
$url_parse = parse_url($url);

if (!isset($url_parse['scheme']) && isset($url_parse['path'])) {
    if (!preg_match('/^([a-zA-Z0-9_\-\.]+\.php)(\?[^#]*)?$/', $url_parse['path'])) {
       $url = 'http://' . $url;
    }
}
Далее найти и удалить:
PHP:
if (!preg_match('#^https?://#iu', $url) && !preg_match('/^#/', $url)) {
    $url = 'http://' . $url;
}

И будет вам счастье)
 
Последнее редактирование:
Сверху