<style title="Родина РП" description="" user_selectable="1" base_version_id="2021370" export_version="2">
<активы/>
<шаблоны>
<шаблон название="PAGE_CONTAINER" тип="публичный" addon_id="XF" version_id="2020470" version_string="2.2.4">
<![CDATA[ <!DOCTYPE html> <html id="XF" lang="{$xf.language.language_code}" dir="{$xf.language.text_direction}" data-app="public" data-template="{$template}" data-container-key="{$containerKey}" data-content-key="{$contentKey}" data-logged-in="{{ $xf.visitor.user_id ? 'true' : 'false' }}" data-cookie-prefix="{$xf.cookie.prefix}" data-csrf="{{ csrf_token()|escape('js') }}" class="has-no-js {{ $template ? 'template-' . $template : '' }}" {{ $xf.runJobs ? ' задания для запуска данных=""' : " }}> < заголовок> <meta charset="utf-8" /> <meta http-equiv="X-UA-совместимый" content="IE=Edge" /> <meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=обложка"> <xf:set var="$siteName" value="{$xf.options.boardTitle}" /> <xf:set var="$h1"><xf:h1 запасной вариант="{$siteName}" /></xf:set> <xf:set var="$description"><xf:description /></xf:set> <title><xf:title formatter="%s | %s" запасной вариант="{$xf.options. boardTitle}" страница="{$PageNumber}" /></title> <ссылка rel="манифест" href="{{ base_url('webmanifest.php ') }}"> <xf:if is="property('metaThemeColor')"> <meta name="theme-color" content="{{ parse_less_color(свойство('metaThemeColor')) }}" /> </ xf:если> <meta name="apple-mobile-web-app-title" content="{{ $xf.options.boardShortTitle ?: $xf.options.boardTitle }}"> <xf:if is="свойство('publicIconUrl')"> <link rel="apple-touch-icon" href="{{ base_url(свойство('publicIconUrl', true)) }}"> <xf:elseif is="property('publicMetadataLogoUrl')" /> <link rel="apple-touch-icon" href="{{ base_url(свойство('publicMetadataLogoUrl')) }}" /> </ xf:if> <xf:цикл foreach="$head" value="$headTag"> {$headTag} </xf:foreach> <xf:if is="!$head.meta_site_name && $siteName не пустое"> <xf: макрос шаблона="metadata_macros" имя="site_name" аргумент-siteName="{$siteName}" аргумент-вывод="{{ true }}" /> </xf:if> <xf: если"!>$head.meta_type"> <xf:macro template="metadata_macros" name="type" arg-type="website" arg-output="{{ true }}" /> </xf:if> <xf:if is="!$head.meta_title"> <xf:macro template="metadata_macros" name="title" arg-title="{{ page_title() ?: $siteName }}" arg-output="{{ true }}" /> </xf:if> <xf:if is="!$head.meta_description && $description не пустое && $pageDescriptionMeta"> <xf:macro template="metadata_macros" name="description" arg-description="{$description}" arg-output="{{ true }}" /> </xf:if> <xf:if is="!$head.meta_share_url"> <xf:macro template="metadata_macros" name="share_url" arg-shareUrl="{$xf.fullUri}" arg-output="{{ true }}" /> </xf:if> <xf:if is="!$head.meta_image_url && property('publicMetadataLogoUrl')"> <xf:шаблон макроса="metadata_macros" name="image_url" arg-ImageUrl="{{ base_url(свойство('publicMetadataLogoUrl'), true) }}" arg-output="{{ true }}" /> </xf:if> <xf:шаблон макроса="helper_js_global" name="head" arg-app="public" /> <xf:if is="property('publicFaviconUrl')"> <link rel="icon" type="image/png" href="{{ base_url(свойство('publicFaviconUrl'), true) }}" размеры="32x32" /> </xf:if> <xf:включить шаблон="google_analytics" /> <данные скрипта-cfasync="false" type='текст /javascript'> var xfhtml=document.getElementById("XF"); функция addClass(s,a){ s.classList?s.classList.add(a):hasClass(s,a)||(s.className+=" "+a) } функция getCookie(e){ var o=document.cookie.match("(^|;) ?"+e+"=([^;]*)(;|$)"); return o?o[2]:null } функция setCookie(e,o,t){ var i=new Date;i.setTime(i.getTime()+864e5*t),document.cookie=e+"="+o+";path=/;expires="+i.toGMTString() } функция deleteCookie(e){ setCookie(e,"",-1) } функция applySetting(имя_установки,параметр_установки, разрешить настройку){ 1=== Разрешить слежку?(cookie=getCookie(settingName),"on"!==cookie&&(cookie||1!==settingOn)||addClass(xfhtml,settingName)):1===settingOn&&addClass(xfhtml,settingName) ; } applySetting('альтернативный цвет',0,1); applySetting('широкая страница',0,1); </script> </head> <body data-template="{$template}"> <div class="p-pageWrapper" id="top"> <xf:if contentcheck="true"> <div class="p-staffBar"> <div class="p-staffBar-внутренний hScroller" data-xf-init=" h-скроллер"> <div class="hScroller-scroll"> <xf:contentcheck> <xf:if is="$xf.visitor.is_moderator && $xf.session.unapprovedCounts.total"> <a href="{{ ссылка('очередь утверждения') }}" class="p-staffBar-ссылка badgeContainer badgeContainer-выделена" data-badge="{$xf.session.unapprovedCounts.total|number}"> {{ фраза('очередь утверждения' ) }} </a> </xf:if> <xf:if is="$xf.visitor.is_moderator && !$xf.options.reportIntoForumId && $xf.session.reportCounts.total"> <a href="{{ ссылка('отчеты') }}" class="p-staffBar-ссылка badgeContainer badgeContainer--видимый {{ ($xf.session.reportCounts.total && ($xf.session.reportCounts.lastBuilt > $xf.session.reportLastRead) ИЛИ $xf.session.reportCounts.assigned) ? ' badgeContainer--выделено' : '' }}" data-badge="{{ $xf.session.reportCounts.assigned ? $xf.session.reportCounts.assigned|число . ' / ' . $xf.session.reportCounts.total|число : $xf.session.reportCounts.total|число }}" название="{{ $xf.session.reportCounts.lastBuilt ? фраза('last_report_update:')|for_attr . ' ' . date_time($xf.session.reportCounts.lastbuilded) : " }}"> {{ фраза('отчеты') }} </a> </xf:if> <xf:if contentcheck="true"> <a class="p-staffBar-link menuTrigger" data-xf-click="menu" data-xf-key="alt+m" role="button" tabindex="0" aria-expanded="false" aria-haspopup="true">{{ фраза('модератор') }}</a> <div class="menu" data-menu="menu" aria-hidden="true"> <div class="menu-content"> <h4 class=" menu-header">{{ фраза('moderator_tools') }}</h4> <xf:проверка содержимого> <!--[XF:mod_tools_menu:top]--> <xf:if is="$ xf.посетитель.is_moderator"> <a href="{{ ссылка('очередь утверждения') }}" class="menu-linkRow">{{ фраза('очередь утверждения') }}</a> </xf:if> <xf:if is="$ xf.visitor.is_moderator && !$xf.options.reportIntoForumId"> <a href="{{ ссылка('отчеты') }}" class="menu-linkRow" заголовок ="{{ $xf.session.reportCounts.lastbuilded ? фраза('last_report_update:')|for_attr . ' ' . date_time($xf.session.reportCounts.lastbuilded) : " }}">{{ фраза('отчеты') }}</a> </xf:if> <!--[XF:mod_tools_menu:внизу]--> </xf:проверка содержимого> </div> </div> </xf:if> <xf:if is="$xf.visitor.is_admin"> <a href="{{ base_url('admin.php ') }}" class="p-staffBar-link" target="_blank">{{ фраза('admin') }}</a> </xf:if> </xf:проверка содержимого> </div> </div> </div> </xf:if> <xf:set var="$srcset">{{ свойство('publicLogoUrl2x') ? base_url(property('publicLogoUrl2x')) . ' 2x' : " }}</xf:set> <класс заголовка="p-header" id="header"> <класс div="p-header-inner"> <класс div="p-header-content"> <класс div="p-header-logo, p-header-logo-image"> <a href="{{ ($ xf.options.logoLink && $ xf.homePageUrl) ? $ xf.Домашняя страница : link('index') }}"> <img src="{{ base_url(property('publicLogoUrl')) }}" srcset="{$srcset}" alt="{$xf.options.boardTitle}" width="{{ property('publicLogoWidth') ?: " }}" height="{{ property('publicLogoHeight') ?: " }}" /> </ a> </div> <xf:рекламная позиция="container_header" /> </div> </div> </header> <xf:set var="$navHtml"> <класс навигации="p-nav"> <класс div="p-nav-inner"> <xf:button class="кнопка--обычный p-nav-menuTrigger" data-xf-click="off-canvas" data-menu=".js-headerOffCanvasMenu" tabindex="0" aria-label="{{ фраза('menu')|for_attr }}"> <i aria-hidden="true"></i> </xf:button> <div class="p-nav-smallLogo"> <a href="{{ ($xf.options.logoLink && $xf.homePageUrl) ? $xf.homePageUrl: ссылка('index') }}"> <img src="{{ base_url(property('publicLogoUrl')) }}" srcset="{$srcset}" alt="{$xf.options.boardTitle}" width="{{ property('publicLogoWidth')?: " }}" height="{{ property(' Публичный логогейтинг') ?: " }}" /> </ a> </div> <div class="p-nav-scroller hScroller" data-xf-init="h-scroller" data-auto-scroll=".p-navEl.is-selected"> <div class="hScroller-прокрутка"> <ul class="p-nav-list js-offCanvasNavSource"> <xf:цикл foreach="$navTree" ключ="$navSection" значение ="$navEntry" i="$i" if="{{ $navSection != $xf.app.defaultNavigationId }}"> <li> <xf: имя макроса="nav_entry" arg-navId="{$navSection}" arg-nav="{$navEntry}" arg-selected="{{ $navSection == $pageSection }}" arg-shortcut="{$i}" /> </li> </xf:foreach> </ul> </div> </div> <div class="p-nav-opposite"> <div class="p-navgroup p-account {{ $xf.visitor.user_id ? 'p-navgroup--member' : 'p-navgroup--guest' }}"> <xf:if is="$xf.visitor.user_id"> <xf:if is="$xf.visitor.user_state == 'отклонено' Или $xf.visitor.user_state == 'отключено'"> <a href="{{ ссылка('учетная запись') }}" class="p-navgroup-link p-navgroup-link--iconic p-navgroup-link--user"> <xf:аватар пользователя="$xf.visitor" size="xxs" href="" title=""" /> <span class="p-navgroup-linkText">{$xf.visitor.username}</span> </a> <a href="{{ link('logout', null, {'t': csrf_token()})}}" class="p-navgroup-link"> <span class="p-navgroup-linkText">{{ фраза(' log_out') }}</span> </a> <xf:else /> <a href="{{ ссылка('учетная запись') }}" class="p-navgroup-link p-navgroup-link--iconic p-navgroup-link--user" data-xf-click="меню" data-xf-key="{{ фраза('shortcut.visitor_menu')|for_attr }}" data-menu-pos-ref="< .p-navgroup" title="{$xf.visitor.username}" aria-expanded="false" aria-haspopup="true"> <xf:аватар пользователя="$xf.visitor" size="xxs" href="" title=""" /> <span class="p-navgroup-linkText">{$xf.visitor.username}</span> </a> <div class="меню menu--структурное меню--широкое меню--учетная запись" data-menu="меню" aria-hidden="true" data-href="{{ ссылка('учетная запись/ меню посетителя') }}" data-load-target=".js- visitorMenuBody"> <div class="menu-content js-visitorMenuBody"> <div class="menu-row"> {{ фраза('загрузка...') }} </div> </div> </div> <a href="{{ ссылка('беседы')}}" class="p-navgroup-link p-navgroup-link--iconic p-navgroup-link--conversations js-badge--conversations badgeContainer{{ $xf.посетитель. conversations_unreaded ? ' значок-контейнер с выделенным текстом' : '' }}" data-badge="{$xf.visitor.conversations_unread|число}" data-xf-click="меню" data-xf-key="{{ фраза('shortcut.conversations_menu')|for_attr }}" data-menu-pos-ref="< .p-navgroup" title="{{ фраза('беседы')|for_attr }}" aria-label="{{ фраза('беседы')|for_attr }}" aria-expanded="false" aria-haspopup="true"> <i aria-hidden="true"></i> <span class="p-navgroup-linkText">{{ фраза('nav_inbox') } }</span> </a> <div class="меню menu--структурное меню--среда" data-menu="меню" aria-hidden="true" data-href="{{ ссылка('беседы/всплывающее окно') }}" data-nocache="true" data-load-target=".js-convMenuBody"> <div class= "menu-content"> <h3 class="menu-header">{{ фраза('беседы') }}</h3> <div class="js-convMenuBody"> <div class="menu-row">{{ фраза('загрузка...') }}</div> </div> <div class="меню-нижний колонтитул меню-нижний колонтитул--разделить"> <класс div="меню-нижний колонтитул-главное"> <ul class="listInline listInline--маркер"> <li><a href="{{ ссылка('беседы') }}">{{ фраза('show_all') }}</a></li> <xf:if is="$xf.посетитель.canStartConversation()"> <li><a href="{{ ссылка('беседы/добавить') }}">{{ фраза('start_new_conversation') }}</a></li> </xf:if> </ul> </div> </div> </div> </div> <a href="{{ ссылка('учетная запись/оповещения')}}" class="p-navgroup-ссылка p-navgroup -ссылка--iconic p-navgroup-ссылка--оповещения js-значок--оповещения badgeContainer{{ $xf.visitor.alerts_unviewed ? ' badgeContainer--выделено' : " }}" data-badge="{$xf.visitor.alerts_unviewed|number}" data-xf-click="menu" data-xf-key="{{ фраза('shortcut.alerts_menu')|for_attr }}" data-menu-pos-ref="< .p-navgroup" title="{{ фраза('оповещения')|for_attr }}" aria-label="{{ фраза('оповещения') |for_attr }}" aria-expanded="false" aria-haspopup="true"> <i aria-hidden="true"></i> <span class="p-navgroup-linkText">{{ фраза('nav_alerts') }}</span> </a> <div class="меню menu--структурное меню--среда" data-menu="меню" aria-hidden="true" data-href="{{ ссылка('учетная запись/оповещения-всплывающее окно') }}" data-nocache="true" data-load-target=".js-оповещения для всех"> < div class="меню-содержимое"> <h3 class="menu-header">{{ фраза('оповещения') }}</h3> <div class="js-alertsMenuBody"> <div class="menu-row">{{ фраза('загрузка...') }}</div> </div> <div class="меню-нижний колонтитул меню-нижний колонтитул--разделить"> <класс div="меню-нижний колонтитул-главное"> <ul class="listInline listInline--маркер"> <li><a href="{{ ссылка('учетная запись/оповещения') }}">{{ фраза('show_all') }}</a></li> <li><a href="{{ ссылка('учетная запись/оповещения/mark-read') }}" class="js-alertsMarkRead">{{ фраза('mark_read') }}</a></li> <li><a href="{{ ссылка('учетная запись/ настройки') }}">{{ фраза('настройки') }}</a></li> </ul> </div> </div> </div> </div> </div> </xf:if> <xf:else /> <a href="{{ ссылка('вход') }}" class="p-navgroup-link p-navgroup-link--текстовая p-navgroup-ссылка--Вход" data-xf-click ="overlay" data-follow-redirects="on"> <span class="p-navgroup-linkText">{{ фраза('log_in') }}</span> </a> <xf:if is="$ xf.options.registrationSetup.enabled"> <a href="{{ ссылка('register') }}" class="p-navgroup-ссылка, p-navgroup-ссылка -текстовая p-navgroup-ссылка-регистрация" data-xf-click="наложение" data-follow-redirects="on"> <span class="p-navgroup-linkText">{{ фраза('регистрация') }}</span> </a> </xf:if> </xf:if> </div> <div class="p-navgroup p-discovery{{ !$xf.visitor.canSearch() ? ' p-discovery--noSearch' : " }}"> <a href="{{ ссылка(' что нового') }}" class="p-navgroup-link p-navgroup-link--iconic p-navgroup-link--whatsnew" aria-label="{{ фраза('whats_new')|for_attr }}" title="{{ фраза('whats_new')|for_attr }}"> <i aria-hidden="true"></i> <span class="p-navgroup-linkText">{{ фраза('whats_new') }}</span> /a> <xf:включить template="template_pnavStaffBar" /> <a href="javascript:void(0);" class="p-navgroup-link" rel="nofollow" data-xf-init="всплывающая подсказка" data-guide-modal="" data-original-title="Персонализация" id="js-XFUniqueId1"><span class="p-navgroup-linkText"></span></a> <xf:если есть= "$xf.visitor.canSearch()"> <a href="{{ link('поиск') }}" class="p-navgroup-link p-navgroup-link--iconic p-navgroup-link--search" data-xf-click="меню" data-xf-key="{{ фраза('ярлык.search_menu')|for_attr }}" aria-label="{{ фраза('поиск')|for_attr }}" aria-expanded="false" aria-haspopup="true" title="{{ фраза('поиск')|for_attr }}"> <i aria-hidden="true"></i> <span class="p-navgroup-linkText">{{ фраза('поиск') }} </a> <div class=" меню menu--структурное меню--широкое" data-menu="меню" aria-hidden="true"> <form action="{{ link('поиск/search') }}" method="post" class="menu-content" data-xf-init="быстрый поиск"> <h3 class="menu-header">{{ phrase('search') }}</h3> <!--[XF:search_menu:above_input]--> <div class="menu-row"> <xf:if is="$searchConstraints"> <div class="inputGroup, Входная группа--объединено"> <xf:имя текстового поля="ключевые слова" placeholder="{{ фраза('поиск ...') }}" aria-label="{{ фраза('поиск') }}" data-menu-autofocus="true" /> <xf:select name="ограничения" class="js-QuickSearch-constraint" aria-label="{{ фраза('search_within') }}"> <xf:значение параметра="">{{ фраза('везде') }}</xf: опция> <xf:цикл foreach="$searchConstraints" ключ="$constraintName" значение="$constraint"> <xf:значение параметра="{$constraint|json}">{$constraintName}</xf:option> </xf:foreach> </xf:select> </div> <xf:else /> <xf:имя текстового поля="ключевые слова" placeholder="{{ фраза('поиск...') }}" aria-label="{{ фраза('поиск') }}" data-menu-autofocus="true" /> </xf:if> </div > <!--[XF:search_menu:above_title_only]--> <div class="строка меню"> <xf:автономный флажок="true"> <xf: имя параметра="c[title_only]"> <xf:label> {{ фраза('search_titles_only') }} <xf:if is="$xf.options.enableTagging"> <span tabindex="0" role="кнопка" data-xf-init="всплывающая подсказка" data-trigger="щелчок при наведении фокуса" title="{{ фраза('tags_will_also_be_searched')|for_attr }}"> <xf: значок fa="far fa-вопрос-круг" class = "u-приглушенный u-меньший размер" /> </span> </xf:if> </xf:label> </xf:option> </xf:checkbox> </div> <!--[XF:search_menu:above_member]--> <div class="строка меню"> <div class="inputGroup"> <span class="inputGroup-text" id="ctrl_search_menu_by_member">{{ фраза('по:') }} <тип ввода="text" class="input" name="c[users]" data-xf-init="автозаполнение" placeholder="{{ фраза('участник')|for_attr }}" aria-labelledby="ctrl_search_menu_by_member" /> </div> < /div> <div class="нижний колонтитул меню"> <span class="нижний колонтитул меню-элементы управления"> <xf:тип кнопки="отправить" класс="кнопка--основная" значок="поиск" /> <xf: кнопка href="{{ ссылка('search') }}">{{ фраза('расширенный поиск ...') }}</xf:кнопка> </div> <xf:csrf /> </форма> </div> </xf:if> </div> </div> </div> </навигация> </xf: set> < xf:установить var="$subNavHtml"> <xf:if is="$selectedNavChildren не пуст"> <div class="p-sectionLinks"> <div class="p-sectionLinks-внутренний hScroller" data-xf-init="h-scroller"> <div class="hScroller-прокрутка"> <ul class="p-sectionLinks-список"> <xf:цикл foreach="$selectedNavChildren" ключ="$navId" значение="$navEntry" i="$i"> <li> <xf:имя макроса="nav_entry" arg-navId="{$navId}" arg-nav="{$navEntry}" arg-shortcut="alt+{$i}" /> </li> </xf:foreach> </ul> </div> </div> </div> <xf:elseif is="{$selectedNavEntry}" /> <div class="p-sectionLinks p-sectionLinks--empty">< /div> </xf:if> </xf:set> <xf:if is="property('publicNavSticky') == 'primary'"> <div class="p-navSticky p-navSticky--primary" data-xf-init="sticky-header"> {$navHtml|raw} </div> {$subNavHtml|raw} <xf:elseif is="property('publicNavSticky') == 'все '" /> <div class="p-navSticky p-navSticky--all" data-xf-init="sticky-header"> {$navHtml|raw} {$subNavHtml|raw} </div> <xf:else /> {$navHtml|raw} {$subNavHtml|raw} </xf:if> <div class="offCanvasMenu offCanvasMenu--nav js-headerOffCanvasMenu" data- menu="меню" aria-скрытые="истинные" данные-ocm-builder="навигация"> <div class="offCanvasMenu-background" data-menu-close="true"></div> <div class="offCanvasMenu-content"> <div class="offCanvasMenu-header"> {{ фраза('menu') }} <a class="offCanvasMenu-closer" data-menu-close="true" роль="кнопка" tabindex="0" aria-label="{{ фраза('закрыть')|for_attr }}"></a> </div> <xf:if is="$ xf.посетитель.user_id"> <div class="p-offCanvasAccountLink"> <div class="offCanvasMenu-linkHolder"> <a href="{{ ссылка('учетная запись') }}" class="offCanvasMenu-link"> <xf:аватар пользователя="$xf.visitor" size="xxs" href=""" /> {$xf.visitor.username} </a> </div> <hr class="offCanvasMenu-разделитель" /> </div> <xf:else /> <div class="p-offCanvasRegisterLink"> <div class="offCanvasMenu-linkHolder"> <a href="{{ ссылка('логин') }} " class="offCanvasMenu-link" data-xf-click="overlay" data-menu-close="true"> {{ фраза('log_in') }} </a> </div> <hr class="offCanvasMenu-разделитель" /> <xf:if is="$xf.options.registrationSetup.enabled"> <div class="offCanvasMenu-linkHolder"> <a href="{{ ссылка('register') } }" class="offCanvasMenu-link" data-xf-click="наложение" data-menu-close="true"> {{ фраза('register')}} </a> </div> <hr class="offCanvasMenu-разделитель" /> </xf:if> </div> </xf:if> <div class="js-offCanvasNavTarget"></div> <div class="offCanvasMenu- installBanner js-installPromptContainer" style="отображение: отсутствует"; data-xf-init="приглашение к установке"> <div class="offCanvasMenu-installBanner-header">{{ фраза('install_app') }}</div> <xf:button class="js-installPromptButton">{{ фраза('установить') }}</xf:button> </div> </div> </div> <div class="p-body"> <div class="p-body-inner"> <!--XF:EXTRA_OUTPUT--> <xf :if is="$notices.block"> <xf:шаблон макроса="notice_macros" name="notice_list" arg-type="блокировать" arg-notices="{$notices.block}" /> </xf:if> <xf:if is="$notices.scrolling"> <xf:шаблон макроса="notice_macros" name="notice_list" arg-type="прокрутка" arg-notices="{$notices.scrolling}" /> </xf:if> <xf:позиция объявления="container_breadcrumb_top_above" /> <xf:имя макроса="панировочные сухари" arg-breadcrumbs="{$breadcrumbs}" arg-navTree="{$navTree}" arg- selectedNavEntry="{$selectedNavEntry}" /> <xf:рекламная позиция ="container_breadcrumb_top_below" /> <xf:шаблон макроса="browser_warning_macros" name="javascript" /> <xf:шаблон макроса="browser_warning_macros" name="браузер" /> <xf:if is="$headerHtml не пустой"> <div class="p-body-header"> {$ headerHtml|raw} </div> <xf:еще, если contentcheck="true" /> <div class="p-body-header"> <xf:проверка содержимого> <xf: если проверка содержимого="true"> <div class="p-title {{ $noH1 ? 'p-title--noH1' : " }}"> <xf:проверка содержимого> <xf:if is="!$noH1"> <h1 class="p-title-value">{$h1}</h1> </xf:if> <xf:if contentcheck="true"> <div class="p-title-pageAction"><xf:проверка содержимого><xf:pageaction /></xf:проверка содержимого> </div> </xf:if> </xf:проверка содержимого> </div> </xf:if> <xf:if is="$description не пуст"> <div class="p-description">{$description}</div> </xf:if> </xf:проверка содержимого> </div> </xf:if> <div class="p-body-main {{ $sidebar ? 'p-body-main--withSidebar' : " }} {{ $sideNav ? 'p-body-main--withSideNav' : " }}"> <xf:if is="$sideNav"> <div class="p-body-sideNavCol"></div> </xf:if> <div class="p-body-contentCol"></div> <xf:if is="$sidebar"> <div class="p-body- sidebarCol"></div> </xf:if> <xf:if is="$sideNav"> <div class="p-body-sideNav"> <div class="p-body-sideNavTrigger"> <xf:класс кнопки="кнопка--ссылка" data-xf-click="вне холста" data-menu="#js-SideNavOcm"> {{ $sideNavTitle ?: фраза('навигация') }} </xf:кнопка> </div> <div class="p-body-sideNavInner" data-ocm-class="offCanvasMenu offCanvasMenu--blocks" id="js-SideNavOcm" data-ocm-builder="sideNav"> <div data-ocm-class="offCanvasMenu-background" data-menu-close="true"></div> <div data-ocm-class="offCanvasMenu-content"> <div class=" p-body-sideNavContent"> <xf:позиция объявления="container_sidenav_above" /> <xf:цикл foreach="$sideNav" значение="$sideNavHtml"> {$sideNavHtml} </xf:foreach> <xf:рекламная позиция="container_sidenav_below" /> </div> </div> </div> </div> </xf:if> <div class="p-body-content"> <xf:позиция объявления="container_content_above" /> <div class="p-body-PageContent">{$content|raw}</div> <xf:позиция объявления="container_content_below" /> </div> <xf:if is="$sidebar"> <div class="p-body-sidebar"> <xf:позиция объявления="container_sidebar_above" /> <xf:цикл foreach="$sidebar" значение = "$sidebarHtml"> {$sidebarHtml} </xf:foreach> <xf:позиция объявления="container_sidebar_below" /> </div> </xf:if> </div> <xf:позиция объявления="container_breadcrumb_bottom_above" /> <xf:имя макроса="панировочные сухари" arg-breadcrumbs="{$breadcrumbs}" arg-navTree="{$navTree}" arg-selectedNavEntry="{$selectedNavEntry}" arg-variant="bottom" /> <xf:позиция объявления="container_breadcrumb_bottom_below" /> </div> </div> <класс нижнего колонтитула="p-footer" id="footer"> <класс нижнего колонтитула="p-footer-inner"> <класс нижнего колонтитула="p-footer-row"> <xf:if contentcheck="true"> <класс div="p-нижний колонтитул-строка-главная"> <класс ul="p-нижний колонтитул-список ссылок"> <xf:проверка содержимого> <xf:if is="$xf.visitor.canChangeStyle()"> <li><a href="{{ ссылка('разное/стиль') }}" data-xf-click="наложение" data-xf-init="всплывающая подсказка" title="{{ фраза('style_chooser')|for_attr }}" rel="nofollow"> <xf:значок fa="fa-paint-brush" /> {$xf.style.title} </a></li> </xf:if> <xf:if is="$xf.visitor.canChangeLanguage()"> <li><a href="{{ ссылка('разное /язык') }}" data-xf-click="наложение" data-xf-init="всплывающая подсказка" title="{{ фраза('language_chooser')| for_attr }}" rel="nofollow"> <xf:значок fa="fa-globe" /> {$xf.language.title}</a></li> </xf:if> </xf:проверка содержимого> </ul> </div> </xf:if> <div class="p-нижний колонтитул-строка-напротив"> <ul class="p-нижний колонтитул-список ссылок"> <xf:if is="$ xf.посетитель.canUseContactForm()"> <xf:if is="$xf.contactUrl"> <li><a href="{$xf.contactUrl}" data-xf-click="{{ ($xf.options.contactUrl.overlay ИЛИ $xf.options.contactUrl.type == 'по умолчанию')? 'overlay' : " }}">{{ фраза('contact_us') }}</a></li> </xf:if> </xf:if> <xf:if is="$xf.tosUrl"> <li><a href="{$xf.tosUrl}">{{ фраза('terms_and_rules') }}</a></li> </xf:if> <xf:if is="$xf. privacyPolicyUrl"> <li><a href="{$xf.privacyPolicyUrl}">{{ фраза('privacy_policy') }}</a></li> </xf:if> <xf:if is="$xf.helpPageCount"> <li><a href="{{ ссылка('справка') }}">{{ фраза('справка') }}</a></li> </ xf:if> <xf:if is="$xf.homePageUrl"> <li><a href="{$xf.homePageUrl}">{{ фраза('home') }}</a></li> </xf:if> <li><a href="{{ ссылка('forums/index.rss', '-') }}" target="_blank" class="p-footer-rssLink" title="{{ фраза ('rss')|for_attr }}"><span aria-hidden="true"><xf:значок fa="fa-rss" /><span class="u-srOnly">{{ фраза('rss') }}</a></li> </ul> </div> </div> <xf:if contentcheck="true"> <div class="p-footer-copyright"> <a href="https://majdev.net /" title="Майдев"> <i class="fas fa-star-and-crescent" style="color:red"></i>&nbsp; <span>Тема, созданная Majdev & Albat</span>&nbsp; <i class="fas fa-star-and-crescent fa-поворот на 180" style="color:red"></i> </a> <br> <xf:проверка содержимого> <xf:copyright /> {{ фраза('extra_copyright') }} </xf:проверка содержимого > </div> </xf:if> <xf:if проверка содержимого="true"> <div class="p-footer-debug"> <xf:проверка содержимого> <xf:шаблон макроса="debug_macros" name="debug" arg-controller="{$controller}" arg-action="{$ActionMethod}" arg-template="{$template}" /> </xf:проверка содержимого> </div> </xf:if> </div> </нижний колонтитул> </div> <div class="mj-Modal-container"> <div class="mj -Модальное наложение" data-guide-modal="""></div> <div class="mj-Modal-block"> <div class="mj-Modal-scroll"> <div class="guide-Modal-header"> <h3>Персонализация</h3> <button class="modal-close" data-guide-modal="закрыть"><i class="fad fa-times"></i></button> </div> <div class= "руководство-Модальное содержимое"> <div class="mj-глобальный блок"> <div class="mj-модальная ячейка"> <div class="модальный столбец"> <i class="fad fa-arrows-h"></i> </div> <div class="модальный столбец"> <h3>Широкая страница</h3> <span>Расширяет страницу.</span> </div> <div class="modal-column" data-button-class="wide-page" data-default="off"> <div class="guide-modal-toogle"> <тип ввода="radio" name="wide-page" id="wide-page-off"> <тип ввода="radio" name="wide-page" id="wide-page-on" checked="проверено"> <i class=" модальный переключатель"><i></i></i> </div> </div> </div> </div> <div class="mj-модальная ячейка"> <div class="модальный столбец"> <i class="fad fa-fill-drip"></i> </div> <div class="модальный столбец"> <h3>Альтернативный цвет</h3> <span>Изменяет базовый цвет.</span> </div> <div class="modal-column" data-button-class="alternative-color" data-default="off"> <div class="guide-modal-toogle"> <тип ввода="radio" name="alternative-color" id="alternative-color-off" checked="проверено"> <тип ввода="radio" name="alternative-color" id="alternative-color-on"> <i class= "модальный переключатель"><i></i></i> </div> </div> </div> </div> </div> </div> </div> </div> <div class="u-bottomFixer js-bottomFixTarget"> <xf:if is="$notices.floating"> <xf:шаблон макроса="notice_macros" name="notice_list" arg-type="плавающий" arg-notices="{$notices.floating}" /> </xf:if> <xf:if is="$notices.bottom_fixer"> <xf:шаблон макроса="notice_macros" name="notice_list" arg-type="bottom_fixer" arg-notices="{$notices.bottom_fixer}" /> </xf: if> </div> <xf:if is="property('scrollJumpButtons')"> <div class="u-scrollButtons js-scrollButtons" data-trigger-type="{{ свойство('scrollJumpButtons') }}"> <xf:button href="#top" class="кнопка--прокрутка" data-xf-click="прокрутка до"><xf:значок fa="fa-стрелка вверх" /><span class=" быстро">{{ фраза('top') }}</span></xf:кнопка> <xf:if is="свойство('scrollJumpButtons') != 'вверх'"> <xf:button href="#нижний колонтитул" class="кнопка--прокрутка" data-xf-click="прокрутка до"><xf:значок fa="fa-стрелка вниз" /><span class="u-srOnly">{{ фраза('внизу') }}</span></xf:кнопка> </xf:if> </div> </xf:if> <xf:шаблон макроса="helper_js_global" name="body" arg-app=" public" arg-jsState="{$jsState}" /> <xf:if is="количество ($xf.reactionsActive) > 1 И $xf.visitor.user_id"> <тип сценария="текст / шаблон" id="xfReactTooltipTemplate"> <div class="всплывающая подсказка-содержимое-внутреннее"> <div class="reactTooltip"> <xf:цикл foreach="$xf.reactionsActive" ключ="$reactionId" значение="$reaction"> <xf:идентификатор реакции="{$reactionId}" tooltip="true" /> </xf:foreach> </div> </div> </script> </xf:if> {$ldJsonHtml|raw} </body> </html> <xf:имя макроса="nav_entry" arg-navId="!" arg-nav="!" arg-selected="{{ false }}" arg-shortcut=""> <div class="p-navEl {{ $selected ? 'is-selected' : '' }}" {{ $nav.children ? 'data-has-children="true"' : '' }}> <xf:if is="$nav.href"> <xf:macro name="nav_link" arg-navId="{$navId}" arg-nav="{$nav}" arg-class="p-navEl-link {{ $nav.children ? 'p-navEl-link--splitMenu' : '' }}" arg-shortcut="{{ $nav.children ? false : $shortcut }}" /> <xf:if is="$nav.children"><a data-xf-key="{$shortcut}" data-xf-click="menu" data-menu-pos-ref="< .p-navEl" class="p-navEl-splitTrigger" role="кнопка" tabindex="0" aria-label="{{ фраза('переключатель_расширенный')|for_attr }}" aria-expanded="false" aria-haspopup="true"></a></xf:if> <xf:elseif is="$nav.children" /><a data-xf-key="{$shortcut}" data-xf-click="menu" data-menu-pos-ref="< .p-navEl" class="p-navEl-linkHolder" role="кнопка" tabindex="0" aria-expanded="false" aria-haspopup="true"> <xf:имя макроса="nav_link" arg-navId="{$navId}" arg-nav="{$nav}" arg-class="p-navEl-link p-navEl-link--menuTrigger" /> </a> <xf:else /> <xf:имя макроса="nav_link" arg-navId="{$navId}" arg-nav="{$nav}" arg-class="p-navEl-link" arg-shortcut ="{$shortcut}" /> </xf:if> <xf:if is="$nav.дочерние элементы"> <div class="menu menu--structural" data-menu="menu" aria-hidden="true"> <div class="menu-content"> <xf:цикл foreach="$nav.children" ключ="$childNavId" значение="$child"> <xf:имя макроса="nav_menu_entry" arg-navId="{$childNavId}" arg-nav="{$child}" /> </xf:foreach> </div> </div> </xf:if> </div> </xf:macro> <xf:имя макроса="nav_link" arg-navId="!" arg-nav="!" arg-class="" arg-titleHtml="" arg-shortcut="{{ false }}"> <xf:set var="$tag" значение="{{ $nav.href ? 'a' : 'span' }}" /> <{$tag} {{ $nav.href ? 'href="' . $nav.href . '"' : '' }} class="{{ trim($class) }} {$nav.attributes.class}" {{ атрибуты($nav.attributes, ['class']) }} {{ $shortcut !== false ? 'data-xf-key="' . $shortcut . '"' : '' }} data-nav-id="{$navId}"><xf:if is="$nav.icon"><xf:fa icon="{$nav.icon}" /> </xf:if>{{ $titleHtml ? $titleHtml|raw : $nav.title }}<xf:if is="$nav.counter"> <span class="badge badge--highlighted">{$nav.counter|число}</span></xf:if></{$tag}> </xf:macro> <xf:macro name="nav_menu_entry" arg-navId="!" arg-nav="!" arg-depth="0"> <xf:имя макроса="nav_link" arg-navId="{$navId}" arg-nav="{$nav}" arg-class="menu-linkRow u-indentDepth{$depth} js-offCanvasCopy" /> <xf:if is="$nav.children"> <xf:цикл foreach="$nav.children" ключ="$childNavId" значение="$child"> <xf:имя макроса="nav_menu_entry" arg-navId="{$childNavId}" arg-nav="{$child}" arg-depth="{{ $depth + 1 }}" /> </xf:foreach> <xf:if is="$depth == 0"> <hr class="разделитель меню" /> </xf:if> </xf:if> </xf:макрос> <xf:имя макроса="панировочные сухари" arg-breadcrumbs="!" arg-navTree="!" arg-selectedNavEntry="{{ null }}" arg-variant=""> <xf:if contentcheck="true"> <ul class="p-breadcrumbs {{ $variant ? 'p-breadcrumbs--' . $вариант: '' }}" область действия элемента itemtype="https://schema.org/BreadcrumbList"> <xf:проверка содержимого> <xf:установить переменную "позиция" со значением "{{ 0 }}"/> <xf:set var="$rootBreadcrumb" value="{$navTree.{$xf.options.rootBreadcrumb}}" /> <xf:if is="$rootBreadcrumb И $rootBreadcrumb.href != $xf.uri И $rootBreadcrumb.href != $xf.fullUri"> <xf:set var="$position" value="{{ $position + 1 }}" / > <xf:имя макроса="crumb", arg-position="{$position}", arg-href="{$rootBreadcrumb.href}", arg-value="{$rootBreadcrumb.title}" /> </xf:if> <xf:if is="$selectedNavEntry И $selectedNavEntry.href И $selectedNavEntry.href != $ xf.uri И $ selectedNavEntry.href != $xf.fullUri И $selectedNavEntry.href != $rootBreadcrumb.href"> <xf:set var="$position" value="{{ $position + 1 }}" /> <xf:имя макроса="crumb" arg-position="{$position}" arg-href="{$selectedNavEntry.href}" arg-value="{$selectedNavEntry.title}" /> </xf:if> <xf:цикл foreach="$breadcrumbs" value="$breadcrumb" if="$ breadcrumb.href != $xf.uri И $breadcrumb.href != $xf.fullUri"> <xf:set var="$position" value="{{ $position + 1 }}" /> <xf:имя макроса ="crumb" arg-position="{$position}" arg-href="{$breadcrumb.href}" arg-value="{$breadcrumb.значение}" /> </xf:foreach> </xf:contentcheck> </ul> </xf:if> </xf:macro> <xf:macro name="crumb" arg-href="!" arg-value="!" arg-позиция="{{ 0 }}"> < li itemprop="itemListElement" itemscope itemtype="https://schema.org/ListItem "> <a href="{$href}" itemprop="item"> <span itemprop="name">{$value}</span> </a> <xf:if is="$position"><meta itemprop="position" content="{$position}" /></xf:if> </li> </xf:macro> ]]>
</template>
<template title="app_nav.less" type="public" addon_id="XF" version_id="2020470" version_string="2.2.4">
<![CDATA[ // navEl / Navigation Elements for header navigation .p-navEl { .m-clearFix(); } .p-navEl-linkHolder { float: left; } .p-navEl-link { float: left; .m-transition(opacity, background; @_nav-elTransitionSpeed); &.p-navEl-link--menuTrigger { cursor: pointer; &:after { .m-menuGadget(); // .58em opacity: .5; .m-transition(opacity; @_nav-elTransitionSpeed); } &:hover:after { opacity: 1; } } } .p-navEl-splitTrigger { float: left; opacity: .5; cursor: pointer; text-decoration: none; .m-transition(all; @_nav-elTransitionSpeed); &:after { .m-menuGadget(); // .58em line-height: 1; } &:hover { opacity: 1; text-decoration: none; } } // HEADER NAV ROW .p-nav { .xf-publicNav(); a { color: inherit; } .p-navSticky.is-sticky & { .p-nav-list .p-navEl.is-selected, .p-account { border-radius: 0; } } } .p-nav-inner { .m-pageWidth(); .m-pageInset(0px); .m-clearFix(); display: flex; align-items: flex-end; } .p-nav .p-nav-menuTrigger { display: none; vertical-align: middle; align-self: center; margin-left: max(0px, @xf-pageEdgeSpacer - 6px); margin-right: 5px; padding: @xf-publicNavPaddingV 8px; color: inherit; &:hover { text-decoration: none; } i:after { .m-faBase(); font-size: @xf-fontSizeLargest; .m-faContent(@fa-var-bars); //, .88em vertical-align: bottom; } .p-nav-menuText { display: none; } } .p-nav-smallLogo { display: none; max-width: 100px; align-self: center; img { display: block; max-height: @header-navHeight; &:not([src$=".svg"]) { width: auto; } } } .p-nav-scroller { margin-right: auto; max-width: 100%; .hScroller-scroll:not(.is-calculated) { // IE11 seems to want to flash a vertical scrollbar without this here overflow: hidden; } .hScroller-action { .m-hScrollerActionColorVariation( xf-default(@xf-publicNav--background-color, transparent), xf-default(@xf-publicNav--color, ~""), xf-intensify(@xf-publicNav--color, 10%) ); } } .p-nav-list { .m-listPlain(); .m-clearFix(); font-size: 0; // this applies padding that will be contained within the scroller. // it needs font-size 0 to not create extra space though &:before, &:after { display: inline-block; width: @xf-pageEdgeSpacer; content: ''; } > li { display: inline-block; vertical-align: bottom; font-size: @xf-fontSizeNormal; &:first-child { margin-left: 0; } } .m-navElHPadding(@xf-publicNavPaddingH); .p-navEl { .xf-publicNavTab(); .m-transition(all; @_nav-elTransitionSpeed); &.is-selected { .xf-publicNavSelected(); .p-navEl-link { padding-right: @xf-publicNavPaddingH; // since the split trigger is hidden &:hover { background: none; text-decoration: none; } } .p-navEl-splitTrigger { display: none; } } &:not(.is-selected):not(.is-menuOpen) { &:hover, .p-navEl-link:hover, .p-navEl-splitTrigger:hover { .xf-publicNavTabHover(); } } &.is-menuOpen { .xf-publicNavTabMenuOpen(); border-top-left-radius: xf-default(@xf-publicNavSelected--border-top-left-radius, 0); border-top-right-radius: xf-default(@xf-publicNavSelected--border-top-right-radius, 0); .m-dropShadow(0, 5px, 10px, 0, .35); a { text-decoration: none; opacity: 1; } } } .p-navEl-link, .p-navEl-splitTrigger { padding-top: @xf-publicNavPaddingV; padding-bottom: @xf-publicNavPaddingV; } } .p-navSticky--primary.is-sticky { .p-nav-list { .p-navEl-link.p-navEl-link--splitMenu { padding-right: ((@xf-publicNavPaddingH) / 4); } .p-navEl.is-selected .p-navEl-splitTrigger { display: inline; position: relative; &:before { content: ''; position: absolute; left: 0; top: 5px; bottom: 5px; width: 0; border-left: @xf-borderSize solid fade(xf-default(@xf-publicNavSelected--color, transparent), 35%); } } } } @media (max-width: @xf-publicNavCollapseWidth) { .has-js { .p-nav-inner { min-height: 45px; } .p-nav .p-nav-menuTrigger { display: inline-block; } .p-nav-smallLogo { display: inline-block; } .p-nav-scroller { display: none; } } } // ACCOUNT/VISITOR/SEARCH SECTION .p-nav-opposite { margin-left: auto; margin-right: @xf-pageEdgeSpacer; text-align: right; flex-shrink: 0; } .p-navgroup { float: left; .m-clearFix(); background: @xf-publicHeaderAdjustColor; border-top-left-radius: @xf-borderRadiusMedium; border-top-right-radius: @xf-borderRadiusMedium; &.p-discovery { margin-left: .5em; &.p-discovery--noSearch { margin-left: 0; } } } .p-navgroup-link { float: left; padding: @xf-publicNavPaddingV @_navAccount-hPadding; border-left: 1px solid @xf-publicHeaderAdjustColor; &:first-of-type { border-top-left-radius: @xf-borderRadiusMedium; border-left: none; } &:last-of-type { border-top-right-radius: @xf-borderRadiusMedium; } &:hover { text-decoration: none; background: xf-intensify(@xf-publicHeaderAdjustColor, 5%); } &.p-navgroup-link--user { .m-overflowEllipsis(); max-width: 150px; .avatar { .m-avatarSize((@xf-fontSizeNormal) * (@xf-lineHeightDefault)); } } &.badgeContainer { opacity: .6; position: relative; &:after { position: absolute; left: (@_navAccount-hPadding - 6px); top: (@xf-publicNavPaddingV - 2px); padding: 1px 3px; margin: 0; font-size: 10px; line-height: 11px; } &:hover, &.badgeContainer--highlighted { opacity: 1; } } &.is-menuOpen { .xf-publicNavTabMenuOpen(); .m-dropShadow(0, 5px, 10px, 0, .35); opacity: 1; } &.p-navgroup-link--iconic { i:after { .m-faBase(); display: inline-block; min-width: 1.2em; text-align: center; } } &.p-navgroup-link--conversations i:after { .m-faContent(@fa-var-envelope, 1em); } &.p-navgroup-link--alerts i:after { .m-faContent(@fa-var-bell); //, .88em } &.p-navgroup-link--bookmarks i:after { .m-faContent(@fa-var-bookmark); //, .75em } &.p-navgroup-link--whatsnew i:after { .m-faContent(@fa-var-bolt); //, .63em } &.p-navgroup-link--search i:after { .m-faContent(@fa-var-search); //, 1em } } .p-navgroup-link--whatsnew { display: none; } @media (max-width: @xf-responsiveWide) { .p-navgroup-link { &.p-navgroup-link--iconic .p-navgroup-linkText, &.p-navgroup-link--textual i { display: none; } &.p-navgroup-link--textual { .m-overflowEllipsis(); max-width: 110px; } &.p-navgroup-link--iconic i:after { text-align: center; } } } @media (max-width: @xf-publicNavCollapseWidth) { .p-navgroup-link--whatsnew { display: block; } .has-js { .p-nav-opposite { align-self: center; margin-right: max(0px, @xf-pageEdgeSpacer - 6px); .p-navgroup { background: none; margin-left: 0; } .p-navgroup-link { border: none; border-radius: @xf-borderRadiusMedium; &.is-menuOpen { .m-borderBottomRadius(0); } &.badgeContainer { opacity: 1; } } } } } @media (max-width: 359px) { .p-navgroup-link&.p-navgroup-link--user { display: none; } } @media (max-width: 374px) { .p-navgroup-link.p-navgroup-link--register { display: none; } } ]]>
</template>
<template title="core_button.less" type="public" addon_id="XF" version_id="2020470" version_string="2.2.4">
<![CDATA[ // ############################ BUTTONS ################# .button, a.button // needed for specificity over a:link { .m-buttonBase(); a { color: inherit; text-decoration: none; } .xf-buttonDefault(); color: rgb(255, 255, 255); background: rgb(38, 45, 57); border: none; &:hover{ background: rgb(49, 57, 72); } &.button--primary { .xf-buttonPrimary(); .m-buttonBlockColorVariationSimple(xf-default(@xf-buttonPrimary--background-color, transparent)); } &.button--cta { color: rgb(255, 255, 255); background: var(--basecolor); border: none; } &.button--link { // block colors background: @xf-contentBg; color: @xf-linkColor; .m-buttonBorderColorVariation(@xf-borderColor); &:hover, &:active, &:focus { text-decoration: none; background: @xf-contentHighlightBg; } } &.button--plain { background: none; color: @xf-linkColor; border: none; &:hover, &:active, &:focus { text-decoration: none; background: none; } } &.button--alt { // block colors background-color: @xf-paletteColor1; color: @xf-linkColor; .m-buttonBorderColorVariation(@xf-paletteColor2); &:hover, &:active, &:focus { background-color: @xf-paletteColor1; color: @xf-linkColor; } } &.button--longText { .m-overflowEllipsis(); max-width: 100%; display: inline-block; } &.is-disabled { .xf-buttonDisabled(); .m-buttonBorderColorVariation(xf-default(@xf-buttonDisabled--background-color, transparent)); &:hover, &:active, &:focus { background: xf-default(@xf-buttonDisabled--background-color, transparent) !important; } } &.is-hidden { display: none; } &.button--scroll { background: fade(xf-default(@xf-buttonDefault--background-color, transparent), 75%); padding: 5px 8px; .m-dropShadow(); } &.button--normal { font-size: @xf-fontSizeNormal; } &.button--small { font-size: @xf-fontSizeSmall; padding: 3px 6px; } &.button--smaller { font-size: @xf-fontSizeSmaller; padding: 2px 5px; } &.button--fullWidth { display: block; width: 100%; } &.button--adminStyleAsset { &.is-disabled { visibility: hidden; } &.is-modify { .m-buttonIcon(@fa-var-pencil); } &.is-revert { .m-buttonIcon(@fa-var-history); } } &.button--wrap { white-space: normal; } &.button--icon { > .button-text:before, .button-icon { .m-faBase(); } > .button-text:before, > .fa--xf:before, .button-icon { font-size: 120%; vertical-align: -.1em; display: inline-block; margin: -.255em 6px -.255em 0; } > .fa--xf { // helps fix a button alignment issue (Chrome only) line-height: inherit; } .button-icon { height: 1em; vertical-align: 0; } &.button--iconOnly { > .button-text:before, > i.fa--xf:before, .button-icon { margin-left: 0; margin-right: 0; } } &.button--padded { > .button-text:before, > i.fa--xf:before, .button-icon { margin-top: 0; margin-bottom: 0; } } &--add { .m-buttonIcon(@fa-var-plus-square, .88em); } &--confirm { .m-buttonIcon(@fa-var-check, 1em); } &--write { .m-buttonIcon(@fa-var-edit, 1.13em); } &--import { .m-buttonIcon(@fa-var-upload, 1.13em); } &--export { .m-buttonIcon(@fa-var-download, 1.13em); } &--download { .m-buttonIcon(@fa-var-download, 1.13em); } &--redirect { .m-buttonIcon(@fa-var-external-link, 1em); } &--disable { .m-buttonIcon(@fa-var-power-off, 1em); } &--edit { .m-buttonIcon(@fa-var-edit, 1.13em); } &--save { .m-buttonIcon(@fa-var-save, .88em); } &--reply { .m-buttonIcon(@fa-var-reply, 1.13em); } &--quote { .m-buttonIcon(@fa-var-quote-left, 1.13em); } &--purchase { .m-buttonIcon(@fa-var-credit-card, 1.13em); } &--payment { .m-buttonIcon(@fa-var-credit-card, 1.13em); } &--convert { .m-buttonIcon(@fa-var-bolt, .75em); } &--search { .m-buttonIcon(@fa-var-search, 1em); } &--sort { .m-buttonIcon(@fa-var-sort, .63em); } &--upload { .m-buttonIcon(@fa-var-upload, 1.13em); } &--attach { .m-buttonIcon(@fa-var-paperclip, 1em); } &--login { .m-buttonIcon(@fa-var-lock, .88em); } &--rate { .m-buttonIcon(@fa-var-star, 1.13em); } &--config { .m-buttonIcon(@fa-var-cog, 1em); } &--refresh { .m-buttonIcon(@fa-var-sync-alt, 1em); } &--translate { .m-buttonIcon(@fa-var-globe, .97em); } &--vote { .m-buttonIcon(@fa-var-check-circle, 1em); } &--result { .m-buttonIcon(@fa-var-chart-bar, 1em); } &--history { .m-buttonIcon(@fa-var-history, 1em); } &--cancel { .m-buttonIcon(@fa-var-ban, 1em); } &--close { .m-buttonIcon(@fa-var-times, .69em); } &--preview { .m-buttonIcon(@fa-var-eye, 1.13em); } &--conversation { .m-buttonIcon(@fa-var-comments, 1.13em); } &--bolt { .m-buttonIcon(@fa-var-bolt, .75em); } &--list { .m-buttonIcon(@fa-var-list, 1em); } &--prev { .m-buttonIcon(@fa-var-chevron-left, .63em); } &--next { .m-buttonIcon(@fa-var-chevron-right, .63em); } &--markRead { .m-buttonIcon(@fa-var-check-square, .88em); } &--user { .m-buttonIcon(@fa-var-user, .88em); } &--userCircle { .m-buttonIcon(@fa-var-user-circle, .97em); } &--notificationsOn { .m-buttonIcon(@fa-var-bell, 1.25em); } // actually only .88em, but as we use this as a toggle, make it the same width as bell-slash &--notificationsOff { .m-buttonIcon(@fa-var-bell-slash, 1.25em); } &--show { .m-buttonIcon(@fa-var-eye, 1.25em) } // actually only 1.13em, but it's a toggle &--hide { .m-buttonIcon(@fa-var-eye-slash, 1.25em) } // for inline mod confirmations &--merge { .m-buttonIcon(@fa-var-compress, .88em); } &--move { .m-buttonIcon(@fa-var-share, 1.13em); } &--copy { .m-buttonIcon(@fa-var-copy, .88em); } &--approve, &--unapprove { .m-buttonIcon(@fa-var-shield, 1em); } &--delete, &--undelete { .m-buttonIcon(@fa-var-trash-alt, .88em); } &--stick, &--unstick { .m-buttonIcon(@fa-var-thumbtack, .75em); } &--lock { .m-buttonIcon(@fa-var-lock, .88em); } &--unlock { .m-buttonIcon(@fa-var-unlock, .88em); } &--bookmark { .m-buttonIcon(@fa-var-bookmark); &.is-bookmarked .button-text:before { font-weight: @faWeight-solid; color: @xf-textColorAttention; } } } &.button--provider { > .button-text:before, .button-icon { .m-faBase('Brands'); font-size: 120%; vertical-align: middle; display: inline-block; margin: -4px 6px -4px 0; } .button-icon { height: 1em; vertical-align: 0; } &--facebook { .m-buttonColorVariation(#3B5998, white); .m-buttonIcon(@fa-var-facebook, 1em); } &--twitter { .m-buttonColorVariation(#1DA1F3, white); .m-buttonIcon(@fa-var-twitter, 1em); } &--google { .m-buttonColorVariation(white, #444); border-color: #e9e9e9; > .button-text:before { display: none; } } &--github { .m-buttonColorVariation(#666666, white); .m-buttonIcon(@fa-var-github, .97em); } &--linkedin { .m-buttonColorVariation(#0077b5, white); .m-buttonIcon(@fa-var-linkedin, .88em); } &--microsoft { .m-buttonColorVariation(#00bcf2, white); .m-buttonIcon(@fa-var-windows, .88em); } &--yahoo { .m-buttonColorVariation(#410093, white); .m-buttonIcon(@fa-var-yahoo, .88em); } } &.button--splitTrigger { // button-text and button-menu are always children of button--splitTrigger // but are defined here for reasons of specificity, as these border colors // are overwritten by .m-buttonBorderColorVariation() > .button-text { border-right: @xf-borderSize solid transparent; } > .button-menu { border-left: @xf-borderSize solid transparent; } .m-clearFix(); padding: 0; font-size: 0; display: inline-block; button.button-text { background: transparent; border: none; border-right: @xf-borderSize solid transparent; color: inherit; } > .button-text, > .button-menu { .xf-buttonBase(); display: inline-block; &:hover { &:after { opacity: 1; } } } > .button-text { .m-borderRightRadius(0); } > .button-menu { .m-borderLeftRadius(0); padding-right: xf-default(@xf-buttonBase--padding-right, 0);// * (2/3); padding-left: xf-default(@xf-buttonBase--padding-left, 0);// * (2/3); &:after { .m-menuGadget(); // .58em opacity: .5; } } } } .buttonGroup { display: inline-block; vertical-align: top; .m-clearFix(); &.buttonGroup--aligned { vertical-align: middle; } > .button { float: left; &:not(:first-child) { border-left: none; } &:not(:first-child):not(:last-child) { border-radius: 0; } &:first-child:not(:last-child) { .m-borderRightRadius(0); } &:last-child:not(:first-child) { .m-borderLeftRadius(0); } } > .buttonGroup-buttonWrapper { float: left; &:not(:first-child) > .button { border-left: none; } &:not(:first-child):not(:last-child) > .button { border-radius: 0; } &:first-child:not(:last-child) > .button { .m-borderRightRadius(0); } &:last-child:not(:first-child) > .button { .m-borderLeftRadius(0); } } } .toggleButton { > input { display: none; } > span { .xf-buttonDisabled(); .m-buttonBorderColorVariation(xf-default(@xf-buttonDisabled--background-color, transparent)); } &.toggleButton--small > span { font-size: @xf-fontSizeSmaller; padding: @xf-paddingSmall; } > input:checked + span { .xf-buttonDefault(); .m-buttonBlockColorVariationSimple(xf-default(@xf-buttonDefault--background-color, transparent)); } } .u-scrollButtons { position: fixed; bottom: 30px; right: (@xf-pageEdgeSpacer) / 2; .has-hiddenscroll & { right: 20px; } z-index: @zIndex-9; .m-transition(opacity; @xf-animationSpeed); opacity: 0; display: none; &.is-transitioning { display: block; } &.is-active { display: block; opacity: 1; } .button { display: block; + .button { margin-top: (@xf-pageEdgeSpacer) / 2; } } } ]]>
</template>
<template title="core_overlay.less" type="public" addon_id="XF" version_id="2020470" version_string="2.2.4">
<![CDATA[ // #################################### OVERLAYS ################################ .overlay-container { display: none; position: fixed; top: 0; bottom: 0; left: 0; right: 0; z-index: @zIndex-9; background: @xf-overlayMaskColor; -webkit-overflow-scrolling: touch; opacity: 0; .m-transition(opacity); &.is-transitioning { display: block; } &.is-active { display: block; opacity: 1; } } .overlay { position: relative; margin: 40px auto 10px; margin-top: @xf-overlayTopMargin; width: 100%; max-width: 800px; .xf-pageBackground(); color: @xf-textColor; border-radius: @xf-blockBorderRadius; .m-dropShadow(0, 5px, 15px, 0, .5); outline: none; > .overlay-title:first-child, .overlay-firstChild { border-top-left-radius: @xf-blockBorderRadius; border-top-right-radius: @xf-blockBorderRadius; } > .overlay-content > *:last-child, .overlay-lastChild { border-bottom-left-radius: @xf-blockBorderRadius; border-bottom-right-radius: @xf-blockBorderRadius; } } @media (max-width: 820px) { .overlay { max-width: calc(~'100% - 20px'); } } .overlay-title { .m-clearFix(); display: none; margin: 0; font-weight: @xf-fontWeightNormal; .xf-overlayHeader(); .overlay & { display: block; } } .overlay-titleCloser { float: right; cursor: pointer; margin-left: 5px; text-decoration: none; opacity: .5; .m-transition(); &:after { .m-faBase(); .m-faContent(@fa-var-times); } &:hover { text-decoration: none; opacity: 1; } } .overlay-content { .m-clearFix(); } // when displaying a modal, prevent scrolling on the main content but allow it on the overlay body.is-modalOpen { overflow: hidden !important; .overlay-container, .offCanvasMenu { overflow-y: scroll !important; } } @media (max-width: @xf-responsiveNarrow) { .overlay-title { font-size: @xf-fontSizeLarger; } } // ############################### OVERLAY/BLOCK NESTING ############################## .block-container > .tabPanes > li, .block-container > .block-body, .block-container > .block-body > .block-row, .overlay-content { > .blocks > .block > .block-container, > .block > .block-container, > .blockMessage { margin-left: 0; margin-right: 0; border-radius: @xf-blockBorderRadius; // restore the radius that might be removed for some viewports as we're within the overlay border-left: none; border-right: none; } > .blocks > .block:first-child, > .block:first-child, > .blockMessage:first-child { margin-top: 0; .block-outer:not(.block-outer--after) { border-bottom: @xf-borderSize solid @xf-borderColorLight; padding: @xf-blockPaddingV; } } > .blocks > .block:last-child, > .block:last-child, > .blockMessage:last-child { margin-bottom: 0; .block-outer.block-outer--after { border-top: @xf-borderSize solid @xf-borderColorLight; padding: @xf-blockPaddingV; } } > .blocks > .block:first-child > .block-container, > .block:first-child > .block-container, > .blockMessage:first-child { border-top: none; } > .blocks > .block:last-child > .block-container, > .block:last-child > .block-container, > .blockMessage:last-child { border-bottom: none; } > .blocks > .block:not(:first-child) > .block-container, > .block:not(:first-child) > .block-container, > .blockMessage:not(:first-child) { .m-borderTopRadius(0); } > .blocks > .block:not(:last-child) > .block-container, > .block:not(:last-child) > .block-container, > .blockMessage:not(:last-child) { .m-borderBottomRadius(0); } } .overlay-content { > .blocks > .block > .block-container, > .block > .block-container, > .blockMessage { .m-borderTopRadius(0); } > .blocks > .block > .block-container, > .block > .block-container { > :first-child { .m-borderTopRadius(0); } > .block-body:first-child > .formRow:first-child { > dt { border-top-left-radius: 0; } > dd { border-top-right-radius: 0; } } > .dataList:first-child { tbody:first-child .dataList-row:first-child, thead:first-child .dataList-row:first-child { > .dataList-cell:first-child { border-top-left-radius: 0; } > .dataList-cell:last-child { border-top-right-radius: 0; } } } } > .block:last-child > .block-container > .formSubmitRow:not(.is-sticky):last-child .formSubmitRow-bar { border-bottom-left-radius: @block-borderRadius-inner; border-bottom-right-radius: @block-borderRadius-inner; } } ]]>
</template>
<template title="extra.less" type="public" addon_id="XF" version_id="2021370" version_string="2.2.13">
<![CDATA[ <xf:include template="majdev_core.less" /> <xf:include template="majdev_icons.less" /> <xf:include template="majdev_overlay_menu.less" /> .p-header-logo.p-header-logo--image img { padding: 35px; } .osnova { background: url(/forum/styles/rodinastyle/osnova.png); width: 198px; height: 30px; font-size: 0px; background-size: cover; border: none; } .spec { background: url(/forum/styles/rodinastyle/spec.png); width: 198px; height: 30px; font-size: 0px; background-size: cover; border: none; } .zga { background: url(/forum/styles/rodinastyle/zga.png); width: 198px; height: 30px; font-size: 0px; background-size: cover; border: none; } .mladmin { background: url(/forum/styles/rodinastyle/mdadm.png); width: 198px; height: 30px; font-size: 0px; background-size: cover; border: none; } .ga { background: url(/forum/styles/rodinastyle/ga.png); width: 198px; height: 30px; font-size: 0px; background-size: cover; border: none; } .cur { background: url(/forum/styles/rodinastyle/user.png); width: 198px; height: 30px; font-size: 0px; background-size: cover; border: none; } .admin { background: url(/forum/styles/rodinastyle/admin.png); width: 198px; height: 30px; font-size: 0px; background-size: cover; border: none; } .user { background: url(/forum/styles/rodinastyle/user.png); width: 198px; height: 30px; font-size: 0px; background-size: cover; border: none; } .help { background: url(/forum/styles/rodinastyle/help.png); width: 198px; height: 30px; font-size: 0px; background-size: cover; border: none; } ]]>
</template>
<template title="helper_js_global" type="public" addon_id="XF" version_id="2020470" version_string="2.2.4">
<![CDATA[ <xf:macro name="head" arg-app="!"> <xf:set var="$cssUrls" value="{{ ['public:normalize.css', 'public:fa.css', 'public:core.less', $app . ':app.less'] }}" /> <xf:include template="font_awesome_setup" /> <link rel="stylesheet" href="{{ css_url($cssUrls) }}" /> <!--XF:CSS--> <xf:if is="$xf.fullJs"> <script src="{{ js_url('xf/preamble.js') }}"></script> <xf:else /> <script src="{{ js_url('xf/preamble.min.js') }}"></script> </xf:if> </xf:macro> <script type="680a4b2eff02abeca1a04f83-text/javascript">$(document).ready(function(){var html=$("html");$("[data-guide-modal]").on("click",function(t){html.toggleClass("hg-Modal-acik"),t.preventDefault()});$(document).keyup(function(e){27===e.keyCode&&html.removeClass("hg-Modal-acik")});$(".modal-kolon").each(function(){var settingName=$(this).attr("data-buton-class"),settingDefault=$(this).attr("data-default"),settingCookie=getCookie(settingName);"on"===settingCookie?($(this).find("#"+settingName+"-on").attr("checked","")):"off"===settingCookie?($(this).find("#"+settingName+"-off").attr("checked","")):"on"===settingDefault?($(this).find("#"+settingName+"-on").attr("checked","")):($(this).find("#"+settingName+"-off").attr("checked",""));$('.modal-kolon[data-buton-class="'+settingName+'"] input').on("click",function(){var inputValue=$(this).attr("id");inputValue===settingName+"-on"?(html.addClass(settingName),setCookie(settingName,"on",365)):(html.removeClass(settingName),setCookie(settingName,"off",365));});});});</script> <xf:macro name="body" arg-app="!" arg-jsState="{{ null }}"> <xf:corejs /> <!--XF:JS--> <script> $(document).ready(function(){ var html=$("html"); $("[data-guide-modal]").on("click",function(t){ html.toggleClass("mj-Modal-opened"),t.preventDefault() }); $(document).keyup(function(e){ 27===e.keyCode && html.removeClass("mj-Modal-opened") }) $(".modal-column").each(function(){ var settingName=$(this).attr("data-button-class"),settingDefault=$(this).attr("data-default"),settingCookie=getCookie(settingName); "on"===settingCookie?($(this).find("#"+settingName+"-on").attr("checked","")):"off"===settingCookie?($(this).find("#"+settingName+"-off").attr("checked","")):"on"===settingDefault?($(this).find("#"+settingName+"-on").attr("checked","")):($(this).find("#"+settingName+"-off").attr("checked","")); $('.modal-column[data-button-class="' + settingName + '"] input').on("click", function(){ var inputValue = $(this).attr("id"); inputValue===settingName+"-on"?(html.addClass(settingName),setCookie(settingName,"on",365)):(html.removeClass(settingName),setCookie(settingName,"off",365)) ;}) }); }); </script> <script> jQuery.extend(true, XF.config, { // <!--[XF:js_global:xf_extend_start]--> userId: {$xf.visitor.user_id}, enablePush: {{ $xf.options.enablePush ? 'true' : 'false' }}, pushAppServerKey: '{$xf.options.pushKeysVAPID.publicKey}', url: { fullBase: '{{ base_url(null, true)|escape("js") }}', basePath: '{{ base_url(null, false)|escape("js") }}', css: '{{ css_url(["__SENTINEL__"], false)|escape("js") }}', keepAlive: '{{ link_type($app, "login/keep-alive")|escape("js") }}' }, cookie: { path: '{{ $xf.cookie.path|escape("js") }}', domain: '{{ $xf.cookie.domain|escape("js") }}', prefix: '{{ $xf.cookie.prefix|escape("js") }}', secure: {{ $xf.cookie.secure ? 'true' : 'false' }} }, cacheKey: '{{ cache_key()|escape("js") }}', csrf: '{{ csrf_token()|escape("js") }}', js: {'<!--XF:JS:JSON-->'}, css: {'<!--XF:CSS:JSON-->'}, time: { now: {$xf.time}, today: {$xf.timeDetails.today}, todayDow: {$xf.timeDetails.todayDow}, tomorrow: {$xf.timeDetails.tomorrow}, yesterday: {$xf.timeDetails.yesterday}, week: {$xf.timeDetails.week} }, borderSizeFeature: '{{ property('borderSizeFeature') }}', fontAwesomeWeight: '{{ fa_weight() }}', enableRtnProtect: {{ $xf.enableRtnProtect ? 'true' : 'false' }}, enableFormSubmitSticky: {{ property('formSubmitSticky') ? 'true' : 'false' }}, uploadMaxFilesize: {$xf.uploadMaxFilesize}, allowedVideoExtensions: {$xf.allowedVideoExtensions|json|raw}, allowedAudioExtensions: {$xf.allowedAudioExtensions|json|raw}, shortcodeToEmoji: {{ $xf.options.shortcodeToEmoji ? 'true' : 'false' }}, visitorCounts: { conversations_unread: '{$xf.visitor.conversations_unread|number}', alerts_unviewed: '{$xf.visitor.alerts_unviewed|number}', total_unread: '{{ ($xf.visitor.conversations_unread + $xf.visitor.alerts_unviewed)|number }}', title_count: {{ in_array($xf.options.displayVisitorCount, ['title_count', 'title_and_icon']) ? 'true' : 'false' }}, icon_indicator: {{ in_array($xf.options.displayVisitorCount, ['icon_indicator', 'title_and_icon']) ? 'true' : 'false' }} }, jsState: {{ $jsState ? $jsState|json|raw : '{}' }}, publicMetadataLogoUrl: '{{ property('publicMetadataLogoUrl') ? base_url(property('publicMetadataLogoUrl'), true) : '' }}', publicPushBadgeUrl: '{{ property('publicPushBadgeUrl') ? base_url(property('publicPushBadgeUrl'), true) : '' }}' }); jQuery.extend(XF.phrases, { // <!--[XF:js_global:xf_phrase_start]--> date_x_at_time_y: "{{ phrase('date_x_at_time_y')|escape('js') }}", day_x_at_time_y: "{{ phrase('day_x_at_time_y')|escape('js') }}", yesterday_at_x: "{{ phrase('yesterday_at_x')|escape('js') }}", x_minutes_ago: "{{ phrase('x_minutes_ago')|escape('js') }}", one_minute_ago: "{{ phrase('one_minute_ago')|escape('js') }}", a_moment_ago: "{{ phrase('a_moment_ago')|escape('js') }}", today_at_x: "{{ phrase('today_at_x')|escape('js') }}", in_a_moment: "{{ phrase('in_a_moment')|escape('js') }}", in_a_minute: "{{ phrase('in_a_minute')|escape('js') }}", in_x_minutes: "{{ phrase('in_x_minutes')|escape('js') }}", later_today_at_x: "{{ phrase('later_today_at_x')|escape('js') }}", tomorrow_at_x: "{{ phrase('tomorrow_at_x')|escape('js') }}", day0: "{{ phrase('day_sunday')|escape('js') }}", day1: "{{ phrase('day_monday')|escape('js') }}", day2: "{{ phrase('day_tuesday')|escape('js') }}", day3: "{{ phrase('day_wednesday')|escape('js') }}", day4: "{{ phrase('day_thursday')|escape('js') }}", day5: "{{ phrase('day_friday')|escape('js') }}", day6: "{{ phrase('day_saturday')|escape('js') }}", dayShort0: "{{ phrase('day_sunday_short')|escape('js') }}", dayShort1: "{{ phrase('day_monday_short')|escape('js') }}", dayShort2: "{{ phrase('day_tuesday_short')|escape('js') }}", dayShort3: "{{ phrase('day_wednesday_short')|escape('js') }}", dayShort4: "{{ phrase('day_thursday_short')|escape('js') }}", dayShort5: "{{ phrase('day_friday_short')|escape('js') }}", dayShort6: "{{ phrase('day_saturday_short')|escape('js') }}", month0: "{{ phrase('month_1')|escape('js') }}", month1: "{{ phrase('month_2')|escape('js') }}", month2: "{{ phrase('month_3')|escape('js') }}", month3: "{{ phrase('month_4')|escape('js') }}", month4: "{{ phrase('month_5')|escape('js') }}", month5: "{{ phrase('month_6')|escape('js') }}", month6: "{{ phrase('month_7')|escape('js') }}", month7: "{{ phrase('month_8')|escape('js') }}", month8: "{{ phrase('month_9')|escape('js') }}", month9: "{{ phrase('month_10')|escape('js') }}", month10: "{{ phrase('month_11')|escape('js') }}", month11: "{{ phrase('month_12')|escape('js') }}", active_user_changed_reload_page: "{{ phrase('active_user_changed_reload_page')|escape('js') }}", server_did_not_respond_in_time_try_again: "{{ phrase('server_did_not_respond_in_time_try_again')|escape('js') }}", oops_we_ran_into_some_problems: "{{ phrase('oops_we_ran_into_some_problems')|escape('js') }}", oops_we_ran_into_some_problems_more_details_console: "{{ phrase('oops_we_ran_into_some_problems_more_details_console')|escape('js') }}", file_too_large_to_upload: "{{ phrase('file_too_large_to_upload')|escape('js') }}", uploaded_file_is_too_large_for_server_to_process: "{{ phrase('uploaded_file_is_too_large_for_server_to_process')|escape('js') }}", files_being_uploaded_are_you_sure: "{{ phrase('files_being_uploaded_are_you_sure')|escape('js') }}", attach: "{{ phrase('button.attach')|escape('js') }}", rich_text_box: "{{ phrase('rich_text_box')|escape('js') }}", close: "{{ phrase('close')|escape('js') }}", link_copied_to_clipboard: "{{ phrase('link_copied_to_clipboard')|escape('js') }}", text_copied_to_clipboard: "{{ phrase('text_copied_to_clipboard')|escape('js') }}", loading: "{{ phrase('loading...')|escape('js') }}", processing: "{{ phrase('processing')|escape('js') }}", 'processing...': "{{ phrase('processing...')|escape('js') }}", showing_x_of_y_items: "{{ phrase('showing_x_of_y_items')|escape('js') }}", showing_all_items: "{{ phrase('showing_all_items')|escape('js') }}", no_items_to_display: "{{ phrase('no_items_to_display')|escape('js') }}", number_button_up: "{{ phrase('number_button_up')|escape('js') }}", number_button_down: "{{ phrase('number_button_down')|escape('js') }}", push_enable_notification_title: "{{ phrase('push_enable_notification_title', {'boardTitle': $xf.options.boardTitle})|escape('js') }}", push_enable_notification_body: "{{ phrase('push_enable_notification_body')|escape('js') }}" }); </script> <form style="display:none" hidden="hidden"> <input type="text" name="_xfClientLoadTime" value="" id="_xfClientLoadTime" title="_xfClientLoadTime" tabindex="-1" /> </form> <xf:if is="$xf.visitor.canSearch() && $xf.request.getFullRequestUri() === link('full:index')"> <script type="application/ld+json"> { "@context": "https://schema.org", "@type": "WebSite", "url": "{{ link('canonical:index')|escape('js') }}", "potentialAction": { "@type": "SearchAction", "target": "{{ link('canonical:search/search')|escape('js') . ($xf.options.useFriendlyUrls ? '?' : '&') . 'keywords={search_keywords}' }}", "query-input": "required name=search_keywords" } } </script> </xf:if> </xf:macro> ]]>
</template>
<template title="majdev_core.less" type="public" addon_id="" version_id="0" version_string="">
<![CDATA[ /* */ :root{ --theme: 'Rodina RP'; --version: 'v1.1'; --author: 'MAJDEV'; --pagewidth: 90%; --basecolor: rgb(206, 22, 56); } .alternative-color:root{ --basecolor: rgb(0, 196, 195); } .wide-page:root{ --pagewidth: 98%; } .p-header-inner{ max-width: var(--pagewidth); } .p-nav-inner{ max-width: var(--pagewidth); } .p-sectionLinks-inner{ max-width: var(--pagewidth); } .p-body-inner{ max-width: var(--pagewidth); } .p-footer-inner{ max-width: var(--pagewidth); } ::-webkit-scrollbar{ width: 15px; } ::-webkit-scrollbar-thumb{ background: var(--basecolor); } ::-webkit-scrollbar-track{ background: rgb(38, 45, 57); } .p-header-logo{ margin-left: auto; } .p-nav-smallLogo{ display: none !important; } .p-header-logo{ max-width: none !important; } .has-js .p-header{ display: block; } .blockMessage{ background: rgb(38, 45, 57); } .menu-linkRow:hover{ background-color: rgb(34, 40, 49); border-left-color: var(--basecolor); } .block-container{ border-width: 0px; } .node+.node{ border-top: 1px solid rgb(33, 40, 49); } .node-stats{ background: rgb(36, 42, 53); } .formRow .iconic>i, .inputGroup .iconic>i, .inputChoices .iconic>i, .block-footer .iconic>i, .dataList-cell .iconic>i, .message-cell--extra .iconic>i, .formRow.dataList-cell--fa>a>i, .inputGroup.dataList-cell--fa>a>i, .inputChoices.dataList-cell--fa>a>i, .block-footer.dataList-cell--fa>a>i, .dataList-cell.dataList-cell--fa>a>i, .message-cell--extra.dataList-cell--fa>a>i, .formRow .iconic svg, .inputGroup .iconic svg, .inputChoices .iconic svg, .block-footer .iconic svg, .dataList-cell .iconic svg, .message-cell--extra .iconic svg, .formRow.dataList-cell--fa>a svg, .inputGroup.dataList-cell--fa>a svg, .inputChoices.dataList-cell--fa>a svg, .block-footer.dataList-cell--fa>a svg, .dataList-cell.dataList-cell--fa>a svg, .message-cell--extra.dataList-cell--fa>a svg{ color: rgb(255, 255, 255); } .inputTypes-input:checked+.inputTypes-display, .inputTypes-display:hover{ background: rgb(36, 42, 53); } .button { border: none; } .post-row{ display: flex; background: rgb(38, 45, 57); align-items: center; margin: 3px 0; border-radius: 2px; position: relative; } .post-row .post-icon { padding: 7px; background: rgb(33, 40, 49); margin-right: .1rem; border-radius: 2px 0 0 2px; text-align: center; width: 25%; } .post-row .post-row-inner{ padding: 5px; display: flex; width: 100%; position: relative; z-index: 1; font-size: 10px; font-weight: 600; align-items: center; } .ml-auto{ margin-left: 5px; } .message-userArrow{ display: none; } .fr-wrapper::selection{ background: paleturquoise; color: rgb(20, 20, 20); } .fr-box.fr-basic .fr-element ::selection{ background: paleturquoise; color: rgb(20, 20, 20); } .message-avatar-wrapper .message-avatar-online{ display: inline-block; width: 16px; height: 16px; background: rgb(255, 255, 255); border: none!important; border-radius: 50%!important } .message-avatar-wrapper .message-avatar-online:before{ content: ''; position: absolute; width: 10px; height: 10px; margin: 1px 0 0 -7px; background: rgb(127, 185, 0); border-color: rgb(127, 185, 0); border-radius: 50% } .message-avatar-wrapper .message-avatar-online:after{ content: ''; position: absolute; width: 32px; height: 32px; margin: -10px 0 0 -17px; border: 1px solid rgb(127, 185, 0); border-radius: 50%; box-shadow: 0 0 4px rgb(127, 185, 0), inset 0 0 4px rgb(127, 185, 0); -webkit-transform: scale(0); -webkit-animation: online 2.5s ease-in-out infinite; animation: online 2.5s ease-in-out infinite } @-webkit-keyframes online{ 0% {opacity: 1;-webkit-transform: scale(0)} 50% {opacity: .7} 100% {opacity: 0;-webkit-transform: scale(1)} } @keyframes online{ 0% {opacity: 1;transform: scale(0)} 50% {opacity: .7} 100% {opacity: 0;transform: scale(1)} } ]]>
</template>
<template title="majdev_icons.less" type="public" addon_id="" version_id="0" version_string="">
<![CDATA[ /* __ __ _ _ ____ _____ __ __ _ _ _____ _____ | \/ | / \ | | | _ \ | ____| \ \ / / | \ | | | ____| |_ _| | |\/| | / _ \ _ | | | | | | | _| \ \ / / | \| | | _| | | | | | | / ___ \ | |_| | | |_| | | |___ \ V / _ | |\ | | |___ | | |_| |_| /_/ \_\ \___/ |____/ |_____| \_/ (_) |_| \_| |_____| |_| */ .fa-comments:before{ content: "\f666"; } .p-navEl-link{ &:before{ font-size: 15px; display: inline-block; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; margin-right: 5px; .m-faBase(); } &[data-nav-id="home"]:before{content: '\f015';} &[data-nav-id="forums"]:before{content: '\f7d4';} &[data-nav-id="whatsNew"]:before{content: '\f560';} &[data-nav-id="members"]:before{content: '\f0c0';} &[data-nav-id="newPosts"]:before{content: '\f075';} &[data-nav-id="findThreads"]:before{content: '\f002';} &[data-nav-id="watched"]:before{content: '\f2f1'; } &[data-nav-id="searchForums"]:before{content: '\f689';} &[data-nav-id="markForumsRead"]:before{content: '\f5b7';} } .menu-linkRow{ &:before{ display: inline-block; font-size: 15px; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; margin-right: 5px; .m-faBase(); } &[data-nav-id="whatsNewPosts"]:before{content: '\f4ad';} &[data-nav-id="whatsNewProfilePosts"]:before{content: '\f4ff';} &[data-nav-id="whatsNewNewsFeed"]:before{content: '\f09e';} &[data-nav-id="latestActivity"]:before{content: '\f6a3';} &[data-nav-id="currentVisitors"]:before{content: '\f0c0';} &[data-nav-id="newProfilePosts"]:before{content: '\f4ff';} &[data-nav-id="searchProfilePosts"]:before{content: '\f00e';} &[data-nav-id="yourThreads"]:before{content: '\f4ad';} &[data-nav-id="contributedThreads"]:before{content: '\f4ac';} &[data-nav-id="unansweredThreads"]:before{content: '\f4b5';} &[data-nav-id="watchedThreads"]:before{content: '\f14e';} &[data-nav-id="watchedForums"]:before{content: '\f4ac';} } .menu-tabHeader .tabs-tab{ &:before{ display: inline-block; font-size: 15px; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; margin-right: 5px; .m-faBase(); } &[href="{{ link('account') }}"]:before{content: '\f509';} &[href="{{ link('account/bookmarks') }}"]:before{content: '\f02e';} } .menu-content .listPlain .menu-linkRow{ &:before{ display: inline-block; font-size: 15px; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; margin-right: 5px; .m-faBase(); } &[href="{{ link('whats-new/news-feed') }}"]:before{content: '\f09e';} &[href*="{{ link('search/member') }}"]:before{content: '\f4b2';} &[href*="{{ link('account/reactions') }}"]:before{content: '\f361';} &[href="{{ link('account/account-details') }}"]:before{content: '\f4fe';} &[href="{{ link('account/security') }}"]:before{content: '\f502';} &[href="{{ link('account/privacy') }}"]:before{content: '\f505';} &[href="{{ link('account/preferences') }}"]:before{content: '\f6a3';} &[href="{{ link('account/signature') }}"]:before{content: '\f5b7';} &[href="{{ link('account/following') }}"]:before{content: '\f14e';} &[href="{{ link('account/ignored') }}"]:before{content: '\f4fa';} } [href*="{{ link('logout') }}"]:before{ display: inline-block; .m-faBase(); content: '\f011'; font-size: 15px; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; margin-right: 5px; } [data-template="account_alerts"], &[data-template="account_reactions"], &[data-template="account_bookmarks"], &[data-template="kl_em_template_list"], &[data-template="xc_yvp_account"], &[data-template="siropu_referral_system_account_referrals"], &[data-template="asc_account_sms"], &[data-template="account_details"], &[data-template="account_security"], &[data-template="account_privacy"], &[data-template="account_preferences"], &[data-template="account_signature"], &[data-template="account_upgrades"], &[data-template="account_connected"], &[data-template="account_following"], &[data-template="account_ignored"], &[data-template="thuserimprovements_self_deactivate"] { .p-body-sideNavContent a.blockLink { &:before { font-family: 'Font Awesome 5 Pro'; font-size: inherit; font-style: normal; font-weight: 900; text-rendering: auto; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; padding-right: 5px; } &[href*="members/"]:before { content: "\f007"; } &[href*="account/alerts"]:before { content: "\f0f3"; } &[href*="account/reactions"]:before { content: "\f164"; } &[href*="account/bookmarks"]:before { content: "\f02e"; } &[href*="account/kl-editor-templates"]:before { content: "\f044"; } &[href*="account/youtube-profile"]:before { font-family: 'Font Awesome 5 Brands'; content: "\f167"; } &[href*="account/referrals"]:before { content: "\f500"; } &[href*="account/sms-confirmation"]:before { content: "\f3cf"; } &[href*="account/account-details"]:before { content: "\f4fe"; } &[href*="account/security"]:before { content: "\f3ed"; } &[href*="account/privacy"]:before { content: "\f023"; } &[href*="account/preferences"]:before { content: "\f085"; } &[href*="account/signature"]:before { content: "\f5b7"; } &[href*="account/upgrades"]:before { font-family: 'Font Awesome 5 Brands'; content: "\f1ed"; } &[href*="account/connected-accounts"]:before { content: "\f63d"; } &[href*="account/following"]:before { content: "\f234"; } &[href*="account/ignored"]:before { content: "\f503"; } &[href*="logout"]:before { content: "\f011"; } &[href*="account/thui-deactivate"]:before { content: "\f307"; } } } .p-footer-linkList a[href*="{{ link('help/terms') }}"]:before{.m-faBase();padding-right: 5px;content: "\f05a" !important;} .p-footer-linkList a[href*="{{ link('help') }}"]:before{ .m-faBase(); padding-right: 5px; content: "\f059" } .p-footer-linkList a[href*="{{ link('help/privacy-policy') }}"]:before{ .m-faBase(); padding-right: 5px; content: "\f21b" !important; } .p-footer-linkList a[href*="{{ link('/misc/contact') }}"]:before{ .m-faBase(); padding-right: 5px; content: "\f1d8" !important; } .p-footer-linkList a[href*="{{ link('https://') }}"]:before{ .m-faBase(); padding-right: 5px; content: "\f015" !important; } .offCanvasMenu-linkHolder a[href*="{{ link('login') }}"]:before{ .m-faBase(); padding-right: 5px; content: "\f08b" } .offCanvasMenu-linkHolder a[href*="{{ link('register') }}"]:before{ .m-faBase(); padding-right: 5px; content: "\f25d" } .offCanvasMenu-link[data-nav-id="forums"]:before { padding: 4px; .m-faBase(); content: "\f086";} .offCanvasMenu-link[data-nav-id="home"]:before { padding: 4px; .m-faBase(); content: "\f015";} .offCanvasMenu a[href*="{{ link('whats-new/posts') }}"]:before{ .m-faBase(); padding-right: 5px; content: "\f05b" } .offCanvasMenu a[href*="{{ link('find-threads/started') }}"]:before{ .m-faBase(); padding-right: 5px; content: "\f002" } .offCanvasMenu a[href*="{{ link('find-threads/contributed') }}"]:before{ .m-faBase(); padding-right: 5px; content: "\f06e" } .offCanvasMenu a[href*="{{ link('find-threads/unanswered') }}"]:before{ .m-faBase(); padding-right: 5px; content: "\f070" } .offCanvasMenu a[href*="{{ link('watched/threads') }}"]:before{ .m-faBase(); padding-right: 5px; content: "\f086" } .offCanvasMenu a[href*="{{ link('watched/forums') }}"]:before{ .m-faBase(); padding-right: 5px; content: "\f086" } .offCanvasMenu a[href*="{{ link('search', null, {'type': 'post'}) }}"]:before{ .m-faBase(); padding-right: 5px; content: "\f002" } .offCanvasMenu a[href*="{{ link('forums/mark-read', '-', {'date': $xf.time}) }}"]:before{ .m-faBase(); padding-right: 5px; content: "\f002" } .offCanvasMenu-linkHolder a[href*="{{ link('whats-new') }}"]:before{ .m-faBase(); padding-right: 5px; content: "\f059" } .offCanvasMenu a[href*="{{ link('whats-new/profile-posts') }}"]:before{ .m-faBase(); padding-right: 5px; content: "\f21b" } .offCanvasMenu a[href*="{{ link('whats-new/news-feed') }}"]:before{ .m-faBase(); padding-right: 5px; content: "\f03a" } .offCanvasMenu a[href*="{{ link('whats-new/latest-activity') }}"]:before{ .m-faBase(); padding-right: 5px; content: "\f06e" } .offCanvasMenu a[href*="{{ link('whats-new/resources') }}"]:before{ .m-faBase(); padding-right: 5px; content: "\f164" } .offCanvasMenu-linkHolder a[href*="{{ link('account/upgrades') }}"]:before{ .m-faBase(); padding-right: 5px; content: "\f234" } .offCanvasMenu-linkHolder a[href*="{{ link('members') }}"]:before{ .m-faBase(); padding-right: 5px; content: "\f007" } .offCanvasMenu a[href*="{{ link('members/list') }}"]:before{ .m-faBase(); padding-right: 5px; content: "\f0c0" } .offCanvasMenu a[href*="{{ link('online') }}"]:before{ .m-faBase(); padding-right: 5px; content: "\f205" } .offCanvasMenu a[href*="{{ link('search', null, {'type': 'profile_post'}) }}"]:before{ .m-faBase(); padding-right: 5px; content: "\f002" } .offCanvasMenu a[href*="{{ link('resources') }}"]:before{ .m-faBase(); padding-right: 5px; content: "\f187" } .offCanvasMenu a[href*="{{ link('resources/latest-reviews') }}"]:before{ .m-faBase(); padding-right: 5px; content: "\f06e" } .offCanvasMenu a[href*="{{ link('watched/resources') }}"]:before{ .m-faBase(); padding-right: 5px; content: "\f187" } .offCanvasMenu a[href*="{{ link('watched/resource-categories') }}"]:before{ .m-faBase(); padding-right: 5px; content: "\f187" } .offCanvasMenu a[href*="/search/?type=resource"]:before{ .m-faBase(); padding-right: 5px; content: "\f002" } .p-body-sidebar [data-widget-definition="forum_statistics"] .pairs.pairs--justified > dt:before { font-family: "Font Awesome 5 Pro"; padding-right: 7px; color: white; } .p-body-sidebar [data-widget-definition="forum_statistics"] .pairs:nth-child(1) dt:before { content: "\f4b2"; } .p-body-sidebar [data-widget-definition="forum_statistics"] .pairs:nth-child(2) dt:before { content: "\f4b6"; } .p-body-sidebar [data-widget-definition="forum_statistics"] .pairs:nth-child(3) dt:before { content: "\f2bd"; } .p-body-sidebar [data-widget-definition="forum_statistics"] .pairs:nth-child(4) dt:before { content: "\f234"; } .actionBar-action:before { margin-right: 5px; } .actionBar-action--edit:before {.m-faContent("\f040");} .actionBar-action--report:before {.m-faContent("\f071");} .actionBar-action--ip:before {.m-faContent("\f002");} .actionBar-action--delete:before {.m-faContent("\f00d");} .actionBar-action--spam:before {.m-faContent("\f024");} .actionBar-action--warn:before {.m-faContent("\f12a");} .actionBar-action--history:before {.m-faContent("\f1da");} .p-navgroup-link[data-guide-modal] span:before { content: "\f3f1"; font-family: 'Font Awesome 5 Pro'; transform: translate(0, 0); font-weight: normal; text-rendering: auto; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; margin: 0 5px; } .p-navgroup-link.p-navgroup-link--moderatortools i:after { content: "\f509"; } .p-navgroup-link.p-navgroup-link--textual.p-navgroup-link--logIn:before { font-family: "font awesome 5 pro"; font-size: inherit; font-style: normal; font-weight: 400; text-rendering: auto; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; content: "\f090"; display: inline-block; width: 1em; padding: 0 3px; } .p-navgroup-link.p-navgroup-link--textual.p-navgroup-link--logIn:before { color: var(--basecolor); } .p-navgroup-link.p-navgroup-link--textual.p-navgroup-link--register:before { font-family: "font awesome 5 pro"; font-size: inherit; font-style: normal; font-weight: 400; text-rendering: auto; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; content: "\f234"; display: inline-block; width: 1em; padding: 0 5px; } .p-navgroup-link.p-navgroup-link--textual.p-navgroup-link--register:before { color: var(--basecolor); } ]]>
</template>
<template title="majdev_overlay_menu.less" type="public" addon_id="" version_id="0" version_string="">
<![CDATA[ /* __ __ _ _ ____ _____ __ __ _ _ _____ _____ | \/ | / \ | | | _ \ | ____| \ \ / / | \ | | | ____| |_ _| | |\/| | / _ \ _ | | | | | | | _| \ \ / / | \| | | _| | | | | | | / ___ \ | |_| | | |_| | | |___ \ V / _ | |\ | | |___ | | |_| |_| /_/ \_\ \___/ |____/ |_____| \_/ (_) |_| \_| |_____| |_| */ .mj-Modal-opened .mj-Modal-container{ visibility:visible; opacity:1; } .mj-Modal-opened body{ overflow:hidden !important; } .mj-Modal-container{ display:flex; position:fixed; top:0; left:0; width:100%; height:100%; z-index:1000; align-items:center; justify-content:center; visibility:hidden; opacity:0; transition:all .25s ease-in-out } .mj-Modal-opened .mj-Modal-container{ visibility:visible; opacity:1; } .mj-Modal-container .mj-Modal-overlay{ background:rgba(0,0,0,0.5); -webkit-backdrop-filter:blur(5px); backdrop-filter:blur(5px); position:absolute; top:0; left:0; right:0; bottom:0; cursor:auto; } .mj-Modal-container .mj-Modal-block{ background-color:#222831; box-shadow:rgba(0,0,0,0.3) 0px 10px 10px,rgba(0,0,0,0.4) 0px 15px 50px; position:absolute; width:600px; max-width:600px; transition:all .3s ease-in-out; transform:translateX(50px); right:0; height:100%; } @media (max-width:650px){ .mj-Modal-container .mj-Modal-block{ width:100%; max-width:100%; } } .mj-Modal-container .mj-Modal-block .mj-Modal-scroll{ max-height:100%; overflow:auto; border-radius:inherit; } .mj-Modal-container .mj-Modal-block .guide-Modal-header{ background:#262D39; color:#fff; padding:1px 15px; display:flex; } .mj-Modal-container .mj-Modal-block .guide-Modal-header .modal-close{ background:#262d39; color:#fff; cursor:pointer; position:absolute; right:0; margin:10px; border:none; border-radius:5px; font-size:25px; } .mj-Modal-opened .mj-Modal-container .mj-Modal-block{ transform:translateY(0); } .mj-Modal-container .mj-Modal-block .mj-modal-cell{ border-bottom:solid 1px rgba(149,158,177,0.2); color:rgba(149,158,177,0.99); display:flex; position:relative; width:100%; padding:10px; } .mj-Modal-container .mj-Modal-block .mj-modal-cell .modal-column{ padding:0px 10px 0px 10px; width:100%; } .mj-Modal-container .mj-Modal-block .mj-modal-cell .modal-column:first-of-type{ width:50px; text-align:center; } .mj-Modal-container .mj-Modal-block .mj-modal-cell .modal-column:last-of-type{ width:80px; padding:0px; line-height:30px; } .mj-Modal-container .mj-Modal-block .mj-modal-cell .modal-column h3{ font-size:16px; border:none; margin:0; padding:0; } .mj-Modal-container .mj-Modal-block .mj-modal-cell .modal-column span{ font-size:12px; } .mj-Modal-container .mj-Modal-block .mj-modal-cell .modal-column i{ font-size:30px; line-height:50px; color:rgba(149,158,177,0.99); } .mj-Modal-container .mj-Modal-block .mj-modal-cell .modal-second-column{ width:50px; text-align:center; } .mj-Modal-container .mj-Modal-block .mj-modal-cell .modal-second-column span:first-of-type,.mj-Modal-container .mj-Modal-block .mj-modal-cell .modal-second-column span:last-of-type{ content:''; display:inline-block; width:30px; height:30px; border-radius:50px; } .mj-Modal-container .mj-Modal-block .mj-modal-cell .modal-second-column span:first-of-type{ background:#24346c; background:linear-gradient(180deg, #092059 0%, #173781 100%); } .mj-Modal-container .mj-Modal-block .mj-modal-cell .modal-second-column span:last-of-type{ background:#24346c; background:linear-gradient(180deg, #24346c 0%, #222b4b 100%); } .mj-Modal-container .mj-Modal-block .mj-modal-cell .guide-modal-toogle{ position:relative; flex:0 0 auto; margin-right:20px; } .mj-Modal-container .mj-Modal-block .mj-modal-cell .guide-modal-toogle i.modal-toggle{ background:#e5e5e5; display:block; border-radius:15px; position:relative; z-index:0; width:50px; height:30px; } .mj-Modal-container .mj-Modal-block .mj-modal-cell .guide-modal-toogle i.modal-toggle:before{ content:''; position:absolute; top:0; left:0; right:0; bottom:0; background:#2aad55; border-radius:inherit; opacity:0; transition:opacity .25s linear; } .mj-Modal-container .mj-Modal-block .mj-modal-cell .guide-modal-toogle i.modal-toggle i{ position:absolute; top:0; left:0; bottom:0; width:30px; transform:translateX(0); transition:transform .3s ease-in-out; border-radius:inherit; padding:2px; } .mj-Modal-container .mj-Modal-block .mj-modal-cell .guide-modal-toogle i.modal-toggle i:before{ content:''; background:#fff; box-shadow:rgba(0,0,0,0.25) 0px 3px 6px; border-radius:inherit; display:block; height:100%; } .mj-Modal-container .mj-Modal-block .mj-modal-cell .guide-modal-toogle i.modal-toggle:after{ content:''; position:absolute; top:0; left:0; right:0; bottom:0; border-radius:inherit; border:2px solid rgba(0,0,0,0.15); } .mj-Modal-container .mj-Modal-block .mj-modal-cell .guide-modal-toogle input[type='radio']{ display:block; position:absolute; top:0; left:0; width:50px; height:30px; opacity:0; z-index:5; border-radius:0; -moz-appearance:none; -webkit-appearance:none; appearance:none; cursor:pointer; } .mj-Modal-container .mj-Modal-block .mj-modal-cell .guide-modal-toogle input[type='radio']:checked{ display:none; } .mj-Modal-container .mj-Modal-block .mj-modal-cell .guide-modal-toogle input[type='radio']:nth-of-type(2):checked~.modal-toggle:before{ transform:scale(1); opacity:1; } .mj-Modal-container .mj-Modal-block .mj-modal-cell .guide-modal-toogle input[type='radio']:nth-of-type(2):checked~.modal-toggle i{ transform:translateX(20px); } @media (min-width:1250px){ .p-body-inner.guide-theme-personalize{ content:''; position:relative; } @supports ((position: sticky) or (position: -webkit-sticky)){ .p-body-inner.guide-theme-personalize .personalize-block{ position:-webkit-sticky; position:sticky; top:70px; } } .p-body-inner.guide-theme-personalize .personalize-border{ position:absolute; right:-30px; overflow:hidden; } .p-body-inner.guide-theme-personalize .personalize-border .personalize-button{ background:#b40669; color:#fff; border:none; border-radius:4px; font-size:18px; padding:26px 5px; cursor:pointer; } .p-body-inner.guide-theme-personalize .personalize-border .personalize-button:hover{ background:rgba(180,6,105,0.9); } } @media (max-width:1250px){ .p-body-inner.guide-theme-personalize .personalize-border{ display:none; } } ]]>
</template>
<template title="message.less" type="public" addon_id="XF" version_id="2020470" version_string="2.2.4">
<![CDATA[ @_message-actionColumnWidth: 40px; @_messageSimple-userColumnWidth: 70px; .message { + .message, &.message--bordered { border-top: @xf-borderSize solid @xf-borderColor; } } .message, .block--messages .message { &.is-mod-selected { background: @xf-inlineModHighlightColor; .message-cell--user, .message-cell--vote { background: @xf-inlineModHighlightColor; } .message-userArrow:after { border-right-color: @xf-inlineModHighlightColor; } } } .message-inner { display: flex; & + .message-inner { border-top: @xf-borderSize solid @xf-borderColor; } } .message-cell { display: block; vertical-align: top; padding: @xf-messagePadding; .message--quickReply & { //padding-bottom: 35px; // for the submit row > .formRow:last-child { > dd { padding-bottom: 0; } } } &.message-cell--closer { padding: @xf-messagePaddingSmall; &.message-cell--user { .m-fixedWidthFlex((@xf-messageUserBlockWidth) + 2 * (@xf-messagePaddingSmall)); .message--simple & { .m-fixedWidthFlex(@_messageSimple-userColumnWidth + 2 * (@xf-messagePaddingSmall)); } } &.message-cell--action { .m-fixedWidthFlex((@_message-actionColumnWidth) + 2 * (@xf-messagePaddingSmall)); } } &.message-cell--user, &.message-cell--action { position: relative; .xf-messageUserBlock(no-border); border-right: @xf-messageUserBlock--border-width solid @xf-messageUserBlock--border-color; min-width: 0; } &.message-cell--vote { position: relative; .xf-messageUserBlock(no-border); border-left: @xf-messageUserBlock--border-width solid @xf-messageUserBlock--border-color; border-right: 0; padding-top: 0; padding-bottom: 0; .message--solution & { background: @xf-successBg; } .solutionIcon { margin-top: @xf-paddingMedium; } } &.message-cell--user { .m-fixedWidthFlex((@xf-messageUserBlockWidth) + 2 * (@xf-messagePadding)); .message--simple & { .m-fixedWidthFlex(@_messageSimple-userColumnWidth + 2 * @xf-messagePaddingSmall); } } &.message-cell--action { .m-fixedWidthFlex((@_message-actionColumnWidth) + 2 * (@xf-messagePadding)); } &.message-cell--main { flex: 1 1 auto; width: 100%; min-width: 0; &.is-editing { padding: 0; } // should really only happen when editing .block { margin: 0; } .block-container { margin: 0; border: none; } } &.message-cell--alert { font-size: @xf-fontSizeSmall; flex: 1 1 auto; width: 100%; min-width: 0; .xf-contentAccentBase(); a { .xf-contentAccentLink(); } } &.message-cell--extra { .m-fixedWidthFlex(180 + 2 * (@xf-messagePadding)); border-left: @xf-messageUserBlock--border-width solid @xf-messageUserBlock--border-color; background: @xf-contentAltBg; .formRow-explain { margin: @xf-paddingMedium 0 0; .xf-formExplain(); .m-textColoredLinks(); font-size: 80%; } } &.message-cell--header, &.message-cell--solutionHeader { flex: 1 1 auto; width: 100%; min-width: 0; padding: @xf-blockPaddingV @xf-blockPaddingH; margin: 0; } &.message-cell--header { font-weight: @xf-fontWeightNormal; text-decoration: none; .xf-blockHeader(); border-bottom: none; .m-hiddenLinks(); } &.message-cell--solutionHeader { color: @xf-successColor; font-size: @xf-fontSizeLarge; background: @xf-successBg; border-left: @xf-borderSizeFeature solid @xf-successFeatureColor; } } .message-main { height: 100%; display: flex; flex-direction: column; } .message-content { flex: 1 1 auto; // IE11 flex bug min-height: 1px; } .message-footer { margin-top: auto; } .message-expandWrapper { position: relative; overflow: hidden; .m-transition(-xf-height, height); .message-expandContent { max-height: 250px; overflow: hidden; } .message-expandContent--small { max-height: 160px; } &.is-expandable { .message-expandLink { display: block; } } &.is-expanded { .message-expandContent { max-height: none; } .message-expandLink { display: none; } } } .message-column { display: flex; flex-direction: column; align-items: center; } .message-expandLink { display: none; position: absolute; top: 60%; bottom: 0; left: 0; right: 0; cursor: pointer; z-index: @zIndex-1; .m-gradient( fade(@xf-contentBase--background-color, 0%), xf-default(@xf-contentBase--background-color, transparent), transparent, 0%, 70% ); &:empty { cursor: auto; .m-gradient( fade(@xf-contentBase--background-color, 0%), xf-default(@xf-contentBase--background-color, transparent), transparent, 0%, 100% ); } a { position: absolute; bottom: @xf-messagePadding; left: 0; right: 0; text-align: center; font-size: @xf-fontSizeSmall; color: @xf-textColorAttention; text-decoration: none; } } @media (max-width: @xf-messageSingleColumnWidth) { .message:not(.message--forceColumns) { .message-inner { display: block; } .message-cell { display: block; .m-clearFix(); &.message-cell--user { width: auto; border-right: none; border-bottom: @xf-messageUserBlock--border-width solid @xf-messageUserBlock--border-color; } &.message-cell--vote { width: auto; border-left: none; border-top: @xf-messageUserBlock--border-width solid @xf-messageUserBlock--border-color; .solutionIcon { margin-top: 0; } } &.message-cell--main { padding-left: @xf-messagePadding; } &.message-cell--extra { width: auto; border-left: none; border-top: @xf-messageUserBlock--border-width solid @xf-messageUserBlock--border-color; } } .message-column { flex-direction: row; justify-content: space-evenly; } } .message--simple:not(.message--forceColumns), .message--quickReply:not(.message--forceColumns) { .message-cell.message-cell--user { display: none; } } } // ######################## USER COLUMN ######################### .message-userArrow { position: absolute; top: (@xf-messagePadding) * 2; right: -1px; .m-triangleLeft(xf-default(@xf-messageUserBlock--border-color, transparent), @xf-messagePadding); &:after { position: absolute; top: -(@xf-messagePadding - 1px); right: -@xf-messagePadding; content: ""; .m-triangleLeft(@xf-contentBg, @xf-messagePadding - 1px); } } .message-avatar { text-align: center; .avatar { vertical-align: bottom; } } .message-avatar-wrapper { position: relative; display: inline-block; vertical-align: bottom; margin-bottom: .5em; .message-avatar-online { position: absolute; // center bottom position left: 50%; margin-left: -.615em; bottom: -.5em; &:before { .m-faBase(); .m-faContent(@fa-var-user-circle, .969em); line-height: 1; font-weight: bold; color: rgb(127, 185, 0); background: @xf-messageUserBlock--background-color; border: @xf-messageUserBlock--background-color solid 2px; border-radius: 50%; display: inline-block; } } } .message-name { font-weight: @xf-fontWeightHeavy; font-size: inherit; text-align: center; margin: 0; } .message-userTitle { font-size: @xf-fontSizeSmaller; font-weight: normal; text-align: center; margin: 0; } .message-userBanner.userBanner { display: block; margin-top: 3px; } .message-userExtras { margin-top: 3px; font-size: @xf-fontSizeSmaller; } .message--deleted { .message-userDetails { display: none; } .message-avatar .avatar { .m-avatarSize(@avatar-s); } } @media (max-width: @xf-messageSingleColumnWidth) { .message:not(.message--forceColumns) { .message-userArrow { top: auto; right: auto; bottom: -1px; left: ((@avatar-s) / 2); border: none; .m-triangleUp(xf-default(@xf-messageUserBlock--border-color, transparent), @xf-messagePadding); &:after { top: auto; right: auto; left: -(@xf-messagePadding - 1px); bottom: -@xf-messagePadding; border: none; .m-triangleUp(@xf-contentBg, @xf-messagePadding - 1px); } } &.is-mod-selected { .message-userArrow:after { border-color: transparent; border-bottom-color: @xf-inlineModHighlightColor; } } .message-user { display: flex; } .message-avatar { margin-bottom: 0; .avatar { .m-avatarSize(@avatar-s); & + .message-avatar-online { left: auto; right: 0; } } } .message-userDetails { flex: 1; min-width: 0; padding-left: @xf-messagePadding; } .message-name { text-align: left; } .message-userTitle, .message-userBanner.userBanner { display: inline-block; text-align: left; margin: 0; } .message-userExtras { display: none; } .message--deleted { .message-userDetails { display: block; } } } } // ####################### MAIN COLUMN #################### .message-content { position: relative; .js-selectToQuoteEnd { height: 0; font-size: 0; overflow: hidden; } .message--multiQuoteList & { min-height: 80px; max-height: 120px; overflow: hidden; .message-body { pointer-events: none; } } } .message-attribution { color: @xf-textColorMuted; font-size: @xf-fontSizeSmaller; padding-bottom: 3px; border-bottom: @xf-borderSize solid @xf-borderColorFaint; .m-clearFix(); &.message-attribution--plain { border-bottom: none; font-size: inherit; padding-bottom: 0; } &.message-attribution--split { display: flex; align-items: flex-end; .message-attribution-opposite { margin-left: auto; } } } .message-attribution-main { float: left; } .message-attribution-opposite { float: right; &.message-attribution-opposite--list { display: flex; .m-listPlain(); > li { margin-left: 14px; &:first-child { margin-left: 0; } } } a { color: inherit; &:hover { text-decoration: none; color: @xf-linkHoverColor; } } } .message-attribution-gadget { display: inline-block; margin: -3px -7px; padding: 3px 7px; } .message-attribution-source { font-size: @xf-fontSizeSmaller; margin-bottom: @xf-paddingSmall; } .message-attribution-user { font-weight: @xf-fontWeightHeavy; .avatar { display: none; } .attribution { display: inline; font-size: inherit; font-weight: inherit; margin: 0; } } .message-newIndicator, a.message-newIndicator { .xf-messageNewIndicator(); white-space: nowrap; } a.message-newIndicator:hover { color: @xf-messageNewIndicator--color; } .message-minorHighlight { font-size: @xf-fontSizeSmall; color: @xf-textColorFeature; } .message-fields { margin: @xf-messagePadding 0; .message--simple & { margin-top: @xf-messagePaddingSmall; margin-bottom: @xf-messagePaddingSmall; } &:last-child { margin-bottom: 0; } } .message-body { margin: @xf-messagePadding 0; font-family: @xf-fontFamilyBody; .m-clearFix(); .message--simple & { margin-top: @xf-messagePaddingSmall; margin-bottom: @xf-messagePaddingSmall; } &:last-child { margin-bottom: 0; } .message-title { // basically replicates .structItem-title font-size: @xf-fontSizeLarge; font-weight: @xf-fontWeightNormal; margin: 0 0 @xf-messagePadding 0; padding: 0; } } .message-attachments { margin: .5em 0; } .message-attachments-list { .m-listPlain(); } .message-lastEdit { margin-top: .5em; color: @xf-textColorMuted; font-size: @xf-fontSizeSmallest; text-align: right; } .message-signature { margin-top: @xf-messagePadding; .xf-messageSignature(); } .message-actionBar .actionBar-set { margin-top: @xf-messagePadding; font-size: @xf-fontSizeSmall; .message--simple & { margin-top: @xf-messagePaddingSmall; } } .message .likesBar { margin-top: @xf-messagePadding; padding: @xf-messagePaddingSmall; } .message .reactionsBar { margin-top: @xf-messagePadding; padding: @xf-messagePaddingSmall; } .message-historyTarget { margin-top: @xf-messagePadding; } .message-gradient { position: absolute; bottom: 0; left: 0; right: 0; height: 60px; .m-gradient(fade(@xf-contentBg, 0%), @xf-contentBg, @xf-contentBg, 0%, 90%); } .message-responses { margin-top: @xf-messagePaddingSmall; font-size: @xf-fontSizeSmall; .editorPlaceholder { .input { font-size: inherit; } } } .message-responseRow { margin-top: -@xf-minorBlockContent--border-width; .xf-minorBlockContent(); padding: @xf-messagePaddingSmall; // note that border radiuses are very difficult to do here due to a lot of dynamic showing/hiding &.message-responseRow--likes, &.message-responseRow--reactions { .m-transitionFadeDown(); } } @media (max-width: @xf-messageSingleColumnWidth) { .message:not(.message--forceColumns) { .message-attribution-user .avatar { display: inline-flex; .m-avatarSize((@xf-fontSizeNormal) * (@xf-lineHeightDefault)); } .message-content { // this is 1px to workaround an IE11 issue - see #139187 min-height: 1px; } } } @media (max-width: @xf-responsiveNarrow) { .message-signature { display: none; } } // MESSAGE MENU .message-menuGroup { display: inline-block; } .message-menuTrigger { display: inline-block; &:after { .m-menuGadget(); // 1em text-align: right; } &:hover:after { color: black; } } .message-menu-section { &--editDelete { .menu-linkRow { font-weight: @xf-fontWeightHeavy; font-size: @xf-fontSizeNormal; } } } .message-menu-link { &--delete i:after { .m-faContent(@fa-var-trash-alt); } &--edit i:after { .m-faContent(@fa-var-edit); } &--report i:after { .m-faContent(@fa-var-frown); } &--warn i:after { .m-faContent(@fa-var-exclamation-triangle); } &--spam i:after { .m-faContent(@fa-var-ban); } &--ip i:after { .m-faContent(@fa-var-sitemap); } &--history i:after { .m-faContent(@fa-var-history); } &--follow i:after { .m-faContent(@fa-var-user-plus); } &--ignore i:after { .m-faContent(@fa-var-user-times); } &--share i:after { .m-faContent(@fa-var-share-alt); } } // ############################# CUSTOM FOR MESSAGE VARIANTS ############## .message-articleUserInfo { .xf-messageUserBlock(no-border); border-top: @xf-messageUserBlock--border-width solid @xf-messageUserBlock--border-color; &:last-child { .m-borderBottomRadius(@block-borderRadius-inner); } .contentRow-figure { width: @xf-messageUserBlockWidth; text-align: center; } .contentRow-main { padding-left: 2 * (@xf-messagePadding); text-align: left; } @media (max-width: @xf-messageSingleColumnWidth) { .contentRow-figure { width: auto; } .contentRow-main { padding-left: @xf-paddingLarge; } } } .message-articleWrittenBy { color: @xf-textColorMuted; font-size: @xf-fontSizeSmall; } .message-articleUserName { font-weight: @xf-fontWeightHeavy; font-size: @xf-fontSizeLarger; margin: 0; display: inline; } .message-articleUserBlurb, .message-articleUserBlurb div { font-size: @xf-fontSizeSmall; display: inline; } .message-articleUserAbout { font-size: @xf-fontSizeSmall; margin: .5em 0; } .message-articleUserBanners .userBanner { margin-bottom: 3px; } .message-articleUserStats { font-size: @xf-fontSizeSmall; color: @xf-textColorMuted; } @media (max-width: @xf-responsiveNarrow) { .message-articleUserStats { display: none; } } // ############################# COMMENTS ############### .comment { } .comment-inner { display: table; table-layout: fixed; width: 100%; } .comment-avatar { display: table-cell; width: 24px; vertical-align: top; .avatar, img { vertical-align: bottom; } } .comment-main { display: table-cell; padding-left: @xf-messagePadding; vertical-align: top; } .comment-contentWrapper { margin-bottom: @xf-messagePaddingSmall; } .comment-user { font-weight: @xf-fontWeightHeavy; } .comment-body { display: inline; } .comment-note { color: @xf-textColorMuted; font-size: @xf-fontSizeSmallest; } .comment-input { display: block; height: 2.34em; margin-bottom: @xf-messagePaddingSmall; } .comment-actionBar .actionBar-set { margin-top: @xf-messagePaddingSmall; color: @xf-textColorMuted; } .comment-likes, .comment-reactions { .m-transitionFadeDown(); margin-top: @xf-messagePaddingSmall; font-size: @xf-fontSizeSmaller; } // ################################## MESSAGE QUICK REPLY ADDITIONS ############# .formSubmitRow.formSubmitRow--messageQr { .formSubmitRow-controls { text-align: center; padding-left: 0; padding-right: 0; margin-left: @xf-messagePadding; margin-right: @xf-messagePadding; @media (max-width: @xf-formResponsive) { text-align: right; } } } // ################################## MESSAGE NOTICES ############################# .messageNotice { margin: @xf-messagePaddingSmall 0; padding: @xf-messagePaddingSmall @xf-messagePadding; .xf-contentAccentBase(); font-size: @xf-fontSizeSmaller; border-left: @xf-borderSizeMinorFeature solid @xf-borderColorAttention; &.messageNotice--nested { border-left-width: @xf-borderSize; } &:not(.messageNotice--highlighted) { a, a:hover { .xf-contentAccentLink(); } } &:before { display: inline-block; .m-faBase(); padding-right: .2em; font-size: 125%; color: @xf-textColorAttention; } &.messageNotice--highlighted { .xf-contentHighlightBase(); border-left-color: @xf-borderColorFeature; &:before { color: @xf-textColorFeature; } } &.messageNotice--deleted:before { .m-faContent(@fa-var-trash-alt); } // , .88em &.messageNotice--moderated:before { .m-faContent(@fa-var-shield); } // , 1em &.messageNotice--warning:before { .m-faContent(@fa-var-exclamation-triangle); } // , 1em &.messageNotice--ignored:before { .m-faContent(@fa-var-microphone-slash); } // , 1.25em } // ##################### MESSAGE VARIANTS/RESPONSIVE ################## @media (min-width: @xf-responsiveEdgeSpacerRemoval) { .block:not(.block--messages) { @{block-noStripSel} > .block-body:first-child > .message:first-child, .block-topRadiusContent.message, .block-topRadiusContent > .message:first-child { .message-inner:first-of-type .message-cell { &:first-child { border-top-left-radius: @block-borderRadius-inner; } &:last-child { border-top-right-radius: @block-borderRadius-inner; } } } @{block-noStripSel} > .block-body:last-child > .message:last-child, .block-bottomRadiusContent.message, .block-bottomRadiusContent > .message:last-child { .message-inner:last-of-type .message-cell { &:first-child { border-bottom-left-radius: @block-borderRadius-inner; } &:last-child { border-bottom-right-radius: @block-borderRadius-inner; } } } } } .block--messages { .block-container { background: none; border: none; } .message, .block-row { background: rgb(38, 45, 57); border-radius: @xf-blockBorderRadius; + .message, + .block-row { margin-top: @xf-blockPaddingV; } } .block-filterBar { .xf-blockBorder(); border-radius: @xf-blockBorderRadius; margin-bottom: @xf-blockPaddingV; } .message-spacer { + .message, + .block-row { margin-top: @xf-blockPaddingV; } } .message-inner .message-cell { border-radius: 0; } .message-inner:first-of-type .message-cell { &:first-child { border-top-left-radius: @block-borderRadius-inner; } &:last-child { border-top-right-radius: @block-borderRadius-inner; } } .message-inner:last-of-type .message-cell { &:first-child { border-bottom-left-radius: @block-borderRadius-inner; } &:last-child { border-bottom-right-radius: @block-borderRadius-inner; } } @media (max-width: @xf-messageSingleColumnWidth) { .message-inner { .message-cell { border-radius: 0; } &:first-of-type .message-cell:first-child { border-top-left-radius: @block-borderRadius-inner; border-top-right-radius: @block-borderRadius-inner; } &:last-of-type .message-cell:last-child { border-bottom-left-radius: @block-borderRadius-inner; border-bottom-right-radius: @block-borderRadius-inner; } } .message--simple .message-cell--user + .message-cell { border-radius: 0; border-top-left-radius: @block-borderRadius-inner; border-top-right-radius: @block-borderRadius-inner; } } @media (max-width: @xf-responsiveEdgeSpacerRemoval) { .message, .block-row, .block-filterBar { border-left: none; border-right: none; border-radius: 0; } .message .message-inner .message-cell { border-radius: 0; &:first-child, &:last-child { border-radius: 0; } } .message--simple .message-cell--user + .message-cell { border-radius: 0; } } } .message--article { &.is-moderated { background: @xf-contentHighlightBg; } &.is-deleted { opacity: .65; } } // article preview view for thread list .message--articlePreview { display: flex; flex-direction: column; min-width: 0; margin-bottom: @xf-paddingLarge; &:last-child { margin-bottom: 0; } .articlePreview-main { display: flex; flex-direction: column; } .articlePreview-image { flex: 0 0 auto; align-self: center; width: 100%; max-width: 750px; background: center / cover @xf-contentAltBg no-repeat; text-decoration: none; &:after { content: ''; display: block; padding-bottom: 75%; } & + .articlePreview-text { .bbImageWrapper, .bbImage { display: none; } .bbWrapper { .m-fadeOutLines(8, @xf-contentBg); } } } .articlePreview-text { flex: 1 1 auto; display: flex; min-width: 0; flex-direction: column; padding: @xf-messagePadding; } .articlePreview-title { margin: 0; font-size: @xf-fontSizeLarge; } .articlePreview-content { flex: 1 1 auto; } .articlePreview-links { text-align: right; padding-top: @xf-blockPaddingV; } .articlePreview-statuses { float: left; display: flex; list-style: none; margin: 0; padding: 0; > li { margin-right: 8px; } .message-newIndicator { font-size: @xf-fontSizeSmall; } } .articlePreview-footer { padding: 0 @xf-blockPaddingH; } .articlePreview-meta { display: flex; align-items: center; border-top: solid 1px @xf-borderColor; padding: @xf-blockPaddingV 0; color: @xf-textColorMuted; font-size: @xf-fontSizeSmall; > li { margin-right: @xf-blockPaddingH; &:last-child { margin-right: 0; } } } .articlePreview-replies { white-space: nowrap; } .articlePreview-by, .articlePreview-repliesLabel { display: none; } } .block--articles.block--messages.block--expanded { .article-title { // from .p-title-value margin: 0 0 5px; font-size: @xf-fontSizeLargest; font-weight: @xf-fontWeightNormal; } .message-snippet-link { margin-top: .5em; text-align: center; } .message + .message { margin-top: @xf-paddingLargest; } } // expanded article grid behavior @supports (display: grid) { @media (min-width: @xf-responsiveMedium) { .block--previews .block-body { display: grid; gap: @xf-paddingLarge; grid-template-rows: auto; grid-template-columns: repeat(2, 1fr); grid-template-areas: "a a"; > .message:first-of-type:last-of-type { grid-area: a; } > .message--articlePreview { margin-bottom: 0; // first five &:nth-of-type(-n+5) { .articlePreview-title { font-size: @xf-fontSizeLarger; } .articlePreview-image { max-width: none; &:after { padding-bottom: 60%; } } .articlePreview-meta { .articlePreview-by { display: block; } } } // first &:first-of-type { grid-area: a; .articlePreview-title { font-size: @xf-fontSizeLargest; } .articlePreview-meta { border-top: none; } .articlePreview-main { flex-direction: row-reverse; } .articlePreview-image { width: 50%; } } } } } // max width multi-columns .m-maxPreviewColumns() { .block--previews .block-body { grid-template-columns: repeat(4, 1fr); grid-template-areas: "a a a a" "b_1 b_1 b_2 b_2" "b_3 b_3 b_4 b_4"; > .message:first-of-type:last-of-type { grid-area: a; } > .message--articlePreview { &:nth-of-type(1) { grid-area: a; } &:nth-of-type(2) { grid-area: b_1; } &:nth-of-type(3) { grid-area: b_2; } &:nth-of-type(4) { grid-area: b_3; } &:nth-of-type(5) { grid-area: b_4; } } } } .p-body-main:not(.p-body-main--withSidebar) { @media (min-width: @xf-responsiveWide) { .m-maxPreviewColumns(); } } .p-body-main--withSidebar { @media (min-width: (@xf-responsiveWide + @xf-sidebarWidth)) { .m-maxPreviewColumns(); } } } ]]>
</template>
<template title="message_macros" type="public" addon_id="XF" version_id="2020470" version_string="2.2.4">
<![CDATA[ <xf:macro name="user_info" arg-user="!" arg-fallbackName=""> <section itemscope itemtype="https://schema.org/Person" class="message-user"> <div class="message-avatar {{ ($xf.options.showMessageOnlineStatus && $user && $user.isOnline()) ? 'message-avatar--online' : '' }}"> <div class="message-avatar-wrapper"> <xf:avatar user="$user" size="m" defaultname="{$fallbackName}" itemprop="image" /> <xf:if is="$xf.options.showMessageOnlineStatus && $user && $user.isOnline()"> <span class="message-avatar-online" tabindex="0" data-xf-init="tooltip" data-trigger="auto" title="{{ phrase('online_now')|for_attr }}"></span> </xf:if> </div> </div> <div class="message-userDetails"> <h4 class="message-name"><xf:username user="$user" rich="true" defaultname="{$fallbackName}" itemprop="name" /></h4> <xf:usertitle user="$user" tag="h5" class="message-userTitle" banner="true" itemprop="jobTitle" /> <xf:userbanners user="$user" tag="div" class="message-userBanner" itemprop="jobTitle" /> </div> <xf:if is="$user.user_id"> <xf:set var="$extras" value="{{ property('messageUserElements') }}" /> <xf:if contentcheck="true"> <div class="message-userExtras"> <xf:contentcheck> <xf:if is="$extras.register_date"> <dl class="pairs pairs--justified"> <div class="post-row"> <div class="post-icon"> <i class="fas fa-calendar-alt"></i> </div> <div class="post-row-inner"> {{ phrase('joined') }}:<span class="ml-auto">{{ date($user.register_date) }}</span> </div> </div> </dl> </xf:if> <xf:if is="$extras.message_count"> <dl class="pairs pairs--justified"> <div class="post-row"> <div class="post-icon"> <i class="fas fa-reply-all"></i> </div> <div class="post-row-inner"> {{ phrase('messages') }}:<span class="ml-auto">{$user.message_count|number}</span> </div> </div> </dl> </xf:if> <xf:if is="$extras.solutions AND $user.question_solution_count"> <dl class="pairs pairs--justified"> <div class="post-row"> <div class="post-icon"> <i class="fas fa-check-circle"></i> </div> <div class="post-row-inner"> {{ phrase('solutions') }}:<span class="ml-auto">{$user.question_solution_count|number}</span> </div> </div> </dl> </xf:if> <xf:if is="$extras.reaction_score"> <dl class="pairs pairs--justified"> <div class="post-row"> <div class="post-icon"> <i class="fas fa-smile-beam"></i> </div> <div class="post-row-inner"> {{ phrase('reaction_score') }}:<span class="ml-auto">{$user.reaction_score|number}</span> </div> </div> </dl> </xf:if> <xf:if is="$extras.trophy_points && $xf.options.enableTrophies"> <dl class="pairs pairs--justified"> <div class="post-row"> <div class="post-icon"> <i class="fas fa-clipboard-check"></i> </div> <div class="post-row-inner"> {{ phrase('points') }}:<span class="ml-auto">{$user.trophy_points|number}</span> </div> </div> </dl> </xf:if> <xf:if is="$extras.age && $user.Profile.age"> <dl class="pairs pairs--justified"> <div class="post-row"> <div class="post-icon"> <i class="fab fa-pagelines"></i> </div> <div class="post-row-inner"> {{ phrase('age') }}:<span class="ml-auto">{$user.Profile.age}</span> </div> </div> </dl> </xf:if> <xf:if is="$extras.location && $user.Profile.location"> <dl class="pairs pairs--justified"> <div class="post-row"> <div class="post-icon"> <i class="fas fa-location"></i> </div> <div class="post-row-inner"> {{ phrase('location') }}: <span class="ml-auto"> <xf:if is="$xf.options.geoLocationUrl"> <a href="{{ link('misc/location-info', '', {'location': $user.Profile.location}) }}" rel="nofollow noreferrer" target="_blank" class="u-concealed">{$user.Profile.location}</a> <xf:else /> {$user.Profile.location} </xf:if> </span> </div> </div> </dl> </xf:if> <xf:if is="$extras.website && $user.Profile.website"> <dl class="pairs pairs--justified"> <div class="post-row"> <div class="post-icon"> <i class="fas fa-globe-europe"></i> </div> <div class="post-row-inner"> {{ phrase('website') }}:<span class="ml-auto"><a href="{$user.Profile.website}" rel="nofollow" target="_blank">{$user.Profile.website|url('host', phrase('visit_site'))}</a></span> </div> </div> </dl> </xf:if> <xf:if is="$extras.custom_fields"> <xf:macro template="custom_fields_macros" name="custom_fields_values" arg-type="users" arg-group="personal" arg-set="{$user.Profile.custom_fields}" arg-additionalFilters="{{ ['message'] }}" arg-valueClass="pairs pairs--justified" /> <xf:if is="$user.canViewIdentities()"> <xf:macro template="custom_fields_macros" name="custom_fields_view" arg-type="users" arg-group="contact" arg-set="{$user.Profile.custom_fields}" arg-additionalFilters="{{ ['message'] }}" arg-valueClass="pairs pairs--justified" /> </xf:if> </xf:if> </xf:contentcheck> </div> </xf:if> </xf:if> <span class="message-userArrow"></span> </section> </xf:macro> <xf:macro name="user_info_simple" arg-user="!" arg-fallbackName=""> <header itemscope itemtype="https://schema.org/Person" class="message-user"> <meta itemprop="name" content="{{ $user.username ?: $fallbackName }}"> <div class="message-avatar"> <div class="message-avatar-wrapper"> <xf:avatar user="$user" size="s" defaultname="{$fallbackName}" itemprop="image" /> </div> </div> <span class="message-userArrow"></span> </header> </xf:macro> <xf:macro name="attachments" arg-attachments="!" arg-message="!" arg-canView="!"> <xf:if contentcheck="true"> <xf:css src="attachments.less" /> <section class="message-attachments"> <h4 class="block-textHeader">{{ phrase('attachments') }}</h4> <ul class="attachmentList"> <xf:contentcheck> <xf:foreach loop="$attachments" value="$attachment" if="!$message.isAttachmentEmbedded($attachment)"> <xf:macro template="attachment_macros" name="attachment_list_item" arg-attachment="{$attachment}" arg-canView="{$canView}" /> </xf:foreach> </xf:contentcheck> </ul> </section> </xf:if> </xf:macro> <xf:macro name="signature" arg-user="!"> <xf:if is="$xf.visitor.Option.content_show_signature AND $user.Profile.signature"> <xf:if contentcheck="true"> <aside class="message-signature"> <xf:contentcheck> {{ bb_code($user.Profile.signature, 'user:signature', $user) }} </xf:contentcheck> </aside> </xf:if> </xf:if> </xf:macro> ]]>
</template>
<template title="template_pnavStaffBar" type="public" addon_id="" version_id="0" version_string="">
<![CDATA[ <xf:css src="template_pnavStaffBar.less" /> <xf:if contentcheck="true"> <xf:contentcheck> <xf:if is="$xf.visitor.is_moderator && $xf.session.unapprovedCounts.total"> <a href="{{ link('approval-queue') }}" class="p-navStaffBar p-navgroup-link p-navgroup-link-staffbar p-navgroup-link--iconic p-navgroup-link--approvalqueue badgeContainer badgeContainer--visible {{ ($xf.visitor.is_moderator && $xf.session.unapprovedCounts.total) ? ' badgeContainer--highlighted' : '' }}" data-badge="{$xf.session.unapprovedCounts.total|number}" title="{{ phrase('approval_queue') }}" aria-label="{{ phrase('approval_queue')|for_attr }}" aria-expanded="false" aria-haspopup="true"> <i aria-hidden="true"></i> <span class="p-navgroup-linkText">{{ phrase('approval_queue') }} </span> </a> </xf:if> <xf:if is="$xf.visitor.is_moderator && !$xf.options.reportIntoForumId && $xf.session.reportCounts.total"> <a href="{{ link('reports') }}" class="p-navStaffBar p-navgroup-link p-navgroup-link--iconic p-navgroup-link-staffbar p-navgroup-link--reports badgeContainer badgeContainer--visible {{ ($xf.session.reportCounts.total && ($xf.session.reportCounts.lastBuilt > $xf.session.reportLastRead) OR $xf.session.reportCounts.assigned) ? ' badgeContainer--highlighted' : '' }}" data-badge="{{ $xf.session.reportCounts.assigned ? $xf.session.reportCounts.assigned|number . ' / ' . $xf.session.reportCounts.total|number : $xf.session.reportCounts.total|number }}" title="{{ $xf.session.reportCounts.lastBuilt ? phrase('last_report_update:')|for_attr . ' ' . date_time($xf.session.reportCounts.lastBuilt) : '' }}" aria-label="{{ phrase('reports')|for_attr }}" aria-expanded="false" aria-haspopup="true"> <i aria-hidden="true"></i> <span class="p-navgroup-linkText">{{ phrase('reports') }} </span> </a> </xf:if> <xf:if contentcheck="true"> <a class="p-navStaffBar p-navgroup-link p-navgroup-link-staffbar p-navgroup-link--iconic p-navgroup-link--moderatortools" data-xf-click="menu" data-xf-key="alt+m" role="button" tabindex="0" aria-expanded="false" aria-haspopup="true" title="{{ phrase('moderator') }}" aria-label="{{ phrase('approval_queue')|for_attr }}" aria-expanded="false" aria-haspopup="true"> <i aria-hidden="true"></i> <span class="p-navgroup-linkText">{{ phrase('admin_navigation.tools') }} </span> </a> <div class="menu menu--structural" data-menu="menu" aria-hidden="true"> <div class="menu-content"> <h4 class="menu-header">{{ phrase('admin_navigation.tools') }}</h4> <xf:contentcheck> <!--[XF:mod_tools_menu:top]--> <xf:if is="$xf.visitor.is_admin"> <a href="{{ base_url('admin.php') }}" class="menu-linkRow" title="{{ phrase('admin_control_panel') }}">{{ phrase('admin_control_panel') }}</a> </xf:if> <xf:if is="$xf.visitor.is_moderator"> <a href="{{ link('approval-queue') }}" class="menu-linkRow">{{ phrase('approval_queue') }}</a> </xf:if> <xf:if is="$xf.visitor.is_moderator && !$xf.options.reportIntoForumId"> <a href="{{ link('reports') }}" class="menu-linkRow" title="{{ $xf.session.reportCounts.lastBuilt ? phrase('last_report_update:')|for_attr . ' ' . date_time($xf.session.reportCounts.lastBuilt) : '' }}">{{ phrase('reports') }}</a> </xf:if> <!--[XF:mod_tools_menu:bottom]--> </xf:contentcheck> </div> </div> </xf:if> <xf:if is="$xf.visitor.is_admin"> <a href="{{ base_url('admin.php') }}" class="p-navStaffBar p-navgroup-link p-navgroup-link-staffbar p-navgroup-link--iconic p-navgroup-link--admincp" target="_blank" title="{{ phrase('admin') }}" aria-label="{{ phrase('reports')|for_attr }}" aria-expanded="false" aria-haspopup="true"> <i aria-hidden="true"></i> <span class="p-navgroup-linkText">{{ phrase('admin') }} </span></a> </xf:if> </xf:contentcheck> </xf:if> ]]>
</template>
<template title="template_pnavStaffBar.less" type="public" addon_id="" version_id="0" version_string="">
<![CDATA[ .p-staffBar {display: none;} .p-navStaffBar {display: inline-block;} @media (max-width: @xf-responsiveNarrow) { .p-navStaffBar {display: none;} .p-staffBar {display: inline-block;} } .p-navgroup-link { &.p-navgroup-link--approvalqueue i:after {.m-faContent(@fa-var-user-check, 1em);} &.p-navgroup-link--reports i:after {.m-faContent(@fa-var-siren, 1em);} &.p-navgroup-link--moderatortools i:after {.m-faContent(@fa-var-tools, 1em);} &.p-navgroup-link--admincp i:after {.m-faContent(@fa-var-cogs, 1em);} &.p-navgroup-link-staffbar { &.p-navgroup-link--iconic .p-navgroup-linkText, &.p-navgroup-link--textual i{display: none;} } } .p-navgroup-link-staffbar { opacity: .6; &:hover, &.badgeContainer--highlighted, &.is-menuOpen {opacity: 1;} } .p-navgroup-link--admincp{display:none} ]]>
</template>
</templates>
