Смотрите видео ниже, чтобы узнать, как установить наш сайт в качестве веб-приложения на домашнем экране.
Примечание: В настоящее время эта функция требует доступа к сайту с помощью встроенного браузера Safari.
<?php
namespace MxR\AnonReferrer\XF\BbCode\Renderer;
class Html extends XFCP_Html
{
public function renderTagUrl(array $children, $option, array $tag, array $options)
{
$url = parent::renderTagUrl($children, $option, $tag, $options);
$xfstt = \XF::options();
$visitor = \XF::visitor();
preg_match_all('|//(.*?)/|is', $url, $siteurl);
if (in_array($siteurl[1][0], explode("\n", $xfstt->AnRefWL))) {
return $url;
} elseif (in_array($siteurl[1][0], explode("\n", $xfstt->AnRefML))) {
return str_ireplace($siteurl[1][0], $_SERVER['HTTP_HOST'], $url);
} else {
$url = str_replace(' href="', ' href="' . $xfstt->AnRefPrefix, $url);
if ($visitor['user_id'] == 0 && $xfstt->AnRefHGlink): $url = \XF::phrase('AnRefGL'); endif;
}
return $url;
}
}
Зачем в дополнение Setup? Если он не используется вообще.Ну ок не хотят делится ладно.
- Трёхэтажные ифы - early return
У Вас недостаточно прав для просмотра ссылок. Вход или Регистрация.if ($visitor_arr['user_id'] === 0 && $xfOptions->AnonReferrerHideGuestLink && $xfOptions->AnonReferrerHideGuestLinkInternal)
эм что?if (!$visitor_arr->user_id && $xfOptions->AnonReferrerHideGuestLink && $xfOptions->AnonReferrerHideGuestLinkInternal)
- if ($visitor_arr['user_id'] === 0 && $xfOptions->AnonReferrerHideGuestLink)
if (!$visitor_arr->user_id && $xfOptions->AnonReferrerHideGuestLink)
- if ($visitor_arr['user_id'] === 0 && $xfOptions->AnonReferrerHideGuestLink)
if (!$visitor_arr->user_id && $xfOptions->AnonReferrerHideGuestLink)
Для внутренних, внешних и т.д ссылок есть
- if ($xfOptions->AnonReferrerActive) к чему? Не понятно настройка на включение ?. Можно в настройках и так это сделать
getLinkClassTarget
в котором просто проверяется и не нужно много мусора.
Выкинув почти весь код и написав нормальный с начала будет куда лучше и без всякого мусора, трёхэтажных ифов++ и кучу кучу всего не нужного.
В чём проблема в генерации ссылки сделать анонимайзер? При этом рботающее и проксирование.
"version_id": 1527238257,
"version_string": "2.0.5.2",
<template_modifications>
<modification type="public" template="PAGE_CONTAINER" modification_key="mxr_ars_add_less" description=".less in the main template style" execution_order="10" enabled="1" action="str_replace">
<find><![CDATA[</head>]]></find>
<replace><![CDATA[<xf:css src="anonreferrersystem_style.less" />
$0]]></replace>
</modification>
</template_modifications>
<?xml version="1.0" encoding="utf-8"?>
<templates>
<template type="public" title="anonreferrersystem_style.less" version_id="1527238245" version_string="2.0.5"><![CDATA[@mxrarbgcl: #ffe7e5; // Background Color
@mxrarbll: #f2240d; // Color of left Border
@mxrarctl: #d63309; // Text Color
@mxrarctlor: #f73c0d; // Text Color "OR/ИЛИ"
@mxrarctlfa: #f2240d; // Color of the Font Awesome Icons
.mxr_block_glinks {
margin: 0px 6px;
background-color:@mxrarbgcl;
color: @mxrarctl;
border-left:3px solid @mxrarbll;
padding: 0px 5px 0px 0px;
.fa-exclamation-triangle {color: @mxrarctlfa;margin: 0px 5px;}
text {color:@mxrarctlor;}
}]]></template>
</templates>
Не хочется исправлять и игнорируются сообщения по поводу срани, ладно. 24 часа на исправление ошибок и переписи всего этого добра. В противном случае ресурс будет удален как нарушение стандартов ресурсов.
Я когда зарепортил? 4 Января 2019 года, срани стало еще больше и ужаснее код с вырвиглаз и нарушением стандартов. На офе быстро подобных выпиливают недавний пример Bill Arf, который так же за нарушение стандартов и говнокод был выпилен. Тут же аж с января было дано время. Но решения все так же костыли и палки.
Всем привет. Вчера установил плагин - утром ошибок на несколько страниц. Не корректно работает с rss?
Посмотреть вложение 105455
В rss изменения как в этом посту.Код:ErrorException: [E_NOTICE] Undefined offset: 0 src/addons/MxR/AnonReferrer/XF/BbCode/Renderer/Html.php:14 Сгенерирована пользователем: Неизвестная учётная запись 10 Авг 2019 в 11:43 Трассировка стека #0 src/addons/MxR/AnonReferrer/XF/BbCode/Renderer/Html.php(14): XF::handlePhpError(8, '[E_NOTICE] Unde...', '/home/belorech/...', 14, Array) #1 [internal function]: MxR\AnonReferrer\XF\BbCode\Renderer\Html->renderTagUrl(Array, 'https://belorec...', Array, Array, Object(MxR\AnonReferrer\XF\BbCode\Renderer\Html)) #2 src/XF/BbCode/Renderer/Html.php(295): call_user_func(Array, Array, 'https://belorec...', Array, Array, Object(MxR\AnonReferrer\XF\BbCode\Renderer\Html)) #3 src/XF/BbCode/Traverser.php(61): XF\BbCode\Renderer\Html->renderTag(Array, Array) #4 src/XF/BbCode/Traverser.php(37): XF\BbCode\Traverser->renderSubTree(Array, Array) #5 src/XF/BbCode/Traverser.php(20): XF\BbCode\Traverser->renderAst(Array, Object(XF\BbCode\RuleSet), Array) #6 src/XF/Pub/View/Forum/Rss.php(92): XF\BbCode\Traverser->render('Василию ...', Object(XF\BbCode\Parser), Object(XF\BbCode\RuleSet), Array) #7 src/XF/Mvc/Renderer/AbstractRenderer.php(91): XF\Pub\View\Forum\Rss->renderRss() #8 src/XF/Mvc/Renderer/Xml.php(74): XF\Mvc\Renderer\AbstractRenderer->renderViewObject('XF:Forum\\Rss', '', Array) #9 src/XF/Mvc/Dispatcher.php(418): XF\Mvc\Renderer\Xml->renderView('XF:Forum\\Rss', '', Array) #10 src/XF/Mvc/Dispatcher.php(400): XF\Mvc\Dispatcher->renderView(Object(XF\Mvc\Renderer\Rss), Object(XF\Mvc\Reply\View)) #11 src/XF/Mvc/Dispatcher.php(360): XF\Mvc\Dispatcher->renderReply(Object(XF\Mvc\Renderer\Rss), Object(XF\Mvc\Reply\View)) #12 src/XF/Mvc/Dispatcher.php(53): XF\Mvc\Dispatcher->render(Object(XF\Mvc\Reply\View), 'rss') #13 src/XF/App.php(2178): XF\Mvc\Dispatcher->run() #14 src/XF.php(390): XF\App->run() #15 index.php(20): XF::runApp('XF\\Pub\\App') #16 {main} Содержимое запроса array(4) { ["url"] => string(19) "/forums/-/index.rss" ["referrer"] => bool(false) ["_GET"] => array(0) { } ["_POST"] => array(0) { } }
На 1.5 версии стояли (XFI) Анонимизация внешних ссылок и GoodForNothing Link Proxy 1.0.5. Все отлично работало совместно, вот и пошел по этому пути и для XF2. Раз такая петрушка добавил анонимизацию через модификацию шаблона вытягивающий сервис редиректа из настроек аддона. Все работает.Первый плагин перенаправляет внешние ссылки через редирект, которые отображаются только на отдельной странице, а данный плагин же видит эти ссылки, как внутренние... Проще в первый плагин тогда уж на отдельную страницу добавить анонимизатор.
А в целом Вы уж совсем перемудрили, установив и то, и другое...
Чтобы не плодить 100500 внешних ссылок. Опечатался, думал написал в теме с [D.C] Link Proxy 1.0.1, туда добавил анонимные сервисыxenforomen, а можно пояснить для чего вся эта "петрушка" нужна? Пользователям доставляет удовольствие ожидать перехода, лицезрения лишнюю страницу твоего форума?
Но внешняя ссылка, в сообщении так или иначе определяется как внешняя :) ты только переход по ней скрываешь.Чтобы не плодить 100500 внешних ссылок
Но внешняя ссылка, в сообщении так или иначе определяется как внешняя :) ты только переход по ней скрываешь.
или скрытие от гостей, наверное эффективнее будетПонятное дело если ссылки под хайдом, то смысла нет
Обновление не является обязательным, если Вас устраивает возможности предыдущих версий.
- Изменение основной задачи плагина, теперь это Скрытие ссылок от гостей.
- Возможность отключать скрытие referer у ссылок, без отключения остальных функций плагина.
- Исправление из данного поста перенесено в основную ветку обновлений.
- Расширение поддержки плагина до версии xenforo 2.2.x
- Сервисы для скрытия referer у ссылок не работающие и не поддерживающие https были удалены из плагина.
Почему от гостей скрываются внутренние ссылки сайта?
Так было бы лучше, что бы не было путаницы.Наверное мне стоило указать это в теме.
MxR, внес домен в "Whitelist", но для гостей также остается недоступной ссылка на домен.
В Whitelist сайт внес в формате: site.ru
Мы используем основные cookies для обеспечения работы этого сайта, а также дополнительные cookies для обеспечения максимального удобства пользователя.
Посмотрите дополнительную информацию и настройте свои предпочтения