Advertisement
Guest User

Untitled

a guest
Feb 8th, 2019
1,495
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 315.58 KB | None | 0 0
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <style title="Argon" description="" user_selectable="1" export_version="2">
  3. <templates>
  4. <template title="PAGE_CONTAINER" type="public" addon_id="XF" version_id="2001070" version_string="2.0.10"><![CDATA[<!DOCTYPE html>
  5. <html id="XF" lang="{$xf.language.language_code}" dir="{$xf.language.text_direction}"
  6. data-app="public"
  7. data-template="{$template}"
  8. data-container-key="{$containerKey}"
  9. data-content-key="{$contentKey}"
  10. data-logged-in="{{ $xf.visitor.user_id ? 'true' : 'false' }}"
  11. data-cookie-prefix="{$xf.cookie.prefix}"
  12. class="has-no-js{{ $template ? ' template-' . $template : '' }}"
  13. {{ $xf.runJobs ? ' data-run-jobs=""' : '' }}>
  14. <head>
  15. <meta charset="utf-8" />
  16. <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
  17. <meta name="viewport" content="width=device-width, initial-scale=1">
  18.  
  19. <xf:set var="$siteName" value="{$xf.options.boardTitle}" />
  20. <xf:set var="$h1"><xf:h1 fallback="{$siteName}" /></xf:set>
  21. <xf:set var="$description"><xf:description /></xf:set>
  22.  
  23. <title><xf:title formatter="%s | %s" fallback="{$xf.options.boardTitle}" page="{$pageNumber}" /></title>
  24.  
  25. <xf:foreach loop="$head" value="$headTag">
  26. {$headTag}
  27. </xf:foreach>
  28.  
  29. <xf:if is="!$head.meta_site_name && $siteName is not empty">
  30. <xf:macro template="metadata_macros" name="site_name" arg-siteName="{$siteName}" arg-output="{{ true }}" />
  31. </xf:if>
  32. <link href="https://fonts.googleapis.com/css?family=Open+Sans:400,600,700" rel="stylesheet">
  33. <xf:if is="!$head.meta_type">
  34. <xf:macro template="metadata_macros" name="type" arg-type="website" arg-output="{{ true }}" />
  35. </xf:if>
  36. <xf:if is="!$head.meta_title">
  37. <xf:macro template="metadata_macros" name="title" arg-title="{{ page_title() ?: $siteName }}" arg-output="{{ true }}" />
  38. </xf:if>
  39. <xf:if is="!$head.meta_description && $description is not empty && $pageDescriptionMeta">
  40. <xf:macro template="metadata_macros" name="description" arg-description="{$description}" arg-output="{{ true }}" />
  41. </xf:if>
  42. <xf:if is="!$head.meta_share_url">
  43. <xf:macro template="metadata_macros" name="share_url" arg-shareUrl="{$xf.fullUri}" arg-output="{{ true }}" />
  44. </xf:if>
  45. <xf:if is="!$head.meta_image_url && property('publicMetadataLogoUrl')">
  46. <xf:macro template="metadata_macros" name="image_url"
  47. arg-imageUrl="{{ base_url(property('publicMetadataLogoUrl'), true) }}"
  48. arg-output="{{ true }}" />
  49. </xf:if>
  50.  
  51. <xf:if is="property('metaThemeColor')">
  52. <meta name="theme-color" content="{{ parse_less_color(property('metaThemeColor')) }}" />
  53. </xf:if>
  54.  
  55. <xf:macro template="helper_js_global" name="head" arg-app="public" />
  56.  
  57. <xf:if is="property('publicFaviconUrl')">
  58. <link rel="icon" type="image/png" href="{{ base_url(property('publicFaviconUrl'), true) }}" sizes="32x32" />
  59. </xf:if>
  60. <xf:if is="property('publicMetadataLogoUrl')">
  61. <link rel="apple-touch-icon" href="{{ base_url(property('publicMetadataLogoUrl'), true) }}" />
  62. </xf:if>
  63. <xf:include template="google_analytics" />
  64. </head>
  65. <body data-template="{$template}">
  66.  
  67. <div class="p-pageWrapper" id="top">
  68.  
  69. <xf:if contentcheck="true">
  70. <div class="p-staffBar">
  71. <div class="p-staffBar-inner hScroller" data-xf-init="h-scroller">
  72. <div class="hScroller-scroll">
  73. <xf:contentcheck>
  74. <xf:if is="$xf.visitor.is_moderator && $xf.session.unapprovedCounts.total">
  75. <a href="{{ link('approval-queue') }}" class="p-staffBar-link badgeContainer badgeContainer--highlighted" data-badge="{$xf.session.unapprovedCounts.total|number}">
  76. {{ phrase('approval_queue') }}
  77. </a>
  78. </xf:if>
  79.  
  80. <xf:if is="$xf.visitor.is_moderator && !$xf.options.reportIntoForumId && $xf.session.reportCounts.total">
  81. <a href="{{ link('reports') }}"
  82. class="p-staffBar-link badgeContainer badgeContainer--visible {{ ($xf.session.reportCounts.total && ($xf.session.reportCounts.lastBuilt > $xf.session.reportLastRead) OR $xf.session.reportCounts.assigned) ? ' badgeContainer--highlighted' : '' }}"
  83. data-badge="{{ $xf.session.reportCounts.assigned ? $xf.session.reportCounts.assigned|number . ' / ' . $xf.session.reportCounts.total|number : $xf.session.reportCounts.total|number }}"
  84. title="{{ $xf.session.reportCounts.lastBuilt ? phrase('last_report_update:') . ' ' . date_time($xf.session.reportCounts.lastBuilt) : '' }}">
  85. {{ phrase('reports') }}
  86. </a>
  87. </xf:if>
  88.  
  89. <xf:if contentcheck="true">
  90. <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">{{ phrase('moderator') }}</a>
  91. <div class="menu" data-menu="menu" aria-hidden="true">
  92. <div class="menu-content">
  93. <h4 class="menu-header">{{ phrase('moderator_tools') }}</h4>
  94. <xf:contentcheck>
  95. <!--[XF:mod_tools_menu:top]-->
  96. <xf:if is="$xf.visitor.is_moderator">
  97. <a href="{{ link('approval-queue') }}" class="menu-linkRow">{{ phrase('approval_queue') }}</a>
  98. </xf:if>
  99. <xf:if is="$xf.visitor.is_moderator && !$xf.options.reportIntoForumId">
  100. <a href="{{ link('reports') }}" class="menu-linkRow" title="{{ $xf.session.reportCounts.lastBuilt ? phrase('last_report_update:') . ' ' . date_time($xf.session.reportCounts.lastBuilt) : '' }}">{{ phrase('reports') }}</a>
  101. </xf:if>
  102. <!--[XF:mod_tools_menu:bottom]-->
  103. </xf:contentcheck>
  104. </div>
  105. </div>
  106. </xf:if>
  107.  
  108. <xf:if is="$xf.visitor.is_admin">
  109. <a href="{{ base_url('admin.php') }}" class="p-staffBar-link link-admin" target="_blank">{{ phrase('admin') }}</a>
  110. </xf:if>
  111. </xf:contentcheck>
  112. </div>
  113. </div>
  114. </div>
  115. </xf:if>
  116.  
  117. <header class="p-header" id="header">
  118. <div class="p-header-inner">
  119. <div class="p-header-content">
  120. <div class="p-header-logo p-header-logo--image">
  121. <a href="{{ ($xf.options.logoLink && $xf.homePageUrl) ? $xf.homePageUrl : link('index') }}">
  122. <img src="{{ base_url(property('publicLogoUrl')) }}"
  123. alt="{$xf.options.boardTitle}"
  124. {{ property('publicLogoUrl2x') ? 'srcset="' . base_url(property('publicLogoUrl2x')) . ' 2x"' : '' }} />
  125. </a>
  126. </div>
  127. <xf:ad position="container_header" />
  128. </div>
  129. </div>
  130. </header>
  131. <div class="search--sm show-sm p-discovery"></div>
  132. <xf:set var="$navHtml">
  133. <nav class="p-nav">
  134. <div class="p-nav-inner">
  135. <a class="p-nav-menuTrigger" data-xf-click="off-canvas" data-menu=".js-headerOffCanvasMenu" role="button" tabindex="0">
  136. <i aria-hidden="true"></i>
  137. <span class="p-nav-menuText">{{ phrase('menu') }}</span>
  138. </a>
  139.  
  140. <div class="p-nav-scroller hScroller" data-xf-init="h-scroller" data-auto-scroll=".p-navEl.is-selected">
  141. <div class="hScroller-scroll">
  142. <ul class="p-nav-list js-offCanvasNavSource">
  143. <xf:foreach loop="$navTree" key="$navSection" value="$navEntry" i="$i" if="{{ $navSection != $xf.app.defaultNavigationId }}">
  144. <li>
  145. <xf:macro name="nav_entry"
  146. arg-navId="{$navSection}"
  147. arg-nav="{$navEntry}"
  148. arg-selected="{{ $navSection == $pageSection }}"
  149. arg-shortcut="{$i}" />
  150. </li>
  151. </xf:foreach>
  152. </ul>
  153. </div>
  154. </div>
  155. <div class="p-navgroup p-discovery">
  156. <xf:if is="$xf.visitor.canSearch()">
  157. <div class="search-area" aria-hidden="true">
  158. <form action="{{ link('search/search') }}" method="post"
  159. class="menu-content"
  160. data-xf-init="quick-search">
  161. <!--[XF:search_menu:above_input]-->
  162. <div class="menu-row search-input">
  163. <xf:if is="$searchConstraints">
  164. <div class="inputGroup inputGroup--joined">
  165. <xf:textbox name="keywords"
  166. placeholder="{{ phrase('search...') }}"
  167. aria-label="{{ phrase('search') }}"
  168. data-menu-autofocus="true" />
  169. </div>
  170. <xf:else />
  171. <xf:textbox name="keywords"
  172. placeholder="{{ phrase('search...') }}"
  173. aria-label="{{ phrase('search') }}"
  174. data-menu-autofocus="true" />
  175. </xf:if>
  176. </div>
  177.  
  178. <div class="search-option">
  179. <xf:if is="$searchConstraints">
  180. <div class="inputGroup inputGroup--joined">
  181. <xf:select name="constraints"
  182. class="js-quickSearch-constraint"
  183. aria-label="{{ phrase('search_within') }}">
  184. <xf:option value="">{{ phrase('everywhere') }}</xf:option>
  185. <xf:foreach loop="$searchConstraints" key="$constraintName" value="$constraint">
  186. <xf:option value="{$constraint|json}">{$constraintName}</xf:option>
  187. </xf:foreach>
  188. </xf:select>
  189. </div>
  190. </xf:if>
  191. <!--[XF:search_menu:above_title_only]-->
  192. <div class="menu-row">
  193. <xf:checkbox standalone="true"><xf:option name="c[title_only]" label="{{ phrase('search_titles_only') }}" /></xf:checkbox>
  194. </div>
  195. <!--[XF:search_menu:above_member]-->
  196. <div class="menu-row">
  197. <div class="inputGroup">
  198. <span class="inputGroup-text" id="ctrl_search_menu_by_member">{{ phrase('by:') }}</span>
  199. <input class="input" name="c[users]" data-xf-init="auto-complete" placeholder="{{ phrase('member')|for_attr }}" aria-labelledby="ctrl_search_menu_by_member" />
  200. </div>
  201. </div>
  202. <div class="menu-footer">
  203. <span class="menu-footer-controls">
  204. <xf:button type="submit" class="button--primary" icon="search" />
  205. <xf:button href="{{ link('search') }}" rel="nofollow">{{ phrase('advanced_search...') }}</xf:button>
  206. </span>
  207. </div>
  208. </div>
  209.  
  210. <xf:csrf />
  211. </form>
  212. </div>
  213. </xf:if>
  214. </div>
  215.  
  216. <div class="p-nav-opposite">
  217. <div class="p-navgroup p-account {{ $xf.visitor.user_id ? 'p-navgroup--member' : 'p-navgroup--guest' }}">
  218. <xf:if is="$xf.visitor.user_id">
  219. <xf:if is="$xf.visitor.user_state == 'rejected' OR $xf.visitor.user_state == 'disabled'">
  220. <a href="{{ link('account') }}"
  221. class="p-navgroup-link p-navgroup-link--iconic p-navgroup-link--user">
  222. <xf:avatar user="$xf.visitor" size="xs" href="" />
  223. <span class="p-navgroup-linkText">{$xf.visitor.username}</span>
  224. </a>
  225.  
  226. <a href="{{ link('logout', null, {'t': csrf_token()}) }}" class="p-navgroup-link">
  227. <span class="p-navgroup-linkText">{{ phrase('log_out') }}</span>
  228. </a>
  229. <xf:else />
  230. <a href="{{ link('conversations') }}"
  231. class="p-navgroup-link p-navgroup-link--iconic p-navgroup-link--conversations js-badge--conversations badgeContainer{{ $xf.visitor.conversations_unread ? ' badgeContainer--highlighted' : '' }}"
  232. data-badge="{$xf.visitor.conversations_unread|number}"
  233. data-xf-click="menu"
  234. data-xf-key="{{ phrase('shortcut.conversations_menu')|for_attr }}"
  235. data-menu-pos-ref="< .p-navgroup"
  236. aria-expanded="false"
  237. aria-haspopup="true">
  238. <i class="show-sm" aria-hidden="true"></i>
  239. <span class="p-navgroup-linkText">{{ phrase('inbox') }}</span>
  240. </a>
  241. <div class="menu menu--structural menu--medium meu--alertconver" data-menu="menu" aria-hidden="true"
  242. data-href="{{ link('conversations/popup') }}"
  243. data-nocache="true"
  244. data-load-target=".js-convMenuBody">
  245. <div class="menu-content">
  246. <h3 class="menu-header">{{ phrase('conversations') }}</h3>
  247. <div class="js-convMenuBody">
  248. <div class="menu-row">{{ phrase('loading...') }}</div>
  249. </div>
  250. <div class="menu-footer menu-footer--split">
  251. <span class="menu-footer-main">
  252. <a href="{{ link('conversations') }}">{{ phrase('show_all...') }}</a>
  253. </span>
  254. <span class="menu-footer-opposite">
  255. <a href="{{ link('conversations/add') }}">{{ phrase('start_new_conversation') }}</a>
  256. </span>
  257. </div>
  258. </div>
  259. </div>
  260. <a href="{{ link('account/alerts') }}"
  261. class="p-navgroup-link p-navgroup-link--iconic p-navgroup-link--alerts js-badge--alerts badgeContainer{{ $xf.visitor.alerts_unread ? ' badgeContainer--highlighted' : '' }}"
  262. data-badge="{$xf.visitor.alerts_unread|number}"
  263. data-xf-click="menu"
  264. data-xf-key="{{ phrase('shortcut.alerts_menu')|for_attr }}"
  265. data-menu-pos-ref="< .p-navgroup"
  266. aria-expanded="false"
  267. aria-haspopup="true">
  268. <i class="show-sm" aria-hidden="true"></i>
  269. <span class="p-navgroup-linkText">{{ phrase('alerts') }}</span>
  270. </a>
  271. <div class="menu menu--structural menu--medium meu--alertconver" data-menu="menu" aria-hidden="true"
  272. data-href="{{ link('account/alerts-popup') }}"
  273. data-nocache="true"
  274. data-load-target=".js-alertsMenuBody">
  275. <div class="menu-content">
  276. <h3 class="menu-header">{{ phrase('alerts') }}</h3>
  277. <div class="js-alertsMenuBody">
  278. <div class="menu-row">{{ phrase('loading...') }}</div>
  279. </div>
  280. <div class="menu-footer menu-footer--split">
  281. <span class="menu-footer-main">
  282. <a href="{{ link('account/alerts') }}">{{ phrase('show_all...') }}</a>
  283. </span>
  284. <span class="menu-footer-opposite">
  285. <a href="{{ link('account/preferences') }}">{{ phrase('preferences') }}</a>
  286. </span>
  287. </div>
  288. </div>
  289. </div>
  290. <a href="{{ link('account') }}"
  291. class="p-navgroup-link p-navgroup-link--iconic p-navgroup-link--user"
  292. data-xf-click="menu"
  293. data-xf-key="{{ phrase('shortcut.visitor_menu')|for_attr }}"
  294. data-menu-pos-ref="< .p-navgroup"
  295. aria-expanded="false"
  296. aria-haspopup="true">
  297. <i class="fa fa-user show-sm" style="font-size: 20px;" aria-hidden="true"></i>
  298. <span class="p-navgroup-linkText">{$xf.visitor.username}</span>
  299. </a>
  300. <div class="menu menu--structural menu--wide menu--account" data-menu="menu" aria-hidden="true"
  301. data-href="{{ link('account/visitor-menu') }}"
  302. data-load-target=".js-visitorMenuBody">
  303. <div class="menu-content js-visitorMenuBody">
  304. <div class="menu-row">
  305. {{ phrase('loading...') }}
  306. </div>
  307. </div>
  308. </div>
  309. </xf:if>
  310. <xf:else />
  311. <xf:if is="$xf.options.registrationSetup.enabled">
  312. <a href="{{ link('register') }}" class="p-navgroup-link p-navgroup-link--textual p-navgroup-link--register"
  313. data-xf-click="overlay" data-follow-redirects="on">
  314. <span class="p-navgroup-linkText">{{ phrase('register') }}</span>
  315. </a>
  316. </xf:if>
  317. <a href="{{ link('login') }}" class="p-navgroup-link p-navgroup-link--textual p-navgroup-link--logIn"
  318. data-xf-click="overlay" data-follow-redirects="on">
  319. <span class="p-navgroup-linkText">{{ phrase('log_in') }}</span>
  320. </a>
  321. </xf:if>
  322. </div>
  323. </div>
  324. </div>
  325. </nav>
  326. </xf:set>
  327. <xf:set var="$subNavHtml">
  328. <xf:if is="$selectedNavChildren is not empty">
  329. <div class="p-sectionLinks">
  330. <div class="p-sectionLinks-inner hScroller" data-xf-init="h-scroller">
  331. <div class="hScroller-scroll">
  332. <ul class="p-sectionLinks-list">
  333. <xf:foreach loop="$selectedNavChildren" key="$navId" value="$navEntry" i="$i">
  334. <li>
  335. <xf:macro name="nav_entry" arg-navId="{$navId}" arg-nav="{$navEntry}" arg-shortcut="alt+{$i}" />
  336. </li>
  337. </xf:foreach>
  338. </ul>
  339. </div>
  340. </div>
  341. </div>
  342. <xf:elseif is="{$selectedNavEntry}" />
  343. <div class="p-sectionLinks p-sectionLinks--empty"></div>
  344. </xf:if>
  345. </xf:set>
  346.  
  347. <xf:if is="property('publicNavSticky') == 'primary'">
  348. <div class="p-navSticky p-navSticky--primary" data-xf-init="sticky-header">
  349. {$navHtml|raw}
  350. </div>
  351. {$subNavHtml|raw}
  352. <xf:elseif is="property('publicNavSticky') == 'all'" />
  353. <div class="p-navSticky p-navSticky--all" data-xf-init="sticky-header">
  354. {$navHtml|raw}
  355. {$subNavHtml|raw}
  356. </div>
  357. <xf:else />
  358. {$navHtml|raw}
  359. {$subNavHtml|raw}
  360. </xf:if>
  361.  
  362.  
  363.  
  364. <div class="offCanvasMenu offCanvasMenu--nav js-headerOffCanvasMenu" data-menu="menu" aria-hidden="true" data-ocm-builder="navigation">
  365. <div class="offCanvasMenu-backdrop" data-menu-close="true"></div>
  366. <div class="offCanvasMenu-content">
  367. <div class="offCanvasMenu-header">
  368. {{ phrase('menu') }}
  369. <a class="offCanvasMenu-closer" data-menu-close="true" role="button" tabindex="0" aria-label="{{ phrase('close')|for_attr }}"></a>
  370. </div>
  371. <xf:if is="$xf.visitor.user_id">
  372. <div class="p-offCanvasAccountLink">
  373. <div class="offCanvasMenu-linkHolder">
  374. <a href="{{ link('account') }}" class="offCanvasMenu-link">
  375. <xf:avatar user="$xf.visitor" size="xxs" href="" />
  376. {$xf.visitor.username}
  377. </a>
  378. </div>
  379. <hr class="offCanvasMenu-separator" />
  380. </div>
  381. <xf:else />
  382. <div class="p-offCanvasRegisterLink">
  383. <div class="offCanvasMenu-linkHolder">
  384. <a href="{{ link('login') }}" class="offCanvasMenu-link" data-xf-click="overlay" data-menu-close="true">
  385. {{ phrase('log_in') }}
  386. </a>
  387. </div>
  388. <hr class="offCanvasMenu-separator" />
  389. <xf:if is="$xf.options.registrationSetup.enabled">
  390. <div class="offCanvasMenu-linkHolder">
  391. <a href="{{ link('register') }}" class="offCanvasMenu-link" data-xf-click="overlay" data-menu-close="true">
  392. {{ phrase('register') }}
  393. </a>
  394. </div>
  395. <hr class="offCanvasMenu-separator" />
  396. </xf:if>
  397. </div>
  398. </xf:if>
  399. <div class="js-offCanvasNavTarget"></div>
  400. </div>
  401. </div>
  402. <xf:ad position="container_breadcrumb_top_above" />
  403. <div class="brv-breadcrumbs brv-breadcrumbs__top">
  404. <div class="brv-breadcrumbs-inner">
  405. <xf:macro name="breadcrumbs"
  406. arg-breadcrumbs="{$breadcrumbs}"
  407. arg-navTree="{$navTree}"
  408. arg-selectedNavEntry="{$selectedNavEntry}" />
  409. </div>
  410. </div>
  411. <xf:ad position="container_breadcrumb_top_below" />
  412. <div class="p-body">
  413. <div class="p-body-inner">
  414. <!--XF:EXTRA_OUTPUT-->
  415.  
  416. <xf:if is="$notices.block">
  417. <xf:macro template="notice_macros" name="notice_list" arg-type="block" arg-notices="{$notices.block}" />
  418. </xf:if>
  419.  
  420. <xf:if is="$notices.scrolling">
  421. <xf:macro template="notice_macros" name="notice_list" arg-type="scrolling" arg-notices="{$notices.scrolling}" />
  422. </xf:if>
  423.  
  424.  
  425. <xf:macro template="browser_warning_macros" name="javascript" />
  426. <xf:macro template="browser_warning_macros" name="browser" />
  427.  
  428. <xf:if is="$headerHtml is not empty">
  429. <div class="p-body-header">
  430. {$headerHtml|raw}
  431. </div>
  432. <xf:elseif contentcheck="true" />
  433. <div class="p-body-header">
  434. <xf:contentcheck>
  435. <xf:if contentcheck="true">
  436. <div class="p-title {{ $noH1 ? 'p-title--noH1' : '' }}">
  437. <xf:contentcheck>
  438. <xf:if is="!$noH1">
  439. <h1 class="p-title-value">{$h1}</h1>
  440. </xf:if>
  441. <xf:if contentcheck="true">
  442. <div class="p-title-pageAction"><xf:contentcheck><xf:pageaction /></xf:contentcheck></div>
  443. </xf:if>
  444. </xf:contentcheck>
  445. </div>
  446. </xf:if>
  447.  
  448. <xf:if is="$description is not empty">
  449. <div class="p-description">{$description}</div>
  450. </xf:if>
  451. </xf:contentcheck>
  452. </div>
  453. </xf:if>
  454. <div class="new_tags_brv"></div>
  455. <div class="p-body-main {{ $sidebar ? 'p-body-main--withSidebar have--sidebar' : '' }} {{ $sideNav ? 'p-body-main--withSideNav have--sidebar' : '' }}">
  456. <xf:if is="$sideNav">
  457. <div class="p-body-sideNav p-have--sidebar">
  458. <div class="p-body-sideNavTrigger">
  459. <xf:button class="button--link" data-xf-click="off-canvas" data-menu="#js-SideNavOcm">
  460. {{ $sideNavTitle ?: phrase('navigation') }}
  461. </xf:button>
  462. </div>
  463. <div class="p-body-sideNavInner" data-ocm-class="offCanvasMenu offCanvasMenu--blocks" id="js-SideNavOcm" data-ocm-builder="sideNav">
  464. <div data-ocm-class="offCanvasMenu-backdrop" data-menu-close="true"></div>
  465. <div data-ocm-class="offCanvasMenu-content">
  466. <div class="p-body-sideNavContent">
  467. <xf:ad position="container_sidenav_above" />
  468. <xf:foreach loop="$sideNav" value="$sideNavHtml">
  469. {$sideNavHtml}
  470. </xf:foreach>
  471. <xf:ad position="container_sidenav_below" />
  472. </div>
  473. </div>
  474. </div>
  475. </div>
  476. </xf:if>
  477.  
  478. <div class="p-body-content">
  479. <xf:ad position="container_content_above" />
  480. <div class="p-body-pageContent">{$content|raw}</div>
  481. <xf:ad position="container_content_below" />
  482. </div>
  483.  
  484. <xf:if is="$sidebar">
  485. <div class="p-body-sidebar p-have--sidebar">
  486. <xf:ad position="container_sidebar_above" />
  487. <xf:foreach loop="$sidebar" value="$sidebarHtml">
  488. {$sidebarHtml}
  489. </xf:foreach>
  490. <xf:ad position="container_sidebar_below" />
  491. </div>
  492. </xf:if>
  493. </div>
  494.  
  495.  
  496. </div>
  497. </div>
  498. <xf:ad position="container_breadcrumb_bottom_above" />
  499. <div class="brv-breadcrumbs brv-breadcrumbs__bottom">
  500. <div class="brv-breadcrumbs-inner">
  501. <xf:macro name="breadcrumbs"
  502. arg-breadcrumbs="{$breadcrumbs}"
  503. arg-navTree="{$navTree}"
  504. arg-selectedNavEntry="{$selectedNavEntry}"
  505. arg-variant="bottom" />
  506. </div>
  507. </div>
  508. <xf:ad position="container_breadcrumb_bottom_below" />
  509. <footer class="p-footer" id="footer">
  510. <div class="p-footer-inner">
  511.  
  512. <div class="footer-custom">
  513. <div class="row">
  514. <div class="footer-column footer-column-1">
  515. {{ property('FooterColumn1') }}
  516. </div>
  517. <div class="footer-column footer-column-2">
  518. {{ property('FooterColumn2') }}
  519. </div>
  520. <div class="footer-column footer-column-3">
  521. {{ property('FooterColumn3') }}
  522. </div>
  523. <div class="footer-column footer-column-4">
  524. {{ property('FooterColumn4') }}
  525. </div>
  526. </div>
  527. </div>
  528.  
  529.  
  530.  
  531.  
  532. </div>
  533. <div class="footer-bottom">
  534. <div class="p-footer-inner">
  535. <xf:if contentcheck="true">
  536. <div class="p-footer-copyright">
  537. <xf:contentcheck>
  538. <xf:copyright />
  539. {{ phrase('extra_copyright') }}
  540. </xf:contentcheck>
  541. </div>
  542. </xf:if>
  543. <div class="p-footer-row-opposite">
  544. <ul class="p-footer-linkList">
  545. <xf:if contentcheck="true">
  546. <xf:contentcheck>
  547. <xf:if is="$xf.visitor.canChangeStyle()">
  548. <li><a href="{{ link('misc/style') }}" data-xf-click="overlay"
  549. data-xf-init="tooltip" title="{{ phrase('style_chooser')|for_attr }}" rel="nofollow">
  550. <i class="fa fa-paint-brush" aria-hidden="true"></i> {$xf.style.title}
  551. </a></li>
  552. </xf:if>
  553. <xf:if is="$xf.visitor.canChangeLanguage()">
  554. <li><a href="{{ link('misc/language') }}" data-xf-click="overlay"
  555. data-xf-init="tooltip" title="{{ phrase('language_chooser')|for_attr }}" rel="nofollow">
  556. <i class="fa fa-globe" aria-hidden="true"></i> {$xf.language.title}</a></li>
  557. </xf:if>
  558. </xf:contentcheck>
  559. </xf:if>
  560. <xf:if is="$xf.visitor.canUseContactForm()">
  561. <xf:if is="$xf.contactUrl">
  562. <li><a href="{$xf.contactUrl}" data-xf-click="{{ ($xf.options.contactUrl.overlay OR $xf.options.contactUrl.type == 'default') ? 'overlay' : '' }}">{{ phrase('contact_us') }}</a></li>
  563. </xf:if>
  564. </xf:if>
  565.  
  566. <xf:if is="$xf.tosUrl">
  567. <li><a href="{$xf.tosUrl}">{{ phrase('terms_and_rules') }}</a></li>
  568. </xf:if>
  569.  
  570. <xf:if is="$xf.privacyPolicyUrl">
  571. <li><a href="{$xf.privacyPolicyUrl}">{{ phrase('privacy_policy') }}</a></li>
  572. </xf:if>
  573.  
  574. <xf:if is="$xf.helpPageCount">
  575. <li><a href="{{ link('help') }}">{{ phrase('help') }}</a></li>
  576. </xf:if>
  577.  
  578. <xf:if is="$xf.homePageUrl">
  579. <li><a href="{$xf.homePageUrl}">{{ phrase('home') }}</a></li>
  580. </xf:if>
  581.  
  582. <li><a href="{{ link('forums/index.rss', '-') }}" target="_blank" class="p-footer-rssLink" title="{{ phrase('rss')|for_attr }}"><span aria-hidden="true"><i class="fa fa-rss"></i><span class="u-srOnly">{{ phrase('rss') }}</span></span></a></li>
  583. </ul>
  584. </div>
  585. <div class="BRCopyright" style="display: block;">
  586. <style>@media (max-width:480px){.Responsive #BRCopyright span{display: none;}}</style>
  587. <div class="content-brcpright">
  588. <a href="http://brivium.com/xenforo-add-ons" class="item-brcp" title="Brivium XenForo Add-ons">XenForo Add-ons</a>
  589. <span>&</span>
  590. <a href="http://brivium.com/xenforo-styles" class="item-brcp" title="Brivium XenForo Styles">XenForo Styles</a>
  591. <span> ™ © 2012-2017 Brivium LLC.</span>
  592. </div>
  593. </div>
  594. </div>
  595. </div>
  596. <xf:if contentcheck="true">
  597. <div class="p-footer-inner">
  598. <div class="p-footer-debug">
  599. <xf:contentcheck>
  600. <xf:macro template="debug_macros" name="debug"
  601. arg-controller="{$controller}"
  602. arg-action="{$actionMethod}"
  603. arg-template="{$template}" />
  604. </xf:contentcheck>
  605. </div>
  606. </div>
  607. </xf:if>
  608. </footer>
  609.  
  610. </div> <!-- closing p-pageWrapper -->
  611.  
  612. <div class="u-bottomFixer js-bottomFixTarget">
  613. <xf:if is="$notices.floating">
  614. <xf:macro template="notice_macros" name="notice_list" arg-type="floating" arg-notices="{$notices.floating}" />
  615. </xf:if>
  616. <xf:if is="$notices.bottom_fixer">
  617. <xf:macro template="notice_macros" name="notice_list" arg-type="bottom_fixer" arg-notices="{$notices.bottom_fixer}" />
  618. </xf:if>
  619. </div>
  620.  
  621. <xf:if is="property('scrollJumpButtons')">
  622. <div class="u-scrollButtons js-scrollButtons" data-trigger-type="{{ property('scrollJumpButtons') }}">
  623. <xf:button href="#top" class="button--scroll" data-xf-click="scroll-to"><i class="fa fa-arrow-up"></i><span class="u-srOnly">{{ phrase('top') }}</span></xf:button>
  624. <xf:if is="property('scrollJumpButtons') != 'up'">
  625. <xf:button href="#footer" class="button--scroll" data-xf-click="scroll-to"><i class="fa fa-arrow-down"></i><span class="u-srOnly">{{ phrase('bottom') }}</span></xf:button>
  626. </xf:if>
  627. </div>
  628. </xf:if>
  629.  
  630. <xf:macro template="helper_js_global" name="body" arg-app="public" arg-jsState="{$jsState}" />
  631. <script src="{{ base_url() }}js/brivium/argon/function.js"></script>
  632. {$ldJsonHtml|raw}
  633.  
  634. </body>
  635. </html>
  636.  
  637. <xf:macro name="nav_entry" arg-navId="!" arg-nav="!" arg-selected="{{ false }}" arg-shortcut="">
  638. <div class="p-navEl {{ $selected ? 'is-selected' : '' }}" {{ $nav.children ? 'data-has-children="true"' : '' }}>
  639. <xf:if is="$nav.href">
  640.  
  641. <xf:macro name="nav_link"
  642. arg-navId="{$navId}"
  643. arg-nav="{$nav}"
  644. arg-class="p-navEl-link {{ $nav.children ? 'p-navEl-link--splitMenu' : '' }}"
  645. arg-shortcut="{{ $nav.children ? false : $shortcut }}" />
  646.  
  647. <xf:if is="$nav.children"><a data-xf-key="{$shortcut}"
  648. data-xf-click="menu"
  649. data-menu-pos-ref="< .p-navEl"
  650. data-arrow-pos-ref="< .p-navEl"
  651. class="p-navEl-splitTrigger"
  652. role="button"
  653. tabindex="0"
  654. aria-label="{{ phrase('toggle_expanded') }}"
  655. aria-expanded="false"
  656. aria-haspopup="true"></a></xf:if>
  657.  
  658. <xf:elseif is="$nav.children" /><a data-xf-key="{$shortcut}"
  659. data-xf-click="menu"
  660. data-menu-pos-ref="< .p-navEl"
  661. data-arrow-pos-ref="< .p-navEl"
  662. class="p-navEl-linkHolder"
  663. role="button"
  664. tabindex="0"
  665. aria-expanded="false"
  666. aria-haspopup="true">
  667. <xf:macro name="nav_link"
  668. arg-navId="{$navId}"
  669. arg-nav="{$nav}"
  670. arg-class="p-navEl-link p-navEl-link--menuTrigger" />
  671. </a>
  672.  
  673. <xf:else />
  674.  
  675. <xf:macro name="nav_link"
  676. arg-navId="{$navId}"
  677. arg-nav="{$nav}"
  678. arg-class="p-navEl-link"
  679. arg-shortcut="{$shortcut}" />
  680.  
  681. </xf:if>
  682. <xf:if is="$nav.children">
  683. <div class="menu menu--structural" data-menu="menu" aria-hidden="true">
  684. <div class="menu-content">
  685. <!--<h4 class="menu-header">{$nav.title}</h4>-->
  686. <xf:foreach loop="$nav.children" key="$childNavId" value="$child">
  687. <xf:macro name="nav_menu_entry"
  688. arg-navId="{$childNavId}"
  689. arg-nav="{$child}" />
  690. </xf:foreach>
  691. </div>
  692. </div>
  693. </xf:if>
  694. </div>
  695. </xf:macro>
  696.  
  697. <xf:macro name="nav_link" arg-navId="!" arg-nav="!" arg-class="" arg-titleHtml="" arg-shortcut="{{ false }}">
  698. <xf:set var="$tag" value="{{ $nav.href ? 'a' : 'span' }}" />
  699. <{$tag} {{ $nav.href ? 'href="' . $nav.href . '"' : '' }}
  700. class="{{ trim($class) }} {$nav.attributes.class}"
  701. {{ attributes($nav.attributes, ['class']) }}
  702. {{ $shortcut !== false ? 'data-xf-key="' . $shortcut . '"' : '' }}
  703. data-nav-id="{$navId}"><xf:if is="$nav.icon"><i class="fa {$nav.icon}" aria-hidden="true"></i> </xf:if>{{ $titleHtml ? $titleHtml|raw : $nav.title }}<xf:if is="$nav.counter"> <span class="badge badge--highlighted">{$nav.counter|number}</span></xf:if></{$tag}>
  704. </xf:macro>
  705.  
  706. <xf:macro name="nav_menu_entry" arg-navId="!" arg-nav="!" arg-depth="0">
  707. <xf:macro name="nav_link"
  708. arg-navId="{$navId}"
  709. arg-nav="{$nav}"
  710. arg-class="menu-linkRow u-indentDepth{$depth} js-offCanvasCopy" />
  711. <xf:if is="$nav.children">
  712. <xf:foreach loop="$nav.children" key="$childNavId" value="$child">
  713. <xf:macro name="nav_menu_entry"
  714. arg-navId="{$childNavId}"
  715. arg-nav="{$child}"
  716. arg-depth="{{ $depth + 1 }}" />
  717. </xf:foreach>
  718. <xf:if is="$depth == 0">
  719. <hr class="menu-separator" />
  720. </xf:if>
  721. </xf:if>
  722. </xf:macro>
  723.  
  724. <xf:macro name="breadcrumbs" arg-breadcrumbs="!" arg-navTree="!" arg-selectedNavEntry="{{ null }}" arg-variant="">
  725. <xf:if contentcheck="true">
  726. <ul class="p-breadcrumbs {{ $variant ? 'p-breadcrumbs--' . $variant : '' }}"
  727. itemscope itemtype="https://schema.org/BreadcrumbList">
  728. <xf:contentcheck>
  729. <xf:set var="$position" value="{{ 0 }}" />
  730.  
  731. <xf:set var="$rootBreadcrumb" value="{$navTree.{$xf.options.rootBreadcrumb}}" />
  732. <xf:if is="$rootBreadcrumb AND $rootBreadcrumb.href != $xf.uri">
  733. <xf:set var="$position" value="{{ $position + 1 }}" />
  734. <xf:macro name="crumb"
  735. arg-position="{$position}"
  736. arg-href="{$rootBreadcrumb.href}"
  737. arg-value="{$rootBreadcrumb.title}" />
  738. </xf:if>
  739.  
  740. <xf:if is="$selectedNavEntry && $selectedNavEntry.href && $selectedNavEntry.href != $xf.uri && $selectedNavEntry.href != $rootBreadcrumb.href">
  741. <xf:set var="$position" value="{{ $position + 1 }}" />
  742. <xf:macro name="crumb"
  743. arg-position="{$position}"
  744. arg-href="{$selectedNavEntry.href}"
  745. arg-value="{$selectedNavEntry.title}" />
  746. </xf:if>
  747. <xf:foreach loop="$breadcrumbs" value="$breadcrumb" if="$breadcrumb.href != $xf.uri">
  748. <xf:set var="$position" value="{{ $position + 1 }}" />
  749. <xf:macro name="crumb"
  750. arg-position="{$position}"
  751. arg-href="{$breadcrumb.href}"
  752. arg-value="{$breadcrumb.value}" />
  753. </xf:foreach>
  754.  
  755. </xf:contentcheck>
  756. </ul>
  757. </xf:if>
  758. </xf:macro>
  759.  
  760. <xf:macro name="crumb" arg-href="!" arg-value="!" arg-position="{{ 0 }}">
  761. <li itemprop="itemListElement" itemscope itemtype="https://schema.org/ListItem">
  762. <a href="{$href}" itemprop="item">
  763. <span itemprop="name">{$value}</span>
  764. </a>
  765. <xf:if is="$position"><meta itemprop="position" content="{$position}" /></xf:if>
  766. </li>
  767. </xf:macro>]]></template>
  768. <template title="account_visitor_menu" type="public" addon_id="XF" version_id="2000770" version_string="2.0.7"><![CDATA[<div class="menu-row menu-row--highlighted">
  769. <xf:macro name="visitor_panel_row" />
  770. </div>
  771.  
  772. <xf:macro name="visitor_panel_row">
  773. <div class="contentRow">
  774. <div class="contentRow-figure">
  775. <xf:avatar user="{$xf.visitor}" size="m" href="" notooltip="true" update="{{ link('account/avatar', $xf.visitor) }}" />
  776. </div>
  777. <div class="contentRow-main">
  778. <h3 class="contentRow-header"><xf:username user="$xf.visitor" rich="true" notooltip="true" /></h3>
  779. <div class="contentRow-lesser">
  780. <xf:usertitle user="$xf.visitor" />
  781. </div>
  782.  
  783. <div class="contentRow-minor">
  784. <!--[XF:stats_pairs:above_messages]-->
  785. <dl class="pairs pairs--justified fauxBlockLink">
  786. <dt>{{ phrase('messages') }}</dt>
  787. <dd>
  788. <a href="{{ link('search/member', null, {'user_id': $xf.visitor.user_id}) }}" class="fauxBlockLink-linkRow u-concealed">
  789. {$xf.visitor.message_count|number}
  790. </a>
  791. </dd>
  792. </dl>
  793. <!--[XF:stats_pairs:above_likes]-->
  794. <dl class="pairs pairs--justified fauxBlockLink">
  795. <dt>{{ phrase('likes') }}</dt>
  796. <dd>
  797. <a href="{{ link('account/likes') }}" class="fauxBlockLink-linkRow u-concealed">
  798. {$xf.visitor.like_count|number}
  799. </a>
  800. </dd>
  801. </dl>
  802. <!--[XF:stats_pairs:above_points]-->
  803. <xf:if is="$xf.options.enableTrophies">
  804. <dl class="pairs pairs--justified fauxBlockLink">
  805. <dt>{{ phrase('trophy_points') }}</dt>
  806. <dd>
  807. <a href="{{ link('members/trophies', $xf.visitor) }}" data-xf-click="overlay" class="fauxBlockLink-linkRow u-concealed">
  808. {$xf.visitor.trophy_points|number}
  809. </a>
  810. </dd>
  811. </dl>
  812. </xf:if>
  813. </div>
  814. </div>
  815. </div>
  816. </xf:macro>
  817.  
  818. <!--[XF:menu_separator:below_visitor_panel]-->
  819. <hr class="menu-separator menu-separator--hard" />
  820.  
  821. <ul class="listPlain listColumns listColumns--narrow listColumns--together">
  822. <!--[XF:content_links:top]-->
  823. <xf:if is="$xf.options.enableNewsFeed">
  824. <li><a href="{{ link('whats-new/news-feed') }}" class="menu-linkRow">{{ phrase('news_feed') }}</a></li>
  825. </xf:if>
  826. <li><a href="{{ link('search/member', null, {'user_id': $xf.visitor.user_id}) }}" class="menu-linkRow">{{ phrase('your_content') }}</a></li>
  827. <li><a href="{{ link('account/likes') }}" class="menu-linkRow">{{ phrase('likes_received') }}</a></li>
  828. <!--[XF:content_links:bottom]-->
  829. </ul>
  830.  
  831. <!--[XF:menu_separator:below_content_links]-->
  832. <hr class="menu-separator" />
  833.  
  834. <ul class="listPlain listColumns listColumns--narrow listColumns--together">
  835. <!--[XF:account_links:top]-->
  836. <li><a href="{{ link('account/account-details') }}" class="menu-linkRow">{{ phrase('account_details') }}</a></li>
  837. <li><a href="{{ link('account/security') }}" class="menu-linkRow">{{ phrase('password_and_security') }}</a></li>
  838. <li><a href="{{ link('account/privacy') }}" class="menu-linkRow">{{ phrase('privacy') }}</a></li>
  839. <li><a href="{{ link('account/preferences') }}" class="menu-linkRow">{{ phrase('preferences') }}</a></li>
  840. <xf:if is="$xf.visitor.canEditSignature()">
  841. <li><a href="{{ link('account/signature') }}" class="menu-linkRow">{{ phrase('signature') }}</a></li>
  842. </xf:if>
  843. <xf:if is="$xf.app.userUpgradeCount">
  844. <li><a href="{{ link('account/upgrades') }}" class="menu-linkRow">{{ phrase('account_upgrades') }}</a></li>
  845. </xf:if>
  846. <xf:if is="$xf.app.connectedAccountCount">
  847. <li><a href="{{ link('account/connected-accounts') }}" class="menu-linkRow">{{ phrase('connected_accounts') }}</a></li>
  848. </xf:if>
  849. <li><a href="{{ link('account/following') }}" class="menu-linkRow">{{ phrase('following') }}</a></li>
  850. <li><a href="{{ link('account/ignored') }}" class="menu-linkRow">{{ phrase('ignoring') }}</a></li>
  851. <!--[XF:account_links:bottom]-->
  852. </ul>
  853.  
  854. <!--[XF:menu_separator:below_account_links]-->
  855. <hr class="menu-separator" />
  856.  
  857. <a href="{{ link('logout', null, {'t': csrf_token()}) }}" class="menu-linkRow">{{ phrase('log_out') }}</a>
  858.  
  859. <hr class="menu-separator" />
  860.  
  861. <xf:if is="$xf.visitor.canPostOnProfile()">
  862. <xf:form action="{{ link('members/post', $xf.visitor) }}" ajax="true"
  863. data-redirect="off"
  864. data-reset-complete="true"
  865. data-no-auto-focus="true"
  866. class="menu-footer">
  867.  
  868. <span class="u-srOnly" id="ctrl_message">{{ phrase('update_your_status:') }}</span>
  869. <xf:textarea name="message" rows="1" autosize="true"
  870. maxlength="{$xf.options.profilePostMaxLength}"
  871. placeholder="{{ phrase('update_your_status...') }}"
  872. data-xf-init="focus-trigger user-mentioner" data-display="< :next" aria-labelledby="ctrl_message" />
  873. <div class="u-hidden u-hidden--transition u-inputSpacer">
  874. <xf:button type="submit" class="button--primary">{{ phrase('post_verb') }}</xf:button>
  875. </div>
  876. </xf:form>
  877. </xf:if>]]></template>
  878. <template title="account_visitor_sidebar" type="public" addon_id="" version_id="0" version_string=""><![CDATA[<div class="menu-row menu-row--highlighted">
  879. <xf:macro name="visitor_panel_row_sidebar" />
  880. </div>
  881.  
  882. <xf:macro name="visitor_panel_row_sidebar">
  883. <div class="content-inner">
  884. <div class="contentRow-figure">
  885. <div class="member-avarta">
  886. <xf:avatar user="{$xf.visitor}" size="m" href="" notooltip="true" update="{{ link('account/avatar', $xf.visitor) }}" />
  887. </div>
  888. </div>
  889. <div class="contentRow-main">
  890. <div class="member-role">
  891. <h3 class="contentRow-header"><xf:username user="$xf.visitor" rich="true" notooltip="true" /></h3>
  892. <div class="contentRow-lesser">
  893. <xf:usertitle user="$xf.visitor" />
  894. </div>
  895. </div>
  896. <div class="contentRow-minor">
  897. <!--[XF:stats_pairs:above_messages]-->
  898. <dl class="pairs pairs--justified fauxBlockLink">
  899. <dt>{{ phrase('messages') }}</dt>
  900. <dd>
  901. <a href="{{ link('search/member', null, {'user_id': $xf.visitor.user_id}) }}" class="fauxBlockLink-linkRow u-concealed">
  902. {$xf.visitor.message_count|number}
  903. </a>
  904. </dd>
  905. </dl>
  906. <!--[XF:stats_pairs:above_likes]-->
  907. <dl class="pairs pairs--justified fauxBlockLink">
  908. <dt>{{ phrase('likes') }}</dt>
  909. <dd>
  910. <a href="{{ link('account/likes') }}" class="fauxBlockLink-linkRow u-concealed">
  911. {$xf.visitor.like_count|number}
  912. </a>
  913. </dd>
  914. </dl>
  915. <!--[XF:stats_pairs:above_points]-->
  916. <xf:if is="$xf.options.enableTrophies">
  917. <dl class="pairs pairs--justified fauxBlockLink">
  918. <dt>{{ phrase('trophy_points') }}</dt>
  919. <dd>
  920. <a href="{{ link('members/trophies', $xf.visitor) }}" data-xf-click="overlay" class="fauxBlockLink-linkRow u-concealed">
  921. {$xf.visitor.trophy_points|number}
  922. </a>
  923. </dd>
  924. </dl>
  925. </xf:if>
  926. </div>
  927. </div>
  928. </div>
  929. </xf:macro>]]></template>
  930. <template title="app_body.less" type="public" addon_id="XF" version_id="2000770" version_string="2.0.7"><![CDATA[// ######################################### MAIN BODY #################################
  931. {{ include('mixins.less') }}
  932.  
  933. .p-body
  934. {
  935. display: flex;
  936. align-items: stretch;
  937. flex-grow: 1;
  938. min-height: 1px; // IE11 workaround - related to #139187
  939. }
  940.  
  941. .p-body-inner
  942. {
  943. display: flex;
  944. flex-direction: column;
  945. width: 100%;
  946.  
  947. .m-pageWidth();
  948. .m-clearFix();
  949.  
  950. padding-top: 15px;
  951. padding-left: 15px;
  952. padding-right: 15px;
  953. padding-bottom: @xf-elementSpacer;
  954. }
  955.  
  956. .p-body-header
  957. {
  958. margin-bottom: ((@xf-elementSpacer) / 2);
  959. }
  960.  
  961. .p-body-main
  962. {
  963. display: table;
  964. table-layout: fixed;
  965. width: 100%;
  966. margin-bottom: auto;
  967. min-height: 1px; // IE11 workaround - related to #139187
  968. }
  969.  
  970. .p-body-content
  971. {
  972. display: table-cell;
  973. vertical-align: top;
  974.  
  975. .p-body-main--withSideNav &
  976. {
  977. padding-left: @xf-sidebarSpacer;
  978. }
  979.  
  980. .p-body-main--withSidebar &
  981. {
  982. padding-right: @xf-sidebarSpacer;
  983. }
  984. }
  985.  
  986. .p-body-pageContent
  987. {
  988. > .tabs--standalone:first-child
  989. {
  990. margin-bottom: (@xf-elementSpacer) / 2;
  991. }
  992. }
  993.  
  994. .p-body-sideNav
  995. {
  996. display: table-cell;
  997. vertical-align: top;
  998. width: @xf-sidebarWidth;
  999. }
  1000.  
  1001. .p-body-sideNavTrigger
  1002. {
  1003. display: none;
  1004. }
  1005.  
  1006. .p-body-sidebar
  1007. {
  1008. display: table-cell;
  1009. vertical-align: top;
  1010. width: @xf-sidebarWidth;
  1011. }
  1012.  
  1013. .p-body-content,
  1014. .p-body-pageContent,
  1015. .p-body-sideNav,
  1016. .p-body-sideNavContent,
  1017. .p-body-sidebar
  1018. {
  1019. > :first-child
  1020. {
  1021. margin-top: 0;
  1022. }
  1023.  
  1024. > :last-child
  1025. {
  1026. margin-bottom: 0;
  1027. }
  1028. }
  1029. {{ include('brv_body.less') }}
  1030. @media (max-width: @xf-responsiveWide)
  1031. {
  1032. .p-body-main,
  1033. .p-body-content
  1034. {
  1035. display: block;
  1036. }
  1037.  
  1038. .p-body-sideNav
  1039. {
  1040. display: block;
  1041. width: auto;
  1042. }
  1043.  
  1044. .p-body-sideNavTrigger
  1045. {
  1046. margin-bottom: ((@xf-elementSpacer) / 2);
  1047. text-align: center;
  1048.  
  1049. .button:before
  1050. {
  1051. .m-faBase();
  1052. font-size: 120%;
  1053. vertical-align: middle;
  1054. display: inline-block;
  1055. margin: -4px 6px -4px 0;
  1056. .m-faContent(@fa-var-bars, .86em);
  1057. }
  1058.  
  1059. .has-js &
  1060. {
  1061. display: block;
  1062. }
  1063. }
  1064.  
  1065. .has-js .p-body-sideNavInner:not(.offCanvasMenu)
  1066. {
  1067. display: none;
  1068.  
  1069. .m-transitionFadeDown();
  1070. }
  1071.  
  1072. .has-no-js .p-body-sideNavInner
  1073. {
  1074. margin-bottom: @xf-elementSpacer;
  1075. }
  1076.  
  1077. .p-body-sidebar
  1078. {
  1079. display: flex;
  1080. flex-wrap: wrap;
  1081. align-items: stretch;
  1082. margin: (@xf-elementSpacer) -((@xf-pageEdgeSpacer) / 2) -(@xf-elementSpacer);
  1083. width: auto;
  1084.  
  1085. > *
  1086. {
  1087. margin: 0 ((@xf-pageEdgeSpacer) / 2) @xf-elementSpacer;
  1088. min-width: @xf-sidebarWidth;
  1089. flex: 1 1 @xf-sidebarWidth;
  1090.  
  1091. &:last-child
  1092. {
  1093. margin-bottom: @xf-elementSpacer;
  1094. }
  1095. }
  1096.  
  1097. // add an invisible block to ensure that the last row has the correct widths
  1098. &:after
  1099. {
  1100. display: block;
  1101. content: '';
  1102. height: 0;
  1103. margin: 0 ((@xf-pageEdgeSpacer) / 2);
  1104. min-width: @xf-sidebarWidth;
  1105. flex: 1 1 @xf-sidebarWidth;
  1106. }
  1107.  
  1108. .block-container
  1109. {
  1110. display: flex;
  1111. flex-direction: column;
  1112. height: 100%;
  1113.  
  1114. .block-footer
  1115. {
  1116. margin-top: auto;
  1117. }
  1118. }
  1119. }
  1120.  
  1121. .p-body-main--withSideNav,
  1122. .p-body-main--withSidebar
  1123. {
  1124. .p-body-content { padding: 0; }
  1125. }
  1126. }
  1127.  
  1128. @media (max-width: @xf-responsiveEdgeSpacerRemoval)
  1129. {
  1130. .p-body-sideNavContent
  1131. {
  1132. // this is likely to contain blocks that overflow the container so account for that
  1133. margin: 0 -@xf-pageEdgeSpacer;
  1134. padding: 0 @xf-pageEdgeSpacer;
  1135.  
  1136. .offCanvasMenu &
  1137. {
  1138. margin: 0;
  1139. padding: 0;
  1140. }
  1141. }
  1142.  
  1143. .p-body-sidebar
  1144. {
  1145. display: block;
  1146. margin-left: 0;
  1147. margin-right: 0;
  1148.  
  1149. > *
  1150. {
  1151. margin-left: 0;
  1152. margin-right: 0;
  1153. min-width: 0;
  1154. }
  1155. }
  1156. }]]></template>
  1157. <template title="app_breadcrumbs.less" type="public" addon_id="XF" version_id="2000770" version_string="2.0.7"><![CDATA[{{ include('mixins.less') }}
  1158.  
  1159. .p-breadcrumbs
  1160. {
  1161. .m-listPlain();
  1162. .m-clearFix();
  1163.  
  1164. line-height: 1.5;
  1165.  
  1166. &.p-breadcrumbs--bottom
  1167. {
  1168. margin-bottom: 0;
  1169. }
  1170.  
  1171. > li
  1172. {
  1173. float: left;
  1174. margin-right: .5em;
  1175. font-size: @xf-fontSizeSmall;
  1176.  
  1177. a
  1178. {
  1179. display: inline-block;
  1180. vertical-align: bottom;
  1181. max-width: 300px;
  1182. .m-overflowEllipsis();
  1183. }
  1184.  
  1185. &:after,
  1186. &:before
  1187. {
  1188. .m-faBase();
  1189. font-size: 90%;
  1190. color: @xf-textColorMuted;
  1191. }
  1192.  
  1193.  
  1194.  
  1195. &:last-child
  1196. {
  1197. margin-right: 0;
  1198.  
  1199. a
  1200. {
  1201. font-weight: @xf-fontWeightHeavy;
  1202. }
  1203. }
  1204. }
  1205. }
  1206. {{ include('brv_breadcrumbs.less') }}
  1207. @media (max-width: @xf-responsiveMedium)
  1208. {
  1209. .p-breadcrumbs > li a
  1210. {
  1211. max-width: 200px;
  1212. }
  1213. }
  1214.  
  1215. @media (max-width: @xf-responsiveNarrow)
  1216. {
  1217. .p-breadcrumbs
  1218. {
  1219. > li
  1220. {
  1221. display: none;
  1222. font-size: @xf-fontSizeSmallest;
  1223.  
  1224. &:last-child
  1225. {
  1226. display: block;
  1227. }
  1228.  
  1229. a
  1230. {
  1231. max-width: 90vw;
  1232. }
  1233.  
  1234. &:after
  1235. {
  1236. display: none;
  1237. }
  1238.  
  1239.  
  1240. }
  1241. }
  1242. }]]></template>
  1243. <template title="app_footer.less" type="public" addon_id="XF" version_id="2000770" version_string="2.0.7"><![CDATA[{{ include('mixins.less') }}
  1244.  
  1245. .p-footer
  1246. {
  1247. .xf-publicFooter();
  1248.  
  1249. a
  1250. {
  1251. .xf-publicFooterLink();
  1252. }
  1253. }
  1254.  
  1255. .p-footer-inner
  1256. {
  1257. .m-pageWidth();
  1258.  
  1259. padding-top: @xf-paddingMedium;
  1260. padding-bottom: @xf-paddingLarge;
  1261. }
  1262.  
  1263. .p-footer-row
  1264. {
  1265. .m-clearFix();
  1266.  
  1267. margin-bottom: -@xf-paddingLarge;
  1268. }
  1269.  
  1270. .p-footer-row-main
  1271. {
  1272. float: left;
  1273. margin-bottom: @xf-paddingLarge;
  1274. }
  1275.  
  1276. .p-footer-row-opposite
  1277. {
  1278. float: right;
  1279. margin-bottom: @xf-paddingLarge;
  1280. }
  1281.  
  1282. .p-footer-linkList
  1283. {
  1284. .m-listPlain();
  1285. .m-clearFix();
  1286.  
  1287. > li
  1288. {
  1289. float: left;
  1290. margin-right: .5em;
  1291.  
  1292. &:last-child
  1293. {
  1294. margin-right: 0;
  1295. }
  1296.  
  1297. a
  1298. {
  1299. padding: 2px 4px;
  1300. border-radius: @xf-borderRadiusSmall;
  1301.  
  1302. &:hover
  1303. {
  1304. text-decoration: none;
  1305. background-color: fade(@xf-publicFooterLink--color, 10%);
  1306. }
  1307. }
  1308. }
  1309. }
  1310.  
  1311. .p-footer-rssLink
  1312. {
  1313. > span
  1314. {
  1315. position: relative;
  1316. top: -1px;
  1317.  
  1318. display: inline-block;
  1319. width: 1.44em;
  1320. height: 1.44em;
  1321. line-height: 1.44em;
  1322. text-align: center;
  1323. font-size: .8em;
  1324. background-color: #FFA500;
  1325. border-radius: 2px;
  1326. }
  1327.  
  1328. .fa-rss
  1329. {
  1330. color: white;
  1331. }
  1332. }
  1333.  
  1334. .p-footer-copyright
  1335. {
  1336. margin-top: @xf-elementSpacer;
  1337. text-align: center;
  1338. font-size: @xf-fontSizeSmallest;
  1339. }
  1340.  
  1341. .p-footer-debug
  1342. {
  1343. margin-top: @xf-paddingLarge;
  1344. text-align: right;
  1345. font-size: @xf-fontSizeSmallest;
  1346.  
  1347. .pairs > dt { color: inherit; }
  1348. }
  1349.  
  1350. {{ include('brv_footer.less') }}
  1351.  
  1352. @media (max-width: @xf-responsiveMedium)
  1353. {
  1354. #footer{
  1355. .footer-custom{
  1356. .footer-column{
  1357. &.footer-column-1{
  1358. width: 100%;
  1359. }
  1360. &.footer-column-2{
  1361. width: 30%;
  1362. }
  1363. &.footer-column-3{
  1364. width: 30%;
  1365. }
  1366. &.footer-column-4{
  1367. width: 40%;
  1368. }
  1369. }
  1370. }
  1371. }
  1372. .p-footer-row-main,
  1373. .p-footer-row-opposite
  1374. {
  1375. float: none;
  1376. }
  1377.  
  1378. .p-footer-copyright
  1379. {
  1380. text-align: left;
  1381. padding: 0 4px; // aligns with other links
  1382. }
  1383. }]]></template>
  1384. <template title="app_header.less" type="public" addon_id="XF" version_id="2000770" version_string="2.0.7"><![CDATA[{{ include('mixins.less') }}
  1385.  
  1386. // MAIN HEADER ROW
  1387.  
  1388. .p-header
  1389. {
  1390. .xf-publicHeader();
  1391.  
  1392. a
  1393. {
  1394. color: inherit;
  1395. }
  1396. }
  1397.  
  1398. .p-header-inner
  1399. {
  1400. .m-pageWidth();
  1401. }
  1402.  
  1403. .p-header-content
  1404. {
  1405. padding: @xf-paddingMedium 0;
  1406.  
  1407. display: flex;
  1408. flex-wrap: wrap;
  1409. justify-content: space-between;
  1410. align-items: center;
  1411. max-width: 100%;
  1412.  
  1413. .has-no-flexbox &
  1414. {
  1415. display: table;
  1416. width: 100%;
  1417. }
  1418. }
  1419.  
  1420. .p-header-logo
  1421. {
  1422. .has-no-flexbox &
  1423. {
  1424. display: table-cell;
  1425. }
  1426.  
  1427. vertical-align: middle;
  1428. margin-right: auto;
  1429.  
  1430. a
  1431. {
  1432. color: inherit;
  1433. text-decoration: none;
  1434. }
  1435.  
  1436. &.p-header-logo--text
  1437. {
  1438. font-size: @xf-fontSizeLargest;
  1439. }
  1440.  
  1441. &.p-header-logo--image
  1442. {
  1443. img
  1444. {
  1445. vertical-align: bottom;
  1446. max-width: 100%;
  1447. max-height: 200px;
  1448. }
  1449. }
  1450. }
  1451.  
  1452. {{ include('brv_header.less') }}
  1453.  
  1454. @media (max-width: @xf-publicNavCollapseWidth)
  1455. {
  1456.  
  1457. }
  1458.  
  1459. @media (max-width: @xf-responsiveNarrow)
  1460. {
  1461. .p-header-logo
  1462. {
  1463. max-width: 100px;
  1464.  
  1465. &.p-header-logo--text
  1466. {
  1467. font-size: @xf-fontSizeLarge;
  1468. font-weight: @xf-fontWeightNormal;
  1469. .m-overflowEllipsis();
  1470. }
  1471. }
  1472. }]]></template>
  1473. <template title="app_nav.less" type="public" addon_id="XF" version_id="2001070" version_string="2.0.10"><![CDATA[{{ include('mixins.less') }}
  1474.  
  1475. // navEl / Navigation Elements for header navigation
  1476.  
  1477. .m-navElHPadding(@padding)
  1478. {
  1479. .p-navEl-link
  1480. {
  1481. padding: 0 @padding;
  1482.  
  1483. &.p-navEl-link--splitMenu
  1484. {
  1485. padding-right: ((@padding) / 4);
  1486. }
  1487.  
  1488. &.p-navEl-link--menuTrigger
  1489. {
  1490. padding-right: ((@padding) / 3); // equal to splitTrigger padding-right
  1491.  
  1492. &:after
  1493. {
  1494. padding-left: ((@padding) / 4 + (@padding) / 3); // equal to splitMenu padding-right + splitTrigger padding-left
  1495. }
  1496. }
  1497. }
  1498.  
  1499. .p-navEl-splitTrigger
  1500. {
  1501. padding: 0 ((@padding) / 3);
  1502. }
  1503. }
  1504.  
  1505. .p-navEl
  1506. {
  1507. .m-clearFix();
  1508. }
  1509.  
  1510. .p-navEl-linkHolder
  1511. {
  1512. float: left;
  1513. }
  1514.  
  1515. .p-navEl-link
  1516. {
  1517. float: left;
  1518. .m-transition(all, @_nav-elTransitionSpeed);
  1519. .m-transitionProperty(opacity, background;);
  1520.  
  1521. &.p-navEl-link--menuTrigger
  1522. {
  1523. cursor: pointer;
  1524.  
  1525. &:after
  1526. {
  1527. .m-faBase();
  1528. .m-faContent(@fa-var-caret-down, .58em);
  1529. opacity: .5;
  1530. .m-transition(opacity, @_nav-elTransitionSpeed);
  1531. unicode-bidi: isolate; // try to keep this in the right position in RTL with LTR text
  1532. }
  1533.  
  1534. &:hover:after
  1535. {
  1536. opacity: 1;
  1537. }
  1538. }
  1539. }
  1540.  
  1541. .p-navEl-splitTrigger
  1542. {
  1543. float: left;
  1544. opacity: .5;
  1545. cursor: pointer;
  1546. text-decoration: none;
  1547. .m-transition(all, @_nav-elTransitionSpeed);
  1548.  
  1549. &:after
  1550. {
  1551. .m-faBase();
  1552. .m-faContent(@fa-var-caret-down, .58em);
  1553. }
  1554.  
  1555. &:hover
  1556. {
  1557. opacity: 1;
  1558. text-decoration: none;
  1559. }
  1560. }
  1561.  
  1562. // HEADER NAV ROW
  1563.  
  1564. .p-nav
  1565. {
  1566. .xf-publicNav();
  1567.  
  1568. a
  1569. {
  1570. color: inherit;
  1571. }
  1572.  
  1573. .p-navSticky.is-sticky &
  1574. {
  1575. .p-nav-list .p-navEl.is-selected,
  1576. .p-account
  1577. {
  1578. border-radius: 0;
  1579. }
  1580. }
  1581. }
  1582.  
  1583. .p-nav-inner
  1584. {
  1585. .m-pageWidth();
  1586.  
  1587. .m-clearFix();
  1588. display: flex;
  1589. align-items: flex-end;
  1590. padding-left: 15px;
  1591. padding-right: 15px;
  1592. }
  1593.  
  1594.  
  1595.  
  1596. .p-nav .p-nav-menuTrigger
  1597. {
  1598. display: none;
  1599. vertical-align: middle;
  1600. align-self: center;
  1601. margin-left: max(0px, @xf-pageEdgeSpacer - 6px);
  1602. margin-right: 5px;
  1603. padding: @xf-publicNavPaddingV 8px;
  1604.  
  1605. &:hover
  1606. {
  1607. text-decoration: none;
  1608. }
  1609.  
  1610. i:after
  1611. {
  1612. .m-faBase();
  1613. font-size: @xf-fontSizeLargest;
  1614. .m-faContent(@fa-var-navicon, .86em);
  1615. vertical-align: bottom;
  1616. }
  1617.  
  1618. .p-nav-menuText
  1619. {
  1620. display: none;
  1621. }
  1622. }
  1623.  
  1624. .p-nav-smallLogo
  1625. {
  1626. display: none;
  1627. max-width: 100px;
  1628. align-self: center;
  1629.  
  1630. img
  1631. {
  1632. display: block;
  1633. max-height: @header-navHeight;
  1634. }
  1635. }
  1636.  
  1637. .p-nav-scroller
  1638. {
  1639. margin-right: auto;
  1640. max-width: 100%;
  1641.  
  1642. .has-no-flexbox &
  1643. {
  1644. float: left;
  1645. }
  1646.  
  1647. .hScroller-scroll:not(.is-calculated)
  1648. {
  1649. // IE11 seems to want to flash a vertical scrollbar without this here
  1650.  
  1651. }
  1652.  
  1653. .hScroller-action
  1654. {
  1655. .m-hScrollerActionColorVariation(
  1656. xf-default(@xf-publicNav--background-color, transparent),
  1657. @xf-publicNav--color,
  1658. xf-intensify(@xf-publicNav--color, 10%)
  1659. );
  1660. }
  1661. }
  1662.  
  1663. .p-nav-list
  1664. {
  1665. .m-listPlain();
  1666. .m-clearFix();
  1667.  
  1668. font-size: 0;
  1669.  
  1670. // this applies padding that will be contained within the scroller.
  1671. // it needs font-size 0 to not create extra space though
  1672. &:before,
  1673. &:after
  1674. {
  1675. display: inline-block;
  1676. width: @xf-pageEdgeSpacer;
  1677. content: '';
  1678. }
  1679.  
  1680. > li
  1681. {
  1682. display: inline-block;
  1683. vertical-align: bottom;
  1684. font-size: @xf-fontSizeNormal;
  1685.  
  1686. &:first-child
  1687. {
  1688. margin-left: 0;
  1689. }
  1690. }
  1691.  
  1692. .m-navElHPadding(@xf-publicNavPaddingH);
  1693.  
  1694. .p-navEl
  1695. {
  1696. .xf-publicNavTab();
  1697. .m-transition(all, @_nav-elTransitionSpeed);
  1698.  
  1699. &.is-selected
  1700. {
  1701. .xf-publicNavSelected();
  1702.  
  1703. .p-navEl-link
  1704. {
  1705. padding-right: @xf-publicNavPaddingH; // since the split trigger is hidden
  1706.  
  1707. &:hover
  1708. {
  1709. background: none;
  1710. text-decoration: none;
  1711. }
  1712. }
  1713.  
  1714. .p-navEl-splitTrigger
  1715. {
  1716. display: none;
  1717. }
  1718. }
  1719.  
  1720. &:not(.is-selected):not(.is-menuOpen)
  1721. {
  1722. &:hover,
  1723. .p-navEl-link:hover,
  1724. .p-navEl-splitTrigger:hover
  1725. {
  1726. .xf-publicNavTabHover();
  1727. }
  1728. }
  1729.  
  1730. &.is-menuOpen
  1731. {
  1732. .xf-publicNavTabMenuOpen();
  1733.  
  1734. border-top-left-radius: xf-default(@xf-publicNavSelected--border-top-left-radius, 0);
  1735. border-top-right-radius: xf-default(@xf-publicNavSelected--border-top-right-radius, 0);
  1736.  
  1737. .m-dropShadow(0, 5px, 10px, 0, .35);
  1738.  
  1739. a
  1740. {
  1741. text-decoration: none;
  1742. opacity: 1;
  1743. }
  1744. }
  1745. }
  1746.  
  1747. .p-navEl-link,
  1748. .p-navEl-splitTrigger
  1749. {
  1750. padding-top: @xf-publicNavPaddingV;
  1751. padding-bottom: @xf-publicNavPaddingV;
  1752. }
  1753. }
  1754.  
  1755. .p-navSticky--primary.is-sticky
  1756. {
  1757. .p-nav-list
  1758. {
  1759. .p-navEl-link.p-navEl-link--splitMenu
  1760. {
  1761. padding-right: ((@xf-publicNavPaddingH) / 4);
  1762. }
  1763.  
  1764. .p-navEl.is-selected .p-navEl-splitTrigger
  1765. {
  1766. display: inline;
  1767. position: relative;
  1768.  
  1769. &:before
  1770. {
  1771. content: '';
  1772. position: absolute;
  1773. left: 0;
  1774. top: 5px;
  1775. bottom: 5px;
  1776. width: 0;
  1777. border-left: @xf-borderSize solid fade(xf-default(@xf-publicNavSelected--color, transparent), 35%);
  1778. }
  1779. }
  1780. }
  1781. }
  1782.  
  1783.  
  1784.  
  1785. @media (max-width: @xf-publicNavCollapseWidth)
  1786. {
  1787. .has-js
  1788. {
  1789. .p-nav-inner
  1790. {
  1791. min-height: 45px;
  1792. }
  1793.  
  1794. .p-nav .p-nav-menuTrigger
  1795. {
  1796. display: inline-block;
  1797. }
  1798.  
  1799.  
  1800. .p-nav-scroller
  1801. {
  1802. display: none;
  1803. }
  1804. }
  1805. }
  1806.  
  1807. // ACCOUNT/VISITOR/SEARCH SECTION
  1808.  
  1809. .p-nav-opposite
  1810. {
  1811. margin-left: auto;
  1812. margin-right: @xf-pageEdgeSpacer;
  1813. text-align: right;
  1814. flex-shrink: 0;
  1815.  
  1816. .has-no-flexbox &
  1817. {
  1818. float: right;
  1819. }
  1820. }
  1821.  
  1822. .p-navgroup
  1823. {
  1824. float: left;
  1825. .m-clearFix();
  1826. background: @xf-publicHeaderAdjustColor;
  1827. border-top-left-radius: @xf-borderRadiusMedium;
  1828. border-top-right-radius: @xf-borderRadiusMedium;
  1829.  
  1830. &.p-discovery
  1831. {
  1832. margin-left: .5em;
  1833.  
  1834. &.p-discovery--noSearch
  1835. {
  1836. margin-left: 0;
  1837. }
  1838. }
  1839. }
  1840.  
  1841. .p-navgroup-link
  1842. {
  1843. float: left;
  1844. padding: @xf-publicNavPaddingV @_navAccount-hPadding;
  1845. border-left: 1px solid @xf-publicHeaderAdjustColor;
  1846.  
  1847. &:first-of-type
  1848. {
  1849. border-top-left-radius: @xf-borderRadiusMedium;
  1850. border-left: none;
  1851. }
  1852.  
  1853. &:last-of-type
  1854. {
  1855. border-top-right-radius: @xf-borderRadiusMedium;
  1856. }
  1857.  
  1858. &:hover
  1859. {
  1860. text-decoration: none;
  1861. background: xf-intensify(@xf-publicHeaderAdjustColor, 5%);
  1862. }
  1863.  
  1864. &.p-navgroup-link--user
  1865. {
  1866. .m-overflowEllipsis();
  1867. max-width: 150px;
  1868.  
  1869. .avatar
  1870. {
  1871. .m-avatarSize((@xf-fontSizeNormal) * (@xf-lineHeightDefault));
  1872. }
  1873. }
  1874.  
  1875. &.badgeContainer
  1876. {
  1877. opacity: .6;
  1878. position: relative;
  1879.  
  1880. &:after
  1881. {
  1882. position: absolute;
  1883. right: (@_navAccount-hPadding - 6px);
  1884. top: (@xf-publicNavPaddingV );
  1885. padding: 1px 3px;
  1886. margin: 0;
  1887. font-size: 10px;
  1888. line-height: 10px;
  1889. border-radius: 100%;
  1890. }
  1891.  
  1892. &:hover,
  1893. &.badgeContainer--highlighted
  1894. {
  1895. opacity: 1;
  1896. }
  1897. }
  1898.  
  1899. &.is-menuOpen
  1900. {
  1901. .xf-publicNavTabMenuOpen();
  1902. .m-dropShadow(0, 5px, 10px, 0, .35);
  1903. opacity: 1;
  1904. }
  1905.  
  1906. &.p-navgroup-link--iconic
  1907. {
  1908. i:after
  1909. {
  1910. .m-faBase();
  1911. display: inline-block;
  1912. min-width: 1em;
  1913. }
  1914. }
  1915.  
  1916. &.p-navgroup-link--conversations i:after
  1917. {
  1918. .m-faContent(@fa-var-envelope, 1em);
  1919. }
  1920.  
  1921. &.p-navgroup-link--alerts i:after
  1922. {
  1923. .m-faContent(@fa-var-bell, 1em);
  1924. }
  1925.  
  1926. &.p-navgroup-link--whatsnew i:after
  1927. {
  1928. .m-faContent(@fa-var-bolt, .5em);
  1929. }
  1930.  
  1931. &.p-navgroup-link--search i:after
  1932. {
  1933. .m-faContent(@fa-var-search, .93em);
  1934. }
  1935. }
  1936.  
  1937. .p-navgroup-link--whatsnew
  1938. {
  1939. display: none;
  1940.  
  1941. .p-navgroup-link:first-of-type& + .p-navgroup-link
  1942. {
  1943. border-top-left-radius: @xf-borderRadiusMedium;
  1944. border-left: none;
  1945. }
  1946. }
  1947. {{ include('brv_nav.less') }}
  1948. @media (max-width: @xf-responsiveWide)
  1949. {
  1950. .p-navgroup-link
  1951. {
  1952. &.p-navgroup-link--iconic .p-navgroup-linkText,
  1953. &.p-navgroup-link--textual i
  1954. {
  1955. display: none;
  1956. }
  1957.  
  1958. &.p-navgroup-link--textual
  1959. {
  1960. .m-overflowEllipsis();
  1961. max-width: 110px;
  1962. }
  1963.  
  1964. &.p-navgroup-link--iconic i:after
  1965. {
  1966. text-align: center;
  1967. }
  1968. }
  1969. }
  1970.  
  1971. @media (max-width: @xf-publicNavCollapseWidth)
  1972. {
  1973. .p-navgroup-link--whatsnew
  1974. {
  1975. display: block;
  1976. }
  1977.  
  1978. .has-js
  1979. {
  1980. .p-nav-opposite
  1981. {
  1982. align-self: center;
  1983. //margin-right: max(0px, @xf-pageEdgeSpacer - @_navAccount-hPadding);
  1984.  
  1985. .p-navgroup
  1986. {
  1987. background: none;
  1988. margin-left: 0;
  1989. }
  1990.  
  1991. .p-navgroup-link
  1992. {
  1993. border: none;
  1994. border-radius: @xf-borderRadiusMedium;
  1995.  
  1996. &.is-menuOpen
  1997. {
  1998. .m-borderBottomRadius(0);
  1999. }
  2000. }
  2001. }
  2002. }
  2003. }
  2004.  
  2005. @media (max-width: @xf-responsiveNarrow)
  2006. {
  2007. .p-navgroup-link
  2008. {
  2009. .p-navgroup--member &
  2010. {
  2011. margin-left: 5px;
  2012.  
  2013. &:first-of-type
  2014. {
  2015. margin-left: 0;
  2016. }
  2017. }
  2018. }
  2019. }
  2020.  
  2021. @media (max-width: 374px)
  2022. {
  2023. .p-navgroup-link.p-navgroup-link--register
  2024. {
  2025. display: none;
  2026. }
  2027. }]]></template>
  2028. <template title="app_sectionlinks.less" type="public" addon_id="XF" version_id="2000270" version_string="2.0.2"><![CDATA[// SUB SECTION LINKS
  2029.  
  2030. .p-sectionLinks
  2031. {
  2032. .xf-publicSubNav();
  2033.  
  2034. .hScroller-action
  2035. {
  2036. .m-hScrollerActionColorVariation(
  2037. xf-default(@xf-publicSubNav--background-color, transparent),
  2038. @xf-publicSubNav--color,
  2039. @xf-publicSubNavElHover--color
  2040. );
  2041. }
  2042.  
  2043. &.p-sectionLinks--empty
  2044. {
  2045. height: 10px;
  2046. }
  2047. }
  2048.  
  2049. .p-sectionLinks-inner
  2050. {
  2051. .m-clearFix();
  2052. .m-pageWidth();
  2053.  
  2054. padding-left: max(0px, @xf-pageEdgeSpacer - @xf-publicSubNavPaddingH);
  2055. padding-right: max(0px, @xf-pageEdgeSpacer - @xf-publicSubNavPaddingH);
  2056. }
  2057.  
  2058. .p-sectionLinks-list
  2059. {
  2060. .m-listPlain();
  2061.  
  2062. font-size: 0;
  2063.  
  2064. a
  2065. {
  2066. color: inherit;
  2067. }
  2068.  
  2069. > li
  2070. {
  2071. display: inline-block;
  2072. }
  2073.  
  2074. .m-navElHPadding(@xf-publicSubNavPaddingH);
  2075.  
  2076. .p-navEl
  2077. {
  2078. font-size: @xf-publicSubNav--font-size;
  2079.  
  2080. &:hover
  2081. {
  2082. .xf-publicSubNavElHover();
  2083.  
  2084. a
  2085. {
  2086. text-decoration: @xf-publicSubNavElHover--text-decoration;
  2087. }
  2088. }
  2089.  
  2090. &.is-menuOpen
  2091. {
  2092. .xf-publicSubNavElMenuOpen();
  2093. .m-borderBottomRadius(0);
  2094. .m-dropShadow(0, 5px, 10px, 0, .35);
  2095. }
  2096. }
  2097.  
  2098. .p-navEl-link,
  2099. .p-navEl-splitTrigger
  2100. {
  2101. padding-top: 11px;
  2102. padding-bottom: 11px;
  2103. }
  2104. }
  2105.  
  2106. @media (max-width: @xf-publicNavCollapseWidth)
  2107. {
  2108. .has-js .p-sectionLinks
  2109. {
  2110. display: none;
  2111. }
  2112. }]]></template>
  2113. <template title="app_stickynav.less" type="public" addon_id="XF" version_id="2000770" version_string="2.0.7"><![CDATA[{{ include('mixins.less') }}
  2114.  
  2115. .p-navSticky
  2116. {
  2117. z-index: @zIndex-1;
  2118.  
  2119. &.is-sticky
  2120. {
  2121. z-index: @zIndex-4;
  2122. .m-dropShadow(0, 0, 8px, 3px, 0.3);
  2123. }
  2124. }
  2125.  
  2126. @supports (position: sticky) or (position: -webkit-sticky)
  2127. {
  2128. .p-navSticky
  2129. {
  2130.  
  2131. top: 0;
  2132.  
  2133. &.is-sticky-broken,
  2134. &.is-sticky-disabled
  2135. {
  2136. position: static;
  2137. top: auto;
  2138. }
  2139. }
  2140. }
  2141.  
  2142. {{ include('brv_stickynav.less') }}]]></template>
  2143. <template title="attachment_macros" type="public" addon_id="XF" version_id="2000038" version_string="2.0.0 Beta 8"><![CDATA[<xf:macro name="attachment_list_item" arg-attachment="!" arg-canView="!">
  2144. <li class="attachment">
  2145. <xf:if is="$attachment.has_thumbnail">
  2146. <xf:macro template="lightbox_macros" name="setup" arg-canViewAttachments="{$canView}" />
  2147.  
  2148. <div class="attachment-icon attachment-icon--img">
  2149. <a href="{{ link('attachments', $attachment) }}" target="_blank" class="{{ $canView ? 'js-lbImage' : '' }}">
  2150. <img src="{$attachment.thumbnail_url}" alt="{$attachment.filename}" />
  2151. </a>
  2152. </div>
  2153. <xf:else />
  2154. <div class="attachment-icon" data-extension="{$attachment.extension}">
  2155. <a href="{{ link('attachments', $attachment) }}" target="_blank"><i aria-hidden="true"></i></a>
  2156. </div>
  2157. </xf:if>
  2158. <div class="attachment-name">
  2159. <a href="{{ link('attachments', $attachment) }}" target="_blank" title="{$attachment.filename}">{$attachment.filename}</a>
  2160. </div>
  2161. <div class="attachment-details">
  2162. <dl class="pairs pairs--justified attachment-details-size">
  2163. <dt>{{ phrase('File size') }}</dt>
  2164. <dd>{$attachment.file_size|file_size}</dd>
  2165. </dl>
  2166. <dl class="pairs pairs--justified attachment-details-views">
  2167. <dt>{{ phrase('views') }}</dt>
  2168. <dd>{$attachment.view_count|number}</dd>
  2169. </dl>
  2170.  
  2171. </div>
  2172. </li>
  2173. </xf:macro>]]></template>
  2174. <template title="bb_code.less" type="public" addon_id="XF" version_id="2000670" version_string="2.0.6"><![CDATA[@_bbCodeBlock-spacing: .75em;
  2175. @_bbCodeBlock-paddingV: @xf-paddingMedium;
  2176. @_bbCodeBlock-paddingH: @xf-paddingLarge;
  2177. @_bbCodeBlock-expandTriggerHeight: (@xf-bbCodeBlockExpandHeight) / 2;
  2178.  
  2179. .bbCodeBlock
  2180. {
  2181. margin: @_bbCodeBlock-spacing 0;
  2182. .xf-bbCodeBlock();
  2183.  
  2184. &.bbCodeBlock--quote
  2185. {
  2186. .bbCodeBlock-content
  2187. {
  2188. font-size: @xf-fontSizeSmall;
  2189. }
  2190. }
  2191. }
  2192.  
  2193. .bbCodeBlock-title
  2194. {
  2195. padding: @_bbCodeBlock-paddingV @_bbCodeBlock-paddingH;
  2196. .xf-bbCodeBlockTitle();
  2197. .m-clearFix();
  2198. }
  2199.  
  2200. a.bbCodeBlock-sourceJump
  2201. {
  2202. color: inherit;
  2203. text-decoration: none;
  2204.  
  2205. &:hover
  2206. {
  2207. text-decoration: underline;
  2208. }
  2209.  
  2210. &:after
  2211. {
  2212. .m-faBase();
  2213. .m-faContent(@fa-var-arrow-circle-up, .86em);
  2214. display: inline-block;
  2215. margin-left: 5px;
  2216. }
  2217. }
  2218.  
  2219. .bbCodeBlock-content
  2220. {
  2221. position: relative;
  2222. padding: @_bbCodeBlock-paddingV @_bbCodeBlock-paddingH;
  2223. }
  2224.  
  2225. .bbCodeBlock-expandLink
  2226. {
  2227. display: none;
  2228. position: absolute;
  2229. top: (@xf-bbCodeBlockExpandHeight) + (@_bbCodeBlock-paddingV * 2) - (@_bbCodeBlock-expandTriggerHeight);
  2230. left: 0;
  2231. right: 0;
  2232. height: @_bbCodeBlock-expandTriggerHeight;
  2233. cursor: pointer;
  2234. .m-gradient(
  2235. fade(@xf-bbCodeBlock--background-color, 0%),
  2236. xf-default(@xf-bbCodeBlock--background-color, transparent),
  2237. transparent,
  2238. 0%,
  2239. 80%
  2240. );
  2241.  
  2242. a
  2243. {
  2244. position: absolute;
  2245. bottom: @_bbCodeBlock-paddingV;
  2246. left: 0;
  2247. right: 0;
  2248. text-align: center;
  2249. font-size: @xf-fontSizeSmall;
  2250. color: @xf-textColorAttention;
  2251. text-decoration: none;
  2252. }
  2253. }
  2254.  
  2255. .bbCodeBlock--screenLimited
  2256. {
  2257. .bbCodeBlock-content
  2258. {
  2259. max-height: 300px;
  2260. max-height: 70vh;
  2261. overflow: auto;
  2262. -webkit-overflow-scrolling: touch;
  2263. }
  2264. }
  2265.  
  2266. .bbCodeBlock--expandable
  2267. {
  2268. overflow: hidden;
  2269. .m-transition();
  2270. .m-transitionProperty(-xf-height, height, padding, margin, border;);
  2271.  
  2272. .bbCodeBlock-content
  2273. {
  2274. overflow: hidden;
  2275.  
  2276. .bbCodeBlock:not(.bbCodeBlock--expandable) .bbCodeBlock-content
  2277. {
  2278. overflow: visible;
  2279. }
  2280. .bbCodeBlock.bbCodeBlock--screenLimited .bbCodeBlock-content
  2281. {
  2282. overflow: auto;
  2283. }
  2284. }
  2285.  
  2286. .bbCodeBlock-expandContent
  2287. {
  2288. max-height: @xf-bbCodeBlockExpandHeight;
  2289. overflow: hidden;
  2290. }
  2291.  
  2292. &.is-expandable
  2293. {
  2294. .bbCodeBlock-expandLink
  2295. {
  2296. display: block;
  2297. }
  2298. }
  2299.  
  2300. &.is-expanded
  2301. {
  2302. .bbCodeBlock-expandContent
  2303. {
  2304. max-height: none;
  2305. }
  2306.  
  2307. .bbCodeBlock-expandLink
  2308. {
  2309. display: none;
  2310. }
  2311. }
  2312. }
  2313.  
  2314. .bbCodeCode
  2315. {
  2316. margin: 0;
  2317. padding: 0;
  2318.  
  2319. font-family: @xf-fontFamilyCode;
  2320. font-size: @xf-fontSizeSmall;
  2321. line-height: @xf-lineHeightDefault;
  2322. -ltr-rtl-text-align: left;
  2323.  
  2324. direction: ltr;
  2325. white-space: pre;
  2326. position: relative;
  2327.  
  2328. .m-tabSize();
  2329.  
  2330. code
  2331. {
  2332. font-family: inherit;
  2333. }
  2334.  
  2335. .prism-token
  2336. {
  2337. &.prism-comment,
  2338. &.prism-prolog,
  2339. &.prism-doctype,
  2340. &.prism-cdata
  2341. {
  2342. color: #a50;
  2343. }
  2344.  
  2345. &.prism-constant
  2346. {
  2347. color: #05a;
  2348. }
  2349.  
  2350. &.prism-tag
  2351. {
  2352. color: #170;
  2353. }
  2354.  
  2355. &.prism-boolean
  2356. {
  2357. color: #219;
  2358. }
  2359.  
  2360. &.prism-symbol,
  2361. &.prism-atrule,
  2362. &.prism-keyword
  2363. {
  2364. color: #708;
  2365. }
  2366.  
  2367. &.prism-selector,
  2368. &.prism-function
  2369. {
  2370. color: #05a;
  2371. }
  2372.  
  2373. &.prism-deleted
  2374. {
  2375. color: #d44;
  2376. }
  2377.  
  2378. &.prism-inserted
  2379. {
  2380. color: #292;
  2381. }
  2382.  
  2383. &.prism-string,
  2384. &.prism-attr-value
  2385. {
  2386. color: #a11;
  2387. }
  2388.  
  2389. &.prism-number
  2390. {
  2391. color: #164;
  2392. }
  2393.  
  2394. &.prism-attr-name,
  2395. &.prism-char,
  2396. &.prism-builtin
  2397. {
  2398. color: #00c;
  2399. }
  2400.  
  2401. &.prism-regex,
  2402. &.prism-important,
  2403. &.prism-variable,
  2404. &.prism-package
  2405. {
  2406. color: #05a;
  2407. }
  2408.  
  2409. &.prism-class-name,
  2410. &.prism-important,
  2411. &.prism-bold
  2412. {
  2413. color: #00f;
  2414. }
  2415.  
  2416. &.prism-bold
  2417. {
  2418. font-weight: bold;
  2419. }
  2420.  
  2421. &.prism-italic,
  2422. &.prism-constant
  2423. {
  2424. color: #05a;
  2425. font-style: italic;
  2426. }
  2427.  
  2428. &.prism-entity
  2429. {
  2430. cursor: help;
  2431. }
  2432. }
  2433. }
  2434.  
  2435. .bbCodeInline
  2436. {
  2437. margin: 0;
  2438. .xf-bbCodeInlineCode();
  2439. font-family: @xf-fontFamilyCode;
  2440. line-height: @xf-lineHeightDefault;
  2441. box-decoration-break: clone;
  2442. -webkit-box-decoration-break: clone;
  2443. }
  2444.  
  2445. .bbCodeSpoiler
  2446. {
  2447. margin: @_bbCodeBlock-spacing 0;
  2448. }
  2449.  
  2450. .bbCodeSpoiler-button
  2451. {
  2452. .has-no-js & { display: none; }
  2453. }
  2454.  
  2455. .bbCodeSpoiler-content
  2456. {
  2457. .m-hiddenEl(true);
  2458. .has-no-js & { display: block !important; }
  2459.  
  2460. > .bbCodeBlock--spoiler
  2461. {
  2462. margin: .2em 0 0;
  2463. }
  2464. }]]></template>
  2465. <template title="brv_body.less" type="public" addon_id="" version_id="0" version_string=""><![CDATA[.p-body{
  2466. position: relative;
  2467. &:before{
  2468. content: '';
  2469. position: absolute;
  2470. left: 0;
  2471. top: 0;
  2472. width: 100%;
  2473. height: 50px;
  2474. background-color: @xf-paletteColor3;
  2475. z-index: -1;
  2476. }
  2477. .p-body-inner{
  2478. border-radius: 5px;
  2479. overflow: hidden;
  2480. .p-body-header{
  2481. margin: 0 0 20px;
  2482. .p-title{
  2483. h1{
  2484. font-size: 20px;
  2485. color: @xf-linkColor;
  2486. .label{
  2487. border: none;
  2488. }
  2489. }
  2490. }
  2491. .p-description{
  2492. ul{
  2493. li+li+li{
  2494. display: none;
  2495. }
  2496. }
  2497. }
  2498. }
  2499. .p-body-main{
  2500. .p-body-content{
  2501. transition: all 600ms;
  2502. &.edit-padd{
  2503. transition: all 600ms;
  2504. padding-right: 0;
  2505. display: inline-block;
  2506. }
  2507. .p-body-pageContent{
  2508. .block{
  2509. &.block--category{
  2510. .block-container{
  2511. border-radius: 15px 15px 0 0;
  2512. }
  2513. }
  2514. .block-container{
  2515. .block-body{
  2516. box-shadow: 0px 1px 3px rgba(0,0,0,0.07);
  2517. background: @xf-BrvColor1;
  2518. .node{
  2519. background: @xf-BrvColor1;
  2520. .node-body{
  2521. .node-icon{
  2522. padding: 9px 0 9px 10px;
  2523. i{
  2524. &:before{
  2525. text-shadow: none;
  2526. }
  2527. }
  2528. }
  2529. .node-main{
  2530. padding: 8px 10px;
  2531. .node-title{
  2532. font-size: 13px;
  2533. line-height: 13px;
  2534. a{
  2535. font-weight: 600;
  2536. line-height: 13px;
  2537. }
  2538. }
  2539. .node-meta{
  2540. font-size: 11px;
  2541. margin-top: 4px;
  2542. display: flex;
  2543. .node-statsMeta{
  2544. display: inline-block;
  2545. dl{
  2546. display: inline-block;
  2547. width: auto;
  2548. &+dl{
  2549. margin-left: 40px;
  2550. }
  2551. dt{
  2552. display: inline-block;
  2553. color: @xf-textColor;
  2554. font-size: 11px;
  2555. }
  2556. dd{
  2557. display: inline-block;
  2558. font-size: 11px;
  2559. color: @xf-linkColor;
  2560. }
  2561. }
  2562. }
  2563. }
  2564. }
  2565.  
  2566. .node-stats{
  2567. display: none;
  2568. }
  2569. .node-subNodesFlat{
  2570. .node-subNodeFlatList{
  2571. li{
  2572. margin: 0;
  2573. a{
  2574. font-size: 11px;
  2575. color: @xf-paletteColor3;
  2576. padding: 7px 15px;
  2577. display: inline-block;
  2578. border-radius: 15px;
  2579. position: relative;
  2580. font-weight: 600;
  2581. &:hover{
  2582. text-decoration: none;
  2583. color: @xf-BrvColor1;
  2584. background: @xf-paletteColor3;
  2585. &:before{
  2586. color: @xf-BrvColor1 !important;
  2587. }
  2588. }
  2589. &.subNodeLink{
  2590. &:before{
  2591. content: '\f111';
  2592. font-family: "FontAwesome";
  2593. text-shadow: none;
  2594. font-size: 5px;
  2595. position: absolute;
  2596. left: 6px;
  2597. top: 52%;
  2598. transform: translateY(-50%);
  2599. color: @xf-paletteColor3;
  2600. }
  2601. &.subNodeLink--unread{
  2602. &:before{
  2603. color: @xf-paletteColor3 !important;
  2604. }
  2605. }
  2606. }
  2607. }
  2608. }
  2609. }
  2610. }
  2611. .node-extra{
  2612. .node-extra-row{
  2613. .node-extra-title{
  2614. font-weight: 600;
  2615. position: relative;
  2616. }
  2617. li{
  2618. font-size: 12px;
  2619. &:before{
  2620. display: none;
  2621. }
  2622. time{
  2623. color: @xf-textColor;
  2624. }
  2625. }
  2626. .node-extra-user{
  2627. margin-right: 15px;
  2628. a{
  2629. color: @xf-textColor;
  2630. font-size: 12px;
  2631. }
  2632. }
  2633. }
  2634. }
  2635. }
  2636. .node-icon{
  2637. i{
  2638. &:before{
  2639. content: '';
  2640. width: 28px;
  2641. height: 27px;
  2642. background-repeat: no-repeat;
  2643. }
  2644. }
  2645. }
  2646. &.node--category,
  2647. &.node--forum{
  2648. &.node--read{
  2649. .node-icon{
  2650. i{
  2651. &:before{
  2652. .node--read;
  2653. }
  2654. }
  2655. }
  2656. }
  2657. &.node--unread{
  2658. .node-icon{
  2659. i{
  2660. &:before{
  2661. .node--sprite;
  2662. }
  2663. }
  2664. }
  2665. }
  2666. }
  2667. &.node--page{
  2668. .node-icon{
  2669. i{
  2670. &:before{
  2671. .node--page;
  2672. }
  2673. }
  2674. }
  2675. }
  2676. &.node--link{
  2677. .node-icon{
  2678. i{
  2679. &:before{
  2680. .node--link;
  2681. }
  2682. }
  2683. }
  2684. }
  2685. }
  2686. }
  2687. .block-filterBar{
  2688. .filterBar{
  2689. .filterBar-menuTrigger{
  2690. font-size: 14px;
  2691. color: #fff;
  2692. &:hover{
  2693. background-color: transparent;
  2694. text-decoration: underline;
  2695. }
  2696. }
  2697. }
  2698. }
  2699. }
  2700. }
  2701. }
  2702. }
  2703. }
  2704. .p-have--sidebar{
  2705. transition: all 1500ms;
  2706. &.hide{
  2707. transition: all 500ms;
  2708. visibility: hidden;
  2709. transform: translateX(265px);
  2710. display: none;
  2711. }
  2712. .contentRow-faderContent{
  2713. white-space: nowrap;
  2714. word-wrap: normal;
  2715. text-overflow: ellipsis;
  2716. }
  2717. .avatar:not(.structItem-secondaryIcon){
  2718. width: 45px;
  2719. height: 45px;
  2720. line-height: 43px;
  2721. span{
  2722. font-size: 20px;
  2723. line-height: 43px;
  2724. }
  2725. }
  2726. .block{
  2727. &.member-visitor{
  2728. display: inline-block;
  2729. width: 100%;
  2730. .content-inner{
  2731. display: flex;
  2732. align-items: center;
  2733. padding: 13px;
  2734. border-radius: 15px;
  2735. background-color: @xf-BrvColor1;
  2736. .contentRow-figure{
  2737. position: relative;
  2738. .member-avarta{
  2739. .avatar{
  2740. width: 72px;
  2741. height: 72px;
  2742. position: relative;
  2743. span{
  2744. position: absolute;
  2745. top: 50%;
  2746. left: 50%;
  2747. transform: translate(-50%, -50%);
  2748. }
  2749. }
  2750. }
  2751. }
  2752. .contentRow-main{
  2753. padding-left: 13px;
  2754. .member-role{
  2755. color: @xf-textColor;
  2756. .contentRow-header{
  2757. font-weight: 600;
  2758. font-size: 14px;
  2759. margin-bottom: 5px;
  2760. }
  2761. .contentRow-lesser{
  2762. font-size: 12px;
  2763. }
  2764. a{
  2765. color: @xf-linkColor;
  2766. &:hover{
  2767. color: @xf-paletteColor3;
  2768. }
  2769. }
  2770. }
  2771. .contentRow-minor{
  2772. font-size: 12px;
  2773. color: @xf-textColor;
  2774. dl{
  2775. margin: 3px 0;
  2776. dt{
  2777. color: @xf-textColor;
  2778. }
  2779. }
  2780. }
  2781. }
  2782. }
  2783. }
  2784. &[data-widget-definition="new_profile_posts"]{
  2785. .block-body{
  2786. padding: 10px 0;
  2787. .block-row{
  2788. .contentRow{
  2789.  
  2790. .contentRow-main{
  2791. >a{
  2792. font-size: 13px;
  2793. font-weight: 600;
  2794. margin-bottom: 5px;
  2795. display: inline-block;
  2796. }
  2797. .username{
  2798. color: @xf-linkColor;
  2799. }
  2800. .contentRow-minor{
  2801. font-size: 12px;
  2802. a{
  2803. font-size: 11px;
  2804. }
  2805. }
  2806. }
  2807. }
  2808. }
  2809. }
  2810. }
  2811. .block-container{
  2812. box-shadow: 0 2px 2px rgba(0, 0, 0, 0.06);
  2813. border-radius: 15px 15px 0 0;
  2814. .block-minorHeader{
  2815. text-align: left;
  2816. position: relative;
  2817. .block-control{
  2818. position: absolute;
  2819. right: 5px;
  2820. top: 50%;
  2821. transform: translateY(-50%);
  2822. font-size: 18px;
  2823. cursor: pointer;
  2824. width: 20px;
  2825. height: 21px;
  2826. text-align: center;
  2827. line-height: 20px;
  2828. }
  2829. a{
  2830. display: inline-block;
  2831. position: relative;
  2832. }
  2833. }
  2834. .block-footer{
  2835. padding: 10px;
  2836. }
  2837. .block-body{
  2838. font-size: 12px;
  2839. .contentRow-main{
  2840. a{
  2841. font-weight: 600;
  2842. }
  2843. }
  2844. &.staff-content{
  2845. padding: 10px 0;
  2846. li{
  2847. &:last-child{
  2848. .contentRow{
  2849. border-bottom: none;
  2850. padding-bottom: 0;
  2851. }
  2852. }
  2853. .contentRow{
  2854. border-bottom: 1px solid @xf-borderColor;
  2855. padding-bottom: 13px;
  2856. .contentRow-main{
  2857. .username{
  2858. font-size: 13px;
  2859. margin-top: 5px;
  2860. display: inline-block;
  2861. font-weight: 600;
  2862. color: @xf-linkColor;
  2863. }
  2864. .contentRow-minor{
  2865. font-size: 12px;
  2866. margin-top: 3px;
  2867. }
  2868. }
  2869. }
  2870. }
  2871. }
  2872. &.member-content{
  2873. padding: 10px 0;
  2874. }
  2875. &.post-content{
  2876. padding: 10px 0;
  2877. li{
  2878. .contentRow{
  2879. .contentRow-main{
  2880. >a{
  2881. font-size: 13px;
  2882. font-weight: 600;
  2883. margin-bottom: 5px;
  2884. display: inline-block;
  2885. }
  2886. .contentRow-minor{
  2887. font-size: 12px;
  2888. a{
  2889. font-size: 11px;
  2890. }
  2891. }
  2892. }
  2893. }
  2894. }
  2895. }
  2896. &.forum-static-content{
  2897. padding: 10px;
  2898. }
  2899. dl{
  2900. margin: 4px 0;
  2901. color: @xf-textColor;
  2902. dt{
  2903. color: inherit;
  2904. }
  2905. dd{
  2906. color: @xf-textColor;
  2907. }
  2908. }
  2909. }
  2910. }
  2911. }
  2912. }
  2913. }
  2914. }
  2915. .p-have--sidebar{
  2916. [data-widget-definition="new_posts"]{
  2917. .structItem{
  2918. .structItem-cell{
  2919. display: block;
  2920. &.structItem-cell--icon{
  2921. width: 29%;
  2922. float: left;
  2923. }
  2924. &.structItem-cell--latest,
  2925. &.structItem-cell--meta{
  2926. width: 50%;
  2927. float: left;
  2928. }
  2929. &.structItem-cell-only-forum-view{
  2930. display: none;
  2931. }
  2932. &.structItem-cell--latest{
  2933. .structItem-minor{
  2934. margin: 4px 0 1px;
  2935. }
  2936. }
  2937. .structItem-minor{
  2938. .structItem-parts{
  2939. li+li+li{
  2940. display: none;
  2941. }
  2942. }
  2943. }
  2944. }
  2945. }
  2946. }
  2947. [data-widget-definition="new_profile_posts"]{
  2948. article{
  2949. border-top: none !important;
  2950. margin-top: 10px;
  2951. }
  2952. .comment-avatar{
  2953. .avatar{
  2954. width: 24px !important;
  2955. height: 24px !important;
  2956. }
  2957. }
  2958. .message-cell--user{
  2959. flex: 0 0 70px;
  2960. .message-avatar{
  2961. text-align: left;
  2962. }
  2963. }
  2964. }
  2965. .block-minorHeader{
  2966. text-align: left;
  2967. }
  2968. .block-body{
  2969. padding-top: 10px;
  2970. }
  2971. }
  2972. [data-template="member_view"]{
  2973. .is-editing{
  2974. form,
  2975. .block-container{
  2976. padding-bottom: 0;
  2977. }
  2978. }
  2979. }
  2980. [data-template="forum_view"]{
  2981. .p-body-inner{
  2982. .block{
  2983. margin-bottom: 15px;
  2984. }
  2985. .block-outer{
  2986. padding: 5px 15px;
  2987. margin-bottom: 15px;
  2988. background-color: @xf-BrvColor1;
  2989. border-radius: 17px;
  2990. &.block-outer--after{
  2991. margin-bottom: 0;
  2992. margin-top: 15px;
  2993. }
  2994. }
  2995. }
  2996. }]]></template>
  2997. <template title="brv_breadcrumbs.less" type="public" addon_id="" version_id="0" version_string=""><![CDATA[.brv-breadcrumbs{
  2998. padding: 0;
  2999. &.brv-breadcrumbs__top{
  3000. margin-top: 20px;
  3001. }
  3002. &.brv-breadcrumbs__bottom{
  3003. margin-bottom: 20px;
  3004. }
  3005. .brv-breadcrumbs-inner{
  3006. max-width: @xf-pageWidthMax;
  3007. margin: 0 auto;
  3008. padding-left: 15px;
  3009. padding-right: 15px;
  3010. position: relative;
  3011. }
  3012. }
  3013. .p-breadcrumbs{
  3014. overflow: hidden;
  3015. position: relative;
  3016. border-radius: 17px;
  3017. background-color: @xf-BrvColor1;
  3018. padding: 3px 15px;
  3019. li{
  3020. padding: 0 13px;
  3021. position: relative;
  3022. z-index: 2;
  3023. &:before{
  3024. content: '';
  3025. position: absolute;
  3026. width: 1px;
  3027. height: 10px;
  3028. top: 50%;
  3029. right: 0;
  3030. transform: translateY(-50%) rotate(15deg);
  3031. background: @xf-textColor;
  3032. }
  3033. &:first-child{
  3034. padding-left: 0;
  3035. a{
  3036. padding-left: 0;
  3037. }
  3038. }
  3039. &:last-child{
  3040. &:before{
  3041. display: none;
  3042. }
  3043. }
  3044. a{
  3045. font-size: 12px;
  3046. padding: 8px 0;
  3047. color: @xf-textColor;
  3048. font-weight: 400 !important;
  3049. z-index: 999;
  3050. &:hover{
  3051. color: @xf-paletteColor3;
  3052. }
  3053. }
  3054. &:after{
  3055. display: none;
  3056. }
  3057. }
  3058. }
  3059. .control-sidebar{
  3060. position: absolute;
  3061. top: 50%;
  3062. cursor: pointer;
  3063. right: 25px;
  3064. transform: translateY(-50%);
  3065. color: #676360;
  3066. padding: 5px;
  3067. border-radius: 2px;
  3068. //&:before{
  3069. // content: '';
  3070. // display: inline-block;
  3071. // width: 14px;
  3072. // height: 14px;
  3073. // .sidebar-ico;
  3074. //}
  3075. &:hover{
  3076. color: @xf-paletteColor3;
  3077. }
  3078. }]]></template>
  3079. <template title="brv_extra.less" type="public" addon_id="" version_id="0" version_string=""><![CDATA[::-webkit-input-placeholder { /* Chrome */
  3080. color: #fff;
  3081. }
  3082. :-ms-input-placeholder { /* IE 10+ */
  3083. color: #fff;
  3084. }
  3085. ::-moz-placeholder { /* Firefox 19+ */
  3086. color: #fff;
  3087. opacity: 1;
  3088. }
  3089. :-moz-placeholder { /* Firefox 4 - 18 */
  3090. color: #fff;
  3091. opacity: 1;
  3092. }
  3093. ::-ms-input-placeholder{
  3094. color: #fff;
  3095. }
  3096. .hidden{
  3097. display: none !important;
  3098. }
  3099. .activeColor{
  3100. color: @xf-paletteColor3;
  3101. }
  3102. .p-navEl-splitTrigger:after{
  3103. content: '\f107';
  3104. }
  3105. .button{
  3106. border: none !important;
  3107. &:focus,
  3108. &:active,
  3109. &:visited,
  3110. &:hover{
  3111. background: #000000 !important;
  3112. color: #ffffff !important;
  3113. border-color: #000000 !important;
  3114. }
  3115. &:not(.button--icon--cancel){
  3116. .button-text{
  3117. &:before{
  3118. display: none !important;
  3119. }
  3120. }
  3121. }
  3122. }
  3123. .pageNavSimple-el.pageNavSimple-el--current{
  3124. color: @xf-BrvColor1;
  3125. }
  3126. .overlay-content{
  3127. .block-header{
  3128. margin-top: 5px;
  3129. border-radius: 0 !important;
  3130. }
  3131. }
  3132. .lastThreadTitle{
  3133. font-weight: 600;
  3134. margin-right: 15px;
  3135. }
  3136. .ratingStars-star.ratingStars-star--full:before{
  3137. color: #ffcc00 !important;
  3138. }
  3139. .ratingStars-star:before{
  3140. color: @xf-textColor !important;
  3141. }
  3142. .inlineModButton-count{
  3143. color: inherit;
  3144. }
  3145. .carousel-item{
  3146. background-color: @xf-BrvColor1;
  3147. }
  3148. .inlineModBar.is-active:first-of-type{
  3149. background: #191212;
  3150. color: @xf-linkColor;
  3151. }
  3152. .js-likeList.is-active,
  3153. .likesBar.is-active{
  3154. border: 1px solid @xf-borderColor;
  3155. background: @xf-BrvColor4;
  3156. a{
  3157. color: @xf-textColor;
  3158. }
  3159. .likeIcon{
  3160. &:before{
  3161. color: @xf-textColor;
  3162. }
  3163. }
  3164. }
  3165. a{
  3166. &:hover{
  3167. text-decoration: none !important;
  3168. }
  3169. }
  3170. .messageNotice{
  3171. background: @xf-paletteAccent1 !important;
  3172. color: @xf-linkColor !important;
  3173. }
  3174. .actionBar-action{
  3175. color: @xf-linkColor;
  3176. &:hover{
  3177. color: @xf-paletteColor3;
  3178. }
  3179. }
  3180. .search--sm{
  3181. padding: 0 20px;
  3182. margin-left: 0 !important;
  3183. background-color: @xf-paletteColor3;
  3184. position: static !important;
  3185. .search-area{
  3186. padding: 0;
  3187. width: 100% !important;
  3188. }
  3189. }
  3190. .tooltip--member .tooltip-content,
  3191. .tooltip--preview .tooltip-content{
  3192. background-color: @xf-BrvColor1;
  3193. }
  3194. span.actionBar-action,
  3195. label.actionBar-action.iconic--checkbox{
  3196. padding-left: 0;
  3197. }
  3198. .actionBar-action{
  3199. padding: 3px 3px 3px 20px;
  3200. position: relative;
  3201. top: -5px;
  3202. display: inline-block;
  3203. color: @xf-textColor;
  3204. &.actionBar-action--menuTrigger{
  3205. display: none;
  3206. }
  3207. &:before{
  3208. content: '';
  3209. font-family: "FontAwesome";
  3210. font-size: 14px;
  3211. position: absolute;
  3212. left: 0;
  3213. top: 50%;
  3214. transform: translateY(-50%);
  3215. }
  3216. &.actionBar-action--inlineMod{
  3217. i{
  3218. &:before{
  3219. color: @xf-textColor;
  3220. }
  3221. }
  3222. }
  3223. &.actionBar-action--approve,
  3224. &.actionBar-action--unapprove{
  3225. &:before{
  3226. content: '\f087';
  3227. }
  3228. }
  3229. &.actionBar-action--reply{
  3230. &:before{
  3231. content: '\f0e5';
  3232. }
  3233. }
  3234. &.actionBar-action--report{
  3235. &:before{
  3236. content: '\f016';
  3237. }
  3238. }
  3239. &.actionBar-action--edit{
  3240. &:before{
  3241. content: '\f040';
  3242. }
  3243. }
  3244. &.actionBar-action--undelete,
  3245. &.actionBar-action--delete{
  3246. &:before{
  3247. content: '\f014';
  3248. }
  3249. }
  3250. &.actionBar-action--spam{
  3251. &:before{
  3252. content: '\f0e9';
  3253. }
  3254. }
  3255. &.actionBar-action--ip{
  3256. &:before{
  3257. content: '\f08d';
  3258. }
  3259. }
  3260. &.actionBar-action--history{
  3261. &:before{
  3262. content: '\f017';
  3263. }
  3264. }
  3265. &.actionBar-action--warn{
  3266. &:before{
  3267. content: '\f071';
  3268. }
  3269. }
  3270. }
  3271. .block-outer{
  3272. .button{
  3273. background: transparent !important;
  3274. border: none !important;
  3275. color: @xf-linkColor;
  3276. &:hover{
  3277. color: @xf-paletteColor3 !important;
  3278. }
  3279. }
  3280. }
  3281. .block-container{
  3282. background: @xf-BrvColor1;
  3283. }
  3284. .subNodeLink.subNodeLink--unread{
  3285. font-weight: 700 !important;
  3286. &:before{
  3287. color: @xf-paletteColor3 !important;
  3288. }
  3289. }
  3290. [data-template="thread_view"] .block-outer.block-outer--after {
  3291. border-top: 1px solid @xf-borderColor;
  3292. border-bottom: 1px solid @xf-borderColor;
  3293. padding: 10px 0;
  3294. }
  3295. .actionBar-action.actionBar-action--like{
  3296. &:before{
  3297. content: '\f08a';
  3298. font-weight: bold;
  3299. }
  3300. }
  3301. .tooltip-content{
  3302. .actionBar-action{
  3303. top: 0;
  3304. }
  3305. }
  3306. .actionBar-action.actionBar-action--mq.is-selected{
  3307. background: transparent;
  3308. border: none;
  3309. color: @xf-paletteColor3;
  3310. text-shadow: 0 0 15px;
  3311. }
  3312. .fr-toolbar{
  3313. background: @xf-BrvColor4;
  3314. padding: 2px 0;
  3315. &.fr-top{
  3316. border: 1px solid @xf-borderColor;
  3317. }
  3318. .fr-separator{
  3319. background: transparent;
  3320. }
  3321. .fr-command.fr-btn{
  3322. color: @xf-textColor;
  3323. &:hover{
  3324. color: @xf-paletteColor3;
  3325. }
  3326. }
  3327. }
  3328. .fr-wrapper{
  3329. background-color: @xf-BrvColor4 !important;
  3330. border: none !important;
  3331. }
  3332. .overlay-title{
  3333. padding-top: 13px;
  3334. padding-bottom: 13px;
  3335. }
  3336. .dataList-cell.dataList-cell--action.dataList-cell--alt,
  3337. .dataList-cell.dataList-cell--link.dataList-cell--alt,
  3338. .dataList-cell.dataList-cell--action.dataList-cell--action,
  3339. .dataList-cell.dataList-cell--link.dataList-cell--action{
  3340. &:hover{
  3341. background: transparent;
  3342. a{
  3343. color: @xf-paletteColor3;
  3344. }
  3345. }
  3346. }
  3347. .dataList-row:hover:not(.dataList-row--noHover):not(.dataList-row--header),
  3348. .dataList-cell.dataList-cell--alt, .dataList-cell.dataList-cell--action{
  3349. background: transparent;
  3350. }
  3351. .memberOverviewBlock-seeMore {
  3352. padding: 7px;
  3353. }
  3354. .menu{
  3355. margin-top: 3px !important;
  3356. }
  3357. .menu-content{
  3358. border: none;
  3359. }
  3360. .block-tabHeader{
  3361. .tabs-tab{
  3362. padding: 10px;
  3363. }
  3364. }
  3365. body[data-template="member_view"]{
  3366. .block--messages .message .message-inner .message-cell--user .message-user{
  3367. border: none;
  3368. }
  3369. }
  3370. .message-userArrow{
  3371. display: none;
  3372. }
  3373. .memberHeader-name{
  3374. color: @xf-paletteColor3;
  3375. }
  3376. .menu-linkRow.is-selected, .menu-linkRow:hover, .menu-linkRow:focus{
  3377. background: transparent;
  3378. }
  3379. .p-navgroup-link.badgeContainer::after{
  3380. right: 5px;
  3381. top: 5px;
  3382. }
  3383. .attachUploadList{
  3384. background: transparent !important;
  3385. }
  3386. .message.is-mod-selected, .block--messages .message.is-mod-selected{
  3387. background: #e5e5dd;
  3388. }
  3389.  
  3390. .blockLink:hover{
  3391. background: transparent;
  3392. color: @xf-paletteColor3;
  3393. }
  3394. .badge, .badgeContainer:after{
  3395. background: #df4242;
  3396. }
  3397. .meu--alertconver{
  3398. .avatar{
  3399. width: 38px;
  3400. height: 38px;
  3401. font-size: 18px;
  3402. span{
  3403. line-height: 38px;
  3404. }
  3405. }
  3406. time{
  3407. float: right;
  3408. }
  3409. }
  3410. .badge.badge--highlighted, .badgeContainer.badgeContainer--highlighted::after{
  3411. background: red !important;
  3412. border-radius: 2px;
  3413. height: 15px;
  3414. min-width: 11px;
  3415. padding: 0 2px;
  3416. line-height: 15px;
  3417. text-align: center;
  3418. }
  3419. .new_tags_brv {
  3420. padding: 10px 20px 10px 0;
  3421. margin-bottom: 10px;
  3422. display: none;
  3423. font-size: 13px;
  3424. }
  3425. body[data-template="thread_view"] .new_tags_brv {
  3426. display: block;
  3427. }
  3428. .formSubmitRow.formSubmitRow--sticky.is-sticky .formSubmitRow-bar{
  3429. background: #fff;
  3430. }
  3431. body[data-template="xfrm_resource_updates"]{
  3432. .message-attribution-opposite{
  3433. a{
  3434. line-height: 45px;
  3435. }
  3436. }
  3437. }
  3438. html[data-logged-in="false"]{
  3439. .title-thread{
  3440. margin-top: 20px;
  3441. }
  3442. }
  3443. .contentRow-main.contentRow-main--close{
  3444. padding-left: 10px;
  3445. }
  3446. .block-tabHeader .hScroller-action.hScroller-action--end{
  3447. background: #000000;
  3448. background: linear-gradient(to right, rgba(37, 119, 177, 0) 0%, #000000 33%);
  3449. }
  3450. .block-tabHeader .hScroller-action.hScroller-action--start{
  3451. background: #000000;
  3452. background: linear-gradient(to right, #000000 66%, rgba(37, 119, 177, 0) 100%);
  3453. }
  3454. .p-sectionLinks .hScroller-action:hover{
  3455. color: @xf-paletteColor3;
  3456. }
  3457. .overlay-titleCloser{
  3458. color: #ffffff;
  3459. opacity: 1;
  3460. }
  3461. //block-header
  3462. .block-minorHeader,
  3463. .block-header{
  3464. position: relative;
  3465. }
  3466. .block-control{
  3467. position: absolute;
  3468. right: 10px;
  3469. top: 50%;
  3470. transform: translateY(-50%);
  3471. font-size: 18px;
  3472. cursor: pointer;
  3473. width: 20px;
  3474. height: 21px;
  3475. text-align: center;
  3476. line-height: 20px;
  3477. }
  3478. //block--category
  3479.  
  3480. .block--category{
  3481. .block-header{
  3482. position: relative;
  3483. &.hover--tooltip{
  3484. &:hover{
  3485. .show-tooltip{
  3486. opacity: 1;
  3487. visibility: visible;
  3488. }
  3489. }
  3490. }
  3491. .show-tooltip{
  3492. position: absolute;
  3493. top: 50%;
  3494. transform: translateY(-50%);
  3495. background: @xf-tooltip--background-color;
  3496. color: #fff;
  3497. padding: 3px 17px;
  3498. line-height: 18px;
  3499. border-radius: 3px;
  3500. opacity: 0;
  3501. transition: all 500ms;
  3502. visibility: hidden;
  3503. &:before{
  3504. content: '';
  3505. position: absolute;
  3506. left: -12px;
  3507. top: 50%;
  3508. transform: translateY(-50%);
  3509. border: 6px solid transparent;
  3510. border-right-color: @xf-tooltip--background-color;
  3511. }
  3512. }
  3513. }
  3514. }
  3515.  
  3516. //profile-posts
  3517. #profile-posts{
  3518. .block--messages{
  3519. .block-body{
  3520. article.message{
  3521. .message-inner{
  3522. .message-cell--main{
  3523. padding: 0 0 0 15px;
  3524. }
  3525. }
  3526. }
  3527. }
  3528. }
  3529. }
  3530.  
  3531. //.blockLink.is-selected
  3532. .blockLink.is-selected{
  3533. padding-left: 10px;
  3534. background: transparent;
  3535. color: @xf-paletteColor3;
  3536. &:hover{
  3537. background: transparent;
  3538. }
  3539. }
  3540.  
  3541.  
  3542.  
  3543. //menu--structural
  3544. .menu--structural{
  3545. &.menu--account{
  3546. .menu-content{
  3547. border-radius: 0;
  3548. border-top: none;
  3549. .menu-row--highlighted{
  3550. background: transparent;
  3551. padding: 15px;
  3552. .contentRow-figure{
  3553. position: relative;
  3554. &:before{
  3555. content: '';
  3556. width: 78px;
  3557. height: 78px;
  3558. position: absolute;
  3559. left: -3px;
  3560. top: -3px;
  3561. border-radius: 100%;
  3562. background-color: rgba(255, 255, 255, 0.1);
  3563. }
  3564. .avatar{
  3565. width: 72px;
  3566. height: 72px;
  3567. font-size: 36px;
  3568. span{
  3569. line-height: 72px;
  3570. }
  3571. }
  3572. }
  3573. .contentRow-header{
  3574. a{
  3575. padding: 8px 0;
  3576. font-size: 16px;
  3577. font-weight: 600;
  3578. color: @xf-linkColor;
  3579. &:hover{
  3580. background-color: transparent !important;
  3581. color: @xf-paletteColor3 !important;
  3582. }
  3583. }
  3584. }
  3585. }
  3586. ul{
  3587. padding-top: 10px;
  3588. padding-bottom: 5px;
  3589. }
  3590. a{
  3591. border-left: none;
  3592. padding: 7px 15px;
  3593. font-size: 12px;
  3594. color: @xf-linkColor;
  3595. &:hover{
  3596. background: transparent !important;
  3597. color: @xf-paletteColor3 !important;
  3598. }
  3599. }
  3600. form{
  3601. background: transparent !important;
  3602. padding: 15px;
  3603. }
  3604. }
  3605. }
  3606. &.menu--potentialFixed{
  3607. .menu-content{
  3608. border-radius: 0;
  3609. border-top: none;
  3610. a{
  3611. border-left: none;
  3612. &:hover{
  3613. background: transparent;
  3614. color: @xf-paletteColor3;
  3615. }
  3616. }
  3617. }
  3618. }
  3619. }
  3620.  
  3621. //pagination page
  3622. .pageNav{
  3623. .text-page{
  3624. font-size: 13px;
  3625. color: @xf-linkColor;
  3626. }
  3627. .pageNavSimple-el{
  3628. border: none;
  3629. border-radius: 0;
  3630. background: transparent;
  3631. color: @xf-linkColor;
  3632. &:hover{
  3633. background: transparent;
  3634. }
  3635. }
  3636. .pageNav-main{
  3637. .pageNav-page{
  3638. border: none;
  3639. border-radius: 0;
  3640. padding-right: 10px;
  3641. background: transparent;
  3642. &.pageNav-page--current{
  3643. a{
  3644. background-color: @xf-paletteColor3;
  3645. color: @xf-BrvColor1;
  3646. }
  3647. }
  3648. a{
  3649. padding: 0 2px;
  3650. min-width: 24px;
  3651. height: 24px;
  3652. text-align: center;
  3653. line-height: 22px;
  3654. background-color: #f3edf9;
  3655. border-radius: 2px;
  3656. color: @xf-textColor;
  3657. &:hover{
  3658. background-color: @xf-paletteColor3;
  3659. color: @xf-BrvColor1;
  3660. }
  3661. }
  3662. }
  3663. }
  3664. .pageNav-jump{
  3665. padding: 3px 8px;
  3666. border: none;
  3667. border-radius: 0;
  3668. background: transparent;
  3669. color: @xf-linkColor;
  3670. &:after,&:before{
  3671. display: none;
  3672. }
  3673. &:hover{
  3674. text-decoration: underline;
  3675. }
  3676. }
  3677. }
  3678.  
  3679. //media
  3680.  
  3681. .media{
  3682. .media-container{
  3683. .media-container-image{
  3684. margin-top: 10px;
  3685. }
  3686. }
  3687. }
  3688. .block{
  3689. &.js-mediaInfoBlock{
  3690. .block-outer-middle{
  3691. margin-bottom: 10px;
  3692. }
  3693. .block-container{
  3694. margin-bottom: 15px;
  3695. .block-body{
  3696. padding: 15px 10px;
  3697. .xfmgInfoBlock-title{
  3698. .contentRow-main{
  3699. .contentRow-title{
  3700. font-size: 14px;
  3701. font-weight: 600;
  3702. }
  3703. }
  3704. }
  3705. .actionBar{
  3706. .actionBar-set{
  3707. .actionBar-action{
  3708. padding: 3px 3px 3px 20px;
  3709. position: relative;
  3710. top: -5px;
  3711. &.actionBar-action--menuTrigger{
  3712. display: none;
  3713. }
  3714. &:before{
  3715. content: '';
  3716. font-family: "FontAwesome";
  3717. font-size: 14px;
  3718. position: absolute;
  3719. left: 0;
  3720. top: 50%;
  3721. transform: translateY(-50%);
  3722. }
  3723. &.actionBar-action--report{
  3724. &:before{
  3725. content: '\f016';
  3726. }
  3727. }
  3728. &.actionBar-action--edit{
  3729. &:before{
  3730. content: '\f040';
  3731. }
  3732. }
  3733. &.actionBar-action--delete{
  3734. &:before{
  3735. content: '\f014';
  3736. }
  3737. }
  3738. &.actionBar-action--spam{
  3739. &:before{
  3740. content: '\f0e9';
  3741. }
  3742. }
  3743. &.actionBar-action--ip{
  3744. &:before{
  3745. content: '\f08d';
  3746. }
  3747. }
  3748. &.actionBar-action--history{
  3749. &:before{
  3750. content: '\f017';
  3751. }
  3752. }
  3753. &.actionBar-action--warn{
  3754. &:before{
  3755. content: '\f071';
  3756. }
  3757. }
  3758. }
  3759. }
  3760. }
  3761. }
  3762. }
  3763. }
  3764. }
  3765. .columnContainer{
  3766. .columnContainer-comments{
  3767. form{
  3768. &.js-quickReply{
  3769. .block-container{
  3770. .message--quickReply{
  3771. .message-inner{
  3772. .message-cell{
  3773. &.message-cell--user{
  3774. .message-user{
  3775. .message-avatar{
  3776. .message-avatar-wrapper{
  3777. .avatar{
  3778. width: 48px;
  3779. height: 48px;
  3780. span{
  3781. line-height: 48px;
  3782. }
  3783. }
  3784. }
  3785. }
  3786. }
  3787. }
  3788. }
  3789. }
  3790. }
  3791. }
  3792. }
  3793. }
  3794. }
  3795. }
  3796. .mediaList {
  3797. input, .select2 .select2-selection ul .select2-search .select2-search__field,.input{
  3798. background:#fff;
  3799. }
  3800.  
  3801. }]]></template>
  3802. <template title="brv_footer.less" type="public" addon_id="" version_id="0" version_string=""><![CDATA[#footer{
  3803. padding-top: 10px;
  3804. .p-footer-inner{
  3805. padding-right: 15px;
  3806. padding-left: 15px;
  3807. a{
  3808. &:hover{
  3809. color: @xf-paletteColor3;
  3810. }
  3811. }
  3812. .footer-custom{
  3813. .row{
  3814. display: inline-block;
  3815. width: 100%;
  3816. .footer-column{
  3817. .footer-title{
  3818. h3{
  3819. font-size: 14px;
  3820. font-weight: 400;
  3821. text-transform: uppercase;
  3822. margin: 15px 0 25px;
  3823. color: #fff;
  3824. }
  3825. }
  3826. &.footer-column-1{
  3827. //width: 48%;
  3828. display: inline-block;
  3829. float: left;
  3830. .content-inner{
  3831. p{
  3832. font-size: 13px;
  3833. line-height: 18px;
  3834. font-weight: 300;
  3835. max-width: 360px;
  3836. }
  3837. }
  3838. .footer-social{
  3839. margin-top: 25px;
  3840. a{
  3841. position: relative;
  3842. z-index: 1;
  3843. display: inline-block;
  3844. width: 32px;
  3845. height: 32px;
  3846. margin-right: 7px;
  3847. margin-top: 7px;
  3848. span{
  3849. color: @xf-BrvColor1;
  3850. width: 32px;
  3851. height: 32px;
  3852. line-height: 32px;
  3853. background: @xf-paletteColor3;
  3854. border-radius: 3px;
  3855. display: inline-block;
  3856. text-align: center;
  3857. font-size: 16px;
  3858. }
  3859. &:hover{
  3860. color: #fff;
  3861. &:before,
  3862. span{
  3863. background: @xf-paletteColor3 !important;
  3864. color: @xf-BrvColor1 !important;
  3865. }
  3866. }
  3867. &.facebook{
  3868. span{
  3869. background-color: #3b5998;
  3870. }
  3871. }
  3872. &.twitter{
  3873. span{
  3874. background-color: #00acee;
  3875. }
  3876. }
  3877. &.google{
  3878. span{
  3879. background-color: #b63324;
  3880. }
  3881. }
  3882. &.linkedin{
  3883. span{
  3884. background-color: #f7b2a1;
  3885. }
  3886. }
  3887. &.youtube{
  3888. span{
  3889. background-color: #ec3e13;
  3890. }
  3891. }
  3892. &.dribbble{
  3893. span{
  3894. background-color: #0e4b71;
  3895. }
  3896. }
  3897. &.flickr{
  3898. span{
  3899. background-color: #8d8d8d;
  3900. }
  3901. }
  3902. &.pinterest{
  3903. span{
  3904. background-color: #cb2027;
  3905. }
  3906. }
  3907. &.vimeo{
  3908. span{
  3909. background-color: #a52c0d;
  3910. }
  3911. }
  3912. &.rss{
  3913. span{
  3914. background-color: #ffc600;
  3915. }
  3916. }
  3917. &.deviantart{
  3918. span{
  3919. background-color: #1aae88;
  3920. }
  3921. }
  3922. &.email{
  3923. span{
  3924. background-color: #f89a1e;
  3925. }
  3926. }
  3927. }
  3928. }
  3929. }
  3930. &.footer-column-2,&.footer-column-3{
  3931. //width: 15%;
  3932. display: inline-block;
  3933. float: left;
  3934. .content-inner{
  3935. ul{
  3936. list-style: none;
  3937. padding: 0;
  3938. li{
  3939. margin-bottom: 12px;
  3940. a{
  3941. font-size: 13px;
  3942. font-weight: 300;
  3943. padding-left: 0;
  3944. transition: all 300ms;
  3945. &:hover{
  3946. text-decoration: none;
  3947. padding-left: 5px;
  3948. }
  3949. }
  3950. }
  3951. }
  3952. }
  3953. }
  3954. &.footer-column-4{
  3955. //width: 22%;
  3956. display: inline-block;
  3957. float: left;
  3958. .contact-info{
  3959. .item{
  3960. font-size: 13px;
  3961. font-weight: 300;
  3962. margin-bottom: 12px;
  3963. padding-left: 25px;
  3964. position: relative;
  3965. &:before{
  3966. content: '';
  3967. font-family: "FontAwesome";
  3968. position: absolute;
  3969. left: 0;
  3970. top: 50%;
  3971. font-size: 15px;
  3972. transform: translateY(-50%);
  3973. }
  3974. &.address{
  3975. &:before{
  3976. content: '\f015';
  3977. }
  3978. }
  3979. &.phone{
  3980. &:before{
  3981. content: '\f095';
  3982. }
  3983. }
  3984. &.email{
  3985. &:before{
  3986. content: '\f003';
  3987. }
  3988. }
  3989. &.public{
  3990. &:before{
  3991. content: '\f0ac';
  3992. }
  3993. }
  3994. }
  3995. }
  3996. }
  3997. }
  3998. }
  3999. }
  4000. }
  4001. .footer-bottom{
  4002. padding: 3px 0;
  4003. background-color: @xf-FooterBottom;
  4004. .p-footer-inner{
  4005. padding: 10px 15px;
  4006. display: flex;
  4007. align-items: center;
  4008. flex-flow: row wrap;
  4009. .p-footer-copyright{
  4010. margin: 0;
  4011. font-size: 12px;
  4012. text-align: left;
  4013. .BRCopyright{
  4014. .content-brcpright{
  4015. a{
  4016. &:hover{
  4017. color: #fff !important;
  4018. }
  4019. }
  4020. span{
  4021. font-size: 11px;
  4022. }
  4023. }
  4024. }
  4025. }
  4026. .p-footer-row-opposite{
  4027. margin: 0;
  4028. float: none;
  4029. text-align: right;
  4030. .p-footer-linkList{
  4031. li{
  4032. float: none;
  4033. display: inline-block;
  4034. a{
  4035. font-size: 12px;
  4036. padding: 2px !important;
  4037. &:hover{
  4038. background: transparent !important;
  4039. }
  4040. }
  4041. }
  4042. }
  4043. }
  4044. }
  4045. }
  4046. }
  4047.  
  4048.  
  4049. @media (min-width: @xf-responsiveMedium) {
  4050. #footer .footer-bottom {
  4051. .p-footer-inner{
  4052. .p-footer-copyright{
  4053. width: 50%;
  4054. }
  4055. .p-footer-row-opposite{
  4056. width: 50%;
  4057.  
  4058. }
  4059. }
  4060. }
  4061. }
  4062. @media (max-width: @xf-responsiveMedium) {
  4063. #footer .footer-bottom {
  4064. .p-footer-inner{
  4065. .p-footer-copyright{
  4066. width: 100%;
  4067. }
  4068. .p-footer-row-opposite{
  4069. width: 100%;
  4070.  
  4071. }
  4072. }
  4073. }
  4074. }]]></template>
  4075. <template title="brv_header.less" type="public" addon_id="" version_id="0" version_string=""><![CDATA[#header{
  4076. .p-header-inner{
  4077. padding: 0 15px;
  4078. .p-header-content{
  4079. padding: 60px 0;
  4080. .p-header-logo{
  4081. display: inline-block;
  4082. z-index: 9;
  4083. }
  4084. }
  4085. }
  4086. }]]></template>
  4087. <template title="brv_message.less" type="public" addon_id="" version_id="0" version_string=""><![CDATA[[data-template="conversation_view"],
  4088. [data-template="thread_view"]{
  4089. .p-body-inner{
  4090. background-color: @xf-BrvColor1;
  4091. }
  4092. .brv-breadcrumbs-inner{
  4093. background-color: @xf-BrvColor1;
  4094. border-radius: 17px;
  4095. }
  4096. .brv-breadcrumbs__top{
  4097. margin-bottom: 20px;
  4098. }
  4099. .brv-breadcrumbs__bottom{
  4100. margin-top: 20px;
  4101. }
  4102. .block--messages{
  4103. .message{
  4104. padding-right: 0;
  4105. .message-inner{
  4106. .message-cell--user{
  4107. .message-user{
  4108. background-color: @xf-BrvColor4;
  4109. .message-avatar{
  4110. .message-avatar-wrapper{
  4111. position: relative;
  4112. border-radius: 3px;
  4113. .avatar{
  4114. border-radius: inherit;
  4115. }
  4116. }
  4117. }
  4118. }
  4119. }
  4120. }
  4121. }
  4122. }
  4123. }
  4124. .block--messages{
  4125. .message{
  4126. padding-bottom: 20px;
  4127. padding-top: 20px;
  4128. padding-right: 10px;
  4129. border-radius: 0 !important;
  4130. color: @xf-linkColor;
  4131. &:first-child{
  4132. border-top: 1px solid @xf-borderColor;
  4133. padding-top: 20px;
  4134. .message-inner{
  4135. .message-userDetails{
  4136. .userBanner{
  4137. &.userBanner--staff{
  4138. background-color: @xf-paletteColor3 !important;
  4139. color: #fff;
  4140. &:before{
  4141. border-right-color: @xf-textColor !important;
  4142. border-bottom-color: @xf-textColor !important;
  4143. }
  4144. &:after{
  4145. border-bottom-color: @xf-textColor !important;
  4146. border-left-color: @xf-textColor !important;
  4147. }
  4148. }
  4149. }
  4150. }
  4151. }
  4152. }
  4153. .message-inner{
  4154. .message-cell--user{
  4155. border: none;
  4156. border-radius: 0;
  4157. padding: 0;
  4158. .message-user{
  4159. padding: 10px;
  4160. border-radius: 2px;
  4161. text-align: center;
  4162. }
  4163. .message-userDetails{
  4164. text-align: center;
  4165. margin: 10px 0;
  4166. .message-name{
  4167. font-size: 14px;
  4168. font-weight: 600;
  4169. margin-bottom: 10px;
  4170. a{
  4171. color: @xf-paletteColor3;
  4172. text-transform: capitalize;
  4173. }
  4174. }
  4175. .userTitle{
  4176. text-align: center;
  4177. margin-top: -5px;
  4178. margin-bottom: 8px;
  4179. color: @xf-textColor;
  4180. }
  4181. .userBanner{
  4182. padding: 7px;
  4183. margin: 0 -11px;
  4184. border-radius: 0;
  4185. border: none;
  4186. position: relative;
  4187. margin-bottom: 10px;
  4188. //&:before{
  4189. // content: '';
  4190. // position: absolute;
  4191. // top: -4px;
  4192. // left: 0;
  4193. // border-top: 2px solid transparent;
  4194. // border-right: 2px solid @xf-paletteColor1;
  4195. // border-bottom: 2px solid @xf-paletteColor1;
  4196. // border-left: 2px solid transparent;
  4197. //}
  4198. //&:after{
  4199. // content: '';
  4200. // position: absolute;
  4201. // top: -4px;
  4202. // right: 0;
  4203. // border-top: 2px solid transparent;
  4204. // border-right: 2px solid transparent;
  4205. // border-bottom: 2px solid @xf-paletteColor1;
  4206. // border-left: 2px solid @xf-paletteColor1;
  4207. //}
  4208. &.userBanner--royalBlue{
  4209. &:before{
  4210. border-right: 2px solid #4169e1;
  4211. border-bottom: 2px solid #4169e1;
  4212. }
  4213. &:after{
  4214. border-bottom: 2px solid #4169e1;
  4215. border-left: 2px solid #4169e1;
  4216. }
  4217. }
  4218. &.userBanner--red{
  4219. &:before{
  4220. border-right: 2px solid #d80000;
  4221. border-bottom: 2px solid #d80000;
  4222. }
  4223. &:after{
  4224. border-bottom: 2px solid #d80000;
  4225. border-left: 2px solid #d80000;
  4226. }
  4227. }
  4228. &.userBanner--green{
  4229. &:before{
  4230. border-right: 2px solid green;
  4231. border-bottom: 2px solid green;
  4232. }
  4233. &:after{
  4234. border-bottom: 2px solid green;
  4235. border-left: 2px solid green;
  4236. }
  4237. }
  4238. &.userBanner--olive{
  4239. &:before{
  4240. border-right: 2px solid olive;
  4241. border-bottom: 2px solid olive;
  4242. }
  4243. &:after{
  4244. border-bottom: 2px solid olive;
  4245. border-left: 2px solid olive;
  4246. }
  4247. }
  4248. &.userBanner--lightGreen{
  4249. &:before{
  4250. border-right: 2px solid #bee8ba;
  4251. border-bottom: 2px solid #bee8ba;
  4252. }
  4253. &:after{
  4254. border-bottom: 2px solid #bee8ba;
  4255. border-left: 2px solid #bee8ba;
  4256. }
  4257. }
  4258. &.userBanner--blue{
  4259. &:before{
  4260. border-right: 2px solid #0008e3;
  4261. border-bottom: 2px solid #0008e3;
  4262. }
  4263. &:after{
  4264. border-bottom: 2px solid #0008e3;
  4265. border-left: 2px solid #0008e3;
  4266. }
  4267. }
  4268. &.userBanner--skyBlue{
  4269. &:before{
  4270. border-right: 2px solid #7cc3e0;
  4271. border-bottom: 2px solid #7cc3e0;
  4272. }
  4273. &:after{
  4274. border-bottom: 2px solid #7cc3e0;
  4275. border-left: 2px solid #7cc3e0;
  4276. }
  4277. }
  4278. &.userBanner--gray{
  4279. &:before{
  4280. border-right: 2px solid gray;
  4281. border-bottom: 2px solid gray;
  4282. }
  4283. &:after{
  4284. border-bottom: 2px solid gray;
  4285. border-left: 2px solid gray;
  4286. }
  4287. }
  4288. &.userBanner--silver{
  4289. &:before{
  4290. border-right: 2px solid silver;
  4291. border-bottom: 2px solid silver;
  4292. }
  4293. &:after{
  4294. border-bottom: 2px solid silver;
  4295. border-left: 2px solid silver;
  4296. }
  4297. }
  4298. &.userBanner--yellow{
  4299. &:before{
  4300. border-right: 2px solid #e6e687;
  4301. border-bottom: 2px solid #e6e687;
  4302. }
  4303. &:after{
  4304. border-bottom: 2px solid #e6e687;
  4305. border-left: 2px solid #e6e687;
  4306. }
  4307. }
  4308. &.userBanner--orange{
  4309. &:before{
  4310. border-right: 2px solid #ffcb00;
  4311. border-bottom: 2px solid #ffcb00;
  4312. }
  4313. &:after{
  4314. border-bottom: 2px solid #ffcb00;
  4315. border-left: 2px solid #ffcb00;
  4316. }
  4317. }
  4318. &.userBanner--staff{
  4319. background-color: @xf-paletteColor3;
  4320. color: #fff;
  4321. &:before{
  4322. border-right-color: @xf-paletteColor3;
  4323. border-bottom-color: @xf-paletteColor3;
  4324. }
  4325. &:after{
  4326. border-bottom-color: @xf-paletteColor3;
  4327. border-left-color: @xf-paletteColor3;
  4328. }
  4329. }
  4330. }
  4331. }
  4332. .message-userExtras{
  4333. font-size: 11px;
  4334. dl{
  4335. margin: 2px 0;
  4336. dd{
  4337. font-size: 10px;
  4338. }
  4339. }
  4340. }
  4341. .message-userArrow{
  4342. display: none;
  4343. }
  4344. }
  4345. .message-cell--main{
  4346. .message-main{
  4347. .message-content{
  4348. .message-body{
  4349. .bbCodeBlock{
  4350. .bbCodeBlock-content{
  4351. .bbCodeBlock-expandLink{
  4352. /*top: 95px;*/
  4353. a{
  4354. color: #bababb;
  4355. }
  4356. }
  4357. }
  4358. &.bbCodeBlock--code{
  4359. .bbCodeBlock-content{
  4360. padding: 15px 10px;
  4361. }
  4362. }
  4363. &.bbCodeBlock--quote{
  4364. .bbCodeBlock-title{
  4365. .bbCodeBlock-sourceJump{
  4366. &:after{
  4367. display: none;
  4368. }
  4369. }
  4370. }
  4371. }
  4372. }
  4373. }
  4374. .message-attachments{
  4375. background: @xf-BrvColor4;
  4376. border: 1px solid @xf-borderColor;
  4377. border-radius: 15px 15px 0 0;
  4378. .block-textHeader{
  4379. padding: 10px;
  4380. background: @xf-paletteColor3;
  4381. font-size: 14px;
  4382. color: @xf-BrvColor1;
  4383. font-weight: 400;
  4384. border-radius: 15px 15px 0 0;
  4385. text-transform: uppercase;
  4386. }
  4387. .attachmentList{
  4388. padding: 15px 10px;
  4389. .attachment{
  4390. position: relative;
  4391. width: 290px;
  4392. height: 90px;
  4393. padding-right: 15px;
  4394. padding-left: 75px;
  4395. border: none;
  4396. border-radius: 3px;
  4397. background-color: @xf-BrvColor1;
  4398. .attachment-icon{
  4399. position: absolute;
  4400. left: 15px;
  4401. top: 50%;
  4402. width: 44px;
  4403. height: 44px;
  4404. background-color: @xf-paletteColor3;
  4405. transform: translateY(-50%);
  4406. border-radius: 3px;
  4407. &.attachment-icon--img{
  4408. background-color: transparent;
  4409. a{
  4410. img{
  4411. border-radius: 3px;
  4412. }
  4413. }
  4414. }
  4415. a{
  4416. i{
  4417. &:before{
  4418. content: '';
  4419. .cloud--image;
  4420. width: 45px;
  4421. height: 40px;
  4422. background-repeat: no-repeat;
  4423. background-position: center;
  4424. }
  4425. }
  4426. }
  4427. }
  4428. .attachment-name{
  4429. margin: 5px 0 3px;
  4430. color: @xf-linkColor;
  4431. a{
  4432. color: @xf-linkColor;
  4433. font-size: 12px;
  4434. font-weight: 600;
  4435. }
  4436. }
  4437. .attachment-details{
  4438. color: @xf-linkColor;
  4439. font-weight: 600;
  4440. dl{
  4441. margin: 3px 0;
  4442. width: 100%;
  4443. dt{
  4444. color: @xf-linkColor;
  4445. }
  4446. }
  4447. }
  4448. }
  4449. }
  4450. }
  4451. }
  4452. }
  4453. }
  4454. .message-footer{
  4455. .message-actionBar{
  4456. margin-bottom: 0px;
  4457. .actionBar-set--external{
  4458. .message-attribution-opposite{
  4459. margin-left: 14px;
  4460. a{
  4461. color: @xf-linkColor !important;
  4462. }
  4463. }
  4464. }
  4465. .actionBar-set--internal{
  4466. .message-attribution-main{
  4467. color: #989899 !important;
  4468. }
  4469. }
  4470. }
  4471. }
  4472. }
  4473. }
  4474. }
  4475.  
  4476. //quick reply
  4477. body[data-template="thread_view"]{
  4478. .p-body-content{
  4479. .message-content{
  4480. margin-top: -20px;
  4481. }
  4482. }
  4483.  
  4484. form .block-container .message--quickReply .message-inner .message-cell--user .message-user .message-avatar .message-avatar-wrapper{
  4485. &:before{
  4486. content: '';
  4487. width: 106px;
  4488. height: 106px;
  4489. position: absolute;
  4490. left: 7px;
  4491. top: 7px;
  4492. border-radius: 100%;
  4493. background-color: rgba(255, 255, 255, 0.1);
  4494. }
  4495. }
  4496. .block--messages .message .message-inner .message-cell--user .message-user{
  4497. border: 1px solid @xf-borderColor;
  4498. }
  4499. }
  4500. form{
  4501. .block-container{
  4502. border-left: none;
  4503. border-right: none;
  4504. border-radius: 0;
  4505. padding: 15px 0;
  4506. .message--quickReply{
  4507. border-radius: 0;
  4508. .message-inner{
  4509. .message-cell--user{
  4510. border: none;
  4511. .message-user{
  4512. .message-avatar{
  4513. .message-avatar-wrapper{
  4514. margin: -10px;
  4515. padding: 10px;
  4516. border-radius: 2px;
  4517. position: relative;
  4518. border: 1px solid @xf-borderColor;
  4519. .avatar{
  4520. border-radius: inherit;
  4521. }
  4522. }
  4523. }
  4524. .message-userArrow{
  4525. display: none;
  4526. }
  4527. }
  4528. }
  4529. .message-cell--main{
  4530. margin-top: -10px;
  4531. .formButtonGroup{
  4532. text-align: center;
  4533. display: inherit;
  4534. margin-top: 15px;
  4535. .formButtonGroup-primary{
  4536. margin: 0;
  4537. display: inline-block;
  4538. }
  4539. .formButtonGroup-extra{
  4540. margin: 0;
  4541. display: inline-block;
  4542. }
  4543. }
  4544. }
  4545. }
  4546. }
  4547. }
  4548. }
  4549. [data-template="thread_view"]{
  4550. .p-body-content{
  4551. .is-editing{
  4552. form,.block-container{
  4553. padding-top: 0;
  4554. }
  4555. }
  4556. }
  4557. }
  4558.  
  4559. @media (min-width: @xf-responsiveMedium) {
  4560. [data-template="thread_view"]{
  4561. .p-body-content{
  4562. .button{
  4563. margin: 0 3px;
  4564. }
  4565. }
  4566. }
  4567. }]]></template>
  4568. <template title="brv_nav.less" type="public" addon_id="" version_id="0" version_string=""><![CDATA[html[dir="RTL"]{
  4569. .p-nav .p-nav-inner .p-nav-scroller .hScroller-scroll .p-nav-list li .p-navEl .p-navEl-link:before{
  4570. transform: translateX(50%);
  4571. }
  4572. }
  4573.  
  4574. .p-nav{
  4575. .p-nav-inner{
  4576. align-items: center;
  4577. position: relative;
  4578. &:before{
  4579. content: '';
  4580. display: block;
  4581. position: absolute;
  4582. left: 15px;
  4583. top: 1px;
  4584. bottom: 0;
  4585. right: 15px;
  4586. background-color: #b086d5;
  4587. border-radius: 15px 15px 0 0;
  4588. }
  4589. .p-nav-scroller{
  4590. padding-left: 15px;
  4591. .hScroller-scroll{
  4592. &.is-calculated{
  4593. overflow-y: hidden;
  4594. }
  4595. .p-nav-list{
  4596. li{
  4597. &:first-child{
  4598. margin-left: 0px;
  4599. &.is-selected{
  4600. .p-navEl{
  4601. &:hover{
  4602. background-color: transparent;
  4603. }
  4604. .p-navEl-link{
  4605. &:hover{
  4606. background-color: transparent;
  4607. }
  4608. }
  4609. }
  4610. }
  4611. .p-navEl{
  4612. &:hover{
  4613. background-color: transparent;
  4614. }
  4615. .p-navEl-link{
  4616. &:hover{
  4617. background-color: transparent;
  4618. }
  4619. }
  4620. }
  4621. }
  4622. .p-navEl{
  4623. position: relative;
  4624. &[data-has-children="true"]{
  4625. &:not(.is-selected){
  4626. .p-navEl-link{
  4627. padding-right: 25px;
  4628. }
  4629. }
  4630. }
  4631. &.is-menuOpen{
  4632. background: rgba(0, 0, 0, 0.2);
  4633. box-shadow: none;
  4634. }
  4635. &.is-selected{
  4636. &.is-menuOpen{
  4637. .p-navEl-splitTrigger{
  4638. opacity: 1;
  4639. visibility: visible;
  4640. }
  4641. }
  4642. }
  4643. .p-navEl-splitTrigger{
  4644. position: absolute;
  4645. bottom: 0;
  4646. right: 5px;
  4647. &:hover{
  4648. background-color: transparent;
  4649. }
  4650. &:after{
  4651. font-size: 18px;
  4652. color: #ffffff;
  4653. }
  4654. }
  4655. .p-navEl-link{
  4656. padding: 10px 15px;
  4657. position: relative;
  4658. letter-spacing: 0.5px;
  4659. &:hover{
  4660. background-color: transparent;
  4661. }
  4662. }
  4663. }
  4664. }
  4665. }
  4666. }
  4667. }
  4668. }
  4669. }
  4670. .p-nav-opposite{
  4671. margin-right: 0;
  4672. display: flex;
  4673. align-items: center;
  4674.  
  4675. }
  4676. .p-discovery{
  4677. background-color: transparent;
  4678. margin: 0;
  4679. position: absolute !important;
  4680. right: 0;
  4681. bottom: -40px;
  4682. margin-left: 15px !important;
  4683. .search-area{
  4684. position: relative;
  4685. width: 270px;
  4686. form{
  4687. border-radius: 0;
  4688. border: none;
  4689. background-color: transparent;
  4690. .search-input{
  4691. padding: 0;
  4692. background-color: transparent;
  4693. position: relative;
  4694. padding-left: 10px;
  4695. &:before{
  4696. content: '';
  4697. position: absolute;
  4698. left: 0;
  4699. top: 50%;
  4700. transform: translateY(-50%);
  4701. .search-ico;
  4702. width: 16px;
  4703. height: 16px;
  4704. }
  4705. input{
  4706. border: none;
  4707. border-radius: 0;
  4708. color: #fff;
  4709. padding-left: 15px;
  4710. line-height: 28px;
  4711. background: transparent;
  4712. border-radius: 2px;
  4713. height: 40px;
  4714. &:-ms-input-placeholder{
  4715. color: rgba(255,255,255, .6);
  4716. }
  4717. &::-ms-input-placeholder{
  4718. color: rgba(255,255,255, .6);
  4719. }
  4720. &::placeholder{
  4721. color: rgba(255,255,255, .6);
  4722. }
  4723. }
  4724. }
  4725. .search-option{
  4726. position: absolute;
  4727. width: 270px;
  4728. top: 150%;
  4729. left: 0;
  4730. opacity: 0;
  4731. visibility: hidden;
  4732. padding: 15px 0;
  4733. background-color: @xf-BrvColor1;
  4734. transition: all 500ms;
  4735. box-shadow: 0 5px 10px 0 rgba(0, 0, 0, 0.35);
  4736. z-index: 999;
  4737. &.active{
  4738. top: 100%;
  4739. opacity: 1;
  4740. visibility: visible;
  4741. }
  4742. .inputGroup{
  4743. padding: 10px;
  4744. select{
  4745. background-color: @xf-BrvColor1;
  4746. border: 1px solid @xf-borderColor;
  4747. width: 100% !important;
  4748. option{
  4749. color: #000000;
  4750. }
  4751. }
  4752. }
  4753.  
  4754. .menu-footer{
  4755. padding: 10px 15px;
  4756. background: @xf-BrvColor1 !important;
  4757. border: none;
  4758. .menu-footer-controls{
  4759. .button{
  4760. color: #fff;
  4761. }
  4762. }
  4763. }
  4764. }
  4765. }
  4766. }
  4767. }
  4768. .p-navgroup{
  4769. background-color: transparent !important;
  4770. border-radius: 0;
  4771. position: relative;
  4772. .p-navgroup-link{
  4773. border: none;
  4774. opacity: 1;
  4775. padding: 0 15px;
  4776. width: auto;
  4777. height: 40px;
  4778. text-align: center;
  4779. line-height: 40px;
  4780. border-radius: 0;
  4781. font-weight: 400;
  4782. &:hover{
  4783. background-color: transparent;
  4784. color: #fff;
  4785. }
  4786. &.is-menuOpen{
  4787. box-shadow: none;
  4788. background-color: transparent;
  4789. color: #fff;
  4790. }
  4791. color: @xf-BrvColor1;
  4792. &.p-navgroup-link--alerts{
  4793. &.is-menuOpen{
  4794. background: @xf-paletteColor3;
  4795. }
  4796. i{
  4797.  
  4798. }
  4799. }
  4800. &.p-navgroup-link--conversations{
  4801. &.is-menuOpen{
  4802. background: @xf-paletteColor3;
  4803. }
  4804. i{
  4805.  
  4806. }
  4807. }
  4808. &.p-navgroup-link--logIn{
  4809. position: relative;
  4810. background-color: transparent;
  4811. padding: 0 15px;
  4812. border-radius: 0;
  4813. &:hover{
  4814. text-decoration: underline;
  4815. }
  4816. }
  4817. &.p-navgroup-link--register{
  4818. background-color: transparent;
  4819. padding: 0 15px;
  4820. border-radius: 0;
  4821. &:hover{
  4822. text-decoration: underline;
  4823. }
  4824. }
  4825. }
  4826. .p-navgroup-link--user{
  4827. max-width: none;
  4828. border-radius: 0;
  4829. position: relative;
  4830. &.is-menuOpen{
  4831. box-shadow: none;
  4832. }
  4833. }
  4834. }
  4835.  
  4836. .p-sectionLinks{
  4837. .p-sectionLinks-inner{
  4838. padding-left: 20px;
  4839. .hScroller-scroll{
  4840. .p-sectionLinks-list{
  4841. li{
  4842. .p-navEl{
  4843. a{
  4844. &:hover{
  4845. text-decoration: none;
  4846. }
  4847. }
  4848. }
  4849. }
  4850. }
  4851. }
  4852. }
  4853. }
  4854.  
  4855.  
  4856. @media (max-width: @xf-responsiveMedium) {
  4857. .p-nav .p-nav-inner:before{
  4858. display: none;
  4859. }
  4860. }]]></template>
  4861. <template title="brv_responsive.less" type="public" addon_id="" version_id="0" version_string=""><![CDATA[@media (max-width: 1366px){
  4862. .p-body{
  4863. margin-top: -2px;
  4864. }
  4865. }
  4866.  
  4867. @media (max-width: 1200px){
  4868. .p-footer{
  4869. .footer-bottom{
  4870. .p-footer-inner{
  4871. text-align: center;
  4872. .p-footer-row-opposite{
  4873. float: none;
  4874. margin-bottom: 0;
  4875. text-align: center;
  4876. margin-top: 5px;
  4877. .p-footer-linkList{
  4878. li{
  4879. float: none;
  4880. display: inline-block;
  4881. }
  4882. }
  4883. }
  4884. }
  4885. }
  4886. }
  4887. }
  4888.  
  4889. @media (max-width: 991px){
  4890. .hidden-md{
  4891. display: none !important;
  4892. }
  4893. .brv-nav{
  4894. padding-left: 0;
  4895. &:before{
  4896. display: none;
  4897. }
  4898. }
  4899. .p-discovery .search-area{
  4900. width: 250px;
  4901. }
  4902. }
  4903.  
  4904. @media (max-width: @xf-responsiveWide){
  4905.  
  4906. .p-pageWrapper{
  4907. overflow: hidden;
  4908. }
  4909. .brv-nav .brv-nav__control{
  4910. min-width: 150px;
  4911. }
  4912. .brv-nav{
  4913. max-width: 50%;
  4914. }
  4915. .p-nav .p-nav-inner .p-navgroup .p-navgroup-link--user:after{
  4916. display: none;
  4917. }
  4918. #footer{
  4919. .footer-custom{
  4920. .footer-column{
  4921. margin-bottom: 30px;
  4922. &.footer-column-1{
  4923. width: 100% ;
  4924. .content-inner{
  4925. p{
  4926. max-width: none !important;
  4927. }
  4928. }
  4929. }
  4930. &.footer-column-2{
  4931. width: 30%;
  4932. }
  4933. &.footer-column-3{
  4934. width: 30%;
  4935. }
  4936. &.footer-column-4{
  4937. width: 40%;
  4938. }
  4939. }
  4940. }
  4941. }
  4942. }
  4943.  
  4944. @media (max-width: @xf-responsiveMedium){
  4945. .hidden-xs{
  4946. display: none !important;
  4947. }
  4948. .is-sticky{
  4949. box-shadow: none !important;
  4950. }
  4951. .has-js .p-nav .p-nav-menuTrigger{
  4952. margin-right: auto;
  4953. }
  4954. .brv-nav{
  4955. display: none;
  4956. }
  4957. .block--messages .message .message-inner .message-cell--user .message-userDetails{
  4958. margin-top: 0;
  4959. }
  4960. .structItem-cell.structItem-cell--main{
  4961. padding-left: 10px !important;
  4962. }
  4963. .structItem-cell.structItem-cell--meta{
  4964. padding-left: 10px;
  4965. padding-bottom: 0;
  4966. line-height: 12px;
  4967. position: relative;
  4968. top: -3px;
  4969. background-color: transparent !important;
  4970. width: auto !important;
  4971. border: none !important;
  4972. }
  4973. .structItem-cell.structItem-cell--latest{
  4974. width: auto !important;
  4975. }
  4976. .block--messages .message .message-inner .message-cell--user .message-userDetails .userTitle{
  4977. width: 100%;
  4978. }
  4979. .block--messages .message .message-inner .message-cell--user .message-userDetails .userBanner{
  4980. margin: 0 !important;
  4981. }
  4982. .block--messages .message .message-inner .message-cell--user .message-userDetails .userBanner:before,
  4983. .block--messages .message .message-inner .message-cell--user .message-userDetails .userBanner:after{
  4984. display: none;
  4985. }
  4986. .block-footer.block-footer--split .block-footer-controls .input--inline{
  4987. width: 100%;
  4988. }
  4989. .block-footer.block-footer--split .block-footer-controls .button{
  4990. margin: 5px 0;
  4991. }
  4992. #footer .p-footer-inner .footer-custom .row .footer-column.footer-column-1 .footer-social a{
  4993. margin-bottom: 5px;
  4994. }
  4995. #footer{
  4996. .footer-custom{
  4997. .footer-column{
  4998. margin-bottom: 30px;
  4999. &.footer-column-1{
  5000. width: 100% ;
  5001. .content-inner{
  5002. p{
  5003. max-width: none !important;
  5004. }
  5005. }
  5006. }
  5007. &.footer-column-2{
  5008. width: 50%;
  5009. }
  5010. &.footer-column-3{
  5011. width: 50%;
  5012. }
  5013. &.footer-column-4{
  5014. width: 100%;
  5015. }
  5016. }
  5017. }
  5018. .footer-bottom{
  5019. .p-footer-copyright{
  5020. width: 100%;
  5021. text-align: center !important;
  5022. margin: 15px 0 !important;
  5023. }
  5024. .p-footer-row-opposite{
  5025. .p-footer-linkList{
  5026. text-align: center;
  5027. li{
  5028. float: none;
  5029. display: inline-block;
  5030. }
  5031. }
  5032. }
  5033. }
  5034. }
  5035. }
  5036. @media (max-width: @xf-responsiveNarrow){
  5037. .formButtonGroup{
  5038. .button{
  5039. margin-top: 5px;
  5040. }
  5041. }
  5042.  
  5043. .actionBar-action.actionBar-action--menuTrigger{
  5044. display: inline !important;
  5045. }
  5046.  
  5047. #footer{
  5048. .footer-custom{
  5049. .footer-column{
  5050. margin-bottom: 30px;
  5051. &.footer-column-1{
  5052. width: 100% ;
  5053. .content-inner{
  5054. p{
  5055. max-width: none !important;
  5056. }
  5057. }
  5058. }
  5059. &.footer-column-2{
  5060. width: 100%;
  5061. }
  5062. &.footer-column-3{
  5063. width: 100%;
  5064. }
  5065. &.footer-column-4{
  5066. width: 100%;
  5067. }
  5068. }
  5069. }
  5070. }
  5071. }
  5072. @media (max-width: 425px){
  5073.  
  5074. html[dir="RTL"]{
  5075. .p-nav .p-nav-inner .p-nav-opposite .p-navgroup .search-area form .search-option{
  5076. transform: translateX(50%);
  5077. }
  5078. }
  5079.  
  5080.  
  5081. }
  5082. @media (max-width: 375px){
  5083.  
  5084. }
  5085. @media (max-width: 320px){
  5086.  
  5087. }
  5088.  
  5089. //responsive min width
  5090.  
  5091. @media (min-width: @xf-responsiveNarrow){
  5092.  
  5093. }
  5094.  
  5095. @media (min-width: @xf-responsiveMedium){
  5096. .show-xs{
  5097. display: none !important;
  5098. }
  5099. //p-staffBar
  5100. .p-staffBar{
  5101. .hScroller-scroll.is-calculated{
  5102. overflow-y: hidden;
  5103. overflow-x: hidden;
  5104. margin: 0 !important;
  5105. }
  5106. }
  5107. .link-admin{
  5108. float: right;
  5109. }
  5110. }
  5111.  
  5112. @media (min-width: @xf-responsiveWide){
  5113.  
  5114. .show-sm{
  5115. display: none !important;
  5116. }
  5117.  
  5118. #footer{
  5119. .footer-custom{
  5120. .footer-column{
  5121. &.footer-column-1{
  5122. width: 48% ;
  5123. }
  5124. &.footer-column-2{
  5125. width: 15%;
  5126. }
  5127. &.footer-column-3{
  5128. width: 15%;
  5129. }
  5130. &.footer-column-4{
  5131. width: 22%;
  5132. }
  5133. }
  5134. }
  5135. }
  5136. }
  5137.  
  5138. @media (min-width: 991px){
  5139. .show-md{
  5140. display: none !important;
  5141. }
  5142. }
  5143.  
  5144. @media (min-width: 1200px){
  5145.  
  5146. }
  5147.  
  5148. @media (min-width: 1366px){
  5149.  
  5150. }]]></template>
  5151. <template title="brv_stickynav.less" type="public" addon_id="" version_id="0" version_string=""><![CDATA[.is-sticky{
  5152. .p-nav{
  5153. .p-nav-inner{
  5154. .p-nav-scroller{
  5155. .hScroller-scroll{
  5156. .p-nav-list{
  5157. li{
  5158. &:first-child{
  5159. margin-left: 12px;
  5160. }
  5161. .p-navEl{
  5162. .p-navEl-link{
  5163. padding: 10px 20px;
  5164. &:before{
  5165. display: none;
  5166. }
  5167. }
  5168. .p-navEl-splitTrigger{
  5169. right: 0;
  5170. bottom: 0;
  5171. &:before{
  5172. display: none;
  5173. }
  5174. }
  5175. }
  5176. }
  5177. }
  5178. }
  5179. }
  5180. .p-discovery{
  5181. display: none;
  5182. }
  5183. }
  5184. }
  5185. }]]></template>
  5186. <template title="brv_structured.less" type="public" addon_id="" version_id="0" version_string=""><![CDATA[.structItem.is-highlighted, .structItem.is-moderated{
  5187. background: @xf-BrvColor4 !important;
  5188. }
  5189. .structItem.is-mod-selected{
  5190. background: @xf-BrvColor4 !important;
  5191. }
  5192. .structItemContainer{
  5193. background: @xf-BrvColor1;
  5194. .structItem{
  5195. border-color: @xf-borderColor;
  5196. .structItem-cell--icon{
  5197. width: 70px;
  5198. padding-left: 15px;
  5199. padding-right: 10px;
  5200. .structItem-iconContainer{
  5201. .avatar:first-child{
  5202. width: 45px;
  5203. height: 45px;
  5204. font-size: 20px;
  5205. span{
  5206. line-height:43px;
  5207. }
  5208. }
  5209. }
  5210. }
  5211. .structItem-cell--main{
  5212. .structItem-title{
  5213. margin: 5px 0;
  5214. font-size: 14px;
  5215. font-weight: 500;
  5216. .labelLink{
  5217. font-size: 11px;
  5218. line-height: 18px;
  5219. position: relative;
  5220. top: -3px;
  5221. margin-right: 5px;
  5222. .label{
  5223. border: none;
  5224. padding: 3px 8px;
  5225. line-height: 13px;
  5226. border-radius: 2.5px;
  5227. color: #fff;
  5228. font-weight: 600;
  5229. font-size: 90%;
  5230. }
  5231. }
  5232. a{
  5233. color: @xf-linkColor;
  5234. font-weight: 600;
  5235. }
  5236. }
  5237. .structItem-minor{
  5238. .structItem-parts{
  5239. li{
  5240. &:before{
  5241. display: none;
  5242. }
  5243. }
  5244. .username{
  5245. color: @xf-textColor;
  5246. font-weight: 600;
  5247. margin-right: 40px;
  5248. }
  5249. }
  5250. }
  5251. }
  5252. .structItem-cell--meta{
  5253. background: @xf-BrvColor4;
  5254. border-left: 1px solid @xf-BrvColor4;
  5255. border-right: 1px solid @xf-BrvColor4;
  5256. width: 165px;
  5257. dl{
  5258. margin: 5px 0;
  5259. dt{
  5260. color: @xf-linkColor;
  5261. }
  5262. dd{
  5263. color: @xf-linkColor;
  5264. }
  5265. }
  5266. }
  5267. time{
  5268. color: @xf-textColor;
  5269. }
  5270. .structItem-pageJump{
  5271. display: none;
  5272. }
  5273. .structItem-cell--latest{
  5274. padding-right: 15px;
  5275. .structItem-minor{
  5276. margin: 5px 0;
  5277. a{
  5278. font-size: 14px;
  5279. font-weight: 600;
  5280. color: @xf-linkColor;
  5281. text-transform: capitalize;
  5282. }
  5283. }
  5284. >a{
  5285. font-size: 12px;
  5286. color: @xf-textColor;
  5287. }
  5288. }
  5289. }
  5290. }
  5291. body[data-template="forum_view"]{
  5292. .structItem-cell--latest{
  5293. width: 145px;
  5294. }
  5295. }
  5296. .is-unread .structItem-title{
  5297. font-weight: 700 !important;
  5298. a{
  5299. color: @xf-BrvColor2 !important;
  5300. }
  5301. }
  5302.  
  5303. .title-thread{
  5304. display: table;
  5305. width: 100%;
  5306. position: relative;
  5307. background-color: @xf-paletteColor3;
  5308. &:hover{
  5309. &:after{
  5310. animation-name: flicker;
  5311. animation-duration: 0.4s;
  5312. animation-iteration-count: infinite;
  5313. -webkit-animation-name: flicker;
  5314. -webkit-animation-duration: 0.4s;
  5315. -webkit-animation-iteration-count: infinite;
  5316. }
  5317. }
  5318. .item-title{
  5319. padding: 10px 10px 11px;
  5320. display: table-cell;
  5321. font-size: 14px;
  5322. text-transform: capitalize;
  5323. color: #fff;
  5324. font-weight: 400;
  5325. position: relative;
  5326. &.cell-title{
  5327. padding-left: 15px;
  5328. }
  5329. &.cell-user{
  5330. width: 130px;
  5331. text-align: right;
  5332. padding-right: 15px;
  5333. }
  5334. &.cell-views,&.cell-reply{
  5335. width: 90px;
  5336. text-align: center;
  5337. }
  5338. }
  5339. }]]></template>
  5340. <template title="core_block.less" type="public" addon_id="XF" version_id="2000270" version_string="2.0.2"><![CDATA[// ################################# BLOCKS ##################
  5341.  
  5342. .blocks
  5343. {
  5344. margin-bottom: @xf-elementSpacer;
  5345.  
  5346. &:last-child
  5347. {
  5348. margin-bottom: 0;
  5349. }
  5350.  
  5351. .block
  5352. {
  5353. margin-bottom: (@xf-elementSpacer / 2);
  5354.  
  5355. &:last-child
  5356. {
  5357. margin-bottom: 0;
  5358. }
  5359. }
  5360. }
  5361.  
  5362. .blocks-header
  5363. {
  5364. font-size: @xf-fontSizeLarger;
  5365. font-weight: @xf-fontWeightNormal;
  5366. color: @xf-textColorMuted;
  5367.  
  5368. margin-bottom: 5px;
  5369. }
  5370.  
  5371. .blocks-textJoiner
  5372. {
  5373. display: table;
  5374. width: 100%;
  5375. margin-bottom: (@xf-elementSpacer / 2);
  5376. padding: 0 @xf-paddingMedium;
  5377.  
  5378. > span
  5379. {
  5380. display: table-cell;
  5381. position: relative;
  5382.  
  5383. &:before
  5384. {
  5385. content: '';
  5386. position: absolute;
  5387. left: 0;
  5388. right: 0;
  5389. top: 50%;
  5390. border-top: @xf-borderSize solid @xf-borderColor;
  5391. }
  5392. }
  5393.  
  5394. > em
  5395. {
  5396. display: table-cell;
  5397. padding: 0 @xf-paddingLarge;
  5398. width: 1%;
  5399. white-space: nowrap;
  5400. font-size: @xf-fontSizeLargest;
  5401. line-height: 1;
  5402. font-style: normal;
  5403. text-align: center;
  5404. }
  5405. }
  5406.  
  5407. .block
  5408. {
  5409. margin-bottom: @xf-elementSpacer;
  5410.  
  5411. &.block--close
  5412. {
  5413. margin-bottom: 5px;
  5414. }
  5415.  
  5416. &.block--treeEntryChooser
  5417. {
  5418. .block-header
  5419. {
  5420. font-size: @xf-fontSizeLarge;
  5421.  
  5422. .block-desc
  5423. {
  5424. font-size: @xf-fontSizeSmallest;
  5425. }
  5426. }
  5427.  
  5428. .block-row
  5429. {
  5430. padding-top: 6px;
  5431. padding-bottom: 6px;
  5432. }
  5433.  
  5434. .contentRow
  5435. {
  5436. &.is-disabled
  5437. {
  5438. opacity: 0.5;
  5439. }
  5440. }
  5441.  
  5442. .contentRow-title
  5443. {
  5444. font-size: @xf-fontSizeNormal;
  5445. }
  5446.  
  5447. .contentRow-minor
  5448. {
  5449. font-size: @xf-fontSizeSmaller;
  5450. }
  5451.  
  5452. .contentRow-suffix
  5453. {
  5454. font-size: @xf-fontSizeSmall;
  5455. }
  5456. }
  5457. }
  5458.  
  5459. .block-outer
  5460. {
  5461. padding-bottom: 20px;
  5462. .m-clearFix();
  5463.  
  5464. &:empty
  5465. {
  5466. display: none;
  5467. }
  5468.  
  5469. &.block-outer--after
  5470. {
  5471. padding-top: 20px;
  5472. padding-bottom: 0;
  5473. }
  5474.  
  5475. .block-outer-hint
  5476. {
  5477. font-size: @xf-fontSizeSmall;
  5478. color: @xf-textColorMuted;
  5479. }
  5480. }
  5481. .block-outer-main { float: left; }
  5482. .block-outer-opposite { float: right; }
  5483. .block-outer-middle { text-align: center; }
  5484.  
  5485. .block-container
  5486. {
  5487.  
  5488. border-radius: @xf-blockBorderRadius;
  5489.  
  5490. .m-transition(); .m-transitionProperty(border margin); // edgeSpacerRemoval
  5491. }
  5492.  
  5493. @media (min-width: @xf-responsiveEdgeSpacerRemoval)
  5494. {
  5495. @{block-noStripSel} > :first-child,
  5496. .block-topRadiusContent,
  5497. @{block-noStripSel} > .block-body:first-child > .blockLink:first-child
  5498. {
  5499. border-top-left-radius: @block-borderRadius-inner;
  5500. border-top-right-radius: @block-borderRadius-inner;
  5501. }
  5502.  
  5503. @{block-noStripSel} > :last-child,
  5504. .block-bottomRadiusContent,
  5505. @{block-noStripSel} > .block-body:last-child > .blockLink:last-child
  5506. {
  5507. border-bottom-left-radius: @block-borderRadius-inner;
  5508. border-bottom-right-radius: @block-borderRadius-inner;
  5509. }
  5510.  
  5511. @{block-noStripSel} > .block-body:first-child > .dataList:first-child,
  5512. .block-topRadiusContent.dataList,
  5513. .block-topRadiusContent > .dataList:first-child
  5514. {
  5515. tbody:first-child .dataList-row:first-child,
  5516. thead:first-child .dataList-row:first-child
  5517. {
  5518. > .dataList-cell:first-child { border-top-left-radius: @block-borderRadius-inner; }
  5519. > .dataList-cell:last-child { border-top-right-radius: @block-borderRadius-inner; }
  5520. }
  5521. }
  5522.  
  5523. @{block-noStripSel} > .block-body:first-child > .formRow:first-child,
  5524. .block-topRadiusContent.formRow,
  5525. .block-topRadiusContent > .formRow:first-child
  5526. {
  5527. > dt { border-top-left-radius: @block-borderRadius-inner; }
  5528. > dd { border-top-right-radius: @block-borderRadius-inner; }
  5529. }
  5530.  
  5531. @{block-noStripSel} > .block-body:last-child > .dataList:last-child,
  5532. .block-bottomRadiusContent.dataList,
  5533. .block-bottomRadiusContent > .dataList:last-child
  5534. {
  5535. tbody:last-child .dataList-row:last-child
  5536. {
  5537. > .dataList-cell:first-child { border-bottom-left-radius: @block-borderRadius-inner; }
  5538. > .dataList-cell:last-child { border-bottom-right-radius: @block-borderRadius-inner; }
  5539. }
  5540. }
  5541.  
  5542. @{block-noStripSel} > .block-body:last-child > .formRow:last-child,
  5543. .block-bottomRadiusContent.formRow,
  5544. .block-bottomRadiusContent > .formRow:last-child
  5545. {
  5546. > dt { border-bottom-left-radius: @block-borderRadius-inner; }
  5547. > dd { border-bottom-right-radius: @block-borderRadius-inner; }
  5548. }
  5549.  
  5550. @{block-noStripSel} > .block-body:last-child .formSubmitRow:not(.is-sticky),
  5551. @{block-noStripSel} > .formSubmitRow:not(.is-sticky):last-child,
  5552. .block-bottomRadiusContent > .formSubmitRow:not(.is-sticky)
  5553. {
  5554. > dt { border-bottom-left-radius: @block-borderRadius-inner; }
  5555. > dd { border-bottom-right-radius: @block-borderRadius-inner; }
  5556.  
  5557. .formSubmitRow-bar
  5558. {
  5559. border-bottom-left-radius: @block-borderRadius-inner;
  5560. border-bottom-right-radius: @block-borderRadius-inner;
  5561. }
  5562. }
  5563. }
  5564.  
  5565. .block-header
  5566. {
  5567. padding: @xf-blockPaddingV @xf-blockPaddingH;
  5568. margin: 0;
  5569. font-weight: @xf-fontWeightNormal;
  5570. text-decoration: none;
  5571. .xf-blockHeader();
  5572.  
  5573. .m-clearFix();
  5574. .m-hiddenLinks();
  5575.  
  5576. &.block-header--separated
  5577. {
  5578. border-top: @xf-borderSize solid @xf-borderColorLight;
  5579. }
  5580.  
  5581. .block-desc
  5582. {
  5583. color: fade(@xf-blockHeader--color, 70);
  5584. .m-textColoredLinks();
  5585. }
  5586. }
  5587.  
  5588. .block-minorHeader
  5589. {
  5590. padding: @xf-blockPaddingV @xf-blockPaddingH;
  5591. margin: 0;
  5592. font-weight: @xf-fontWeightNormal;
  5593. text-decoration: none;
  5594. .xf-blockMinorHeader();
  5595.  
  5596. .m-clearFix();
  5597. .m-hiddenLinks();
  5598.  
  5599. .block-body + &
  5600. {
  5601. border-top: @xf-borderSize solid @xf-borderColorLight;
  5602. }
  5603.  
  5604. .block-desc
  5605. {
  5606. .m-textColoredLinks();
  5607. }
  5608.  
  5609. &--small
  5610. {
  5611. font-size: @xf-fontSizeSmall;
  5612. }
  5613. }
  5614.  
  5615. .block-tabHeader
  5616. {
  5617. padding: 0;
  5618. margin: 0;
  5619. font-weight: @xf-fontWeightNormal;
  5620. .xf-blockTabHeader();
  5621. .m-tabsTogether(xf-default(@xf-blockTabHeader--font-size, @xf-fontSizeNormal));
  5622.  
  5623. .tabs-tab
  5624. {
  5625. padding: @xf-blockPaddingV @xf-blockPaddingH max(0px, @xf-blockPaddingV - @xf-borderSizeFeature);
  5626. border-bottom: @xf-borderSizeFeature solid transparent;
  5627.  
  5628. &:hover
  5629. {
  5630. color: @xf-blockTabHeaderSelected--color;
  5631. background: fade(@xf-blockTabHeaderSelected--color, 10%);
  5632. }
  5633.  
  5634. &.is-active
  5635. {
  5636. background: none;
  5637. .xf-blockTabHeaderSelected();
  5638. }
  5639. }
  5640.  
  5641. .block-tabHeader-extra
  5642. {
  5643. float: right;
  5644. color: inherit;
  5645. font-size: @xf-blockTabHeader--font-size;
  5646. padding: @xf-blockPaddingV @xf-blockPaddingH;
  5647. }
  5648.  
  5649. .hScroller-action
  5650. {
  5651. .m-hScrollerActionColorVariation(
  5652. xf-default(@xf-blockTabHeader--background-color, transparent),
  5653. @xf-blockTabHeader--color,
  5654. @xf-blockTabHeaderSelected--color
  5655. );
  5656. }
  5657. }
  5658.  
  5659. .block-minorTabHeader
  5660. {
  5661. padding: 0;
  5662. margin: 0;
  5663. font-weight: @xf-fontWeightNormal;
  5664. .xf-blockMinorTabHeader();
  5665. .m-tabsTogether(xf-default(@xf-blockMinorTabHeader--font-size, @xf-fontSizeNormal));
  5666.  
  5667. .tabs-tab
  5668. {
  5669. padding: @xf-blockPaddingV @xf-blockPaddingH max(0px, @xf-blockPaddingV - @xf-borderSizeFeature);
  5670. border-bottom: @xf-borderSizeFeature solid transparent;
  5671.  
  5672. &:hover
  5673. {
  5674. color: @xf-blockMinorTabHeaderSelected--color;
  5675. }
  5676.  
  5677. &.is-active
  5678. {
  5679. background: none;
  5680. .xf-blockMinorTabHeaderSelected();
  5681. }
  5682. }
  5683.  
  5684. .hScroller-action
  5685. {
  5686. .m-hScrollerActionColorVariation(
  5687. xf-default(@xf-blockMinorTabHeader--background-color, transparent),
  5688. @xf-blockMinorTabHeader--color,
  5689. @xf-blockMinorTabHeaderSelected--color
  5690. );
  5691. }
  5692. }
  5693.  
  5694. .block-filterBar
  5695. {
  5696. padding: @xf-blockPaddingV @xf-blockPaddingH;
  5697. .xf-blockFilterBar();
  5698.  
  5699. .filterBar-filterToggle
  5700. {
  5701. background: mix(
  5702. xf-default(@xf-blockFilterBar--color, @xf-linkColor),
  5703. xf-default(@xf-blockFilterBar--background-color, transparent),
  5704. 8%
  5705. );
  5706. }
  5707.  
  5708. .filterBar-filterToggle,
  5709. .filterBar-menuTrigger
  5710. {
  5711. &:hover
  5712. {
  5713. text-decoration: none;
  5714. background: mix(
  5715. xf-default(@xf-blockFilterBar--color, @xf-linkColor),
  5716. xf-default(@xf-blockFilterBar--background-color, transparent),
  5717. 16%
  5718. );
  5719. }
  5720. }
  5721.  
  5722. .filterBar-menuTrigger
  5723. {
  5724. margin-right: -5px;
  5725. }
  5726. }
  5727.  
  5728. .block-textHeader
  5729. {
  5730. margin: @xf-blockPaddingV/2 0;
  5731. padding: 0;
  5732. font-weight: @xf-fontWeightNormal;
  5733. .xf-blockTextHeader();
  5734.  
  5735. .m-clearFix();
  5736. .m-hiddenLinks();
  5737.  
  5738. &.block-textHeader--scaled
  5739. {
  5740. font-size: inherit;
  5741. }
  5742.  
  5743. .block-textHeader-highlight
  5744. {
  5745. color: @xf-textColor;
  5746. }
  5747.  
  5748. .block-desc
  5749. {
  5750. .m-textColoredLinks();
  5751. }
  5752.  
  5753. &:first-child
  5754. {
  5755. margin-top: 0;
  5756. }
  5757. }
  5758.  
  5759. .block-formSectionHeader
  5760. {
  5761. padding: @xf-blockPaddingV @xf-blockPaddingH;
  5762. margin: 0;
  5763. font-weight: @xf-fontWeightNormal;
  5764. text-decoration: none;
  5765. .xf-formSectionHeader();
  5766.  
  5767. .m-clearFix();
  5768. .m-hiddenLinks();
  5769.  
  5770. .block-desc
  5771. {
  5772. .m-textColoredLinks();
  5773. }
  5774.  
  5775. .block-container > &:first-child
  5776. {
  5777. border-top: none;
  5778. }
  5779.  
  5780. .block-formSectionHeader-aligner
  5781. {
  5782. @_blockPaddingShift: (unit(@xf-formLabelWidth) / 100) * (@xf-blockPaddingH);
  5783.  
  5784. display: inline-block;
  5785. text-align: right;
  5786. min-width: @xf-formLabelWidth;
  5787. min-width: ~"calc((@{xf-formLabelWidth}) - (@{_blockPaddingShift}) - (@{xf-formRowPaddingHInner}) - (@{xf-borderSize}))";
  5788. max-width: 100%;
  5789.  
  5790. @media (max-width: @xf-formResponsive)
  5791. {
  5792. display: inline;
  5793. text-align: left;
  5794. min-width: 0;
  5795. padding-left: 0;
  5796. }
  5797. }
  5798.  
  5799. @media (max-width: @xf-formResponsive)
  5800. {
  5801. padding-left: @xf-formRowPaddingHOuter;
  5802. }
  5803.  
  5804. .block-formSectionHeader-multiChecker
  5805. {
  5806. float: right;
  5807. }
  5808. }
  5809.  
  5810. .block-desc
  5811. {
  5812. display: block;
  5813. font-size: @xf-fontSizeSmaller;
  5814. font-weight: @xf-fontWeightNormal;
  5815. }
  5816.  
  5817. .block-body
  5818. {
  5819. .m-listPlain();
  5820.  
  5821. &.block-body--collapsible
  5822. {
  5823. .has-no-js & { display: block; }
  5824.  
  5825. .m-transitionFadeDown();
  5826. }
  5827.  
  5828. &.block-body--contained
  5829. {
  5830. overflow: auto;
  5831. max-height: 300px;
  5832. max-height: 70vh;
  5833. }
  5834. }
  5835.  
  5836. .block-row
  5837. {
  5838. margin: 0;
  5839. padding: @xf-blockPaddingV @xf-blockPaddingH;
  5840. .m-clearFix();
  5841.  
  5842. &.block-row--alt
  5843. {
  5844. .xf-contentAltBase();
  5845. }
  5846.  
  5847. &.block-row--minor
  5848. {
  5849. font-size: @xf-fontSizeSmall;
  5850. }
  5851.  
  5852. &.block-row--separated
  5853. {
  5854. padding-top: (@xf-blockPaddingV) * 2;
  5855. padding-bottom: (@xf-blockPaddingV) * 2;
  5856.  
  5857. + .block-row
  5858. {
  5859. border-top: @xf-borderSize solid @xf-borderColorLight;
  5860. }
  5861. }
  5862.  
  5863. &.block-row--connectAbove
  5864. {
  5865. padding-bottom: (@xf-blockPaddingV) * 2;
  5866.  
  5867. .block-body > &:last-child
  5868. {
  5869. padding-bottom: @xf-blockPaddingV;
  5870. }
  5871. }
  5872.  
  5873. &.block-row--highlighted
  5874. {
  5875. .xf-contentHighlightBase();
  5876. }
  5877.  
  5878. &.block-row--clickable:hover
  5879. {
  5880. .xf-contentHighlightBase();
  5881. }
  5882.  
  5883. &.is-mod-selected
  5884. {
  5885. background: @xf-inlineModHighlightColor;
  5886. }
  5887.  
  5888. > pre
  5889. {
  5890. &:first-child { margin-top: 0; }
  5891. &:last-child { margin-bottom: 0; }
  5892. }
  5893. }
  5894.  
  5895. .block-separator
  5896. {
  5897. margin: 0;
  5898. padding: 0;
  5899. border: none;
  5900. border-top: @xf-borderSize solid @xf-borderColorLight;
  5901. }
  5902.  
  5903. .block-footer
  5904. {
  5905. padding: @xf-blockPaddingV @xf-blockPaddingH;
  5906. .xf-blockFooter();
  5907. .m-clearFix();
  5908.  
  5909. &:first-child
  5910. {
  5911. border: none;
  5912. }
  5913.  
  5914. [data-app=admin] &
  5915. {
  5916. .block-footer-counter,
  5917. .block-footer-select
  5918. {
  5919. line-height: 30px;
  5920. }
  5921. }
  5922.  
  5923. &:not(.block-footer--split)
  5924. {
  5925. .block-footer-counter
  5926. {
  5927. float: left;
  5928. }
  5929.  
  5930. .block-footer-controls
  5931. {
  5932. float: right;
  5933. }
  5934. }
  5935.  
  5936. &.block-footer--split
  5937. {
  5938. display: flex;
  5939. align-items: center;
  5940.  
  5941. .block-footer-main,
  5942. .block-footer-counter
  5943. {
  5944. flex-grow: 1;
  5945.  
  5946. .has-no-flexbox &
  5947. {
  5948. float: left;
  5949. }
  5950. }
  5951.  
  5952. .block-footer-select:not(:last-child)
  5953. {
  5954. margin: 0 1em;
  5955. }
  5956.  
  5957. .block-footer-opposite,
  5958. .block-footer-controls
  5959. {
  5960. margin-left: auto;
  5961.  
  5962. .has-no-flexbox &
  5963. {
  5964. float: right;
  5965. }
  5966. }
  5967. }
  5968. }
  5969.  
  5970. @media (max-width: @xf-responsiveNarrow)
  5971. {
  5972. .block-outer
  5973. {
  5974. text-align: center;
  5975. }
  5976.  
  5977. .block-outer-main,
  5978. .block-outer-opposite
  5979. {
  5980. float: none;
  5981. text-align: center;
  5982. }
  5983.  
  5984. .block-outer-main + .block-outer-opposite
  5985. {
  5986. margin-top: @xf-paddingMedium;
  5987. }
  5988. }]]></template>
  5989. <template title="core_button.less" type="public" addon_id="XF" version_id="2000670" version_string="2.0.6"><![CDATA[// ############################ BUTTONS #################
  5990.  
  5991. .button,
  5992. a.button // needed for specificity over a:link
  5993. {
  5994. .m-buttonBase();
  5995.  
  5996. a
  5997. {
  5998. color: inherit;
  5999. text-decoration: none;
  6000. }
  6001.  
  6002. .xf-buttonDefault();
  6003. .m-buttonBlockColorVariationSimple(xf-default(@xf-buttonDefault--background-color, transparent));
  6004.  
  6005. &.button--primary
  6006. {
  6007. .xf-buttonPrimary();
  6008. .m-buttonBlockColorVariationSimple(xf-default(@xf-buttonPrimary--background-color, transparent));
  6009. }
  6010.  
  6011. &.button--cta
  6012. {
  6013. .xf-buttonCta();
  6014. .m-buttonBlockColorVariationSimple(xf-default(@xf-buttonCta--background-color, transparent));
  6015. }
  6016.  
  6017. &.button--link
  6018. {
  6019. // block colors
  6020. .m-buttonBorderColorVariation(@xf-borderColor);
  6021. border:0;
  6022. &:hover,
  6023. &:active,
  6024. &:focus
  6025. {
  6026. text-decoration: none;
  6027. background: @xf-contentHighlightBg;
  6028. }
  6029. }
  6030.  
  6031. &.button--longText
  6032. {
  6033. white-space: normal;
  6034. text-align: left;
  6035. }
  6036.  
  6037. &.is-disabled
  6038. {
  6039. .xf-buttonDisabled();
  6040. .m-buttonBorderColorVariation(xf-default(@xf-buttonDisabled--background-color, transparent));
  6041.  
  6042. &:hover,
  6043. &:active,
  6044. &:focus
  6045. {
  6046. background: xf-default(@xf-buttonDisabled--background-color, transparent) !important;
  6047. }
  6048. }
  6049.  
  6050. &.button--scroll
  6051. {
  6052. background: fade(xf-default(@xf-buttonDefault--background-color, transparent), 75%);
  6053. padding: 5px 8px;
  6054.  
  6055. .m-dropShadow();
  6056. }
  6057.  
  6058. &.button--small
  6059. {
  6060. font-size: @xf-fontSizeSmaller;
  6061. padding: 3px 6px;
  6062. }
  6063.  
  6064. &.button--fullWidth
  6065. {
  6066. display: block;
  6067. }
  6068.  
  6069. &.button--icon
  6070. {
  6071. > .button-text:before
  6072. {
  6073. .m-faBase();
  6074. font-size: 120%;
  6075. vertical-align: -.1em;
  6076. display: inline-block;
  6077. margin: -.255em 6px -.255em 0;
  6078. }
  6079.  
  6080. &.button--iconOnly > .button-text
  6081. {
  6082. &:before
  6083. {
  6084. margin: 0;
  6085. }
  6086. }
  6087.  
  6088. &--add { .m-buttonIcon(@fa-var-plus-square, .79em); }
  6089. &--confirm { .m-buttonIcon(@fa-var-check, 1em); }
  6090. &--write { .m-buttonIcon(@fa-var-pencil-square-o, 1em); }
  6091. &--import { .m-buttonIcon(@fa-var-upload, .93em); }
  6092. &--export { .m-buttonIcon(@fa-var-download, .93em); }
  6093. &--download { .m-buttonIcon(@fa-var-download, .93em); }
  6094. &--disable { .m-buttonIcon(@fa-var-power-off); }
  6095. &--edit { .m-buttonIcon(@fa-var-pencil, .86em); }
  6096. &--save { .m-buttonIcon(@fa-var-save, .86em); }
  6097. &--reply { .m-buttonIcon(@fa-var-mail-reply, 1em); }
  6098. &--quote { .m-buttonIcon(@fa-var-quote-left, .93em); }
  6099. &--purchase { .m-buttonIcon(@fa-var-credit-card, 1.11em); }
  6100. &--payment { .m-buttonIcon(@fa-var-credit-card, 1.08em); }
  6101. &--convert { .m-buttonIcon(@fa-var-flash, .5em); }
  6102. &--search { .m-buttonIcon(@fa-var-search, .93em); }
  6103. &--sort { .m-buttonIcon(@fa-var-sort, .58em); }
  6104. &--upload { .m-buttonIcon(@fa-var-upload, .93em); }
  6105. &--attach { .m-buttonIcon(@fa-var-paperclip, .79em); }
  6106. &--login { .m-buttonIcon(@fa-var-lock, .65em); }
  6107. &--rate { .m-buttonIcon(@fa-var-star-half-empty, .93em); }
  6108. &--config { .m-buttonIcon(@fa-var-cog, .86em); }
  6109. &--refresh { .m-buttonIcon(@fa-var-refresh, .86em); }
  6110. &--translate { .m-buttonIcon(@fa-var-globe, .86em); }
  6111. &--vote { .m-buttonIcon(@fa-var-check-circle-o, .86em); }
  6112. &--result { .m-buttonIcon(@fa-var-bar-chart-o, 1.15em); }
  6113. &--history { .m-buttonIcon(@fa-var-history, .86em); }
  6114. &--cancel { .m-buttonIcon(@fa-var-remove, .86em); }
  6115. &--preview { .m-buttonIcon(@fa-var-eye, 1em); }
  6116. &--conversation { .m-buttonIcon(@fa-var-comments-o, 1em); }
  6117. &--bolt { .m-buttonIcon(@fa-var-bolt, .5em); }
  6118. &--list { .m-buttonIcon(@fa-var-list, .86em); }
  6119. &--prev { .m-buttonIcon(@fa-var-chevron-left, .71em); }
  6120. &--next { .m-buttonIcon(@fa-var-chevron-right, .71em); }
  6121. &--markRead { .m-buttonIcon(@fa-var-check-square-o, .93em); }
  6122.  
  6123. &--notificationsOn { .m-buttonIcon(@fa-var-bell-o, 1em); }
  6124. &--notificationsOff { .m-buttonIcon(@fa-var-bell-slash-o, 1.15em); }
  6125.  
  6126. // for inline mod confirmations
  6127. &--merge { .m-buttonIcon(@fa-var-compress, .86em); }
  6128. &--move { .m-buttonIcon(@fa-var-share, 1em); }
  6129. &--copy { .m-buttonIcon(@fa-var-clone, 1em); }
  6130. &--approve, &--unapprove { .m-buttonIcon(@fa-var-shield, .72em); }
  6131. &--delete, &--undelete { .m-buttonIcon(@fa-var-trash-o, .79em); }
  6132. &--stick, &--unstick { .m-buttonIcon(@fa-var-thumb-tack, .65em); }
  6133. &--lock { .m-buttonIcon(@fa-var-lock, .65em); }
  6134. &--unlock { .m-buttonIcon(@fa-var-unlock, .93em); }
  6135.  
  6136.  
  6137.  
  6138.  
  6139. //&--login:hover, &--login:active { .m-buttonIcon(@fa-var-unlock-alt, .65em); }
  6140. }
  6141.  
  6142. &.button--provider
  6143. {
  6144. > .button-text:before
  6145. {
  6146. .m-faBase();
  6147. font-size: 120%;
  6148. vertical-align: middle;
  6149. display: inline-block;
  6150. margin: -4px 6px -4px 0;
  6151. }
  6152.  
  6153. &--facebook
  6154. {
  6155. .m-buttonColorVariation(#3B5998, white);
  6156. .m-buttonIcon(@fa-var-facebook, .58em);
  6157. }
  6158.  
  6159. &--twitter
  6160. {
  6161. .m-buttonColorVariation(#1DA1F3, white);
  6162. .m-buttonIcon(@fa-var-twitter, .93em);
  6163. }
  6164.  
  6165. &--google
  6166. {
  6167. .m-buttonColorVariation(#4285F4, white);
  6168. .m-buttonIcon(@fa-var-google, .86em);
  6169. }
  6170.  
  6171. &--github
  6172. {
  6173. .m-buttonColorVariation(#666666, white);
  6174. .m-buttonIcon(@fa-var-github, .86em);
  6175. }
  6176.  
  6177. &--linkedin
  6178. {
  6179. .m-buttonColorVariation(#0077b5, white);
  6180. .m-buttonIcon(@fa-var-linkedin, .86em);
  6181. }
  6182.  
  6183. &--microsoft
  6184. {
  6185. .m-buttonColorVariation(#00bcf2, white);
  6186. .m-buttonIcon(@fa-var-windows, .93em);
  6187. }
  6188.  
  6189. &--yahoo
  6190. {
  6191. .m-buttonColorVariation(#410093, white);
  6192. .m-buttonIcon(@fa-var-yahoo, .86em);
  6193. }
  6194. }
  6195.  
  6196. &.button--splitTrigger
  6197. {
  6198. // button-text and button-menu are always children of button--splitTrigger
  6199. // but are defined here for reasons of specificity, as these border colors
  6200. // are overwritten by .m-buttonBorderColorVariation()
  6201. > .button-text { border-right: @xf-borderSize solid transparent; }
  6202. > .button-menu { border-left: @xf-borderSize solid transparent; }
  6203.  
  6204. .m-clearFix();
  6205. padding: 0;
  6206. font-size: 0;
  6207.  
  6208. button.button-text
  6209. {
  6210. background: transparent;
  6211. border: none;
  6212. border-right: @xf-borderSize solid transparent;
  6213. color: inherit;
  6214. }
  6215.  
  6216. > .button-text,
  6217. > .button-menu
  6218. {
  6219. .xf-buttonBase();
  6220. display: inline-block;
  6221.  
  6222. &:hover
  6223. {
  6224. &:after
  6225. {
  6226. opacity: 1;
  6227. }
  6228. }
  6229. }
  6230.  
  6231. > .button-text
  6232. {
  6233. .m-borderRightRadius(0);
  6234. }
  6235.  
  6236. > .button-menu
  6237. {
  6238. .m-borderLeftRadius(0);
  6239. padding-right: xf-default(@xf-buttonBase--padding-right, 0);// * (2/3);
  6240. padding-left: xf-default(@xf-buttonBase--padding-left, 0);// * (2/3);
  6241.  
  6242. &:after
  6243. {
  6244. .m-faBase();
  6245. .m-faContent(@fa-var-caret-down, .58em);
  6246. unicode-bidi: isolate;
  6247. opacity: .5;
  6248. }
  6249. }
  6250. }
  6251. }
  6252.  
  6253. .buttonGroup
  6254. {
  6255. display: inline-block;
  6256. vertical-align: top;
  6257. .m-clearFix();
  6258.  
  6259. &.buttonGroup--aligned
  6260. {
  6261. vertical-align: middle;
  6262. }
  6263.  
  6264. > .button
  6265. {
  6266. float: left;
  6267.  
  6268. &:not(:first-child)
  6269. {
  6270. border-left: none;
  6271. }
  6272.  
  6273. &:not(:first-child):not(:last-child)
  6274. {
  6275. border-radius: 0;
  6276. }
  6277.  
  6278. &:first-child:not(:last-child)
  6279. {
  6280. .m-borderRightRadius(0);
  6281. }
  6282.  
  6283. &:last-child:not(:first-child)
  6284. {
  6285. .m-borderLeftRadius(0);
  6286. }
  6287. }
  6288.  
  6289. > .buttonGroup-buttonWrapper
  6290. {
  6291. float: left;
  6292.  
  6293. &:not(:first-child) > .button
  6294. {
  6295. border-left: none;
  6296. }
  6297.  
  6298. &:not(:first-child):not(:last-child) > .button
  6299. {
  6300. border-radius: 0;
  6301. }
  6302.  
  6303. &:first-child:not(:last-child) > .button
  6304. {
  6305. .m-borderRightRadius(0);
  6306. }
  6307.  
  6308. &:last-child:not(:first-child) > .button
  6309. {
  6310. .m-borderLeftRadius(0);
  6311. }
  6312. }
  6313. }
  6314.  
  6315. .toggleButton
  6316. {
  6317. > input
  6318. {
  6319. display: none;
  6320. }
  6321.  
  6322. > span
  6323. {
  6324. .xf-buttonDisabled();
  6325. .m-buttonBorderColorVariation(xf-default(@xf-buttonDisabled--background-color, transparent));
  6326. }
  6327.  
  6328. &.toggleButton--small > span
  6329. {
  6330. font-size: @xf-fontSizeSmaller;
  6331. padding: @xf-paddingSmall;
  6332. }
  6333.  
  6334. > input:checked + span
  6335. {
  6336. .xf-buttonDefault();
  6337. .m-buttonBlockColorVariationSimple(xf-default(@xf-buttonDefault--background-color, transparent));
  6338. }
  6339. }
  6340.  
  6341. .u-scrollButtons
  6342. {
  6343. position: fixed;
  6344. bottom: 30px;
  6345. right: (@xf-pageEdgeSpacer) / 2;
  6346.  
  6347. .has-hiddenscroll &
  6348. {
  6349. right: 20px;
  6350. }
  6351.  
  6352. z-index: @zIndex-9;
  6353.  
  6354. .m-transition(opacity, @xf-animationSpeed);
  6355. opacity: 0;
  6356. display: none;
  6357.  
  6358. &.is-transitioning
  6359. {
  6360. display: block;
  6361. }
  6362.  
  6363. &.is-active
  6364. {
  6365. display: block;
  6366. opacity: 1;
  6367. }
  6368.  
  6369. .button
  6370. {
  6371. display: block;
  6372.  
  6373. + .button
  6374. {
  6375. margin-top: (@xf-pageEdgeSpacer) / 2;
  6376. }
  6377. }
  6378. }]]></template>
  6379. <template title="core_formrow.less" type="public" addon_id="XF" version_id="2001070" version_string="2.0.10"><![CDATA[// ########################################### FORM ROWS #################################
  6380.  
  6381. @_form-labelShiftInput: @xf-paddingMedium + @xf-borderSize; // technically input border-top-width + padding-top
  6382. @_form-labelButtonInput: 5px; // technically button border-top-width + padding-top, adjusted for text size differences
  6383. @_form-elementSpacer: @xf-paddingMedium;
  6384.  
  6385. .m-formRowBlockStyle()
  6386. {
  6387. display: block;
  6388.  
  6389. > dt,
  6390. > dd
  6391. {
  6392. width: auto;
  6393. display: block;
  6394. padding: ((@xf-formRowPaddingV) / 2) @xf-formRowPaddingHOuter @xf-formRowPaddingV;
  6395. }
  6396.  
  6397. > dt
  6398. {
  6399. background: none;
  6400. border: none;
  6401. text-align: left;
  6402. padding-bottom: 0;
  6403.  
  6404. .formRow-hint
  6405. {
  6406. display: inline;
  6407. }
  6408. }
  6409.  
  6410. &.formRow--input,
  6411. &.formRow--button
  6412. {
  6413. > dt
  6414. {
  6415. padding-top: ((@xf-formRowPaddingV) / 2);
  6416. }
  6417. }
  6418.  
  6419. > dd
  6420. {
  6421. padding-top: ((@xf-formRowPaddingV) / 2);
  6422. }
  6423.  
  6424. > dd > .inputChoices:first-child
  6425. {
  6426. padding-top: 0;
  6427. }
  6428. }
  6429.  
  6430. .formRow
  6431. {
  6432. display: table;
  6433. table-layout: fixed;
  6434. width: 100%;
  6435. margin: 0;
  6436. position: relative;
  6437.  
  6438. > dt,
  6439. > dd
  6440. {
  6441. display: table-cell;
  6442. vertical-align: top;
  6443. margin: 0;
  6444. }
  6445.  
  6446. > dt
  6447. {
  6448. border-right: @xf-borderSize solid transparent;
  6449. width: @xf-formLabelWidth;
  6450. padding: @xf-formRowPaddingV @xf-formRowPaddingHInner @xf-formRowPaddingV @xf-formRowPaddingHOuter;
  6451. }
  6452.  
  6453. > dd
  6454. {
  6455. width: (100% - @xf-formLabelWidth);
  6456. padding: @xf-formRowPaddingV @xf-formRowPaddingHOuter @xf-formRowPaddingV @xf-formRowPaddingHInner;
  6457. }
  6458.  
  6459. &.formRow--input > dt
  6460. {
  6461. padding-top: (@xf-formRowPaddingV + @_form-labelShiftInput);
  6462. }
  6463.  
  6464. &.formRow--button > dt
  6465. {
  6466. padding-top: (@xf-formRowPaddingV + @_form-labelButtonInput);
  6467. }
  6468.  
  6469. &.formRow--inputLabelPair > dt
  6470. {
  6471. padding-top: (@xf-formRowPaddingV * 2);
  6472. }
  6473.  
  6474. &.formRow--valueToEdge > dd
  6475. {
  6476. padding-left: 0;
  6477. padding-right: 0;
  6478. }
  6479.  
  6480. &.formRow--limited
  6481. {
  6482. display: none;
  6483. }
  6484.  
  6485. &.formRow--fullWidth
  6486. {
  6487. .m-formRowBlockStyle();
  6488.  
  6489. & + .formRow,
  6490. .formRow + &,
  6491. & + * > .formRow:first-of-type, // allows formRows to be wrapped
  6492. .formRow + * > &:first-of-type // in a single-depth grouping element
  6493. {
  6494. border-top: @xf-borderSize solid @xf-borderColorLight;
  6495. }
  6496.  
  6497. &.formRow--noLabel
  6498. {
  6499. > dt
  6500. {
  6501. display: none;
  6502. }
  6503.  
  6504. > dd
  6505. {
  6506. padding-top: @xf-formRowPaddingV;
  6507. }
  6508. }
  6509.  
  6510. & + .formRow--mergePrev,
  6511. & + * > .formRow:first-of-type.formRow--mergePrev,
  6512. &.formRow--mergeNext + &,
  6513. &.formRow--mergeNext + * > &:first-of-type
  6514. {
  6515. border-top: 0;
  6516.  
  6517. > dt
  6518. {
  6519. padding-top: 0;
  6520. }
  6521. }
  6522.  
  6523. &.formRow--noGutter
  6524. {
  6525. > dt,
  6526. > dd
  6527. {
  6528. padding-left: 0;
  6529. padding-right: 0;
  6530. }
  6531. }
  6532.  
  6533. &.formRow--noPadding
  6534. {
  6535. > dt,
  6536. > dd
  6537. {
  6538. padding: 0;
  6539. }
  6540. }
  6541.  
  6542. &.formRow--noPadding + &,
  6543. &.formRow--noPadding + * > &:first-of-type
  6544. {
  6545. > dt
  6546. {
  6547. padding-top: @xf-formRowPaddingV;
  6548. }
  6549. }
  6550. }
  6551.  
  6552. .formRow-label
  6553. {
  6554. .m-appendColon();
  6555. }
  6556.  
  6557. &.formRow--noColon .formRow-label:after
  6558. {
  6559. content: "";
  6560. }
  6561.  
  6562. .formRow-explain
  6563. {
  6564. margin: @_form-elementSpacer 0 0;
  6565. .m-formElementExplain();
  6566. }
  6567.  
  6568. &.formRow--explainOffset .formRow-explain
  6569. {
  6570. margin-top: (@_form-elementSpacer) * 2;
  6571. }
  6572.  
  6573. .formRow-hint
  6574. {
  6575. display: block;
  6576. font-style: normal;
  6577. .xf-formHint();
  6578.  
  6579. .m-textColoredLinks();
  6580.  
  6581. .formRow-hint-featured
  6582. {
  6583. display: block;
  6584. //font-weight: @xf-fontWeightHeavy;
  6585. color: @xf-textColorFeature;
  6586. }
  6587. }
  6588.  
  6589. + .formInfoRow
  6590. {
  6591. border-top: @xf-borderSize solid @xf-borderColorLight;
  6592. }
  6593.  
  6594. @media (max-width: @xf-formResponsive)
  6595. {
  6596. .m-formRowBlockStyle();
  6597. }
  6598. }
  6599.  
  6600. .formButtonGroup
  6601. {
  6602. display: flex;
  6603. flex-wrap: wrap;
  6604. margin-top: @xf-paddingLarge;
  6605. margin-bottom: -5px;
  6606.  
  6607. .has-no-flexbox
  6608. {
  6609. .m-clearFix();
  6610. }
  6611. }
  6612.  
  6613. .formButtonGroup-primary
  6614. {
  6615. order: 2;
  6616. margin-left: auto;
  6617. margin-bottom: 5px;
  6618.  
  6619. .has-no-flexbox
  6620. {
  6621. float: right;
  6622. }
  6623. }
  6624.  
  6625. .formButtonGroup-extra
  6626. {
  6627. order: 1;
  6628. margin-bottom: 5px;
  6629.  
  6630. .has-no-flexbox
  6631. {
  6632. float: left;
  6633. }
  6634. }
  6635.  
  6636. .formInfoRow
  6637. {
  6638. padding: @xf-formRowPaddingV @xf-formRowPaddingHOuter;
  6639.  
  6640. &.formInfoRow--close
  6641. {
  6642. padding-top: ((@xf-formRowPaddingV) / 2);
  6643. padding-bottom: ((@xf-formRowPaddingV) / 2);
  6644. }
  6645.  
  6646. &.formInfoRow--noPadding
  6647. {
  6648. padding: 0;
  6649. }
  6650.  
  6651. &.formInfoRow--confirm
  6652. {
  6653. text-align: center;
  6654.  
  6655. strong
  6656. {
  6657. display: block;
  6658. margin: .5em 0;
  6659. font-size: @xf-fontSizeLarger;
  6660.  
  6661. &:last-child
  6662. {
  6663. margin-bottom: 0;
  6664. }
  6665. }
  6666. }
  6667.  
  6668. + .formRow
  6669. {
  6670. border-top: @xf-borderSize solid @xf-borderColorLight;
  6671. }
  6672.  
  6673. &.u-hidden:not(.is-active)
  6674. {
  6675. + .formRow
  6676. {
  6677. border-top: none;
  6678. }
  6679. }
  6680.  
  6681. > .blockMessage
  6682. {
  6683. &:first-child { margin-top: 0; }
  6684. &:last-child { margin-bottom: 0; }
  6685. }
  6686. }
  6687.  
  6688. .formSubmitRow
  6689. {
  6690. position: relative;
  6691.  
  6692. > dt
  6693. {
  6694. display: none;
  6695. }
  6696.  
  6697. > dd
  6698. {
  6699. width: 100%;
  6700. padding: 0;
  6701. }
  6702.  
  6703. &.formSubmitRow--sticky.is-sticky
  6704. {
  6705. .formSubmitRow-main
  6706. {
  6707. position: fixed;
  6708. bottom: 0;
  6709. z-index: @zIndex-2;
  6710. }
  6711.  
  6712. .formSubmitRow-bar
  6713. {
  6714. box-shadow: 0px -5px 15px fade(black, 15%);
  6715. }
  6716. }
  6717.  
  6718. &.formSubmitRow--simple
  6719. {
  6720. > dt
  6721. {
  6722. visibility: hidden;
  6723. }
  6724.  
  6725. .formSubmitRow-controls
  6726. {
  6727. text-align: center;
  6728. padding-left: 0;
  6729. margin-left: 0;
  6730. }
  6731. }
  6732.  
  6733. .block-body--collapsible:not(.is-active) + &:not(.formSubmitRow--simple)
  6734. {
  6735. > dt
  6736. {
  6737. visibility: hidden;
  6738. }
  6739. }
  6740. }
  6741.  
  6742. .formSubmitRow-main
  6743. {
  6744. position: relative;
  6745. }
  6746.  
  6747. .formSubmitRow-bar
  6748. {
  6749. position: absolute;
  6750. top: 0;
  6751. right: 0;
  6752. bottom: 0;
  6753. left: 0;
  6754.  
  6755. }
  6756.  
  6757. .formSubmitRow-controls
  6758. {
  6759. position: relative;
  6760. padding-left: @xf-formLabelWidth;
  6761. padding-top: @xf-paddingMedium;
  6762. padding-bottom: @xf-paddingMedium;
  6763. margin-left: @xf-formRowPaddingHInner;
  6764. margin-right: @xf-formRowPaddingHOuter;
  6765.  
  6766. > .button:first-child:last-child
  6767. {
  6768. min-width: 120px;
  6769. }
  6770. }
  6771.  
  6772. @media (max-width: @xf-formResponsive)
  6773. {
  6774. .formSubmitRow-controls
  6775. {
  6776. padding-left: 0;
  6777. text-align: center;
  6778. }
  6779. }
  6780.  
  6781. .formRowSep
  6782. {
  6783. margin: -1px @xf-formRowPaddingHOuter 0;
  6784. border: none;
  6785. border-top: @xf-borderSize solid @xf-borderColor;
  6786.  
  6787. + .formRowSep,
  6788. &:last-child
  6789. {
  6790. display: none;
  6791. }
  6792. }]]></template>
  6793. <template title="core_hscroller.less" type="public" addon_id="XF" version_id="2000270" version_string="2.0.2"><![CDATA[// ##################################### HORIZONTAL SCROLLER ###################
  6794.  
  6795. .hScroller
  6796. {
  6797. overflow-y: hidden;
  6798. position: relative;
  6799. -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  6800. -webkit-overflow-scrolling: touch;
  6801.  
  6802. &.hScroller--scrollHidden
  6803. {
  6804. .hScroller-action
  6805. {
  6806. opacity: 0;
  6807. .m-transition();
  6808. }
  6809.  
  6810. .has-no-touchevents &:hover .hScroller-action
  6811. {
  6812. opacity: 1;
  6813. }
  6814. }
  6815. }
  6816.  
  6817. .hScroller-scroll
  6818. {
  6819. display: block;
  6820. white-space: nowrap;
  6821. word-wrap: normal;
  6822. overflow-x: hidden;
  6823.  
  6824. &.is-calculated
  6825. {
  6826. overflow-x: scroll;
  6827. // pushes the scrollbar out of view
  6828. }
  6829. }
  6830.  
  6831. .hScroller-action
  6832. {
  6833. position: absolute;
  6834. top: 0;
  6835. bottom: 0;
  6836. width: 40px;
  6837. padding: 0 5px;
  6838. display: none;
  6839. cursor: pointer;
  6840.  
  6841. &.is-active
  6842. {
  6843. display: block;
  6844. display: flex;
  6845. align-items: center;
  6846. }
  6847.  
  6848. &:after
  6849. {
  6850. .m-faBase();
  6851. font-size: 120%;
  6852. }
  6853.  
  6854. &.hScroller-action--start
  6855. {
  6856. left: 0;
  6857. justify-content: flex-start;
  6858. text-align: left;
  6859.  
  6860. &:after
  6861. {
  6862. .m-faContent(@fa-var-chevron-left, .72em, ltr);
  6863. .m-faContent(@fa-var-chevron-right, .72em, rtl);
  6864. }
  6865. }
  6866.  
  6867. &.hScroller-action--end
  6868. {
  6869. right: 0;
  6870. justify-content: flex-end;
  6871. text-align: right;
  6872.  
  6873. &:after
  6874. {
  6875. .m-faContent(@fa-var-chevron-right, .72em, ltr);
  6876. .m-faContent(@fa-var-chevron-left, .72em, rtl);
  6877. }
  6878. }
  6879. }
  6880.  
  6881. .scrollMeasure
  6882. {
  6883. position: absolute;
  6884. top: -1000px;
  6885. width: 100px;
  6886. height: 100px;
  6887. overflow: scroll;
  6888. visibility: hidden;
  6889. }]]></template>
  6890. <template title="core_list.less" type="public" addon_id="XF" version_id="2000270" version_string="2.0.2"><![CDATA[// ##################################### LISTS ##################
  6891.  
  6892. .pairs
  6893. {
  6894. padding: 0;
  6895. margin: 0;
  6896. overflow: hidden;
  6897.  
  6898. &.pairs--plainLabel
  6899. {
  6900. > dt
  6901. {
  6902. color: inherit;
  6903. }
  6904. }
  6905.  
  6906. &.pairs--spaced + .pairs
  6907. {
  6908. margin-top: @xf-paddingMedium;
  6909. }
  6910.  
  6911. &.pairs--noColon
  6912. {
  6913. > dt
  6914. {
  6915. &:after
  6916. {
  6917. content: "";
  6918. }
  6919. }
  6920. }
  6921.  
  6922. > dt
  6923. {
  6924. padding: 0;
  6925. margin: 0;
  6926. color: @xf-textColor;
  6927.  
  6928. .m-appendColon();
  6929. }
  6930.  
  6931. > dd
  6932. {
  6933. padding: 0;
  6934. margin: 0;
  6935. }
  6936.  
  6937. &.pairs--inline
  6938. {
  6939. display: inline;
  6940.  
  6941. > dt,
  6942. > dd
  6943. {
  6944. display: inline;
  6945. }
  6946. }
  6947.  
  6948. &.pairs--columns
  6949. {
  6950. display: table;
  6951. table-layout: fixed;
  6952. width: 100%;
  6953.  
  6954. > dt,
  6955. > dd
  6956. {
  6957. display: table-cell;
  6958. }
  6959.  
  6960. > dt
  6961. {
  6962. width: 50%;
  6963. padding-right: @xf-paddingMedium;
  6964. }
  6965.  
  6966. &.pairs--fixedSmall > dt
  6967. {
  6968. width: 200px;
  6969. }
  6970. &.pairs--fluidSmall > dt
  6971. {
  6972. width: 25%;
  6973. }
  6974. &.pairs--fluidHuge > dt
  6975. {
  6976. width: 70%;
  6977. }
  6978.  
  6979. @media (max-width: 500px)
  6980. {
  6981. display: block;
  6982.  
  6983. > dt,
  6984. > dd
  6985. {
  6986. display: block;
  6987. }
  6988.  
  6989. &.pairs > dt // the .pairs repetition is to increase specificity to override all fixed/fluid options
  6990. {
  6991. width: auto;
  6992. padding-right: 0;
  6993. }
  6994.  
  6995. & + .pairs
  6996. {
  6997. margin-top: @xf-paddingMedium;
  6998. }
  6999. }
  7000. }
  7001.  
  7002. &.pairs--justified
  7003. {
  7004. .m-clearFix();
  7005.  
  7006. > dt
  7007. {
  7008. float: left;
  7009. max-width: 100%;
  7010. margin-right: @xf-paddingMedium;
  7011. }
  7012.  
  7013. > dd
  7014. {
  7015. float: right;
  7016. text-align: right;
  7017. max-width: 100%;
  7018. }
  7019. }
  7020.  
  7021. &.pairs--rows
  7022. {
  7023. display: inline-table;
  7024. margin-right: @xf-paddingMedium;
  7025.  
  7026. &.pairs--rows--centered
  7027. {
  7028. > dt,
  7029. > dd
  7030. {
  7031. text-align: center;
  7032. }
  7033. }
  7034.  
  7035. &:last-of-type
  7036. {
  7037. margin-right: 0;
  7038. }
  7039.  
  7040. > dt
  7041. {
  7042. display: table-row;
  7043. font-size: 80%;
  7044.  
  7045. &:after
  7046. {
  7047. content: '';
  7048. display: none;
  7049. }
  7050. }
  7051.  
  7052. > dd
  7053. {
  7054. display: table-row;
  7055. }
  7056. }
  7057. }
  7058.  
  7059. .pairJustifier
  7060. {
  7061. display: flex;
  7062. flex-wrap: wrap;
  7063. justify-content: space-between;
  7064.  
  7065. margin-right: -5px;
  7066. margin-bottom: -5px;
  7067.  
  7068. .pairs.pairs--rows
  7069. {
  7070. margin-right: 5px;
  7071. margin-bottom: 5px;
  7072. }
  7073. }
  7074.  
  7075. .listPlain
  7076. {
  7077. .m-listPlain();
  7078. }
  7079.  
  7080. .listInline
  7081. {
  7082. .m-listPlain();
  7083.  
  7084. &.listInline--selfInline
  7085. {
  7086. display: inline;
  7087. }
  7088.  
  7089. > li
  7090. {
  7091. display: inline;
  7092. margin: 0;
  7093. padding: 0;
  7094. }
  7095.  
  7096. &.listInline--block
  7097. {
  7098. > li
  7099. {
  7100. display: inline-block;
  7101. }
  7102. }
  7103.  
  7104. &.listInline--comma
  7105. {
  7106. > li:after
  7107. {
  7108. content: "{$xf.language.comma_separator}";
  7109. }
  7110.  
  7111. > li:last-child:after
  7112. {
  7113. content: "";
  7114. display: none;
  7115. }
  7116. }
  7117.  
  7118. &.listInline--bullet
  7119. {
  7120. > li:before
  7121. {
  7122. content: "\00B7\20";
  7123. }
  7124.  
  7125. > li:first-child:before
  7126. {
  7127. content: "";
  7128. display: none;
  7129. }
  7130. }
  7131. }
  7132.  
  7133. .listHeap
  7134. {
  7135. .m-listPlain();
  7136. margin-top: -4px;
  7137.  
  7138. > li
  7139. {
  7140. margin: 0;
  7141. padding: 0;
  7142. display: inline-block;
  7143. margin-right: -1px;
  7144. margin-top: 4px;
  7145.  
  7146. &:last-child
  7147. {
  7148. margin-right: 0;
  7149. }
  7150. }
  7151. }
  7152.  
  7153. .listColumns
  7154. {
  7155. .m-columns(2, @xf-responsiveNarrow);
  7156.  
  7157. > li
  7158. {
  7159. .m-columnBreakAvoid();
  7160. position: relative; // workaround Chrome quirk with hover triggers in visitor menu
  7161. }
  7162.  
  7163. &.listColumns--spaced
  7164. {
  7165. > li
  7166. {
  7167. margin-bottom: .5em;
  7168. }
  7169. }
  7170.  
  7171. &.listColumns--narrow
  7172. {
  7173. .m-columns(2);
  7174. }
  7175.  
  7176. &.listColumns--together
  7177. {
  7178. -moz-column-gap: 0;
  7179. -webkit-column-gap: 0;
  7180. column-gap: 0;
  7181. }
  7182.  
  7183. &.listColumns--collapsed
  7184. {
  7185. display: inline-block;
  7186. }
  7187. }
  7188.  
  7189. .textHighlight
  7190. {
  7191. font-style: normal;
  7192. font-weight: @xf-fontWeightHeavy;
  7193.  
  7194. &.textHighlight--attention
  7195. {
  7196. color: @xf-textColorAttention;
  7197. }
  7198. }]]></template>
  7199. <template title="core_menu.less" type="public" addon_id="XF" version_id="2000270" version_string="2.0.2"><![CDATA[// ###################################### MENUS ######################
  7200.  
  7201. @_menu-arrowSize: 8px;
  7202. @_menu-edgePadding: @xf-pageEdgeSpacer;
  7203. @_menu-paddingV: @xf-paddingMedium;
  7204. @_menu-paddingH: @xf-paddingLargest;
  7205.  
  7206. .menuTrigger
  7207. {
  7208. cursor: pointer;
  7209.  
  7210. &:after
  7211. {
  7212. .m-faBase();
  7213. .m-faContent(" @{fa-var-caret-down}");
  7214. unicode-bidi: isolate; // this is needed to ensure correct positioning in RTL with LTR text
  7215. }
  7216. }
  7217.  
  7218. .menuOutsideClicker
  7219. {
  7220. position: fixed;
  7221. display: none;
  7222. top: 0;
  7223. right: 0;
  7224. bottom: 0;
  7225. left: 0;
  7226. z-index: 2; // above non set stuff but below anything intentionally set
  7227.  
  7228. &.is-active
  7229. {
  7230. display: block;
  7231. -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  7232. }
  7233. }
  7234.  
  7235. .menu
  7236. {
  7237. .m-transitionFade();
  7238.  
  7239. position: absolute;
  7240. z-index: @zIndex-2;
  7241. margin: @_menu-arrowSize 0 0;
  7242. min-width: 240px;
  7243. max-width: 320px;
  7244. border-radius: @xf-menuBorderRadius;
  7245.  
  7246. .m-dropShadow(0, 5px, 10px, 0, .35);
  7247.  
  7248. &.menu--structural
  7249. {
  7250. margin-top: 0;
  7251.  
  7252. // when menus nudge up against structure, the joined corner should not be radiused
  7253. &.menu--left
  7254. {
  7255. border-top-left-radius: 0;
  7256. }
  7257. &.menu--right
  7258. {
  7259. border-top-right-radius: 0;
  7260. }
  7261. }
  7262.  
  7263. &.menu--veryWide
  7264. {
  7265. width: 500px;
  7266. max-width: 100%;
  7267. }
  7268.  
  7269. &.menu--wide
  7270. {
  7271. width: 350px;
  7272. max-width: 100%;
  7273. }
  7274.  
  7275. &.menu--medium
  7276. {
  7277. width: 300px;
  7278. max-width: 100%;
  7279. }
  7280.  
  7281. &.menu--potentialFixed
  7282. {
  7283. z-index: @zIndex-4;
  7284. }
  7285. }
  7286.  
  7287. .menu-arrow
  7288. {
  7289. position: absolute;
  7290. width: 0;
  7291. height: 0;
  7292. border: 0 solid transparent;
  7293.  
  7294. top: -@_menu-arrowSize;
  7295. -ltr-rtl-left: 50%;
  7296. -ltr-rtl-margin-left: -@_menu-arrowSize;
  7297. .m-triangleUp(@xf-menuFeatureBorderColor, @_menu-arrowSize);
  7298.  
  7299. .menu--structural &
  7300. {
  7301. top: -@_menu-arrowSize;
  7302. }
  7303.  
  7304. .menu--up &
  7305. {
  7306. display: none;
  7307. }
  7308. }
  7309.  
  7310. .menu-content
  7311. {
  7312. margin: 0;
  7313. padding: 0;
  7314. list-style: none;
  7315. text-align: left;
  7316. .xf-menu();
  7317. border-radius: @xf-menuBorderRadius;
  7318. border-top: @xf-borderSizeFeature solid @xf-menuFeatureBorderColor;
  7319.  
  7320. // when menus nudge up against structure, the joined corner should not be radiused
  7321. .menu--structural.menu--left &
  7322. {
  7323. border-top-left-radius: 0;
  7324. }
  7325. .menu--structural.menu--right &
  7326. {
  7327. border-top-right-radius: 0;
  7328. }
  7329.  
  7330. // potentially fixed menus
  7331. .menu--potentialFixed &
  7332. {
  7333. overflow: auto;
  7334. max-height: 450px;
  7335. max-height: 80vh;
  7336. }
  7337.  
  7338. > :last-child
  7339. {
  7340. border-bottom-left-radius: @xf-menuBorderRadius;
  7341. border-bottom-right-radius: @xf-menuBorderRadius;
  7342. }
  7343. }
  7344.  
  7345. .menu--pageJump
  7346. {
  7347. width: auto;
  7348. min-width: 0;
  7349. }
  7350.  
  7351. .menu-header
  7352. {
  7353. padding: @xf-blockPaddingV @_menu-paddingH;
  7354. margin: 0;
  7355. font-weight: @xf-fontWeightNormal;
  7356. text-decoration: none;
  7357. .xf-menuHeader();
  7358.  
  7359. .m-clearFix();
  7360. .m-hiddenLinks();
  7361. }
  7362.  
  7363. .menu-tabHeader
  7364. {
  7365. padding: 0;
  7366. margin: 0;
  7367. font-weight: @xf-fontWeightNormal;
  7368. text-decoration: none;
  7369. .xf-menuTabHeader();
  7370. .m-tabsTogether(xf-default(@xf-menuTabHeader--font-size, @xf-fontSizeNormal));
  7371.  
  7372. .tabs-tab
  7373. {
  7374. padding: @xf-blockPaddingV @_menu-paddingH max(0px, @xf-blockPaddingV - @xf-borderSizeFeature);
  7375. border-bottom: @xf-borderSizeFeature solid transparent;
  7376.  
  7377. &:hover
  7378. {
  7379. color: @xf-blockMinorTabHeaderSelected--color;
  7380. }
  7381.  
  7382. &.is-active
  7383. {
  7384. .xf-menuTabHeaderSelected();
  7385. }
  7386. }
  7387.  
  7388. .hScroller-action
  7389. {
  7390. .m-hScrollerActionColorVariation(
  7391. xf-default(@xf-menuTabHeader--background-color, transparent),
  7392. @xf-menuTabHeader--color,
  7393. @xf-blockMinorTabHeaderSelected--color
  7394. );
  7395. }
  7396. }
  7397.  
  7398. .menu-scroller
  7399. {
  7400. overflow: auto;
  7401. max-height: 300px;
  7402. max-height: 60vh;
  7403. }
  7404.  
  7405. .menu-row
  7406. {
  7407. margin: 0;
  7408. padding: @_menu-paddingV @_menu-paddingH;
  7409. .m-clearFix();
  7410.  
  7411. &.menu-row--alt
  7412. {
  7413. .xf-contentAltBase();
  7414. }
  7415.  
  7416. &.menu-row--highlighted
  7417. {
  7418. .xf-contentHighlightBase();
  7419. }
  7420.  
  7421. &.menu-row--separated
  7422. {
  7423. + .menu-row
  7424. {
  7425. border-top: @xf-borderSize solid @xf-borderColorLight;
  7426. }
  7427. }
  7428.  
  7429. &.menu-row--clickable:hover
  7430. {
  7431. background: @xf-contentHighlightBg;
  7432. }
  7433.  
  7434. &:empty
  7435. {
  7436. padding: 0;
  7437. }
  7438. }
  7439.  
  7440. .menu-linkRow
  7441. {
  7442. display: block;
  7443. padding: @_menu-paddingV @_menu-paddingH @_menu-paddingV (@_menu-paddingH) - (@xf-borderSizeFeature);
  7444. border-left: @xf-borderSizeFeature solid transparent;
  7445. .xf-menuLinkRow();
  7446.  
  7447. &.menu-linkRow--alt
  7448. {
  7449. .xf-contentAltBase();
  7450. }
  7451.  
  7452. &.is-selected,
  7453. &:hover,
  7454. &:focus
  7455. {
  7456. .xf-menuLinkRowSelected();
  7457.  
  7458. border-left-color: fade(@xf-borderColorFeature, 50%);
  7459.  
  7460. &:focus
  7461. {
  7462. outline: 0;
  7463. }
  7464.  
  7465. &.is-selected
  7466. {
  7467. border-left-color: @xf-borderColorFeature;
  7468. }
  7469. }
  7470.  
  7471. i[aria-hidden=true]
  7472. {
  7473. font-size: @xf-fontSizeSmall;
  7474. display: inline-block;
  7475. width: 23px; // about 1.75em at this font size
  7476.  
  7477. &:after
  7478. {
  7479. .m-faBase();
  7480. color: @xf-textColorMuted;
  7481. left: @xf-blockPaddingH;
  7482. }
  7483.  
  7484. & ~ .menu-linkRow-hint
  7485. {
  7486. padding-left: 23px;
  7487. }
  7488. }
  7489.  
  7490. &:hover i[aria-hidden=true]:after
  7491. {
  7492. color: @xf-linkHoverColor;
  7493. }
  7494. }
  7495.  
  7496. .menu-linkRow-hint
  7497. {
  7498. font-style: inherit;
  7499. font-size: @xf-fontSizeSmallest;
  7500. color: @xf-textColorMuted;
  7501. display: block;
  7502. }
  7503.  
  7504. .menu-separator
  7505. {
  7506. margin: 0 (@_menu-paddingH) / 2;
  7507. padding: 0;
  7508. border: none;
  7509. border-top: @xf-borderSize solid @xf-borderColorLight;
  7510.  
  7511. &.menu-separator--hard
  7512. {
  7513. margin: 0;
  7514. }
  7515.  
  7516. & + .menu-separator,
  7517. &:last-child
  7518. {
  7519. display: none;
  7520. }
  7521. }
  7522.  
  7523. .menu-footer
  7524. {
  7525. padding: @xf-blockPaddingV @_menu-paddingH;
  7526. .m-clearFix();
  7527.  
  7528. &:not(.menu-footer--split)
  7529. {
  7530. .menu-footer-counter
  7531. {
  7532. float: left;
  7533. }
  7534.  
  7535. .menu-footer-controls
  7536. {
  7537. float: right;
  7538. }
  7539. }
  7540.  
  7541. &.menu-footer--split
  7542. {
  7543. display: flex;
  7544. align-items: center;
  7545.  
  7546. .menu-footer-main,
  7547. .menu-footer-counter
  7548. {
  7549. flex-grow: 1;
  7550.  
  7551. .has-no-flexbox &
  7552. {
  7553. float: left;
  7554. }
  7555. }
  7556.  
  7557. .menu-footer-select:not(:last-child)
  7558. {
  7559. margin: 0 1em;
  7560. }
  7561.  
  7562. .menu-footer-opposite,
  7563. .menu-footer-controls
  7564. {
  7565. margin-left: auto;
  7566.  
  7567. .has-no-flexbox &
  7568. {
  7569. float: right;
  7570. }
  7571. }
  7572. }
  7573. }]]></template>
  7574. <template title="core_overlay.less" type="public" addon_id="XF" version_id="2000270" version_string="2.0.2"><![CDATA[// #################################### OVERLAYS ################################
  7575.  
  7576. .overlay-container
  7577. {
  7578. display: none;
  7579. position: fixed;
  7580. top: 0;
  7581. bottom: 0;
  7582. left: 0;
  7583. right: 0;
  7584. z-index: @zIndex-6;
  7585. background: @xf-overlayMaskColor;
  7586. -webkit-overflow-scrolling: touch;
  7587. opacity: 0;
  7588. .m-transition(opacity);
  7589.  
  7590. &.is-transitioning
  7591. {
  7592. display: block;
  7593. }
  7594.  
  7595. &.is-active
  7596. {
  7597. display: block;
  7598. opacity: 1;
  7599. }
  7600. }
  7601.  
  7602. .overlay
  7603. {
  7604. position: relative;
  7605. margin: 40px auto 10px;
  7606. margin-top: @xf-overlayTopMargin;
  7607. width: 100%;
  7608. max-width: 800px;
  7609. background: #fff;
  7610. color: @xf-textColor;
  7611. border-radius: @xf-blockBorderRadius;
  7612. .m-dropShadow(0, 5px, 15px, 0, .5);
  7613. outline: none;
  7614.  
  7615. > .overlay-title:first-child,
  7616. .overlay-firstChild
  7617. {
  7618. border-top-left-radius: @xf-blockBorderRadius;
  7619. border-top-right-radius: @xf-blockBorderRadius;
  7620. }
  7621.  
  7622. > .overlay-content > *:last-child,
  7623. .overlay-lastChild
  7624. {
  7625. border-bottom-left-radius: @xf-blockBorderRadius;
  7626. border-bottom-right-radius: @xf-blockBorderRadius;
  7627. }
  7628. }
  7629.  
  7630. @media (max-width: 820px)
  7631. {
  7632. .overlay
  7633. {
  7634. max-width: ~"calc(100% - 20px)";
  7635. }
  7636. }
  7637.  
  7638. .overlay-title
  7639. {
  7640. .m-clearFix();
  7641.  
  7642. display: none;
  7643. margin: 0;
  7644. font-weight: @xf-fontWeightNormal;
  7645. .xf-overlayHeader();
  7646.  
  7647. .overlay &
  7648. {
  7649. display: block;
  7650. }
  7651. }
  7652.  
  7653. .overlay-titleCloser
  7654. {
  7655. float: right;
  7656. cursor: pointer;
  7657. margin-left: 5px;
  7658. text-decoration: none;
  7659. opacity: .5;
  7660. .m-transition();
  7661.  
  7662. &:after
  7663. {
  7664. .m-faBase();
  7665. .m-faContent(@fa-var-close, .79em);
  7666. }
  7667.  
  7668. &:hover
  7669. {
  7670. text-decoration: none;
  7671. opacity: 1;
  7672. }
  7673. }
  7674.  
  7675. .overlay-content
  7676. {
  7677. .m-clearFix();
  7678. }
  7679.  
  7680. // when displaying a modal, prevent scrolling on the main content but allow it on the overlay
  7681. body.is-modalOpen
  7682. {
  7683. overflow: hidden !important;
  7684.  
  7685. .overlay-container,
  7686. .offCanvasMenu
  7687. {
  7688. overflow-y: scroll !important;
  7689. }
  7690. }
  7691.  
  7692. @media (max-width: @xf-responsiveNarrow)
  7693. {
  7694. .overlay-title
  7695. {
  7696. font-size: @xf-fontSizeLarger;
  7697. }
  7698. }
  7699.  
  7700. // ############################### OVERLAY/BLOCK NESTING ##############################
  7701.  
  7702. .block-container > .tabPanes > li,
  7703. .block-container > .block-body,
  7704. .block-container > .block-body > .block-row,
  7705. .overlay-content
  7706. {
  7707. > .blocks > .block > .block-container,
  7708. > .block > .block-container,
  7709. > .blockMessage
  7710. {
  7711. margin-left: 0;
  7712. margin-right: 0;
  7713. border-left: none;
  7714. border-right: none;
  7715. }
  7716.  
  7717. > .blocks > .block:first-child,
  7718. > .block:first-child,
  7719. > .blockMessage:first-child
  7720. {
  7721. margin-top: 0;
  7722.  
  7723. .block-outer:not(.block-outer--after)
  7724. {
  7725. border-bottom: @xf-borderSize solid @xf-borderColorLight;
  7726. padding: @xf-blockPaddingV;
  7727. }
  7728. }
  7729.  
  7730. > .blocks > .block:last-child,
  7731. > .block:last-child,
  7732. > .blockMessage:last-child
  7733. {
  7734. margin-bottom: 0;
  7735.  
  7736. .block-outer.block-outer--after
  7737. {
  7738. border-top: @xf-borderSize solid @xf-borderColorLight;
  7739. padding: @xf-blockPaddingV;
  7740. }
  7741. }
  7742.  
  7743. > .blocks > .block:first-child > .block-container,
  7744. > .block:first-child > .block-container,
  7745. > .blockMessage:first-child
  7746. {
  7747. border-top: none;
  7748. }
  7749.  
  7750. > .blocks > .block:last-child > .block-container,
  7751. > .block:last-child > .block-container,
  7752. > .blockMessage:last-child
  7753. {
  7754. border-bottom: none;
  7755. }
  7756.  
  7757. > .blocks > .block:not(:first-child) > .block-container,
  7758. > .block:not(:first-child) > .block-container,
  7759. > .blockMessage:not(:first-child)
  7760. {
  7761. .m-borderTopRadius(0);
  7762. }
  7763.  
  7764. > .blocks > .block:not(:last-child) > .block-container,
  7765. > .block:not(:last-child) > .block-container,
  7766. > .blockMessage:not(:last-child)
  7767. {
  7768. .m-borderBottomRadius(0);
  7769. }
  7770. }]]></template>
  7771. <template title="core_pagenav.less" type="public" addon_id="XF" version_id="2000270" version_string="2.0.2"><![CDATA[// ####################################### PAGE NAVIGATION ########################
  7772.  
  7773. @_page-paddingV: xf-default(@xf-buttonBase--padding-top, 6px);
  7774. @_page-paddingH: 8px;
  7775. @_page-paddingHSimple: 10px;
  7776.  
  7777. .pageNavWrapper {}
  7778.  
  7779. .m-pageNavElCore()
  7780. {
  7781. background: linear-gradient(0deg, @xf-contentHighlightBg, mix(@xf-contentHighlightBg, @xf-contentBg, 25%));
  7782. color: @xf-linkColor;
  7783. .xf-blockBorder();
  7784. font-size: @xf-fontSizeSmall;
  7785. white-space: nowrap;
  7786.  
  7787. &:hover,
  7788. &:active
  7789. {
  7790. background: xf-intensify(@xf-contentHighlightBg, 3%);
  7791. text-decoration: none;
  7792. }
  7793. }
  7794.  
  7795. .pageNav-jump
  7796. {
  7797. display: inline-block;
  7798. .m-pageNavElCore();
  7799. border-radius: @xf-borderRadiusSmall;
  7800. padding: @_page-paddingV @_page-paddingH;
  7801.  
  7802. &.pageNav-jump--prev:before,
  7803. &.pageNav-jump--next:after
  7804. {
  7805. .m-faBase();
  7806. font-size: 80%;
  7807. word-wrap: normal;
  7808. unicode-bidi: isolate; // maintain position in RTL with LTR text
  7809. }
  7810.  
  7811. &.pageNav-jump--prev:before
  7812. {
  7813. .m-faContent("@{fa-var-caret-left}\00a0", .61em, ltr);
  7814. .m-faContent("@{fa-var-caret-right}\00a0", .61em, rtl);
  7815. }
  7816.  
  7817. &.pageNav-jump--next:after
  7818. {
  7819. .m-faContent("\00a0@{fa-var-caret-right}", .61em, ltr);
  7820. .m-faContent("\00a0@{fa-var-caret-left}", .61em, rtl);
  7821. }
  7822. }
  7823.  
  7824. .pageNav-main
  7825. {
  7826. .m-listPlain();
  7827. display: inline-table;
  7828. }
  7829.  
  7830. .pageNav-page
  7831. {
  7832. display: table-cell;
  7833. .m-pageNavElCore();
  7834.  
  7835. &:not(:last-child)
  7836. {
  7837. border-right: none;
  7838. }
  7839.  
  7840. &:not(:first-child)
  7841. {
  7842. border-left-color: @xf-borderColorLight;
  7843. }
  7844.  
  7845. &:first-child
  7846. {
  7847. .m-borderLeftRadius(@xf-borderRadiusSmall);
  7848. }
  7849.  
  7850. &:last-child
  7851. {
  7852. .m-borderRightRadius(@xf-borderRadiusSmall);
  7853. }
  7854.  
  7855. > a
  7856. {
  7857. display: block;
  7858. padding: @_page-paddingV @_page-paddingH;
  7859. text-decoration: none;
  7860. color: inherit;
  7861. }
  7862.  
  7863. &.pageNav-page--current
  7864. {
  7865. background: @xf-contentAccentBg;
  7866. color: @xf-textColorAccentContent;
  7867.  
  7868. border: @xf-borderSize solid @xf-borderColorAccentContent;
  7869. cursor: pointer;
  7870.  
  7871. &:hover,
  7872. &:active
  7873. {
  7874. background: xf-intensify(@xf-contentAccentBg, 3%);
  7875. }
  7876.  
  7877. + .pageNav-page
  7878. {
  7879. border-left: none;
  7880. }
  7881. }
  7882. }
  7883.  
  7884. // Hide relative page numbers on narrow devices when we have a skip entry as we don't necessarily have space.
  7885. @media (max-width: @xf-responsiveNarrow)
  7886. {
  7887. .pageNav--skipStart
  7888. {
  7889. .pageNav-page.pageNav-page--earlier
  7890. {
  7891. display: none;
  7892. }
  7893. }
  7894.  
  7895. .pageNav--skipEnd
  7896. {
  7897. .pageNav-page.pageNav-page--later
  7898. {
  7899. display: none;
  7900. }
  7901.  
  7902. .pageNav-page.pageNav-page--skipEnd
  7903. {
  7904. border-left: none;
  7905. }
  7906. }
  7907. }
  7908.  
  7909. // ########################### SIMPLE PAGE NAV VARIANT ########################
  7910.  
  7911. .pageNavSimple
  7912. {
  7913. display: inline-flex;
  7914. }
  7915.  
  7916. .pageNavSimple-el
  7917. {
  7918. display: inline-block;
  7919. .xf-blockBorder();
  7920. border-radius: @xf-borderRadiusSmall;
  7921. padding: @_page-paddingV @_page-paddingHSimple;
  7922. font-size: @xf-fontSizeSmall;
  7923. text-align: center;
  7924. white-space: nowrap;
  7925. margin-right: 4px;
  7926.  
  7927. &:last-child
  7928. {
  7929. margin-right: 0;
  7930. }
  7931.  
  7932. &.pageNavSimple-el--current
  7933. {
  7934. .xf-contentAccentBase();
  7935.  
  7936. &:hover,
  7937. &:active
  7938. {
  7939. background: xf-intensify(@xf-textColorFeature, 3%);
  7940. text-decoration: none;
  7941. }
  7942. }
  7943.  
  7944. &.pageNavSimple-el--prev,
  7945. &.pageNavSimple-el--next
  7946. {
  7947. background: #7f7f7f;
  7948. color: #fff;
  7949. min-width: 75px;
  7950.  
  7951. @media (max-width: 350px)
  7952. {
  7953. min-width: 0;
  7954. }
  7955.  
  7956. &:hover,
  7957. &:active
  7958. {
  7959. /*background: xf-intensify(@xf-contentHighlightBg, 3%);*/
  7960. text-decoration: none;
  7961. }
  7962.  
  7963. i:before
  7964. {
  7965. .m-faBase();
  7966. }
  7967. }
  7968.  
  7969. &.pageNavSimple-el--prev i:before
  7970. {
  7971. .m-faContent(@fa-var-caret-left, .37em, ltr);
  7972. .m-faContent(@fa-var-caret-right, .37em, rtl);
  7973. }
  7974.  
  7975. &.pageNavSimple-el--next i:before
  7976. {
  7977. .m-faContent(@fa-var-caret-right, .37em, ltr);
  7978. .m-faContent(@fa-var-caret-left, .37em, rtl);
  7979. }
  7980.  
  7981. &.pageNavSimple-el--first,
  7982. &.pageNavSimple-el--last
  7983. {
  7984. border-color: transparent;
  7985. padding-left: (@_page-paddingHSimple / 2);
  7986. padding-right: (@_page-paddingHSimple / 2);
  7987. color: fade(@xf-linkColor, 60%);
  7988.  
  7989. &:hover,
  7990. &:active
  7991. {
  7992. .xf-blockBorder();
  7993. background: xf-intensify(@xf-textColorFeature, 3%);
  7994. color: #fff;
  7995. text-decoration: none;
  7996. }
  7997.  
  7998. i:before
  7999. {
  8000. .m-faBase();
  8001. }
  8002. }
  8003.  
  8004. &.pageNavSimple-el--first i:before
  8005. {
  8006. .m-faContent(@fa-var-backward, .93em, ltr);
  8007. .m-faContent(@fa-var-forward, .93em, rtl);
  8008. }
  8009.  
  8010. &.pageNavSimple-el--last i:before
  8011. {
  8012. .m-faContent(@fa-var-forward, .93em, ltr);
  8013. .m-faContent(@fa-var-backward, .93em, rtl);
  8014. }
  8015.  
  8016. &.is-disabled
  8017. {
  8018. border-color: transparent;
  8019. background: none;
  8020. color: @xf-textColorMuted;
  8021. text-decoration: none;
  8022. pointer-events: none;
  8023.  
  8024. &:hover
  8025. {
  8026. background: none;
  8027. color: @xf-textColorMuted;
  8028. }
  8029. }
  8030. }
  8031.  
  8032. // #################### DISPLAY VARIANTS #########################
  8033.  
  8034. .pageNavWrapper--simple
  8035. {
  8036. .pageNav
  8037. {
  8038. display: none;
  8039. }
  8040. }
  8041.  
  8042. .pageNavWrapper--full
  8043. {
  8044. .pageNavSimple
  8045. {
  8046. display: none;
  8047. }
  8048. }
  8049.  
  8050. .pageNavWrapper--mixed
  8051. {
  8052. .pageNavSimple
  8053. {
  8054. display: none;
  8055. }
  8056.  
  8057. @media (max-width: @xf-responsiveMedium)
  8058. {
  8059. .pageNav
  8060. {
  8061. display: none;
  8062. }
  8063.  
  8064. .pageNavSimple
  8065. {
  8066. display: inline-flex;
  8067. }
  8068. }
  8069. }
  8070.  
  8071. // Hide any block page nav that goes before the block as we will be wasting vertical space.
  8072. @media (max-width: @xf-responsiveNarrow)
  8073. {
  8074. .block-outer:not(.block-outer--after) .pageNavWrapper:not(.pageNavWrapper--forceShow)
  8075. {
  8076. display: none;
  8077. }
  8078.  
  8079. // this is a sanity check in case .block-outer--after is forgotten
  8080. .block-container + .block-outer .pageNavWrapper
  8081. {
  8082. display: block;
  8083. }
  8084. }]]></template>
  8085. <template title="core_tab.less" type="public" addon_id="XF" version_id="2000270" version_string="2.0.2"><![CDATA[// ################################## TABS ####################################
  8086.  
  8087. .tabs
  8088. {
  8089. display: flex;
  8090.  
  8091. &.tabs--wrappable
  8092. {
  8093. flex-wrap: wrap;
  8094. }
  8095. }
  8096.  
  8097. .tabs-tab
  8098. {
  8099. display: inline-block;
  8100. cursor: pointer;
  8101. white-space: nowrap;
  8102. color: inherit;
  8103. font-weight: inherit;
  8104. text-decoration: none;
  8105. .m-transition();
  8106.  
  8107. &:hover
  8108. {
  8109. text-decoration: none;
  8110. }
  8111. }
  8112.  
  8113. .tabs-extra
  8114. {
  8115. float: right;
  8116. position: relative;
  8117. margin-left: auto;
  8118. padding: 0 0 0 @xf-paddingMedium;
  8119. align-self: center;
  8120. white-space: nowrap;
  8121.  
  8122. a
  8123. {
  8124. color: inherit;
  8125. text-decoration: none;
  8126. display: block;
  8127. padding: @xf-paddingMedium;
  8128. }
  8129. }
  8130.  
  8131. .tabPanes
  8132. {
  8133. .m-listPlain();
  8134.  
  8135. > li
  8136. {
  8137. display: none;
  8138.  
  8139. &.is-active
  8140. {
  8141. display: block;
  8142. }
  8143. }
  8144. }
  8145.  
  8146. // ################################# OUTER TABS #########################
  8147.  
  8148. .tabs--standalone
  8149. {
  8150. padding: 0;
  8151. margin-bottom: @xf-elementSpacer;
  8152. font-weight: @xf-fontWeightNormal;
  8153. .xf-blockBorder();
  8154. .xf-standaloneTab();
  8155. .m-tabsTogether(xf-default(@xf-standaloneTab--font-size, @xf-fontSizeNormal));
  8156.  
  8157. .tabs-tab
  8158. {
  8159. padding: 10px;
  8160.  
  8161. &:hover
  8162. {
  8163. color: @xf-standaloneTabSelected--color;
  8164. }
  8165.  
  8166. &.is-active
  8167. {
  8168. .xf-standaloneTabSelected();
  8169. }
  8170. }
  8171.  
  8172. .hScroller-action
  8173. {
  8174. .m-hScrollerActionColorVariation(
  8175. xf-default(@xf-standaloneTab--background-color, transparent),
  8176. @xf-standaloneTab--color,
  8177. @xf-standaloneTabSelected--color
  8178. );
  8179. }
  8180. }
  8181.  
  8182. @media (max-width: @xf-responsiveEdgeSpacerRemoval)
  8183. {
  8184. .tabs--standalone
  8185. {
  8186. margin-left: -@xf-pageEdgeSpacer;
  8187. margin-right: -@xf-pageEdgeSpacer;
  8188. border-radius: 0;
  8189. border-left: none;
  8190. border-right: none;
  8191. }
  8192. }]]></template>
  8193. <template title="extra.less" type="public" addon_id="XF" version_id="2000770" version_string="2.0.7"><![CDATA[{{ include('mixins.less') }}
  8194. {{ include('brv_extra.less') }}
  8195. {{ include('brv_responsive.less') }}]]></template>
  8196. <template title="forum_view" type="public" addon_id="XF" version_id="2001070" version_string="2.0.10"><![CDATA[<xf:title page="{$page}">{$forum.Node.title}</xf:title>
  8197. <xf:description>{$forum.Node.description|raw}</xf:description>
  8198.  
  8199. <xf:macro template="metadata_macros" name="canonical_url"
  8200. arg-canonicalUrl="{{ link('canonical:forums', $forum, {'page': $page}) }}" />
  8201.  
  8202. <xf:head option="rss_forum"><link rel="alternate" type="application/rss+xml" title="{{ phrase('rss_feed_for_x', {'title': $forum.title})|for_attr }}" href="{{ link('forums/index.rss', $forum) }}" /></xf:head>
  8203.  
  8204. <xf:macro template="forum_macros" name="forum_page_options" arg-forum="{$forum}" />
  8205. <xf:breadcrumb source="$forum.getBreadcrumbs(false)" />
  8206.  
  8207. <xf:pageaction if="$forum.canCreateThread()">
  8208. <xf:button href="{{ link('forums/post-thread', $forum) }}" class="button--cta" icon="write">
  8209. {{ phrase('post_thread') }}
  8210. </xf:button>
  8211. </xf:pageaction>
  8212.  
  8213. <xf:if is="$pendingApproval">
  8214. <div class="blockMessage blockMessage--important">{{ phrase('content_submitted_displayed_pending_approval') }}</div>
  8215. </xf:if>
  8216.  
  8217. <xf:if is="$nodeTree">
  8218. <xf:ad position="forum_view_above_node_list" arg-forum="{$forum}" />
  8219. <div class="block">
  8220. <div class="block-container">
  8221. <div class="block-body">
  8222. <xf:macro template="forum_list" name="node_list"
  8223. arg-children="{$nodeTree}"
  8224. arg-extras="{$nodeExtras}"
  8225. arg-depth="2" />
  8226. </div>
  8227. </div>
  8228. </div>
  8229. <xf:ad position="forum_view_below_node_list" arg-forum="{$forum}" />
  8230. </xf:if>
  8231.  
  8232. <xf:if is="$canInlineMod">
  8233. <xf:js src="xf/inline_mod.js" min="1" />
  8234. </xf:if>
  8235.  
  8236. <xf:ad position="forum_view_above_thread_list" arg-forum="{$forum}" />
  8237. <div class="block" data-xf-init="{{ $canInlineMod ? 'inline-mod' : '' }}" data-type="thread" data-href="{{ link('inline-mod') }}">
  8238.  
  8239. <div class="block-outer"><xf:trim>
  8240. <xf:pagenav page="{$page}" perpage="{$perPage}" total="{$total}"
  8241. link="forums" data="{$forum}" params="{$filters}"
  8242. wrapperclass="block-outer-main" />
  8243. <xf:if contentcheck="true">
  8244. <div class="block-outer-opposite">
  8245. <div class="buttonGroup">
  8246. <xf:contentcheck>
  8247. <xf:if is="$canInlineMod">
  8248. <xf:macro template="inline_mod_macros" name="button" />
  8249. </xf:if>
  8250. <xf:if is="$xf.visitor.user_id">
  8251. <xf:button href="{{ link('forums/mark-read', $forum, {'date': $xf.time}) }}"
  8252. class="button--link" overlay="true">
  8253. {{ phrase('mark_read') }}
  8254. </xf:button>
  8255. </xf:if>
  8256. <xf:if is="$forum.canWatch()">
  8257. <xf:button href="{{ link('forums/watch', $forum) }}" class="button--link"
  8258. data-xf-click="switch-overlay"
  8259. data-sk-watch="{{ phrase('watch') }}"
  8260. data-sk-unwatch="{{ phrase('unwatch') }}">
  8261. <xf:if is="{$forum.Watch.{$xf.visitor.user_id}}">{{ phrase('unwatch') }}<xf:else />{{ phrase('watch') }}</xf:if>
  8262. </xf:button>
  8263. </xf:if>
  8264. </xf:contentcheck>
  8265. </div>
  8266. </div>
  8267. </xf:if>
  8268. </xf:trim></div>
  8269.  
  8270. <xf:set var="$dateLimits" value="{{ {
  8271. '-1': phrase('any_time'),
  8272. '7': phrase('x_days', {'days': '7'}),
  8273. '14': phrase('x_days', {'days': '14'}),
  8274. '30': phrase('x_days', {'days': '30'}),
  8275. '60': phrase('x_months', {'months': '2'}),
  8276. '90': phrase('x_months', {'months': '3'}),
  8277. '182': phrase('x_months', {'months': '6'}),
  8278. '365': phrase('1_year')
  8279. } }}" />
  8280. <xf:set var="$sortOrders" value="{{ {
  8281. 'last_post_date': phrase('last_message'),
  8282. 'post_date': phrase('first_message'),
  8283. 'title': phrase('title'),
  8284. 'reply_count': phrase('replies'),
  8285. 'view_count': phrase('views'),
  8286. 'first_post_likes': phrase('first_message_likes')
  8287. } }}" />
  8288.  
  8289. <div class="block-container">
  8290. <div class="block-filterBar">
  8291. <div class="filterBar">
  8292. <xf:if contentcheck="true">
  8293. <ul class="filterBar-filters">
  8294. <xf:contentcheck>
  8295. <xf:if is="$filters.prefix_id">
  8296. <li><a href="{{ link('forums', $forum, $filters|replace('prefix_id', null)) }}"
  8297. class="filterBar-filterToggle" data-xf-init="tooltip" title="{{ phrase('remove_this_filter')|for_attr }}">
  8298. <span class="filterBar-filterToggle-label">{{ phrase('prefix:') }}</span>
  8299. {{ prefix_title('thread', $filters.prefix_id) }}</a></li>
  8300. </xf:if>
  8301. <xf:if is="$filters.starter_id AND $starterFilter">
  8302. <li><a href="{{ link('forums', $forum, $filters|replace('starter_id', null)) }}"
  8303. class="filterBar-filterToggle" data-xf-init="tooltip" title="{{ phrase('remove_this_filter')|for_attr }}">
  8304. <span class="filterBar-filterToggle-label">{{ phrase('started_by:') }}</span>
  8305. {$starterFilter.username}</a></li>
  8306. </xf:if>
  8307. <xf:if is="$filters.last_days AND {$dateLimits.{$filters.last_days}}">
  8308. <li><a href="{{ link('forums', $forum, $filters|replace('last_days', null)) }}"
  8309. class="filterBar-filterToggle" data-xf-init="tooltip" title="{{ phrase('remove_this_filter')|for_attr }}">
  8310. <span class="filterBar-filterToggle-label">{{ phrase('last_updated:') }}</span>
  8311. {$dateLimits.{$filters.last_days}}</a></li>
  8312. </xf:if>
  8313. <xf:if is="$filters.order AND {$sortOrders.{$filters.order}}">
  8314. <li><a href="{{ link('forums', $forum, $filters|replace({'order': null, 'direction': null})) }}"
  8315. class="filterBar-filterToggle" data-xf-init="tooltip" title="{{ phrase('return_to_default_order')|for_attr }}">
  8316. <span class="filterBar-filterToggle-label">{{ phrase('sort_by:') }}</span>
  8317. {$sortOrders.{$filters.order}}
  8318. <i class="fa {{ $filters.direction == 'asc' ? 'fa-angle-up' : 'fa-angle-down' }}" aria-hidden="true"></i>
  8319. <span class="u-srOnly"><xf:if is="$filters.direction == 'asc'">{{ phrase('ascending') }}<xf:else />{{ phrase('descending') }}</xf:if></span>
  8320. </a></li>
  8321. </xf:if>
  8322. </xf:contentcheck>
  8323. </ul>
  8324. </xf:if>
  8325.  
  8326. <a class="filterBar-menuTrigger" data-xf-click="menu" role="button" tabindex="0" aria-expanded="false" aria-haspopup="true">{{ phrase('filters') }}</a>
  8327. <div class="menu menu--wide" data-menu="menu" aria-hidden="true"
  8328. data-href="{{ link('forums/filters', $forum, $filters) }}"
  8329. data-load-target=".js-filterMenuBody">
  8330. <div class="menu-content">
  8331. <h4 class="menu-header">{{ phrase('show_only:') }}</h4>
  8332. <div class="js-filterMenuBody">
  8333. <div class="menu-row">{{ phrase('loading...') }}</div>
  8334. </div>
  8335. </div>
  8336. </div>
  8337. </div>
  8338. </div>
  8339.  
  8340. <xf:set var="$qtPos">{{ ($sortInfo.order == 'last_post_date' && $sortInfo.direction == 'asc') ? 'bottom' : 'top' }}</xf:set>
  8341.  
  8342. <div class="block-body">
  8343. <div class="structItemContainer">
  8344. <xf:macro template="thread_list_macros" name="quick_thread"
  8345. arg-forum="{$forum}"
  8346. arg-page="{$page}"
  8347. arg-order="{$sortInfo.order}"
  8348. arg-direction="{$sortInfo.direction}" />
  8349. <div class="title-thread hidden-xs">
  8350. <div class="item-title cell-title">
  8351. {{ phrase('title') }}
  8352. </div>
  8353. <div class="item-title cell-reply">
  8354. {{ phrase('replies') }}
  8355. </div>
  8356. <div class="item-title cell-views">
  8357. {{ phrase('views') }}
  8358. </div>
  8359. <div class="item-title cell-user">
  8360. {{ phrase('messages') }}
  8361. </div>
  8362. </div>
  8363. <xf:if is="$stickyThreads is not empty OR $threads is not empty">
  8364. <xf:if is="$stickyThreads is not empty">
  8365. <div class="structItemContainer-group structItemContainer-group--sticky">
  8366. <xf:foreach loop="$stickyThreads" value="$thread">
  8367. <xf:macro template="thread_list_macros" name="item" arg-thread="{$thread}" arg-forum="{$forum}" />
  8368. </xf:foreach>
  8369. </div>
  8370.  
  8371. <xf:ad position="forum_view_below_stickies" arg-forum="{$forum}" />
  8372. </xf:if>
  8373.  
  8374. <div class="structItemContainer-group js-threadList">
  8375. <xf:if is="$threads is not empty">
  8376. <xf:foreach loop="$threads" value="$thread">
  8377. <xf:macro template="thread_list_macros" name="item" arg-thread="{$thread}" arg-forum="{$forum}" />
  8378. </xf:foreach>
  8379. <xf:if is="$showDateLimitDisabler">
  8380. <div class="structItem structItem--note">
  8381. <div class="structItem-cell">
  8382. <a href="{{ link('forums', $forum, $filters + {'page': $page, 'no_date_limit': 1}) }}">
  8383. {{ phrase('show_older_items') }}
  8384. </a>
  8385. </div>
  8386. </div>
  8387. </xf:if>
  8388. </xf:if>
  8389. </div>
  8390. <xf:elseif is="$filters" />
  8391. <div class="structItemContainer-group js-threadList">
  8392. <div class="structItem js-emptyThreadList">
  8393. <div class="structItem-cell">{{ phrase('there_no_threads_matching_your_filters') }}</div>
  8394. </div>
  8395. </div>
  8396. <xf:else />
  8397. <div class="structItemContainer-group js-threadList">
  8398. <div class="structItem js-emptyThreadList">
  8399. <div class="structItem-cell">{{ phrase('there_no_threads_in_this_forum') }}</div>
  8400. </div>
  8401. </div>
  8402. </xf:if>
  8403. </div>
  8404. </div>
  8405. </div>
  8406.  
  8407. <div class="block-outer block-outer--after">
  8408. <xf:pagenav
  8409. page="{$page}" perpage="{$perPage}" total="{$total}"
  8410. link="forums" data="{$forum}" params="{$filters}"
  8411. wrapperclass="block-outer-main" />
  8412. <xf:showignored wrapperclass="block-outer-opposite" />
  8413. <xf:if is="!$forum.canCreateThread()">
  8414. <div class="block-outer-opposite">
  8415. <xf:if is="$xf.visitor.user_id">
  8416. <span class="button is-disabled">
  8417. {{ phrase('no_permission_to_post') }}
  8418. <!-- this is not interactive so shouldn't be a button element -->
  8419. </span>
  8420. <xf:else />
  8421. <xf:button href="{{ link('login') }}" class="button--link" overlay="true">
  8422. {{ phrase('log_in_or_register_to_post') }}
  8423. </xf:button>
  8424. </xf:if>
  8425. </div>
  8426. </xf:if>
  8427. </div>
  8428. </div>
  8429. <xf:ad position="forum_view_below_thread_list" arg-forum="{$forum}" />
  8430.  
  8431. <xf:widgetpos id="forum_view_sidebar" context-forum="{$forum}" position="sidebar" />]]></template>
  8432. <template title="member.less" type="public" addon_id="XF" version_id="2000270" version_string="2.0.2"><![CDATA[@_memberHeader-padding: @xf-paddingLarge;
  8433. @_memberHeader-avatarSize: @avatar-l;
  8434. @_memberHeader-avatarSizeShrunk: @avatar-m;
  8435.  
  8436. .memberHeader
  8437. {
  8438. .m-clearFix();
  8439. }
  8440.  
  8441. .memberHeader-main
  8442. {
  8443.  
  8444. }
  8445.  
  8446. .memberHeader-avatar
  8447. {
  8448. float: left;
  8449. padding: @_memberHeader-padding;
  8450.  
  8451. img,
  8452. .avatar
  8453. {
  8454. display: block;
  8455. }
  8456. }
  8457.  
  8458. .memberHeader-content
  8459. {
  8460. padding: @_memberHeader-padding;
  8461. padding-left: ((@_memberHeader-padding) * 2 + (@_memberHeader-avatarSize));
  8462. }
  8463.  
  8464. .memberHeader-actionTop
  8465. {
  8466. float: right;
  8467. }
  8468.  
  8469. .memberHeader-name
  8470. {
  8471. margin: 0;
  8472. margin-top: -.15em;
  8473. padding: 0;
  8474. font-weight: @xf-fontWeightNormal;
  8475. .xf-memberHeaderName();
  8476. }
  8477.  
  8478. .memberHeader-banners,
  8479. .memberHeader-blurb
  8480. {
  8481. margin-top: @xf-paddingSmall;
  8482. }
  8483.  
  8484. .memberHeader-separator
  8485. {
  8486. margin: @_memberHeader-padding 0;
  8487. border: none;
  8488. border-top: @xf-borderSize solid @xf-borderColorLight;
  8489. }
  8490.  
  8491. .memberHeader-stats
  8492. {
  8493. font-size: @xf-fontSizeLarge;
  8494.  
  8495. .pairs.pairs--row
  8496. {
  8497. min-width: 100px;
  8498. }
  8499. }
  8500.  
  8501. @media (max-width: @xf-responsiveMedium)
  8502. {
  8503. .memberHeader-avatar .avatar
  8504. {
  8505. .m-avatarSize(@_memberHeader-avatarSizeShrunk);
  8506. }
  8507.  
  8508. .memberHeader-content
  8509. {
  8510. padding-left: ((@_memberHeader-padding) * 2 + (@_memberHeader-avatarSizeShrunk));
  8511. }
  8512. }
  8513.  
  8514. @media (max-width: @xf-responsiveNarrow)
  8515. {
  8516. .memberHeader-avatar
  8517. {
  8518. display: block;
  8519. float: none;
  8520. padding-bottom: 0;
  8521. text-align: center;
  8522.  
  8523. .avatar
  8524. {
  8525. display: inline-block;
  8526. }
  8527. }
  8528.  
  8529. .memberHeader-content
  8530. {
  8531. padding-left: @_memberHeader-padding;
  8532. }
  8533.  
  8534. .memberHeader-main .memberHeader-content
  8535. {
  8536. display: flex;
  8537. flex-direction: column;
  8538. padding-top: 0;
  8539. min-height: 0;
  8540. text-align: center;
  8541. }
  8542.  
  8543. .memberHeader-name
  8544. {
  8545. text-align: center;
  8546. margin-top: 0;
  8547. }
  8548.  
  8549. .memberHeader-actionTop
  8550. {
  8551. float: none;
  8552. order: 2;
  8553. margin-top: @xf-paddingSmall;
  8554. }
  8555.  
  8556. .memberHeader-buttons
  8557. {
  8558. text-align: center;
  8559. }
  8560.  
  8561. .memberHeader-banners,
  8562. .memberHeader-blurb
  8563. {
  8564. text-align: inherit;
  8565. }
  8566. }
  8567.  
  8568. .block-tabHeader.block-tabHeader--memberTabs
  8569. {
  8570. border-bottom: none;
  8571. }
  8572.  
  8573.  
  8574.  
  8575. .memberOverviewBlocks
  8576. {
  8577. .m-listPlain();
  8578.  
  8579. display: flex;
  8580. flex-wrap: wrap;
  8581. align-items: stretch;
  8582.  
  8583. > li
  8584. {
  8585. .has-no-flexbox &
  8586. {
  8587. display: inline-block;
  8588. vertical-align: top;
  8589. }
  8590.  
  8591. width: 33.3%;
  8592. max-width: 100%;
  8593. padding: @xf-blockPaddingV @xf-blockPaddingH;
  8594.  
  8595. @media (max-width: 1150px)
  8596. {
  8597. width: 50%;
  8598. }
  8599.  
  8600. @media (max-width: 580px)
  8601. {
  8602. width: 100%;
  8603. }
  8604. }
  8605. }
  8606.  
  8607. .memberOverviewBlock
  8608. {
  8609. display: flex;
  8610. flex-direction: column;
  8611. }
  8612. .memberOverviewBlock-list
  8613. {
  8614. .m-listPlain();
  8615.  
  8616. > li
  8617. {
  8618. margin: @xf-paddingMedium 0;
  8619. }
  8620. }
  8621. .memberOverviewBlock-seeMore
  8622. {
  8623. .xf-minorBlockContent();
  8624. padding: @xf-paddingSmall;
  8625. text-align: center;
  8626.  
  8627. // pushes this to the bottom with flex box
  8628. margin-top: auto;
  8629. }]]></template>
  8630. <template title="member_tooltip.less" type="public" addon_id="XF" version_id="2000270" version_string="2.0.2"><![CDATA[@_memberTooltip-padding: @xf-paddingMedium;
  8631. @_memberTooltip-avatarSize: @avatar-s;
  8632. .tooltip-content-inner{
  8633. .username{
  8634. color: @xf-paletteColor3;
  8635. }
  8636. }
  8637. .memberTooltip-header
  8638. {
  8639. display: table;
  8640. table-layout: fixed;
  8641. width: 100%;
  8642. padding: @_memberTooltip-padding;
  8643. }
  8644.  
  8645. .memberTooltip-avatar
  8646. {
  8647. display: table-cell;
  8648. width: ((@_memberTooltip-padding) * 2 + (@_memberTooltip-avatarSize));
  8649. vertical-align: top;
  8650. }
  8651.  
  8652. .memberTooltip-headerInfo
  8653. {
  8654. display: table-cell;
  8655. vertical-align: top;
  8656. }
  8657.  
  8658. .memberTooltip-name
  8659. {
  8660. margin: 0;
  8661. margin-top: -.15em;
  8662. padding: 0;
  8663. font-weight: @xf-fontWeightNormal;
  8664. line-height: .8 * (@xf-lineHeightDefault);
  8665. .xf-memberTooltipName();
  8666.  
  8667. .m-hiddenLinks();
  8668. }
  8669.  
  8670. .memberTooltip-headerAction
  8671. {
  8672. float: right;
  8673. }
  8674.  
  8675. .memberTooltip-banners,
  8676. .memberTooltip-blurb
  8677. {
  8678. margin-top: .25em;
  8679. }
  8680.  
  8681. .memberTooltip-blurb
  8682. {
  8683. font-size: @xf-fontSizeSmall;
  8684. }
  8685.  
  8686. .memberTooltip-stats
  8687. {
  8688. font-size: @xf-fontSizeSmall;
  8689.  
  8690. dl.pairs.pairs--rows > dt
  8691. {
  8692. font-size: @xf-fontSizeSmaller;
  8693. }
  8694. }
  8695.  
  8696. .memberTooltip-info,
  8697. .memberTooltip-actions
  8698. {
  8699. padding: @_memberTooltip-padding;
  8700. }
  8701.  
  8702. .memberTooltip-separator
  8703. {
  8704. margin: -@xf-borderSize @_memberTooltip-padding 0;
  8705. border: none;
  8706. border-top: @xf-borderSize solid @xf-borderColorLight;
  8707. }]]></template>
  8708. <template title="message.less" type="public" addon_id="XF" version_id="2000770" version_string="2.0.7"><![CDATA[@_message-actionColumnWidth: 40px;
  8709. @_messageSimple-userColumnWidth: 70px;
  8710. {{ include('mixins.less') }}
  8711.  
  8712. .message
  8713. {
  8714. + .message,
  8715. &.message--bordered
  8716. {
  8717. border-top: @xf-borderSize solid @xf-borderColor;
  8718. }
  8719. }
  8720.  
  8721. .message,
  8722. .block--messages .message
  8723. {
  8724. &.is-mod-selected
  8725. {
  8726. background: @xf-inlineModHighlightColor;
  8727.  
  8728. .message-userArrow:after
  8729. {
  8730. border-right-color: @xf-inlineModHighlightColor;
  8731. }
  8732. }
  8733. }
  8734.  
  8735. .message-inner
  8736. {
  8737. display: flex;
  8738.  
  8739. .has-no-flexbox &
  8740. {
  8741. display: table;
  8742. table-layout: fixed;
  8743. width: 100%;
  8744. }
  8745. }
  8746.  
  8747. .message-cell
  8748. {
  8749. display: block;
  8750. vertical-align: top;
  8751. padding: @xf-messagePadding;
  8752.  
  8753. .has-no-flexbox &
  8754. {
  8755. display: table-cell;
  8756. }
  8757.  
  8758. .message--quickReply &
  8759. {
  8760. //padding-bottom: 35px; // for the submit row
  8761.  
  8762. > .formRow:last-child
  8763. {
  8764. > dd
  8765. {
  8766. padding-bottom: 0;
  8767. }
  8768. }
  8769. }
  8770.  
  8771. &.message-cell--closer
  8772. {
  8773. padding: @xf-messagePaddingSmall;
  8774.  
  8775. &.message-cell--main
  8776. {
  8777. padding-left: ((@xf-messagePaddingSmall) * 1.5);
  8778. }
  8779.  
  8780. &.message-cell--user
  8781. {
  8782. .m-fixedWidthFlex((@xf-messageUserBlockWidth) + 2 * (@xf-messagePaddingSmall));
  8783.  
  8784. .message--simple &
  8785. {
  8786. .m-fixedWidthFlex(@_messageSimple-userColumnWidth + 2 * (@xf-messagePaddingSmall));
  8787.  
  8788. }
  8789. }
  8790.  
  8791. &.message-cell--action
  8792. {
  8793. .m-fixedWidthFlex((@_message-actionColumnWidth) + 2 * (@xf-messagePaddingSmall));
  8794. }
  8795. }
  8796.  
  8797. &.message-cell--user,
  8798. &.message-cell--action
  8799. {
  8800. position: relative;
  8801. .xf-messageUserBlock(no-border);
  8802. border-right: @xf-messageUserBlock--border-width solid @xf-messageUserBlock--border-color;
  8803. min-width: 0;
  8804. }
  8805.  
  8806. &.message-cell--user
  8807. {
  8808. .m-fixedWidthFlex((@xf-messageUserBlockWidth) + 2 * (@xf-messagePadding));
  8809.  
  8810. .message--simple &
  8811. {
  8812. .m-fixedWidthFlex(@_messageSimple-userColumnWidth + 2 * @xf-messagePaddingSmall);
  8813. }
  8814. }
  8815.  
  8816. &.message-cell--action
  8817. {
  8818. .m-fixedWidthFlex((@_message-actionColumnWidth) + 2 * (@xf-messagePadding));
  8819. }
  8820.  
  8821. &.message-cell--main
  8822. {
  8823. padding-left: (@xf-messagePadding * 1.5);
  8824. flex: 1 1 auto;
  8825. width: 100%;
  8826. min-width: 0;
  8827.  
  8828. &.is-editing
  8829. {
  8830. padding: 0;
  8831. }
  8832.  
  8833. // should really only happen when editing
  8834. .block
  8835. {
  8836. margin: 0;
  8837. }
  8838.  
  8839. .block-container
  8840. {
  8841. margin: 0;
  8842. border: none;
  8843. }
  8844. }
  8845.  
  8846. &.message-cell--alert
  8847. {
  8848. font-size: @xf-fontSizeSmall;
  8849. flex: 1 1 auto;
  8850. width: 100%;
  8851. min-width: 0;
  8852. .xf-contentAccentBase();
  8853.  
  8854. a
  8855. {
  8856. .xf-contentAccentLink();
  8857. }
  8858. }
  8859. }
  8860.  
  8861. .message-main
  8862. {
  8863. height: 100%;
  8864. display: flex;
  8865. flex-direction: column;
  8866. }
  8867.  
  8868. .message-content
  8869. {
  8870. flex: 1 1 auto;
  8871.  
  8872. // IE11 flex bug
  8873. min-height: 1px;
  8874. }
  8875.  
  8876. .message-footer
  8877. {
  8878. margin-top: auto;
  8879. }
  8880.  
  8881. {{ include('brv_message.less') }}
  8882.  
  8883. @media (max-width: @xf-messageSingleColumnWidth)
  8884. {
  8885. .message:not(.message--forceColumns)
  8886. {
  8887. .message-inner
  8888. {
  8889. display: block;
  8890. }
  8891.  
  8892. .message-cell
  8893. {
  8894. display: block;
  8895. .m-clearFix();
  8896.  
  8897. &.message-cell--user
  8898. {
  8899. width: auto;
  8900. border-right: none;
  8901. border-bottom: @xf-messageUserBlock--border-width solid @xf-messageUserBlock--border-color;
  8902. }
  8903.  
  8904. &.message-cell--main
  8905. {
  8906. padding-left: @xf-messagePadding;
  8907. }
  8908. }
  8909. }
  8910.  
  8911. .message--simple:not(.message--forceColumns),
  8912. .message--quickReply:not(.message--forceColumns)
  8913. {
  8914. .message-cell.message-cell--user
  8915. {
  8916. display: none;
  8917. }
  8918. }
  8919. }
  8920.  
  8921. // ######################## USER COLUMN #########################
  8922.  
  8923. .message-userArrow
  8924. {
  8925. position: absolute;
  8926. top: (@xf-messagePadding) * 2;
  8927. right: -1px;
  8928.  
  8929. .m-triangleLeft(xf-default(@xf-messageUserBlock--border-color, transparent), @xf-messagePadding);
  8930.  
  8931. &:after
  8932. {
  8933. position: absolute;
  8934. top: -(@xf-messagePadding - 1px);
  8935. right: -@xf-messagePadding;
  8936. content: "";
  8937.  
  8938. .m-triangleLeft(@xf-contentBg, @xf-messagePadding - 1px);
  8939. }
  8940. }
  8941.  
  8942. .message-avatar
  8943. {
  8944. text-align: center;
  8945. margin-bottom: 3px;
  8946.  
  8947. .avatar
  8948. {
  8949. vertical-align: bottom;
  8950. }
  8951. }
  8952.  
  8953. .message-avatar-wrapper
  8954. {
  8955. position: relative;
  8956. display: inline-block;
  8957. vertical-align: bottom;
  8958.  
  8959. .message-avatar-online
  8960. {
  8961. position: absolute;
  8962. top: -1px;
  8963. left: -1px;
  8964.  
  8965. border: 7px solid transparent;
  8966. border-left-color: rgb(127, 185, 0);
  8967. border-top-color: rgb(127, 185, 0);
  8968. border-radius: (@xf-avatarBorderRadius + 1) max(0px, @xf-avatarBorderRadius - 1px) 0 max(0px, @xf-avatarBorderRadius - 1);
  8969. }
  8970. }
  8971.  
  8972. .message-name
  8973. {
  8974. font-weight: @xf-fontWeightHeavy;
  8975. font-size: inherit;
  8976. text-align: center;
  8977. margin: 0;
  8978. }
  8979.  
  8980. .message-userTitle
  8981. {
  8982. font-size: @xf-fontSizeSmaller;
  8983. font-weight: normal;
  8984. text-align: center;
  8985. margin: 0;
  8986. }
  8987.  
  8988. .message-userBanner.userBanner
  8989. {
  8990. display: block;
  8991. margin-top: 3px;
  8992. }
  8993.  
  8994. .message-userExtras
  8995. {
  8996. margin-top: 3px;
  8997. font-size: @xf-fontSizeSmaller;
  8998. }
  8999.  
  9000. .message--deleted
  9001. {
  9002. .message-userDetails
  9003. {
  9004. display: none;
  9005. }
  9006.  
  9007. .message-avatar .avatar
  9008. {
  9009. .m-avatarSize(@avatar-s);
  9010. }
  9011. }
  9012.  
  9013. .message-cell--user
  9014. {
  9015. .message-date,
  9016. .message-permalink
  9017. {
  9018. display: none;
  9019. }
  9020. }
  9021.  
  9022. @media (max-width: @xf-messageSingleColumnWidth)
  9023. {
  9024. .message:not(.message--forceColumns)
  9025. {
  9026. .message-userArrow
  9027. {
  9028. top: auto;
  9029. right: auto;
  9030. bottom: -1px;
  9031. left: ((@avatar-s) / 2);
  9032.  
  9033. border: none;
  9034. .m-triangleUp(xf-default(@xf-messageUserBlock--border-color, transparent), @xf-messagePadding);
  9035.  
  9036. &:after
  9037. {
  9038. top: auto;
  9039. right: auto;
  9040. left: -(@xf-messagePadding - 1px);
  9041. bottom: -@xf-messagePadding;
  9042.  
  9043. border: none;
  9044. .m-triangleUp(@xf-contentBg, @xf-messagePadding - 1px);
  9045. }
  9046. }
  9047.  
  9048. &.is-mod-selected
  9049. {
  9050. .message-userArrow:after
  9051. {
  9052. border-color: transparent;
  9053. border-bottom-color: @xf-inlineModHighlightColor;
  9054. }
  9055. }
  9056.  
  9057. .message-user
  9058. {
  9059. display: flex;
  9060.  
  9061. .has-no-flexbox &
  9062. {
  9063. display: table;
  9064. width: 100%;
  9065. }
  9066. }
  9067.  
  9068. .message-avatar
  9069. {
  9070. margin-bottom: 0;
  9071.  
  9072. .has-no-flexbox &
  9073. {
  9074. display: table-cell;
  9075. width: 1%;
  9076. }
  9077.  
  9078. .avatar
  9079. {
  9080. .m-avatarSize(@avatar-s);
  9081. }
  9082. }
  9083.  
  9084. .message-userDetails
  9085. {
  9086. flex: 1;
  9087. min-width: 0;
  9088. padding-left: @xf-messagePadding;
  9089.  
  9090. .has-no-flexbox &
  9091. {
  9092. display: table-cell;
  9093. }
  9094. }
  9095.  
  9096. .message-name
  9097. {
  9098. text-align: left;
  9099. }
  9100.  
  9101. .message-userTitle,
  9102. .message-userBanner.userBanner
  9103. {
  9104. display: inline-block;
  9105. text-align: left;
  9106. margin: 0;
  9107. }
  9108.  
  9109. .message-userExtras
  9110. {
  9111. display: none;
  9112. }
  9113.  
  9114. .message--deleted
  9115. {
  9116. .message-userDetails
  9117. {
  9118. display: block;
  9119. }
  9120. }
  9121. }
  9122. }
  9123.  
  9124. // ####################### MAIN COLUMN ####################
  9125.  
  9126. .message-content
  9127. {
  9128. position: relative;
  9129.  
  9130. .js-selectToQuoteEnd
  9131. {
  9132. height: 0;
  9133. font-size: 0;
  9134. overflow: hidden;
  9135. }
  9136.  
  9137. .message--multiQuoteList &
  9138. {
  9139. min-height: 80px;
  9140. max-height: 120px;
  9141. overflow: hidden;
  9142.  
  9143. .message-body
  9144. {
  9145. pointer-events: none;
  9146. }
  9147. }
  9148. }
  9149.  
  9150. .message-attribution
  9151. {
  9152. color: @xf-textColorMuted;
  9153. font-size: @xf-fontSizeSmaller;
  9154. padding-bottom: 3px;
  9155. border-bottom: @xf-borderSize solid @xf-borderColorFaint;
  9156. .m-clearFix();
  9157.  
  9158. &.message-attribution--plain
  9159. {
  9160. border-bottom: none;
  9161. font-size: inherit;
  9162. padding-bottom: 0;
  9163. }
  9164. }
  9165.  
  9166. .message-attribution-main { float: left; }
  9167. .message-attribution-opposite { float: right; }
  9168.  
  9169. .message-attribution-source
  9170. {
  9171. font-size: @xf-fontSizeSmaller;
  9172. margin-bottom: @xf-paddingSmall;
  9173. }
  9174.  
  9175. .message-attribution-user
  9176. {
  9177. font-weight: @xf-fontWeightHeavy;
  9178.  
  9179. .avatar
  9180. {
  9181. display: none;
  9182. }
  9183.  
  9184. .attribution
  9185. {
  9186. display: inline;
  9187. font-size: inherit;
  9188. font-weight: inherit;
  9189. margin: 0;
  9190. }
  9191. }
  9192.  
  9193. .message-newIndicator
  9194. {
  9195. .xf-messageNewIndicator();
  9196. }
  9197.  
  9198. .message-minorHighlight
  9199. {
  9200. font-size: @xf-fontSizeSmall;
  9201. color: @xf-textColorFeature;
  9202. }
  9203.  
  9204. .message-fields
  9205. {
  9206. margin: @xf-messagePadding 0;
  9207. }
  9208.  
  9209. .message-body
  9210. {
  9211. margin: @xf-messagePadding 0;
  9212. font-family: @xf-fontFamilyBody;
  9213.  
  9214. .message--simple &
  9215. {
  9216. margin-top: @xf-messagePaddingSmall;
  9217. margin-bottom: @xf-messagePaddingSmall;
  9218. }
  9219.  
  9220. &:last-child
  9221. {
  9222. margin-bottom: 0;
  9223. }
  9224. }
  9225.  
  9226. .message-attachments
  9227. {
  9228. margin: .5em 0;
  9229. }
  9230.  
  9231. .message-attachments-list
  9232. {
  9233. .m-listPlain();
  9234. }
  9235.  
  9236. .message-lastEdit
  9237. {
  9238. margin-top: .5em;
  9239. color: @xf-textColorMuted;
  9240. font-size: @xf-fontSizeSmallest;
  9241. text-align: right;
  9242. }
  9243.  
  9244. .message-signature
  9245. {
  9246. margin-top: @xf-messagePadding;
  9247. .xf-messageSignature();
  9248. }
  9249.  
  9250. .message-actionBar .actionBar-set
  9251. {
  9252. margin-top: @xf-messagePadding;
  9253. font-size: @xf-fontSizeSmall;
  9254.  
  9255. .message--simple &
  9256. {
  9257. margin-top: @xf-messagePaddingSmall;
  9258. }
  9259. }
  9260.  
  9261. .message .likesBar
  9262. {
  9263. margin-top: @xf-messagePadding;
  9264. padding: @xf-messagePaddingSmall;
  9265. }
  9266.  
  9267. .message-historyTarget
  9268. {
  9269. margin-top: @xf-messagePadding;
  9270. }
  9271.  
  9272. .message-gradient
  9273. {
  9274. position: absolute;
  9275. bottom: 0;
  9276. left: 0;
  9277. right: 0;
  9278. height: 60px;
  9279.  
  9280. .m-gradient(fade(@xf-contentBg, 0%), @xf-contentBg, @xf-contentBg, 0%, 90%);
  9281. }
  9282.  
  9283. .message-responses
  9284. {
  9285. margin-top: @xf-messagePaddingSmall;
  9286. font-size: @xf-fontSizeSmall;
  9287. }
  9288.  
  9289. .message-responseRow
  9290. {
  9291. margin-top: -@xf-minorBlockContent--border-width;
  9292. padding: @xf-messagePaddingSmall;
  9293.  
  9294. // note that border radiuses are very difficult to do here due to a lot of dynamic showing/hiding
  9295.  
  9296. &.message-responseRow--likes
  9297. {
  9298. .m-transitionFadeDown();
  9299. }
  9300. }
  9301.  
  9302. @media (max-width: @xf-messageSingleColumnWidth)
  9303. {
  9304. .message:not(.message--forceColumns)
  9305. {
  9306. .message-attribution-user .avatar
  9307. {
  9308. display: inline-block;
  9309. .m-avatarSize((@xf-fontSizeNormal) * (@xf-lineHeightDefault));
  9310. }
  9311.  
  9312. .message-content
  9313. {
  9314. // this is 1px to workaround an IE11 issue - see #139187
  9315. min-height: 1px;
  9316. }
  9317. }
  9318. }
  9319.  
  9320. @media (max-width: @xf-responsiveNarrow)
  9321. {
  9322. .message-signature
  9323. {
  9324. display: none;
  9325. }
  9326. }
  9327.  
  9328. // MESSAGE MENU
  9329.  
  9330. .message-menuGroup
  9331. {
  9332. display: inline-block;
  9333. }
  9334.  
  9335. .message-menuTrigger
  9336. {
  9337. display: inline-block;
  9338.  
  9339. &:after
  9340. {
  9341. .m-faBase();
  9342. .m-faContent(@fa-var-caret-down, 1em);
  9343. //font-size: 120%;
  9344. text-align: right;
  9345. }
  9346.  
  9347. &:hover:after
  9348. {
  9349. color: black;
  9350. }
  9351. }
  9352.  
  9353. .message-menu-section
  9354. {
  9355. &--editDelete
  9356. {
  9357. .menu-linkRow
  9358. {
  9359. font-weight: @xf-fontWeightHeavy;
  9360. font-size: @xf-fontSizeNormal;
  9361. }
  9362. }
  9363. }
  9364.  
  9365. .message-menu-link
  9366. {
  9367. &--delete i:after
  9368. {
  9369. .m-faContent(@fa-var-trash-o);
  9370. }
  9371. &--edit i:after
  9372. {
  9373. .m-faContent(@fa-var-edit);
  9374. }
  9375. &--report i:after
  9376. {
  9377. .m-faContent(@fa-var-frown-o);
  9378. }
  9379. &--warn i:after
  9380. {
  9381. .m-faContent(@fa-var-warning);
  9382. }
  9383. &--spam i:after
  9384. {
  9385. .m-faContent(@fa-var-ban);
  9386. }
  9387. &--ip i:after
  9388. {
  9389. .m-faContent(@fa-var-sitemap);
  9390. }
  9391. &--history i:after
  9392. {
  9393. .m-faContent(@fa-var-history);
  9394. }
  9395. &--follow i:after
  9396. {
  9397. .m-faContent(@fa-var-user-plus);
  9398. }
  9399. &--ignore i:after
  9400. {
  9401. .m-faContent(@fa-var-user-times);
  9402. }
  9403. &--share i:after
  9404. {
  9405. .m-faContent(@fa-var-share-alt);
  9406. }
  9407. }
  9408.  
  9409. // ############################# COMMENTS ###############
  9410.  
  9411. .comment
  9412. {
  9413. }
  9414.  
  9415. .comment-inner
  9416. {
  9417. display: table;
  9418. table-layout: fixed;
  9419. width: 100%;
  9420. }
  9421.  
  9422. .comment-avatar
  9423. {
  9424. display: table-cell;
  9425. width: 24px;
  9426. vertical-align: top;
  9427.  
  9428. .avatar,
  9429. img
  9430. {
  9431. vertical-align: bottom;
  9432. }
  9433. }
  9434.  
  9435. .comment-main
  9436. {
  9437. display: table-cell;
  9438. padding-left: @xf-messagePadding;
  9439. vertical-align: top;
  9440. }
  9441.  
  9442. .comment-contentWrapper
  9443. {
  9444. margin-bottom: @xf-messagePaddingSmall;
  9445. }
  9446.  
  9447. .comment-user
  9448. {
  9449. font-weight: @xf-fontWeightHeavy;
  9450. }
  9451.  
  9452. .comment-body
  9453. {
  9454. display: inline;
  9455. }
  9456.  
  9457. .comment-input
  9458. {
  9459. display: block;
  9460. height: 2.34em;
  9461. margin-bottom: @xf-messagePaddingSmall;
  9462. }
  9463.  
  9464. .comment-actionBar .actionBar-set
  9465. {
  9466. margin-top: @xf-messagePaddingSmall;
  9467. color: @xf-textColorMuted;
  9468. }
  9469.  
  9470. .comment-likes
  9471. {
  9472. .m-transitionFadeDown();
  9473.  
  9474. margin-top: @xf-messagePaddingSmall;
  9475. font-size: @xf-fontSizeSmaller;
  9476. }
  9477.  
  9478. // ################################## MESSAGE QUICK REPLY ADDITIONS #############
  9479.  
  9480. .formSubmitRow.formSubmitRow--messageQr
  9481. {
  9482. .formSubmitRow-controls
  9483. {
  9484. text-align: center;
  9485. padding-left: 0;
  9486. padding-right: 0;
  9487. margin-left: @xf-messagePadding;
  9488. margin-right: @xf-messagePadding;
  9489.  
  9490. @media (max-width: @xf-formResponsive)
  9491. {
  9492. text-align: right;
  9493. }
  9494. }
  9495. }
  9496.  
  9497. // ################################## MESSAGE NOTICES #############################
  9498.  
  9499. .messageNotice
  9500. {
  9501. margin: @xf-messagePaddingSmall 0;
  9502. padding: @xf-messagePaddingSmall @xf-messagePadding;
  9503. .xf-contentAccentBase();
  9504. font-size: @xf-fontSizeSmaller;
  9505. border-left: @xf-borderSizeMinorFeature solid @xf-borderColorAttention;
  9506.  
  9507. a,
  9508. a:hover
  9509. {
  9510. .xf-contentAccentLink();
  9511. }
  9512.  
  9513. &:first-child
  9514. {
  9515. margin-top: 0;
  9516. }
  9517.  
  9518. &:before
  9519. {
  9520. display: inline-block;
  9521. .m-faBase();
  9522. padding-right: .2em;
  9523. font-size: 125%;
  9524. color: @xf-textColorAttention;
  9525. }
  9526.  
  9527. &.messageNotice--deleted:before { .m-faContent(@fa-var-trash, .79em); }
  9528. &.messageNotice--moderated:before { .m-faContent(@fa-var-shield, .72em); }
  9529. &.messageNotice--warning:before { .m-faContent(@fa-var-warning, 1em); }
  9530. &.messageNotice--ignored:before { .m-faContent(@fa-var-microphone-slash, .79em); }
  9531. }
  9532.  
  9533. // ##################### MESSAGE VARIANTS/RESPONSIVE ##################
  9534.  
  9535. @media (min-width: @xf-responsiveEdgeSpacerRemoval)
  9536. {
  9537. .block:not(.block--messages)
  9538. {
  9539. @{block-noStripSel} > .block-body:first-child > .message:first-child,
  9540. .block-topRadiusContent.message,
  9541. .block-topRadiusContent > .message:first-child
  9542. {
  9543. .message-cell:first-child { border-top-left-radius: @block-borderRadius-inner; }
  9544. .message-cell:last-child { border-top-right-radius: @block-borderRadius-inner; }
  9545. }
  9546.  
  9547. @{block-noStripSel} > .block-body:last-child > .message:last-child,
  9548. .block-bottomRadiusContent.message,
  9549. .block-bottomRadiusContent > .message:last-child
  9550. {
  9551. .message-cell:first-child { border-bottom-left-radius: @block-borderRadius-inner; }
  9552. .message-cell:last-child { border-bottom-right-radius: @block-borderRadius-inner; }
  9553. }
  9554. }
  9555. }
  9556.  
  9557. .block--messages
  9558. {
  9559. .block-container
  9560. {
  9561. background: none;
  9562. border: none;
  9563. }
  9564.  
  9565. .message,
  9566. .block-row
  9567. {
  9568.  
  9569. border-radius: @xf-blockBorderRadius;
  9570.  
  9571. + .message,
  9572. + .block-row
  9573. {
  9574. margin-top: @xf-blockPaddingV;
  9575. }
  9576. }
  9577.  
  9578. .message-cell
  9579. {
  9580. &:first-child
  9581. {
  9582. border-radius: 0;
  9583. border-top-left-radius: @block-borderRadius-inner;
  9584. border-bottom-left-radius: @block-borderRadius-inner;
  9585. }
  9586.  
  9587. &:last-child
  9588. {
  9589. border-radius: 0;
  9590. border-top-right-radius: @block-borderRadius-inner;
  9591. border-bottom-right-radius: @block-borderRadius-inner;
  9592. }
  9593.  
  9594. &:first-child:last-child
  9595. {
  9596. border-radius: @block-borderRadius-inner;
  9597. }
  9598. }
  9599.  
  9600. @media (max-width: @xf-messageSingleColumnWidth)
  9601. {
  9602. .message:not(.message--forceColumns)
  9603. {
  9604. .message-cell
  9605. {
  9606. &:first-child
  9607. {
  9608. border-radius: 0;
  9609. border-top-left-radius: @block-borderRadius-inner;
  9610. border-top-right-radius: @block-borderRadius-inner;
  9611. }
  9612.  
  9613. &:last-child
  9614. {
  9615. border-radius: 0;
  9616. border-bottom-left-radius: @block-borderRadius-inner;
  9617. border-bottom-right-radius: @block-borderRadius-inner;
  9618. }
  9619.  
  9620. &:first-child:last-child
  9621. {
  9622. border-radius: @block-borderRadius-inner;
  9623. }
  9624. }
  9625. }
  9626.  
  9627. .message--simple:not(.message--forceColumns) .message-cell--user + .message-cell
  9628. {
  9629. border-radius: 0;
  9630. border-top-left-radius: @block-borderRadius-inner;
  9631. border-top-right-radius: @block-borderRadius-inner;
  9632. }
  9633. }
  9634.  
  9635. @media (max-width: @xf-responsiveEdgeSpacerRemoval)
  9636. {
  9637. .message,
  9638. .block-row
  9639. {
  9640. border-left: none;
  9641. border-right: none;
  9642. border-radius: 0;
  9643. }
  9644.  
  9645. .message-cell
  9646. {
  9647. border-radius: 0;
  9648.  
  9649. &:first-child,
  9650. &:last-child
  9651. {
  9652. border-radius: 0;
  9653. }
  9654. }
  9655.  
  9656. .message--simple .message-cell--user + .message-cell
  9657. {
  9658. border-radius: 0;
  9659. }
  9660. }
  9661. }]]></template>
  9662. <template title="message_macros" type="public" addon_id="XF" version_id="2000770" version_string="2.0.7"><![CDATA[<xf:macro name="user_info"
  9663. arg-user="!"
  9664. arg-fallbackName=""
  9665. arg-dateHtml=""
  9666. arg-linkHtml="">
  9667.  
  9668. <section itemscope itemtype="https://schema.org/Person" class="message-user"><div class="message-avatar {{ ($xf.options.showMessageOnlineStatus && $user && $user.isOnline()) ? 'message-avatar--online' : '' }}">
  9669. <div class="message-avatar-wrapper">
  9670. <xf:avatar user="$user" size="m" defaultname="{$fallbackName}" itemprop="image" />
  9671. <xf:if is="$xf.options.showMessageOnlineStatus && $user && $user.isOnline()">
  9672. <span class="message-avatar-online" data-xf-init="tooltip" title="{{ phrase('online_now')|for_attr }}"></span>
  9673. </xf:if>
  9674. </div>
  9675. </div>
  9676. <div class="message-userDetails">
  9677. <h4 class="message-name"><xf:username user="$user" rich="true" defaultname="{$fallbackName}" itemprop="name" /></h4>
  9678. <xf:usertitle user="$user" tag="h5" class="message-userTitle" banner="true" itemprop="jobTitle" />
  9679. <xf:userbanners user="$user" tag="div" class="message-userBanner" itemprop="jobTitle" />
  9680. <xf:if is="{$dateHtml}"><div class="message-date">{$dateHtml}</div></xf:if>
  9681. </div>
  9682. <xf:if is="{$linkHtml}"><div class="message-permalink">{$linkHtml}</div></xf:if>
  9683. <xf:if is="$user.user_id">
  9684. <xf:set var="$extras" value="{{ property('messageUserElements') }}" />
  9685. <xf:if contentcheck="true">
  9686. <div class="message-userExtras">
  9687. <xf:contentcheck>
  9688. <xf:if is="$extras.register_date">
  9689. <dl class="pairs pairs--justified">
  9690. <dt>{{ phrase('joined') }}</dt>
  9691. <dd>{{ date($user.register_date) }}</dd>
  9692. </dl>
  9693. </xf:if>
  9694. <xf:if is="$extras.message_count">
  9695. <dl class="pairs pairs--justified">
  9696. <dt>{{ phrase('messages') }}</dt>
  9697. <dd>{$user.message_count|number}</dd>
  9698. </dl>
  9699. </xf:if>
  9700. <xf:if is="$extras.like_count">
  9701. <dl class="pairs pairs--justified">
  9702. <dt>{{ phrase('likes') }}</dt>
  9703. <dd>{$user.like_count|number}</dd>
  9704. </dl>
  9705. </xf:if>
  9706. <xf:if is="$extras.trophy_points && $xf.options.enableTrophies">
  9707. <dl class="pairs pairs--justified">
  9708. <dt>{{ phrase('points') }}</dt>
  9709. <dd>{$user.trophy_points|number}</dd>
  9710. </dl>
  9711. </xf:if>
  9712. <xf:if is="$extras.age && $user.Profile.age">
  9713. <dl class="pairs pairs--justified">
  9714. <dt>{{ phrase('age') }}</dt>
  9715. <dd>{$user.Profile.age}</dd>
  9716. </dl>
  9717. </xf:if>
  9718. <xf:if is="$extras.location && $user.Profile.location">
  9719. <dl class="pairs pairs--justified">
  9720. <dt>{{ phrase('location') }}</dt>
  9721. <dd>
  9722. <xf:if is="$xf.options.geoLocationUrl">
  9723. <a href="{{ link('misc/location-info', '', {'location': $user.Profile.location}) }}" rel="nofollow noreferrer" target="_blank" class="u-concealed">{$user.Profile.location}</a>
  9724. <xf:else />
  9725. {$user.Profile.location}
  9726. </xf:if>
  9727. </dd>
  9728. </dl>
  9729. </xf:if>
  9730. <xf:if is="$extras.website && $user.Profile.website">
  9731. <dl class="pairs pairs--justified">
  9732. <dt>{{ phrase('website') }}</dt>
  9733. <dd><a href="{$user.Profile.website}" rel="nofollow" target="_blank">{$user.Profile.website|url('host', phrase('visit_site'))}</a></dd>
  9734. </dl>
  9735. </xf:if>
  9736. <xf:if is="$extras.custom_fields">
  9737. <xf:macro template="custom_fields_macros" name="custom_fields_values"
  9738. arg-type="users"
  9739. arg-group="personal"
  9740. arg-set="{$user.Profile.custom_fields}"
  9741. arg-additionalFilters="{{ ['message'] }}"
  9742. arg-valueClass="pairs pairs--justified" />
  9743. <xf:if is="$user.canViewIdentities()">
  9744. <xf:macro template="custom_fields_macros" name="custom_fields_view"
  9745. arg-type="users"
  9746. arg-group="contact"
  9747. arg-set="{$user.Profile.custom_fields}"
  9748. arg-additionalFilters="{{ ['message'] }}"
  9749. arg-valueClass="pairs pairs--justified" />
  9750. </xf:if>
  9751. </xf:if>
  9752. </xf:contentcheck>
  9753. </div>
  9754. </xf:if>
  9755. </xf:if>
  9756. <span class="message-userArrow"></span>
  9757. </section>
  9758. </xf:macro>
  9759.  
  9760. <xf:macro name="user_info_simple" arg-user="!" arg-fallbackName="">
  9761. <header itemscope itemtype="https://schema.org/Person" class="message-user">
  9762. <meta itemprop="name" content="{{ $user.username ?: $fallbackName }}">
  9763. <div class="message-avatar">
  9764. <div class="message-avatar-wrapper">
  9765. <xf:avatar user="$user" size="s" defaultname="{$fallbackName}" itemprop="image" />
  9766. </div>
  9767. </div>
  9768. <span class="message-userArrow"></span>
  9769. </header>
  9770. </xf:macro>
  9771.  
  9772. <xf:macro name="attachments" arg-attachments="!" arg-message="!" arg-canView="!">
  9773. <xf:if contentcheck="true">
  9774. <xf:css src="attachments.less" />
  9775. <section class="message-attachments">
  9776. <h4 class="block-textHeader">{{ phrase('attachments') }}:</h4>
  9777. <ul class="attachmentList">
  9778. <xf:contentcheck>
  9779. <xf:foreach loop="$attachments" value="$attachment" if="!$message.isAttachmentEmbedded($attachment)">
  9780. <xf:macro template="attachment_macros" name="attachment_list_item"
  9781. arg-attachment="{$attachment}"
  9782. arg-canView="{$canView}" />
  9783. </xf:foreach>
  9784. </xf:contentcheck>
  9785. </ul>
  9786. </section>
  9787. </xf:if>
  9788. </xf:macro>
  9789.  
  9790. <xf:macro name="signature" arg-user="!">
  9791. <xf:if is="$xf.visitor.Option.content_show_signature AND $user.Profile.signature">
  9792. <xf:if contentcheck="true">
  9793. <aside class="message-signature">
  9794. <xf:contentcheck>
  9795. {{ bb_code($user.Profile.signature, 'user:signature', $user) }}
  9796. </xf:contentcheck>
  9797. </aside>
  9798. </xf:if>
  9799. </xf:if>
  9800. </xf:macro>]]></template>
  9801. <template title="mixins.less" type="public" addon_id="" version_id="0" version_string=""><![CDATA[.brv--image{
  9802. background-image: url("{{ base_url() }}styles/brivium/argon/extra/brivium-images.png");
  9803. }
  9804. .cloud--image{
  9805. background-image: url("{{ base_url() }}styles/brivium/argon/extra/cloud.png");
  9806. }
  9807. .node--sprite{
  9808. background-image: url("{{ base_url() }}styles/brivium/argon/extra/node.png");
  9809. }
  9810. .node--read{
  9811. background-image: url("{{ base_url() }}styles/brivium/argon/extra/noderead.png");
  9812. }
  9813. .node--page{
  9814. background-image: url("{{ base_url() }}styles/brivium/argon/extra/page.png");
  9815. }
  9816. .node--link{
  9817. background-image: url("{{ base_url() }}styles/brivium/argon/extra/link.png");
  9818. }
  9819. .search-ico{
  9820. background-image: url("{{ base_url() }}styles/brivium/argon/extra/search.png");
  9821. }
  9822. .sidebar-ico{
  9823. background-image: url("{{ base_url() }}styles/brivium/argon/extra/sidebar.png");
  9824. }]]></template>
  9825. <template title="node_list.less" type="public" addon_id="XF" version_id="2000370" version_string="2.0.3"><![CDATA[@_nodeList-statsCellBreakpoint: 1000px;
  9826.  
  9827. .node
  9828. {
  9829. & + .node
  9830. {
  9831. border-top: @xf-borderSize solid @xf-borderColor;
  9832. }
  9833. }
  9834.  
  9835. .node-body
  9836. {
  9837. display: table;
  9838. table-layout: fixed;
  9839. width: 100%;
  9840. }
  9841.  
  9842. .node-icon
  9843. {
  9844. display: table-cell;
  9845. vertical-align: middle;
  9846. text-align: center;
  9847. width: 46px;
  9848. padding: @xf-paddingLarge 0 @xf-paddingLarge @xf-paddingLarge;
  9849.  
  9850. i
  9851. {
  9852. display: block;
  9853. line-height: 1.125;
  9854. font-size: 32px;
  9855.  
  9856. &:before
  9857. {
  9858. .m-faBase();
  9859.  
  9860. color: @xf-nodeIconReadColor;
  9861. text-shadow: 1px 1px 0.5px fade(xf-intensify(@xf-nodeIconReadColor, 50%), 50%);
  9862.  
  9863. .node--unread &
  9864. {
  9865. opacity: 1;
  9866. color: @xf-nodeIconUnreadColor;
  9867. text-shadow: 1px 1px 0.5px fade(xf-intensify(@xf-nodeIconUnreadColor, 50%), 50%);
  9868. }
  9869. }
  9870.  
  9871. .node--forum &:before,
  9872. .node--category &:before
  9873. {
  9874. .m-faContent(@fa-var-comments, 1em);
  9875. }
  9876.  
  9877. .node--page &:before
  9878. {
  9879. .m-faContent(@fa-var-file-text, .86em);
  9880. }
  9881.  
  9882. .node--link &:before
  9883. {
  9884. .m-faContent(@fa-var-link, .93em);
  9885. }
  9886. }
  9887. }
  9888.  
  9889. .node-main
  9890. {
  9891. display: table-cell;
  9892. vertical-align: middle;
  9893. padding: @xf-paddingLarge;
  9894. }
  9895.  
  9896. .node-stats
  9897. {
  9898. display: table-cell;
  9899. width: 170px;
  9900. vertical-align: middle;
  9901. text-align: center;
  9902. padding: @xf-paddingLarge 0;
  9903.  
  9904. > dl.pairs.pairs--rows
  9905. {
  9906. width: 50%;
  9907. float: left;
  9908. margin: 0;
  9909. padding: 0 @xf-paddingMedium/2;
  9910.  
  9911. &:first-child
  9912. {
  9913. padding-left: 0;
  9914. }
  9915.  
  9916. &:last-child
  9917. {
  9918. padding-right: 0;
  9919. }
  9920. }
  9921.  
  9922. &.node-stats--single
  9923. {
  9924. width: 100px;
  9925.  
  9926. > dl.pairs.pairs--rows
  9927. {
  9928. width: 100%;
  9929. float: none;
  9930. }
  9931. }
  9932.  
  9933. &.node-stats--triple
  9934. {
  9935. width: 240px;
  9936.  
  9937. > dl.pairs.pairs--rows
  9938. {
  9939. width: 33.333%;
  9940. }
  9941. }
  9942.  
  9943. @media (max-width: @_nodeList-statsCellBreakpoint)
  9944. {
  9945. display: none;
  9946. }
  9947. }
  9948.  
  9949. .node-extra
  9950. {
  9951. display: table-cell;
  9952. vertical-align: middle;
  9953. width: 230px;
  9954. padding: @xf-paddingLarge;
  9955.  
  9956. font-size: @xf-fontSizeSmall;
  9957. }
  9958.  
  9959. .node-extra-row
  9960. {
  9961. .m-overflowEllipsis();
  9962. color: @xf-textColorMuted;
  9963. }
  9964.  
  9965. .node-extra-placeholder
  9966. {
  9967. font-style: italic;
  9968. }
  9969.  
  9970. .node-title
  9971. {
  9972. margin: 0;
  9973. padding: 0;
  9974. font-size: @xf-fontSizeLarge;
  9975. font-weight: @xf-fontWeightNormal;
  9976.  
  9977. .node--unread &
  9978. {
  9979. font-weight: @xf-fontWeightHeavy;
  9980. }
  9981. }
  9982.  
  9983. .node-description
  9984. {
  9985. font-size: @xf-fontSizeSmall;
  9986. color: @xf-textColorDimmed;
  9987.  
  9988. &.node-description--tooltip
  9989. {
  9990. .has-js.has-no-touchevents &
  9991. {
  9992. display: none;
  9993. }
  9994. }
  9995. }
  9996.  
  9997. .node-meta
  9998. {
  9999. font-size: @xf-fontSizeSmall;
  10000. }
  10001.  
  10002. .node-statsMeta
  10003. {
  10004. display: none;
  10005.  
  10006. @media (max-width: @_nodeList-statsCellBreakpoint)
  10007. {
  10008. display: inline;
  10009. }
  10010. }
  10011.  
  10012. .node-bonus
  10013. {
  10014. font-size: @xf-fontSizeSmall;
  10015. color: @xf-textColorMuted;
  10016. text-align: right;
  10017. }
  10018.  
  10019. .node-subNodesFlat
  10020. {
  10021. font-size: @xf-fontSizeSmall;
  10022. margin-top: .3em;
  10023.  
  10024. .node-subNodesLabel
  10025. {
  10026. display: none;
  10027. }
  10028. }
  10029.  
  10030. .node-subNodeMenu
  10031. {
  10032. display: inline;
  10033.  
  10034. .menuTrigger
  10035. {
  10036. color: @xf-textColorMuted;
  10037. }
  10038. }
  10039.  
  10040. @media (max-width: @xf-responsiveMedium)
  10041. {
  10042. .node-main
  10043. {
  10044. display: block;
  10045. width: auto;
  10046. }
  10047.  
  10048. .node-extra
  10049. {
  10050. display: block;
  10051. width: auto;
  10052. // this gives an equivalent of medium padding between main and extra, with main still having large
  10053. margin-top: (@xf-paddingMedium - @xf-paddingLarge);
  10054. padding-top: 0;
  10055. }
  10056.  
  10057. .node-extra-row
  10058. {
  10059. display: inline-block;
  10060. vertical-align: top;
  10061. max-width: 100%;
  10062. }
  10063.  
  10064. .node-description,
  10065. .node-stats,
  10066. .node-subNodesFlat
  10067. {
  10068. display: none;
  10069. }
  10070. }
  10071.  
  10072. @media (max-width: @xf-responsiveNarrow)
  10073. {
  10074. .node-subNodeMenu
  10075. {
  10076. display: none;
  10077. }
  10078. }
  10079.  
  10080. .subNodeLink
  10081. {
  10082. &:before
  10083. {
  10084. display: inline-block;
  10085. .m-faBase();
  10086. width: 1em;
  10087. padding-right: .3em;
  10088. text-decoration: none;
  10089.  
  10090. color: @xf-nodeIconReadColor;
  10091. text-shadow: 1px 1px 0 fade(xf-intensify(@xf-nodeIconReadColor, 50%), 50%);
  10092. }
  10093.  
  10094. &:hover:before
  10095. {
  10096. text-decoration: none;
  10097. }
  10098.  
  10099. &.subNodeLink--unread
  10100. {
  10101. font-weight: @xf-fontWeightHeavy;
  10102.  
  10103. &:before
  10104. {
  10105. color: @xf-nodeIconUnreadColor;
  10106. text-shadow: 1px 1px 0 fade(xf-intensify(@xf-nodeIconUnreadColor, 50%), 50%);
  10107. }
  10108. }
  10109.  
  10110. &.subNodeLink--forum:before,
  10111. &.subNodeLink--category:before
  10112. {
  10113. .m-faContent(@fa-var-comments);
  10114. }
  10115.  
  10116. &.subNodeLink--page:before
  10117. {
  10118. .m-faContent(@fa-var-file-text);
  10119. }
  10120.  
  10121. &.subNodeLink--link:before
  10122. {
  10123. .m-faContent(@fa-var-link);
  10124. }
  10125. }
  10126.  
  10127. .node-subNodeFlatList
  10128. {
  10129. .m-listPlain();
  10130. .m-clearFix();
  10131.  
  10132. > li
  10133. {
  10134. display: inline-block;
  10135. margin-right: 1em;
  10136.  
  10137. &:last-child
  10138. {
  10139. margin-right: 0;
  10140. }
  10141. }
  10142.  
  10143. ol,
  10144. ul,
  10145. .node-subNodes
  10146. {
  10147. display: none;
  10148. }
  10149. }
  10150.  
  10151. .subNodeMenu
  10152. {
  10153. .m-listPlain();
  10154.  
  10155. ol,
  10156. ul
  10157. {
  10158. .m-listPlain();
  10159. }
  10160.  
  10161. .subNodeLink
  10162. {
  10163. display: block;
  10164. padding: @xf-blockPaddingV @xf-blockPaddingH;
  10165. text-decoration: none;
  10166. cursor: pointer;
  10167.  
  10168. &:hover
  10169. {
  10170. text-decoration: none;
  10171. background: @xf-contentHighlightBg;
  10172. }
  10173. }
  10174.  
  10175. li li .subNodeLink { padding-left: 1.5em; }
  10176. li li li .subNodeLink { padding-left: 3em; }
  10177. li li li li .subNodeLink { padding-left: 4.5em; }
  10178. li li li li li .subNodeLink { padding-left: 6em; }
  10179. li li li li li li .subNodeLink { padding-left: 7.5em; }
  10180. }]]></template>
  10181. <template title="node_list_category" type="public" addon_id="XF" version_id="2001070" version_string="2.0.10"><![CDATA[<xf:macro name="depth1" arg-node="!" arg-extras="!" arg-children="!" arg-childExtras="!" arg-depth="1">
  10182. <div class="block block--category block--category{$node.node_id}">
  10183. <span class="u-anchorTarget" id="{$node.Data.getCategoryAnchor()}"></span>
  10184. <div class="block-container">
  10185. <h2 class="block-header">
  10186. <a href="{{ link('categories', $node) }}">{$node.title}</a>
  10187. <xf:if is="{$node.description}"><xf:if is="property('TooltipCategories')"><span class="block-desc show-tooltip">{$node.description|raw}</span><xf:else/><span class="block-desc">{$node.description|raw}</span></xf:if></xf:if>
  10188. </h2>
  10189. <div class="block-body">
  10190. <xf:macro template="forum_list" name="node_list"
  10191. arg-children="{$children}"
  10192. arg-extras="{$childExtras}"
  10193. arg-depth="{{ $depth + 1 }}" />
  10194. </div>
  10195. </div>
  10196. </div>
  10197. </xf:macro>
  10198.  
  10199. <xf:macro name="depth2" arg-node="!" arg-extras="!" arg-children="!" arg-childExtras="!" arg-depth="1">
  10200. <div class="node node--id{$node.node_id} node--depth{$depth} node--category {{ $extras.hasNew ? 'node--unread' : 'node--read' }}">
  10201. <div class="node-body">
  10202. <span class="node-icon" aria-hidden="true"><i></i></span>
  10203. <div class="node-main js-nodeMain">
  10204. <xf:set var="$descriptionDisplay" value="{{ property('nodeListDescriptionDisplay') }}" />
  10205. <h3 class="node-title">
  10206. <a href="{{ link('categories', $node) }}" data-xf-init="{{ $descriptionDisplay == 'tooltip' ? 'element-tooltip' : '' }}" data-shortcut="node-description">{$node.title}</a>
  10207. </h3>
  10208. <xf:if is="$descriptionDisplay != 'none' && $node.description">
  10209. <div class="node-description {{ $descriptionDisplay == 'tooltip' ? 'node-description--tooltip js-nodeDescTooltip' : '' }}">{$node.description|raw}</div>
  10210. </xf:if>
  10211.  
  10212. <xf:if is="!{$extras.privateInfo}">
  10213. <div class="node-stats">
  10214. <dl class="pairs pairs--rows">
  10215. <dt>{{ phrase('threads') }}</dt>
  10216. <dd>{$extras.discussion_count|number}</dd>
  10217. </dl>
  10218. <dl class="pairs pairs--rows">
  10219. <dt>{{ phrase('messages') }}</dt>
  10220. <dd>{$extras.message_count|number}</dd>
  10221. </dl>
  10222. </div>
  10223. </xf:if>
  10224.  
  10225. <div class="node-meta">
  10226. <xf:if is="!{$extras.privateInfo}">
  10227. <div class="node-statsMeta">
  10228. <dl class="pairs pairs--inline">
  10229. <dt>{{ phrase('threads') }}</dt>
  10230. <dd>{$extras.discussion_count|number}</dd>
  10231. </dl>
  10232. <dl class="pairs pairs--inline">
  10233. <dt>{{ phrase('messages') }}</dt>
  10234. <dd>{$extras.message_count|number}</dd>
  10235. </dl>
  10236. </div>
  10237. </xf:if>
  10238.  
  10239. <xf:if is="$depth == 2 AND property('nodeListSubDisplay') == 'menu'">
  10240. <xf:macro template="forum_list" name="sub_nodes_menu"
  10241. arg-children="{$children}"
  10242. arg-childExtras="{$childExtras}"
  10243. arg-depth="{{ $depth + 1 }}" />
  10244. </xf:if>
  10245. </div>
  10246.  
  10247. <xf:if is="$depth == 2 AND property('nodeListSubDisplay') == 'flat'">
  10248. <xf:macro template="forum_list" name="sub_nodes_flat"
  10249. arg-children="{$children}"
  10250. arg-childExtras="{$childExtras}"
  10251. arg-depth="{{ $depth + 1 }}" />
  10252. </xf:if>
  10253. </div>
  10254.  
  10255.  
  10256.  
  10257. <div class="node-extra">
  10258. <xf:if is="{$extras.privateInfo}">
  10259. <span class="node-extra-placeholder">{{ phrase('private') }}</span>
  10260. <xf:elseif is="{$extras.last_post_date}" />
  10261. <div class="node-extra-row"><span class="lastThreadTitle activeColor">{{ phrase('threads') }}:</span><a href="{{ link('posts', {'post_id': $extras.last_post_id}) }}" class="node-extra-title" title="{$extras.last_thread_title}">{$extras.last_thread_title}</a></div>
  10262. <div class="node-extra-row">
  10263. <ul class="listInline listInline--bullet">
  10264. <li class="node-extra-date"><xf:date time="{$extras.last_post_date}" /></li>
  10265. <xf:if is="$xf.visitor.isIgnoring($extras.last_post_user_id)">
  10266. <li class="node-extra-user">{{ phrase('ignored_member') }}</li>
  10267. <xf:else />
  10268. <li class="node-extra-user"><xf:username user="{{ {'user_id': $extras.last_post_user_id, 'username': $extras.last_post_username} }}" /></li>
  10269. </xf:if>
  10270. </ul>
  10271. </div>
  10272. <xf:else />
  10273. <span class="node-extra-placeholder">{{ phrase('none') }}</span>
  10274. </xf:if>
  10275. </div>
  10276. </div>
  10277. </div>
  10278. </xf:macro>
  10279.  
  10280. <xf:macro name="depthN" arg-node="!" arg-extras="!" arg-children="!" arg-childExtras="!" arg-depth="1">
  10281. <li>
  10282. <a href="{{ link('categories', $node) }}" class="subNodeLink subNodeLink--category {{ $extras.hasNew ? 'subNodeLink--unread' : '' }}">{$node.title}</a>
  10283. <xf:macro template="forum_list" name="sub_node_list"
  10284. arg-children="{$children}"
  10285. arg-childExtras="{$childExtras}"
  10286. arg-depth="{{ $depth + 1 }}" />
  10287. </li>
  10288. </xf:macro>]]></template>
  10289. <template title="node_list_forum" type="public" addon_id="XF" version_id="2000770" version_string="2.0.7"><![CDATA[<xf:macro name="depth1" arg-node="!" arg-extras="!" arg-children="!" arg-childExtras="!" arg-depth="1">
  10290. <div class="block">
  10291. <div class="block-container">
  10292. <div class="block-body">
  10293. <xf:macro name="forum"
  10294. arg-node="{$node}"
  10295. arg-extras="{$extras}"
  10296. arg-children="{$children}"
  10297. arg-childExtras="{$childExtras}"
  10298. arg-depth="{$depth}" />
  10299. </div>
  10300. </div>
  10301. </div>
  10302. </xf:macro>
  10303.  
  10304. <xf:macro name="depth2" arg-node="!" arg-extras="!" arg-children="!" arg-childExtras="!" arg-depth="1">
  10305. <xf:macro name="forum"
  10306. arg-node="{$node}"
  10307. arg-extras="{$extras}"
  10308. arg-children="{$children}"
  10309. arg-childExtras="{$childExtras}"
  10310. arg-depth="{$depth}" />
  10311. </xf:macro>
  10312.  
  10313. <xf:macro name="depthN" arg-node="!" arg-extras="!" arg-children="!" arg-childExtras="!" arg-depth="1">
  10314. <li>
  10315. <a href="{{ link('forums', $node) }}" class="subNodeLink subNodeLink--forum {{ $extras.hasNew ? 'subNodeLink--unread' : '' }}">{$node.title}</a>
  10316. <xf:macro template="forum_list" name="sub_node_list"
  10317. arg-children="{$children}"
  10318. arg-childExtras="{$childExtras}"
  10319. arg-depth="{{ $depth + 1 }}" />
  10320. </li>
  10321. </xf:macro>
  10322.  
  10323. <xf:macro name="forum"
  10324. arg-node="!"
  10325. arg-extras="!"
  10326. arg-children="!"
  10327. arg-childExtras="!"
  10328. arg-depth="!"
  10329. arg-chooseName=""
  10330. arg-bonusInfo="">
  10331.  
  10332. <div class="node node--id{$node.node_id} node--depth{$depth} node--forum {{ $extras.hasNew ? 'node--unread' : 'node--read' }}">
  10333. <div class="node-body">
  10334. <span class="node-icon" aria-hidden="true"><i></i></span>
  10335. <div class="node-main js-nodeMain">
  10336. <xf:if is="$chooseName">
  10337. <xf:checkbox standalone="true">
  10338. <xf:option labelclass="u-pullRight" class="js-chooseItem" name="{$chooseName}[]" value="{$node.node_id}" />
  10339. </xf:checkbox>
  10340. </xf:if>
  10341.  
  10342. <xf:set var="$descriptionDisplay" value="{{ property('nodeListDescriptionDisplay') }}" />
  10343. <h3 class="node-title">
  10344. <a href="{{ link('forums', $node) }}" data-xf-init="{{ $descriptionDisplay == 'tooltip' ? 'element-tooltip' : '' }}" data-shortcut="node-description">{$node.title}</a>
  10345. </h3>
  10346. <xf:if is="$descriptionDisplay != 'none' && $node.description">
  10347. <div class="node-description {{ $descriptionDisplay == 'tooltip' ? 'node-description--tooltip js-nodeDescTooltip' : '' }}">{$node.description|raw}</div>
  10348. </xf:if>
  10349.  
  10350. <div class="node-meta">
  10351. <xf:if is="!{$extras.privateInfo}">
  10352. <div class="node-statsMeta">
  10353. <dl class="pairs pairs--inline">
  10354. <dt>{{ phrase('threads') }}</dt>
  10355. <dd>{$extras.discussion_count|number}</dd>
  10356. </dl>
  10357. <dl class="pairs pairs--inline">
  10358. <dt>{{ phrase('messages') }}</dt>
  10359. <dd>{$extras.message_count|number}</dd>
  10360. </dl>
  10361. </div>
  10362. </xf:if>
  10363.  
  10364. <xf:if is="$depth == 2 AND property('nodeListSubDisplay') == 'menu'">
  10365. <xf:macro template="forum_list" name="sub_nodes_menu"
  10366. arg-children="{$children}"
  10367. arg-childExtras="{$childExtras}"
  10368. arg-depth="{{ $depth + 1 }}" />
  10369. </xf:if>
  10370. </div>
  10371.  
  10372. <xf:if is="$depth == 2 AND property('nodeListSubDisplay') == 'flat'">
  10373. <xf:macro template="forum_list" name="sub_nodes_flat"
  10374. arg-children="{$children}"
  10375. arg-childExtras="{$childExtras}"
  10376. arg-depth="{{ $depth + 1 }}" />
  10377. </xf:if>
  10378.  
  10379. <xf:if is="$bonusInfo is not empty">
  10380. <div class="node-bonus">{$bonusInfo}</div>
  10381. </xf:if>
  10382. </div>
  10383.  
  10384. <xf:if is="!{$extras.privateInfo}">
  10385. <div class="node-stats">
  10386. <dl class="pairs pairs--rows">
  10387. <dt>{{ phrase('threads') }}:</dt>
  10388. <dd>{$extras.discussion_count|number}</dd>
  10389. </dl>
  10390. <dl class="pairs pairs--rows">
  10391. <dt>{{ phrase('messages') }}:</dt>
  10392. <dd>{$extras.message_count|number}</dd>
  10393. </dl>
  10394. </div>
  10395. </xf:if>
  10396.  
  10397.  
  10398. <div class="node-extra">
  10399. <xf:if is="{$extras.privateInfo}">
  10400. <span class="node-extra-placeholder">{{ phrase('private') }}</span>
  10401. <xf:elseif is="{$extras.last_post_date}" />
  10402. <div class="node-extra-row"><span class="lastThreadTitle activeColor">{{ phrase('threads') }}:</span><a href="{{ link('posts', {'post_id': $extras.last_post_id}) }}" class="node-extra-title" title="{$extras.last_thread_title}">{$extras.last_thread_title}</a></div>
  10403. <div class="node-extra-row">
  10404. <ul class="listInline listInline--bullet">
  10405. <xf:if is="$xf.visitor.isIgnoring($extras.last_post_user_id)">
  10406. <li class="node-extra-user">{{ phrase('ignored_member') }}</li>
  10407. <xf:else />
  10408. <li class="node-extra-user"><xf:username user="{{ {'user_id': $extras.last_post_user_id, 'username': $extras.last_post_username} }}" /></li>
  10409. </xf:if>
  10410. <li><xf:date time="{$extras.last_post_date}" class="node-extra-date" />
  10411. </ul>
  10412. </div>
  10413. <xf:else />
  10414. <span class="node-extra-placeholder">{{ phrase('none') }}</span>
  10415. </xf:if>
  10416. </div>
  10417. </div>
  10418. </div>
  10419.  
  10420. <xf:if is="{$depth} == 1">
  10421. <xf:macro template="forum_list" name="node_list"
  10422. arg-children="{$children}"
  10423. arg-extras="{$childExtras}"
  10424. arg-depth="{{ $depth + 1 }}" />
  10425. </xf:if>
  10426. </xf:macro>]]></template>
  10427. <template title="notices.less" type="public" addon_id="XF" version_id="2000670" version_string="2.0.6"><![CDATA[@_notice-darkBg: rgb(20, 20, 20);
  10428. @_notice-lightBg: #fefefe;
  10429. @_notice-floatingFade: 80%;
  10430. @_notice-imageSize: 48px;
  10431. @_notice-padding: @xf-paddingLarge;
  10432.  
  10433. .notices
  10434. {
  10435. .m-listPlain();
  10436.  
  10437. &.notices--block
  10438. {
  10439. .notice
  10440. {
  10441. margin-bottom: ((@xf-elementSpacer) / 2);
  10442. }
  10443. }
  10444.  
  10445. &.notices--floating
  10446. {
  10447. // assumed to be within u-bottomFixer
  10448. margin: 0 20px 0 auto;
  10449. width: 300px;
  10450. max-width: 100%;
  10451. z-index: @zIndex-8;
  10452.  
  10453. @media (max-width: 340px)
  10454. {
  10455. margin-right: 10px;
  10456. }
  10457.  
  10458. .notice
  10459. {
  10460. margin-bottom: 20px;
  10461. }
  10462. }
  10463.  
  10464. &.notices--scrolling
  10465. {
  10466. display: flex;
  10467. align-items: stretch;
  10468. overflow: hidden;
  10469. .xf-blockBorder();
  10470. margin-bottom: ((@xf-elementSpacer) / 2);
  10471.  
  10472. &.notices--isMulti
  10473. {
  10474. margin-bottom: ((@xf-elementSpacer) / 2) + 20px;
  10475. }
  10476.  
  10477. .notice
  10478. {
  10479. width: 100%;
  10480. flex-grow: 0;
  10481. flex-shrink: 0;
  10482. border: none;
  10483. }
  10484.  
  10485. .has-no-flexbox &
  10486. {
  10487. display: block;
  10488. white-space: nowrap;
  10489. word-wrap: normal;
  10490.  
  10491. .notice
  10492. {
  10493. display: inline-block;
  10494. vertical-align: top;
  10495. }
  10496. }
  10497. }
  10498. }
  10499.  
  10500. .noticeScrollContainer
  10501. {
  10502. margin-bottom: ((@xf-elementSpacer) / 2);
  10503. border-radius: 5px;
  10504. .notices.notices--scrolling
  10505. {
  10506. border: none;
  10507. margin-bottom: 0;
  10508. }
  10509. }
  10510.  
  10511. .notice
  10512. {
  10513. .m-clearFix();
  10514. position: relative;
  10515.  
  10516. .xf-blockBorder();
  10517.  
  10518. &.notice--primary
  10519. {
  10520.  
  10521. }
  10522.  
  10523. &.notice--accent
  10524. {
  10525. .xf-contentAccentBase();
  10526.  
  10527. a:not(.button--notice)
  10528. {
  10529. .xf-contentAccentLink();
  10530. }
  10531. }
  10532.  
  10533. &.notice--dark
  10534. {
  10535. color: #fefefe;
  10536. border: none;
  10537. background: @_notice-darkBg;
  10538.  
  10539. a:not(.button--notice)
  10540. {
  10541. color: rgb(180, 180, 180);
  10542. }
  10543. }
  10544.  
  10545. &.notice--light
  10546. {
  10547. color: rgb(20, 20, 20);
  10548. background: @_notice-lightBg;
  10549.  
  10550. a:not(.button--notice)
  10551. {
  10552. color: rgb(130, 130, 130);
  10553. }
  10554. }
  10555.  
  10556. &.notice--cookie
  10557. {
  10558. @media (max-width: @xf-responsiveWide)
  10559. {
  10560. .notice-content
  10561. {
  10562. padding: @xf-paddingSmall @xf-paddingSmall @xf-paddingLarge;
  10563. font-size: @xf-fontSizeSmaller;
  10564.  
  10565. .button--notice
  10566. {
  10567. font-size: @xf-fontSizeSmaller;
  10568. padding: @xf-paddingSmall @xf-paddingMedium;
  10569.  
  10570. .button-text
  10571. {
  10572. font-size: @xf-fontSizeSmaller;
  10573. }
  10574. }
  10575. }
  10576. }
  10577. }
  10578.  
  10579. .notices--block &
  10580. {
  10581. font-size: @xf-fontSizeNormal;
  10582. border-radius: @xf-blockBorderRadius;
  10583. }
  10584.  
  10585. .notices--floating &
  10586. {
  10587. font-size: @xf-fontSizeSmallest;
  10588. border-radius: @xf-borderRadiusMedium;
  10589. box-shadow: 1px 1px 3px rgba(0,0,0, 0.25);
  10590.  
  10591. &.notice--primary
  10592. {
  10593. background-color: fade(@xf-contentHighlightBase--background-color, @_notice-floatingFade);
  10594. }
  10595.  
  10596. &.notice--accent
  10597. {
  10598. background-color: fade(@xf-contentAccentBase--background-color, @_notice-floatingFade);
  10599. }
  10600.  
  10601. &.notice--dark
  10602. {
  10603. background-color: fade(@_notice-darkBg, @_notice-floatingFade);
  10604. }
  10605.  
  10606. &.notice--light
  10607. {
  10608. background-color: fade(@_notice-lightBg, @_notice-floatingFade);
  10609. }
  10610.  
  10611. .has-no-js &
  10612. {
  10613. display: none;
  10614. }
  10615. }
  10616.  
  10617. &.notice--hasImage
  10618. {
  10619. .notice-content
  10620. {
  10621. margin-left: ((@_notice-imageSize) + (@_notice-padding) * 2);
  10622. min-height: ((@_notice-imageSize) + (@_notice-padding) * 2);
  10623. }
  10624. }
  10625.  
  10626. @media (max-width: @xf-responsiveWide)
  10627. {
  10628. &.notice--hidewide:not(.is-vis-processed)
  10629. {
  10630. display: none;
  10631. }
  10632. }
  10633. @media (max-width: @xf-responsiveMedium)
  10634. {
  10635. &.notice--hidemedium:not(.is-vis-processed)
  10636. {
  10637. display: none;
  10638. }
  10639. }
  10640. @media (max-width: @xf-responsiveNarrow)
  10641. {
  10642. &.notice--hidenarrow:not(.is-vis-processed)
  10643. {
  10644. display: none;
  10645. }
  10646. }
  10647. }
  10648.  
  10649. .notice-image
  10650. {
  10651. float: left;
  10652. padding: @_notice-padding 0 @_notice-padding @_notice-padding;
  10653.  
  10654. img
  10655. {
  10656. max-width: @_notice-imageSize;
  10657. max-height: @_notice-imageSize;
  10658. }
  10659. }
  10660.  
  10661. .notice-content
  10662. {
  10663. padding: @_notice-padding;
  10664. background: #fff;
  10665. border-radius: 5px;
  10666. color: rgb(20,20,20);
  10667. a.notice-dismiss
  10668. {
  10669. &:before
  10670. {
  10671. .m-faBase();
  10672.  
  10673. .m-faContent(@fa-var-remove, .79em);
  10674. }
  10675.  
  10676. float: right;
  10677.  
  10678. color: inherit;
  10679. font-size: 16px;
  10680. line-height: 1;
  10681. height: 1em;
  10682. box-sizing: content-box;
  10683. padding: 0 0 5px 5px;
  10684.  
  10685. opacity: .5;
  10686. .m-transition(opacity);
  10687.  
  10688. cursor: pointer;
  10689.  
  10690. &:hover
  10691. {
  10692. text-decoration: none;
  10693. opacity: 1;
  10694. }
  10695.  
  10696. .notices--floating &
  10697. {
  10698. font-size: 14px;
  10699. }
  10700. }
  10701. }]]></template>
  10702. <template title="page_nav" type="public" addon_id="XF" version_id="2001070" version_string="2.0.10"><![CDATA[<nav class="pageNavWrapper pageNavWrapper--{{ property('pageNavStyle') }} {$variantClass}">
  10703.  
  10704. <xf:set var="$hasSkipStart" value="{{ $startInner > 2 }}" />
  10705. <xf:set var="$hasSkipEnd" value="{{ $endInner + 1 < $totalPages }}" />
  10706. <div class="pageNav {{ $hasSkipStart ? 'pageNav--skipStart' : '' }} {{ $hasSkipEnd ? 'pageNav--skipEnd' : '' }}">
  10707. <span class="text-page">{{ phrase('Page') }}</span>
  10708. <a class="pageNavSimple-el pageNavSimple-el--current"
  10709. data-xf-init="tooltip" title="{{ phrase('go_to_page')|for_attr }}"
  10710. data-xf-click="menu" role="button" tabindex="0" aria-expanded="false" aria-haspopup="true">
  10711. {{ phrase('x_of_y', {'current': $current, 'total': $totalPages}) }}
  10712. </a>
  10713. <xf:if is="$prev">
  10714. <a href="{$prev}" class="pageNav-jump pageNav-jump--prev">{{ phrase('prev') }}</a>
  10715. </xf:if>
  10716.  
  10717. <ul class="pageNav-main">
  10718. <xf:macro name="page_link"
  10719. arg-page="1"
  10720. arg-current="{$current}"
  10721. arg-link="{$link}"
  10722. arg-data="{$data}"
  10723. arg-params="{$params}"
  10724. arg-pageParam="{$pageParam}" />
  10725.  
  10726. <xf:if is="$hasSkipStart">
  10727. <xf:if is="$startInner == 3">
  10728. <xf:macro name="page_link"
  10729. arg-page="2"
  10730. arg-current="{$current}"
  10731. arg-link="{$link}"
  10732. arg-data="{$data}"
  10733. arg-params="{$params}"
  10734. arg-pageParam="{$pageParam}"
  10735. arg-pageClass="pageNav-page--earlier" />
  10736. <xf:else />
  10737. <li class="pageNav-page pageNav-page--skip pageNav-page--skipStart">
  10738. <a data-xf-init="tooltip" title="{{ phrase('go_to_page')|for_attr }}"
  10739. data-xf-click="menu"
  10740. role="button" tabindex="0" aria-expanded="false" aria-haspopup="true">{$xf.language.ellipsis}</a>
  10741. <xf:macro name="page_jump_menu"
  10742. arg-page="{{ $startInner - 1 }}"
  10743. arg-totalPages="{$totalPages}"
  10744. arg-link="{$link}"
  10745. arg-data="{$data}"
  10746. arg-params="{$params}"
  10747. arg-pageParam="{$pageParam}" />
  10748. </li>
  10749. </xf:if>
  10750. </xf:if>
  10751.  
  10752. <xf:foreach loop="$innerPages" value="$page">
  10753. <xf:macro name="page_link"
  10754. arg-page="{$page}"
  10755. arg-current="{$current}"
  10756. arg-link="{$link}"
  10757. arg-data="{$data}"
  10758. arg-params="{$params}"
  10759. arg-pageParam="{$pageParam}"
  10760. arg-pageClass="{{ $page < $current ? 'pageNav-page--earlier' : ($page > $current ? 'pageNav-page--later' : '' ) }}" />
  10761. </xf:foreach>
  10762.  
  10763. <xf:if is="$hasSkipEnd">
  10764. <xf:if is="$endInner + 2 == $totalPages">
  10765. <xf:macro name="page_link"
  10766. arg-page="{{ $totalPages - 1 }}"
  10767. arg-current="{$current}"
  10768. arg-link="{$link}"
  10769. arg-data="{$data}"
  10770. arg-params="{$params}"
  10771. arg-pageParam="{$pageParam}"
  10772. arg-pageClass="pageNav-page--later" />
  10773. <xf:else />
  10774. <li class="pageNav-page pageNav-page--skip pageNav-page--skipEnd">
  10775. <a data-xf-init="tooltip" title="{{ phrase('go_to_page')|for_attr }}"
  10776. data-xf-click="menu"
  10777. role="button" tabindex="0" aria-expanded="false" aria-haspopup="true">{$xf.language.ellipsis}</a>
  10778. <xf:macro name="page_jump_menu"
  10779. arg-page="{{ $endInner + 1 }}"
  10780. arg-totalPages="{$totalPages}"
  10781. arg-link="{$link}"
  10782. arg-data="{$data}"
  10783. arg-params="{$params}"
  10784. arg-pageParam="{$pageParam}" />
  10785. </li>
  10786. </xf:if>
  10787. </xf:if>
  10788.  
  10789. <xf:macro name="page_link"
  10790. arg-page="{$totalPages}"
  10791. arg-current="{$current}"
  10792. arg-link="{$link}"
  10793. arg-data="{$data}"
  10794. arg-params="{$params}"
  10795. arg-pageParam="{$pageParam}" />
  10796. </ul>
  10797.  
  10798. <xf:if is="$next">
  10799. <a href="{$next}" class="pageNav-jump pageNav-jump--next">{{ phrase('next') }}</a>
  10800. </xf:if>
  10801. </div>
  10802.  
  10803. <div class="pageNavSimple">
  10804. <xf:if is="$current > 1">
  10805. <a href="{{ link($link, $data, $params + {($pageParam): 1}) }}"
  10806. class="pageNavSimple-el pageNavSimple-el--first"
  10807. data-xf-init="tooltip" title="{{ phrase('first')|for_attr }}">
  10808. <i aria-hidden="true"></i> <span class="u-srOnly">{{ phrase('first') }}</span>
  10809. </a>
  10810. <a href="{{ link($link, $data, $params + {($pageParam): $current - 1}) }}" class="pageNavSimple-el pageNavSimple-el--prev">
  10811. <i aria-hidden="true"></i> {{ phrase('prev') }}
  10812. </a>
  10813. </xf:if>
  10814.  
  10815. <a class="pageNavSimple-el pageNavSimple-el--current"
  10816. data-xf-init="tooltip" title="{{ phrase('go_to_page')|for_attr }}"
  10817. data-xf-click="menu" role="button" tabindex="0" aria-expanded="false" aria-haspopup="true">
  10818. {{ phrase('x_of_y', {'current': $current, 'total': $totalPages}) }}
  10819. </a>
  10820. <xf:macro name="page_jump_menu"
  10821. arg-page="{$current}"
  10822. arg-totalPages="{$totalPages}"
  10823. arg-link="{$link}"
  10824. arg-data="{$data}"
  10825. arg-params="{$params}"
  10826. arg-pageParam="{$pageParam}" />
  10827.  
  10828. <xf:if is="$current < $totalPages">
  10829. <a href="{{ link($link, $data, $params + {($pageParam): $current + 1}) }}" class="pageNavSimple-el pageNavSimple-el--next">
  10830. {{ phrase('next') }} <i aria-hidden="true"></i>
  10831. </a>
  10832. <a href="{{ link($link, $data, $params + {($pageParam): $totalPages}) }}"
  10833. class="pageNavSimple-el pageNavSimple-el--last"
  10834. data-xf-init="tooltip" title="{{ phrase('last')|for_attr }}">
  10835. <i aria-hidden="true"></i> <span class="u-srOnly">{{ phrase('last') }}</span>
  10836. </a>
  10837. </xf:if>
  10838. </div>
  10839.  
  10840. </nav>
  10841.  
  10842. <xf:macro name="page_link"
  10843. arg-page="!"
  10844. arg-current="!"
  10845. arg-link="!"
  10846. arg-data="!"
  10847. arg-params="!"
  10848. arg-pageParam="!"
  10849. arg-pageClass="">
  10850.  
  10851. <xf:if is="$page == $current">
  10852. <li class="pageNav-page pageNav-page--current {$pageClass}"><a href="{{ link($link, $data, $params + {($pageParam): ($page > 1 ? $page : null)}) }}">{$page}</a></li>
  10853. <xf:else />
  10854. <li class="pageNav-page {$pageClass}"><a href="{{ link($link, $data, $params + {($pageParam): ($page > 1 ? $page : null)}) }}">{$page}</a></li>
  10855. </xf:if>
  10856. </xf:macro>
  10857.  
  10858. <xf:macro name="page_jump_menu"
  10859. arg-page="!"
  10860. arg-totalPages="!"
  10861. arg-link="!"
  10862. arg-data="!"
  10863. arg-params="!"
  10864. arg-pageParam="!">
  10865.  
  10866. <div class="menu menu--pageJump" data-menu="menu" aria-hidden="true">
  10867. <div class="menu-content">
  10868. <h4 class="menu-header">{{ phrase('go_to_page') }}</h4>
  10869. <div class="menu-row" data-xf-init="page-jump" data-page-url="{{ link($link, $data, $params + {($pageParam): '%page%'}) }}">
  10870. <div class="inputGroup inputGroup--numbers">
  10871. <xf:numberbox class="input input--numberNarrow js-pageJumpPage" value="{$page}" min="1" max="{$totalPages}" data-menu-autofocus="true" />
  10872. <span class="inputGroup-text"><xf:button class="js-pageJumpGo">{{ phrase('go') }}</xf:button></span>
  10873. </div>
  10874. </div>
  10875. </div>
  10876. </div>
  10877. </xf:macro>]]></template>
  10878. <template title="post_macros" type="public" addon_id="XF" version_id="2001070" version_string="2.0.10"><![CDATA[<xf:macro name="post" arg-post="!" arg-thread="!">
  10879. <xf:css src="message.less" />
  10880. <xf:set var="$isIgnored" value="{{ $post.isIgnored() }}" />
  10881. <article class="message message--post js-post js-inlineModContainer {{ $isIgnored ? 'is-ignored' : '' }} {{ $post.isUnread() ? ' is-unread' : '' }}"
  10882. data-author="{{ $post.User.username ?: $post.username }}"
  10883. data-content="post-{$post.post_id}"
  10884. id="js-post-{$post.post_id}">
  10885.  
  10886. <span class="u-anchorTarget" id="post-{$post.post_id}"></span>
  10887.  
  10888. <div class="message-inner">
  10889. <div class="message-cell message-cell--user">
  10890. <xf:set var="$dateHtml"><a href="{{ link('threads/post', $thread, {'post_id': $post.post_id}) }}" class="u-concealed" rel="nofollow"><xf:date time="{$post.post_date}" /></a></xf:set>
  10891. <xf:set var="$linkHtml"><a href="{{ link('threads/post', $thread, {'post_id': $post.post_id}) }}" class="u-concealed" rel="nofollow">#{{ number($post.position + 1) }}</a></xf:set>
  10892. <xf:macro template="message_macros" name="user_info" arg-user="{$post.User}" arg-fallbackName="{$post.username}" arg-dateHtml="{$dateHtml}" arg-linkHtml="{$linkHtml}" />
  10893. </div>
  10894. <div class="message-cell message-cell--main">
  10895. <div class="message-main js-quickEditTarget">
  10896. <div class="message-content js-messageContent">
  10897.  
  10898. <xf:if is="$post.message_state == 'deleted'">
  10899. <div class="messageNotice messageNotice--deleted">
  10900. <xf:macro template="deletion_macros" name="notice" arg-log="{$post.DeletionLog}" />
  10901. </div>
  10902. <xf:elseif is="$post.message_state == 'moderated'" />
  10903. <div class="messageNotice messageNotice--moderated">
  10904. {{ phrase('this_message_is_awaiting_moderator_approval_and_is_invisible_to_normal') }}
  10905. </div>
  10906. </xf:if>
  10907. <xf:if is="$post.warning_message">
  10908. <div class="messageNotice messageNotice--warning">
  10909. {$post.warning_message}
  10910. </div>
  10911. </xf:if>
  10912. <xf:if is="$isIgnored">
  10913. <div class="messageNotice messageNotice--ignored">
  10914. {{ phrase('you_are_ignoring_content_by_this_member') }}
  10915. <xf:showignored />
  10916. </div>
  10917. </xf:if>
  10918.  
  10919. <div class="message-userContent lbContainer js-lbContainer {{ $isIgnored ? 'is-ignored' : '' }}"
  10920. data-lb-id="post-{$post.post_id}"
  10921. data-lb-caption-desc="{{ $post.User ? $post.User.username : $post.username }} &middot; {{ date_time($post.post_date) }}">
  10922.  
  10923. <xf:if is="$post.isFirstPost()">
  10924. <xf:macro template="custom_fields_macros" name="custom_fields_view"
  10925. arg-type="threads"
  10926. arg-group="before"
  10927. arg-onlyInclude="{$thread.Forum.field_cache}"
  10928. arg-set="{$thread.custom_fields}"
  10929. arg-wrapperClass="message-fields message-fields--before" />
  10930. </xf:if>
  10931.  
  10932. <article class="message-body js-selectToQuote">
  10933. <xf:ad position="post_above_content" arg-post="{$post}" />
  10934. {{ bb_code($post.message, 'post', $post) }}
  10935. <div class="js-selectToQuoteEnd">&nbsp;</div>
  10936. <xf:ad position="post_below_content" arg-post="{$post}" />
  10937. </article>
  10938.  
  10939. <xf:if is="$post.isFirstPost()">
  10940. <xf:macro template="custom_fields_macros" name="custom_fields_view"
  10941. arg-type="threads"
  10942. arg-group="after"
  10943. arg-onlyInclude="{$thread.Forum.field_cache}"
  10944. arg-set="{$thread.custom_fields}"
  10945. arg-wrapperClass="message-fields message-fields--after" />
  10946. </xf:if>
  10947.  
  10948. <xf:if is="$post.attach_count">
  10949. <xf:macro template="message_macros" name="attachments"
  10950. arg-attachments="{$post.Attachments}"
  10951. arg-message="{$post}"
  10952. arg-canView="{{ $thread.canViewAttachments() }}" />
  10953. </xf:if>
  10954. </div>
  10955.  
  10956. <xf:if is="$post.last_edit_date">
  10957. <div class="message-lastEdit">
  10958. <xf:if is="$post.user_id == $post.last_edit_user_id">
  10959. {{ phrase('last_edited:') }} <xf:date time="{$post.last_edit_date}" />
  10960. <xf:else />
  10961. {{ phrase('last_edited_by_moderator:') }} <xf:date time="{$post.last_edit_date}" />
  10962. </xf:if>
  10963. </div>
  10964. </xf:if>
  10965.  
  10966. <xf:macro template="message_macros" name="signature" arg-user="{$post.User}" />
  10967. </div>
  10968.  
  10969. <header class="message-attribution" style="display: none;">
  10970. <a href="{{ link('threads/post', $thread, {'post_id': $post.post_id}) }}" class="message-attribution-main u-concealed" rel="nofollow"><xf:date time="{$post.post_date}" /></a>
  10971. <div class="message-attribution-opposite">
  10972. <xf:if is="$post.isUnread()">
  10973. <span class="message-newIndicator">{{ phrase('new') }}</span>
  10974. </xf:if>
  10975. <a href="{{ link('threads/post', $thread, {'post_id': $post.post_id}) }}" class="u-concealed" rel="nofollow">#{{ number($post.position + 1) }}</a>
  10976. </div>
  10977. </header>
  10978.  
  10979. <footer class="message-footer">
  10980. <xf:if contentcheck="true">
  10981. <div class="message-actionBar actionBar">
  10982. <xf:contentcheck>
  10983. <xf:if contentcheck="true">
  10984. <div class="actionBar-set actionBar-set--external">
  10985. <xf:contentcheck>
  10986. <xf:if is="$post.canLike()">
  10987. <a href="{{ link('posts/like', $post) }}" class="actionBar-action actionBar-action--like" data-xf-click="like" data-like-list="< .js-post | .js-likeList"><xf:if is="$post.isLiked()">{{ phrase('unlike') }}<xf:else />{{ phrase('like') }}</xf:if></a>
  10988. </xf:if>
  10989. <xf:if is="$thread.canReply()">
  10990. <xf:set var="$quoteLink">{{ link('threads/reply', $thread, {'quote': $post.post_id}) }}</xf:set>
  10991.  
  10992. <xf:if is="$xf.options.multiQuote">
  10993. <a href="{$quoteLink}"
  10994. class="actionBar-action actionBar-action--mq u-jsOnly js-multiQuote"
  10995. title="{{ phrase('toggle_multi_quote_tooltip')|for_attr }}"
  10996. data-message-id="{$post.post_id}"
  10997. data-mq-action="add">{{ phrase('quote') }}</a>
  10998. </xf:if>
  10999.  
  11000. <a href="{$quoteLink}"
  11001. class="actionBar-action actionBar-action--reply"
  11002. title="{{ phrase('reply_quoting_this_message')|for_attr }}"
  11003. data-xf-click="quote"
  11004. data-quote-href="{{ link('posts/quote', $post) }}">{{ phrase('reply') }}</a>
  11005. </xf:if>
  11006. <div class="message-attribution-opposite">
  11007. <xf:if is="$post.isUnread()">
  11008. <span class="message-newIndicator">{{ phrase('new') }}</span>
  11009. </xf:if>
  11010. <a href="{{ link('threads/post', $thread, {'post_id': $post.post_id}) }}" class="u-concealed" rel="nofollow">#{{ number($post.position + 1) }}</a>
  11011. </div>
  11012. </xf:contentcheck>
  11013. </div>
  11014. </xf:if>
  11015.  
  11016. <xf:if contentcheck="true">
  11017. <div class="actionBar-set actionBar-set--internal">
  11018. <xf:contentcheck>
  11019. <a href="{{ link('threads/post', $thread, {'post_id': $post.post_id}) }}" class="message-attribution-main u-concealed" rel="nofollow"><xf:date time="{$post.post_date}" /></a>
  11020. <xf:if is="$post.canUseInlineModeration()">
  11021. <span class="actionBar-action actionBar-action--inlineMod">
  11022. <xf:checkbox standalone="true">
  11023. <xf:option value="{$post.post_id}" class="js-inlineModToggle"
  11024. data-xf-init="tooltip"
  11025. title="{{ phrase('select_for_moderation') }}"
  11026. label="{{ phrase('select_for_moderation') }}"
  11027. hiddenlabel="true" />
  11028. </xf:checkbox>
  11029. </span>
  11030. </xf:if>
  11031.  
  11032. <xf:if is="$post.canReport()">
  11033. <a href="{{ link('posts/report', $post) }}"
  11034. class="actionBar-action actionBar-action--report"
  11035. data-xf-click="overlay">{{ phrase('report') }}</a>
  11036. </xf:if>
  11037.  
  11038. <xf:set var="$hasActionBarMenu" value="{{ false }}" />
  11039. <xf:if is="$post.canEdit()">
  11040. <xf:js src="xf/message.js" min="1" />
  11041. <a href="{{ link('posts/edit', $post) }}"
  11042. class="actionBar-action actionBar-action--edit actionBar-action--menuItem"
  11043. data-xf-click="quick-edit"
  11044. data-editor-target="#js-post-{$post.post_id} .js-quickEditTarget"
  11045. data-menu-closer="true">{{ phrase('edit') }}</a>
  11046.  
  11047. <xf:set var="$hasActionBarMenu" value="{{ true }}" />
  11048. </xf:if>
  11049. <xf:if is="$post.edit_count && $post.canViewHistory()">
  11050. <a href="{{ link('posts/history', $post) }}"
  11051. class="actionBar-action actionBar-action--history actionBar-action--menuItem"
  11052. data-xf-click="toggle"
  11053. data-target="#js-post-{$post.post_id} .js-historyTarget"
  11054. data-menu-closer="true">{{ phrase('history') }}</a>
  11055.  
  11056. <xf:set var="$hasActionBarMenu" value="{{ true }}" />
  11057. </xf:if>
  11058. <xf:if is="$post.canDelete('soft')">
  11059. <a href="{{ link('posts/delete', $post) }}"
  11060. class="actionBar-action actionBar-action--delete actionBar-action--menuItem"
  11061. data-xf-click="overlay">{{ phrase('delete') }}</a>
  11062.  
  11063. <xf:set var="$hasActionBarMenu" value="{{ true }}" />
  11064. </xf:if>
  11065. <xf:if is="$post.canCleanSpam()">
  11066. <a href="{{ link('spam-cleaner', $post) }}"
  11067. class="actionBar-action actionBar-action--spam actionBar-action--menuItem"
  11068. data-xf-click="overlay">{{ phrase('spam') }}</a>
  11069.  
  11070. <xf:set var="$hasActionBarMenu" value="{{ true }}" />
  11071. </xf:if>
  11072. <xf:if is="$xf.visitor.canViewIps() && $post.ip_id">
  11073. <a href="{{ link('posts/ip', $post) }}"
  11074. class="actionBar-action actionBar-action--ip actionBar-action--menuItem"
  11075. data-xf-click="overlay">{{ phrase('ip') }}</a>
  11076.  
  11077. <xf:set var="$hasActionBarMenu" value="{{ true }}" />
  11078. </xf:if>
  11079. <xf:if is="$post.canWarn()">
  11080.  
  11081. <a href="{{ link('posts/warn', $post) }}"
  11082. class="actionBar-action actionBar-action--warn actionBar-action--menuItem">{{ phrase('warn') }}</a>
  11083.  
  11084. <xf:set var="$hasActionBarMenu" value="{{ true }}" />
  11085. <xf:elseif is="$post.warning_id && $xf.visitor.canViewWarnings()" />
  11086. <a href="{{ link('warnings', {'warning_id': $post.warning_id}) }}"
  11087. class="actionBar-action actionBar-action--warn actionBar-action--menuItem"
  11088. data-xf-click="overlay">{{ phrase('view_warning') }}</a>
  11089. <xf:set var="$hasActionBarMenu" value="{{ true }}" />
  11090. </xf:if>
  11091.  
  11092. <xf:if is="$hasActionBarMenu">
  11093. <a class="actionBar-action actionBar-action--menuTrigger"
  11094. data-xf-click="menu"
  11095. title="{{ phrase('more_options')|for_attr }}"
  11096. role="button"
  11097. tabindex="0"
  11098. aria-expanded="false"
  11099. aria-haspopup="true">&#8226;&#8226;&#8226;</a>
  11100.  
  11101. <div class="menu" data-menu="menu" aria-hidden="true" data-menu-builder="actionBar">
  11102. <div class="menu-content">
  11103. <h4 class="menu-header">{{ phrase('more_options') }}</h4>
  11104. <div class="js-menuBuilderTarget"></div>
  11105. </div>
  11106. </div>
  11107. </xf:if>
  11108. </xf:contentcheck>
  11109. </div>
  11110. </xf:if>
  11111.  
  11112. </xf:contentcheck>
  11113. </div>
  11114. </xf:if>
  11115.  
  11116. <div class="likesBar js-likeList {{ $post.likes ? 'is-active' : '' }}">
  11117. <xf:likes content="{$post}" url="{{ link('posts/likes', $post) }}" />
  11118. </div>
  11119.  
  11120. <div class="js-historyTarget message-historyTarget toggleTarget" data-href="trigger-href"></div>
  11121. </footer>
  11122. </div>
  11123. </div>
  11124. </div>
  11125. </article>
  11126.  
  11127. <xf:ad position="post_below_container" arg-post="{$post}" />
  11128. </xf:macro>
  11129.  
  11130. <xf:macro name="post_deleted" arg-post="!" arg-thread="!">
  11131. <xf:css src="message.less" />
  11132. <div class="message message--deleted message--post{{ $post.isIgnored() ? ' is-ignored' : '' }}{{ $post.isUnread() ? ' is-unread' : '' }} js-post js-inlineModContainer"
  11133. data-author="{{ $post.User.username ?: $post.username }}"
  11134. data-content="post-{$post.post_id}">
  11135.  
  11136. <span class="u-anchorTarget" id="post-{$post.post_id}"></span>
  11137. <div class="message-inner">
  11138. <div class="message-cell message-cell--user">
  11139. <xf:macro template="message_macros" name="user_info" arg-user="{$post.User}" arg-fallbackName="{$post.username}" />
  11140. </div>
  11141. <div class="message-cell message-cell--main">
  11142. <div class="message-attribution">
  11143. <ul class="listInline listInline--bullet message-attribution-main">
  11144. <li><a href="{{ link('threads/post', $thread, {'post_id': $post.post_id}) }}" class="u-concealed" rel="nofollow"><xf:date time="{$post.post_date}" /></a></li>
  11145. <li><xf:username user="{$post.User}" defaultname="{$post.username}" class="u-concealed" /></li>
  11146. </ul>
  11147. </div>
  11148.  
  11149. <div class="messageNotice messageNotice--deleted">
  11150. <xf:macro template="deletion_macros" name="notice" arg-log="{$post.DeletionLog}" />
  11151.  
  11152. <a href="{{ link('posts/show', $post) }}" class="u-jsOnly" data-xf-click="inserter" data-replace="[data-content=post-{$post.post_id}]">{{ phrase('show...') }}</a>
  11153. </div>
  11154. </div>
  11155. </div>
  11156. </div>
  11157.  
  11158. <xf:ad position="post_below_container" arg-post="{$post}" />
  11159. </xf:macro>]]></template>
  11160. <template title="structured_list.less" type="public" addon_id="XF" version_id="2000770" version_string="2.0.7"><![CDATA[@_structItem-avatarSize: 36px;
  11161. @_structItem-avatarSizeExpanded: 48px;
  11162. @_structItem-cellPaddingH: ((@xf-paddingMedium) + (@xf-paddingLarge)) / 2; // average
  11163. @_structItem-cellPaddingV: @xf-paddingLarge;
  11164. {{ include('mixins.less') }}
  11165.  
  11166. .structItemContainer
  11167. {
  11168. border-collapse: collapse;
  11169. list-style: none;
  11170. margin: 0;
  11171. padding: 0;
  11172. width: 100%;
  11173. }
  11174.  
  11175. .structItemContainer-group
  11176. {
  11177. }
  11178.  
  11179. .structItemContainer > .structItem:first-child,
  11180. .structItemContainer > .structItemContainer-group:first-child > .structItem:first-child
  11181. {
  11182. border-top: none;
  11183. }
  11184.  
  11185. .structItem
  11186. {
  11187. display: table;
  11188. table-layout: fixed;
  11189. border-collapse: collapse;
  11190. border-top: @xf-borderSize solid @xf-borderColor;
  11191. list-style: none;
  11192. margin: 0;
  11193. padding: 0;
  11194. width: 100%;
  11195.  
  11196. &.is-highlighted,
  11197. &.is-moderated
  11198. {
  11199. background: @xf-contentHighlightBg;
  11200. }
  11201.  
  11202. &.is-deleted
  11203. {
  11204. opacity: .7;
  11205.  
  11206. .structItem-title
  11207. {
  11208. text-decoration: line-through;
  11209. }
  11210. }
  11211.  
  11212. &.is-mod-selected
  11213. {
  11214. background: @xf-inlineModHighlightColor;
  11215. opacity: 1;
  11216. }
  11217. }
  11218.  
  11219. .structItem-cell
  11220. {
  11221. display: table-cell;
  11222. vertical-align: top;
  11223. padding: @_structItem-cellPaddingV @_structItem-cellPaddingH;
  11224.  
  11225. .structItem--middle &
  11226. {
  11227. vertical-align: middle;
  11228. }
  11229.  
  11230. &.structItem-cell--icon
  11231. {
  11232. width: ((@_structItem-avatarSize) + (@_structItem-cellPaddingH) * 2);
  11233. position: relative;
  11234.  
  11235. &.structItem-cell--iconExpanded
  11236. {
  11237. width: ((@_structItem-avatarSizeExpanded) + (@_structItem-cellPaddingH) * 2);
  11238. }
  11239.  
  11240. &.structItem-cell--iconFixedSmall
  11241. {
  11242. width: (60px + (@_structItem-cellPaddingH) * 2);
  11243. }
  11244. }
  11245.  
  11246. &.structItem-cell--meta
  11247. {
  11248. width: 150px;
  11249. }
  11250.  
  11251. &.structItem-cell--latest
  11252. {
  11253. width: 190px;
  11254. text-align: right;
  11255. }
  11256. }
  11257.  
  11258. .structItem-iconContainer
  11259. {
  11260. position: relative;
  11261.  
  11262. img
  11263. {
  11264. display: block;
  11265. width: 100%;
  11266. }
  11267.  
  11268. .avatar
  11269. {
  11270. .m-avatarSize(@_structItem-avatarSize);
  11271. }
  11272.  
  11273. .structItem-secondaryIcon
  11274. {
  11275. position: absolute;
  11276. right: -5px;
  11277. bottom: -5px;
  11278.  
  11279. .m-avatarSize(@_structItem-avatarSize / 2 + 2px);
  11280. }
  11281.  
  11282. .structItem-cell--iconExpanded &
  11283. {
  11284. .avatar
  11285. {
  11286. .m-avatarSize(@_structItem-avatarSizeExpanded);
  11287. }
  11288.  
  11289. .structItem-secondaryIcon
  11290. {
  11291. .m-avatarSize(@_structItem-avatarSizeExpanded / 2 - 2px);
  11292. }
  11293. }
  11294. }
  11295.  
  11296. .structItem-title
  11297. {
  11298. font-size: @xf-fontSizeLarge;
  11299. font-weight: @xf-fontWeightNormal;
  11300. margin: 0;
  11301. padding: 0;
  11302.  
  11303. .label
  11304. {
  11305. font-weight: @xf-fontWeightNormal;
  11306. }
  11307.  
  11308. .is-unread &
  11309. {
  11310. font-weight: @xf-fontWeightHeavy;
  11311. }
  11312. }
  11313.  
  11314. .structItem-minor
  11315. {
  11316. font-size: @xf-fontSizeSmaller;
  11317. color: @xf-textColorMuted;
  11318.  
  11319. .m-hiddenLinks();
  11320. }
  11321.  
  11322. .structItem-parts
  11323. {
  11324. .m-listPlain();
  11325. display: inline;
  11326.  
  11327. > li
  11328. {
  11329. display: inline;
  11330. margin: 0;
  11331. padding: 0;
  11332.  
  11333. &:nth-child(even)
  11334. {
  11335. color: @xf-textColorDimmed;
  11336. }
  11337.  
  11338. &:before
  11339. {
  11340. content: "\00B7\20";
  11341. }
  11342.  
  11343. &:first-child:before
  11344. {
  11345. content: "";
  11346. display: none;
  11347. }
  11348. }
  11349. }
  11350.  
  11351. .structItem-pageJump
  11352. {
  11353. margin-left: 8px;
  11354. font-size: @xf-fontSizeSmallest;
  11355.  
  11356. a
  11357. {
  11358. .xf-chip();
  11359. text-decoration: none;
  11360. border-radius: @xf-borderRadiusSmall;
  11361. padding: 0 3px;
  11362. opacity: .5;
  11363. .m-transition();
  11364.  
  11365. .structItem:hover &,
  11366. .has-touchevents &
  11367. {
  11368. opacity: 1;
  11369. }
  11370.  
  11371. &:hover
  11372. {
  11373. text-decoration: none;
  11374. .xf-chipHover();
  11375. }
  11376. }
  11377. }
  11378.  
  11379. .structItem-statuses,
  11380. .structItem-extraInfo
  11381. {
  11382. .m-listPlain();
  11383. float: right;
  11384.  
  11385. > li
  11386. {
  11387. float: left;
  11388. margin-left: 8px;
  11389. }
  11390.  
  11391. input[type=checkbox]
  11392. {
  11393. .m-checkboxAligner();
  11394. }
  11395. }
  11396.  
  11397. .structItem-status
  11398. {
  11399. &::before
  11400. {
  11401. .m-faBase();
  11402. display: inline-block;
  11403. font-size: 90%;
  11404. color: @xf-textColorMuted;
  11405. }
  11406.  
  11407. &--deleted::before { .m-faContent(@fa-var-trash-o, .79em); }
  11408. &--locked::before { .m-faContent(@fa-var-lock, .65em); }
  11409. &--moderated::before { .m-faContent(@fa-var-shield, .72em); color: @xf-textColorAttention; }
  11410. &--redirect::before { .m-faContent(@fa-var-external-link, 1em); }
  11411. &--starred::before { .m-faContent(@fa-var-star, .93em); color: @xf-starFullColor; }
  11412. &--sticky::before { .m-faContent(@fa-var-thumb-tack, .65em); }
  11413. &--watched::before { .m-faContent(@fa-var-eye, 1.04em); color: @xf-textColorFeature; }
  11414. &--poll::before { .m-faContent(@fa-var-bar-chart, 1.15em); }
  11415. &--attention::before { .m-faContent(@fa-var-bullhorn, 1.04em); color: @xf-textColorAttention; }
  11416. }
  11417.  
  11418. .structItem.structItem--note
  11419. {
  11420. .xf-contentHighlightBase();
  11421. color: @xf-textColorFeature;
  11422.  
  11423. .structItem-cell
  11424. {
  11425. padding-top: @_structItem-cellPaddingV / 2;
  11426. padding-bottom: @_structItem-cellPaddingV / 2;
  11427. font-size: @xf-fontSizeSmaller;
  11428. text-align: center;
  11429. }
  11430. }
  11431.  
  11432. {{ include('brv_structured.less') }}
  11433.  
  11434. @media (max-width: @xf-responsiveWide)
  11435. {
  11436. .structItem-cell
  11437. {
  11438. vertical-align: top;
  11439.  
  11440. &.structItem-cell--meta
  11441. {
  11442. width: 120px;
  11443. font-size: @xf-fontSizeSmaller;
  11444. }
  11445.  
  11446. &.structItem-cell--latest
  11447. {
  11448. width: 140px;
  11449. font-size: @xf-fontSizeSmaller;
  11450. }
  11451. }
  11452. }
  11453.  
  11454. @media (max-width: @xf-responsiveMedium)
  11455. {
  11456. .structItem-cell
  11457. {
  11458. //padding: (@_structItem-cellPaddingV) / 2 @_structItem-cellPaddingH;
  11459.  
  11460. &.structItem-cell--main
  11461. {
  11462. display: block;
  11463. padding-bottom: .2em;
  11464. padding-left: 0;
  11465. }
  11466.  
  11467. &.structItem-cell--meta
  11468. {
  11469. display: block;
  11470. width: auto;
  11471. float: left;
  11472. padding-top: 0;
  11473. padding-left: 0;
  11474. padding-right: 0;
  11475. color: @xf-textColorMuted;
  11476.  
  11477. .structItem-minor
  11478. {
  11479. display: none;
  11480. }
  11481.  
  11482. .pairs
  11483. {
  11484. > dt,
  11485. > dd
  11486. {
  11487. display: inline;
  11488. float: none;
  11489. margin: 0;
  11490. }
  11491. }
  11492. }
  11493.  
  11494. &.structItem-cell--latest
  11495. {
  11496. display: block;
  11497. width: auto;
  11498. float: left;
  11499. padding-top: 0;
  11500. padding-left: 0;
  11501.  
  11502. &:before
  11503. {
  11504. content: "\00A0\00B7\20";
  11505. color: @xf-textColorMuted;
  11506. }
  11507.  
  11508. a
  11509. {
  11510. color: @xf-textColorMuted;
  11511. }
  11512.  
  11513. .structItem-minor
  11514. {
  11515. display: none;
  11516. }
  11517. }
  11518. }
  11519.  
  11520. .structItem-pageJump,
  11521. .structItem-extraInfoMinor
  11522. {
  11523. display: none;
  11524. }
  11525.  
  11526. .is-unread .structItem-latestDate
  11527. {
  11528. font-weight: @xf-fontWeightNormal;
  11529. }
  11530. }
  11531.  
  11532. @media (max-width: @xf-responsiveNarrow)
  11533. {
  11534. .structItem-parts
  11535. {
  11536. .structItem-startDate
  11537. {
  11538. display: none;
  11539. }
  11540. }
  11541. }]]></template>
  11542. <template title="thread_list_macros" type="public" addon_id="XF" version_id="2001070" version_string="2.0.10"><![CDATA[<xf:macro name="item"
  11543. arg-thread="!"
  11544. arg-forum=""
  11545. arg-forceRead="{{ false }}"
  11546. arg-showWatched="{{ true }}"
  11547. arg-allowInlineMod="{{ true }}"
  11548. arg-chooseName=""
  11549. arg-extraInfo=""
  11550. arg-allowEdit="{{ true }}">
  11551.  
  11552. <xf:css src="structured_list.less" />
  11553.  
  11554. <div class="structItem structItem--thread{{ $thread.prefix_id ? ' is-prefix' . $thread.prefix_id : '' }}{{ $thread.isIgnored() ? ' is-ignored' : '' }}{{ ($thread.isUnread() AND !$forceRead) ? ' is-unread' : '' }}{{ $thread.discussion_state == 'moderated' ? ' is-moderated' : '' }}{{ $thread.discussion_state == 'deleted' ? ' is-deleted' : '' }} js-inlineModContainer js-threadListItem-{$thread.thread_id}" data-author="{{ $thread.User.username ?: $thread.username }}">
  11555. <div class="structItem-cell structItem-cell--icon">
  11556. <div class="structItem-iconContainer">
  11557. <xf:avatar user="$thread.User" size="s" defaultname="{$thread.username}" />
  11558. <xf:if is="$thread.getUserPostCount()">
  11559. <xf:if is="property('MiniAvatar')">
  11560. <xf:avatar user="$xf.visitor" size="s"
  11561. href=""
  11562. class="avatar--separated structItem-secondaryIcon"
  11563. title="{{ phrase('you_have_posted_x_messages_in_this_thread', {'count': $thread.getUserPostCount() }) }}" />
  11564. </xf:if>
  11565. </xf:if>
  11566. </div>
  11567. </div>
  11568. <div class="structItem-cell structItem-cell--main" data-xf-init="touch-proxy">
  11569. <xf:if contentcheck="true">
  11570. <ul class="structItem-statuses">
  11571. <xf:contentcheck>
  11572. <xf:if is="$thread.discussion_state == 'moderated'">
  11573. <li>
  11574. <i class="structItem-status structItem-status--moderated" aria-hidden="true" title="{{ phrase('awaiting_approval')|for_attr }}"></i>
  11575. <span class="u-srOnly">{{ phrase('awaiting_approval') }}</span>
  11576. </li>
  11577. </xf:if>
  11578. <xf:if is="$thread.discussion_state == 'deleted'">
  11579. <li>
  11580. <i class="structItem-status structItem-status--deleted" aria-hidden="true" title="{{ phrase('deleted')|for_attr }}"></i>
  11581. <span class="u-srOnly">{{ phrase('deleted') }}</span>
  11582. </li>
  11583. </xf:if>
  11584. <xf:if is="!$thread.discussion_open">
  11585. <li>
  11586. <i class="structItem-status structItem-status--locked" aria-hidden="true" title="{{ phrase('locked')|for_attr }}"></i>
  11587. <span class="u-srOnly">{{ phrase('locked') }}</span>
  11588. </li>
  11589. </xf:if>
  11590. <xf:if is="$thread.discussion_type == 'redirect'">
  11591. <li>
  11592. <i class="structItem-status structItem-status--redirect" aria-hidden="true" title="{{ phrase('redirect')|for_attr }}"></i>
  11593. <span class="u-srOnly">{{ phrase('redirect') }}</span>
  11594. </li>
  11595. <xf:elseif is="$thread.discussion_type == 'poll'" />
  11596. <li>
  11597. <i class="structItem-status structItem-status--poll" aria-hidden="true" title="{{ phrase('poll')|for_attr }}"></i>
  11598. <span class="u-srOnly">{{ phrase('poll') }}</span>
  11599. </li>
  11600. </xf:if>
  11601. <xf:if is="{$showWatched} AND {$xf.visitor.user_id}">
  11602. <xf:if is="{$thread.Watch.{$xf.visitor.user_id}}">
  11603. <li>
  11604. <i class="structItem-status structItem-status--watched" aria-hidden="true" title="{{ phrase('thread_watched')|for_attr }}"></i>
  11605. <span class="u-srOnly">{{ phrase('thread_watched') }}</span>
  11606. </li>
  11607. <xf:elseif is="!$forum AND {$thread.Forum.Watch.{$xf.visitor.user_id}}" />
  11608. <li>
  11609. <i class="structItem-status structItem-status--watched" aria-hidden="true" title="{{ phrase('forum_watched')|for_attr }}"></i>
  11610. <span class="u-srOnly">{{ phrase('forum_watched') }}</span>
  11611. </li>
  11612. </xf:if>
  11613. </xf:if>
  11614. <xf:if is="$thread.sticky">
  11615. <li>
  11616. <i class="structItem-status structItem-status--sticky" aria-hidden="true" title="{{ phrase('sticky')|for_attr }}"></i>
  11617. <span class="u-srOnly">{{ phrase('sticky') }}</span>
  11618. </li>
  11619. </xf:if>
  11620. </xf:contentcheck>
  11621. </ul>
  11622. </xf:if>
  11623.  
  11624. <div class="structItem-title">
  11625. <xf:set var="$canPreview" value="{{ $thread.canPreview() }}" />
  11626. <xf:if is="$thread.prefix_id">
  11627. <xf:if is="$forum">
  11628. <a href="{{ link('forums', $forum, {'prefix_id': $thread.prefix_id}) }}" class="labelLink" rel="nofollow">{{ prefix('thread', $thread, 'html', '') }}</a>
  11629. <xf:else />
  11630. {{ prefix('thread', $thread, 'html', '') }}
  11631. </xf:if>
  11632. </xf:if>
  11633. <a href="{{ link('threads' . (($thread.isUnread() AND !$forceRead) ? '/unread' : ''), $thread) }}" class="" data-tp-primary="on" data-xf-init="{{ $canPreview ? 'preview-tooltip' : '' }}" data-preview-url="{{ $canPreview ? link('threads/preview', $thread) : '' }}">{$thread.title}</a>
  11634. </div>
  11635.  
  11636. <div class="structItem-minor">
  11637. <xf:if contentcheck="true">
  11638. <ul class="structItem-extraInfo">
  11639. <xf:contentcheck>
  11640. <xf:if is="{$extraInfo}">
  11641. <li>{$extraInfo}</li>
  11642. <xf:elseif is="$thread.canEdit() AND $thread.canUseInlineModeration() AND {$allowEdit}" />
  11643. <xf:if is="!$allowInlineMod OR !$forum">
  11644. <xf:set var="$editParams" value="{{ {
  11645. '_xfNoInlineMod': !$allowInlineMod ? 1 : null,
  11646. '_xfForumName': !$forum ? 1 : 0
  11647. } }}" />
  11648. <xf:else />
  11649. <xf:set var="$editParams" value="{{ [] }}" />
  11650. </xf:if>
  11651. <xf:if is="$thread.discussion_type != 'redirect'">
  11652. <li class="structItem-extraInfoMinor">
  11653. <a href="{{ link('threads/edit', $thread) }}" data-xf-click="overlay" data-href="{{ link('threads/edit', $thread, $editParams) }}">
  11654. {{ phrase('edit') }}
  11655. </a>
  11656. </li>
  11657. </xf:if>
  11658. </xf:if>
  11659. <xf:if is="$chooseName">
  11660. <li><xf:checkbox standalone="true">
  11661. <xf:option name="{$chooseName}[]" value="{$thread.thread_id}" class="js-chooseItem" />
  11662. </xf:checkbox></li>
  11663. <xf:elseif is="$allowInlineMod AND $thread.canUseInlineModeration()" />
  11664. <li><xf:checkbox standalone="true">
  11665. <xf:option value="{$thread.thread_id}" class="js-inlineModToggle"
  11666. data-xf-init="tooltip"
  11667. title="{{ phrase('select_for_moderation') }}"
  11668. label="{{ phrase('select_for_moderation') }}"
  11669. hiddenlabel="true"
  11670. />
  11671. </xf:checkbox></li>
  11672. </xf:if>
  11673. </xf:contentcheck>
  11674. </ul>
  11675. </xf:if>
  11676.  
  11677. <xf:if is="$thread.discussion_state == 'deleted'">
  11678. <xf:if is="{$extraInfo}"><span class="structItem-extraInfo">{$extraInfo}</span></xf:if>
  11679.  
  11680. <xf:macro template="deletion_macros" name="notice" arg-log="{$thread.DeletionLog}" />
  11681. <xf:else />
  11682. <ul class="structItem-parts">
  11683. <li><xf:username user="$thread.User" defaultname="{$thread.username}" /></li>
  11684. <li class="structItem-startDate"><a href="{{ link('threads', $thread) }}" rel="nofollow"><xf:date time="{$thread.post_date}" /></a></li>
  11685. <xf:if is="!$forum">
  11686. <li><a href="{{ link('forums', $thread.Forum) }}">{$thread.Forum.title}</a></li>
  11687. </xf:if>
  11688. </ul>
  11689.  
  11690. <xf:if is="$thread.discussion_type != 'redirect' && $thread.reply_count >= $xf.options.messagesPerPage && $xf.options.lastPageLinks">
  11691. <span class="structItem-pageJump">
  11692. <xf:foreach loop="{{ last_pages($thread.reply_count + 1, $xf.options.messagesPerPage, $xf.options.lastPageLinks) }}" value="$p">
  11693. <a href="{{ link('threads', $thread, {'page': $p}) }}">{$p}</a>
  11694. </xf:foreach>
  11695. </span>
  11696. </xf:if>
  11697. </xf:if>
  11698. </div>
  11699. </div>
  11700. <div class="structItem-cell structItem-cell--meta" title="{{ phrase('first_message_likes:')|for_attr }} {$thread.first_post_likes|number}">
  11701. <dl class="pairs pairs--justified">
  11702. <dt>{{ phrase('replies') }}</dt>
  11703. <dd>{{ $thread.discussion_type == 'redirect' ? '&ndash;' : $thread.reply_count|number }}</dd>
  11704. </dl>
  11705. <dl class="pairs pairs--justified structItem-minor">
  11706. <dt>{{ phrase('views') }}</dt>
  11707. <dd>{{ $thread.discussion_type == 'redirect' ? '&ndash;' : ($thread.view_count > $thread.reply_count ? $thread.view_count|number : number($thread.reply_count+1)) }}</dd>
  11708. </dl>
  11709. </div>
  11710. <div class="structItem-cell structItem-cell--latest">
  11711. <xf:if is="$thread.discussion_type == 'redirect'">
  11712. {{ phrase('n_a') }}
  11713. <xf:else />
  11714. <div class="structItem-minor">
  11715. <xf:if is="$xf.visitor.isIgnoring($thread.last_post_user_id)">
  11716. {{ phrase('ignored_member') }}
  11717. <xf:else />
  11718. <xf:username user="{$thread.last_post_cache}" />
  11719. </xf:if>
  11720. </div>
  11721. <a href="{{ link('threads/latest', $thread) }}" rel="nofollow"><xf:date time="{$thread.last_post_date}" class="structItem-latestDate" /></a>
  11722.  
  11723. </xf:if>
  11724. </div>
  11725. </div>
  11726. </xf:macro>
  11727.  
  11728. <xf:macro name="item_new_posts" arg-thread="!">
  11729. <div class="contentRow">
  11730. <div class="contentRow-figure">
  11731. <xf:avatar user="$thread.LastPoster" size="xxs" defaultname="{$thread.last_post_username}" />
  11732. </div>
  11733. <div class="contentRow-main contentRow-main--close">
  11734. <xf:if is="$thread.isUnread()">
  11735. <a href="{{ link('threads/unread', $thread) }}">{{ prefix('thread', $thread) }}{$thread.title}</a>
  11736. <xf:else />
  11737. <a href="{{ link('threads/post', $thread, {'post_id': $thread.last_post_id}) }}">{{ prefix('thread', $thread) }}{$thread.title}</a>
  11738. </xf:if>
  11739.  
  11740. <div class="contentRow-minor contentRow-minor--hideLinks">
  11741. <ul class="listInline listInline--bullet">
  11742. <li>{{ phrase('latest_x', {'name': $thread.last_post_cache.username}) }}</li>
  11743. <li><xf:date time="{$thread.last_post_date}" /></li>
  11744. </ul>
  11745. </div>
  11746. <div class="contentRow-minor contentRow-minor--hideLinks">
  11747. <a href="{{ link('forums', $thread.Forum) }}">{$thread.Forum.title}</a>
  11748. </div>
  11749. </div>
  11750. </div>
  11751. </xf:macro>
  11752.  
  11753. <xf:macro name="item_new_threads" arg-thread="!">
  11754. <div class="contentRow">
  11755. <div class="contentRow-figure">
  11756. <xf:avatar user="$thread.User" size="xxs" defaultname="{$thread.username}" />
  11757. </div>
  11758. <div class="contentRow-main contentRow-main--close">
  11759. <a href="{{ link('threads', $thread) }}">{{ prefix('thread', $thread) }}{$thread.title}</a>
  11760.  
  11761. <div class="contentRow-minor contentRow-minor--hideLinks">
  11762. <ul class="listInline listInline--bullet">
  11763. <li>{{ phrase('started_by_x', {'name': $thread.username}) }}</li>
  11764. <li><xf:date time="{$thread.post_date}" /></li>
  11765. <li>{{ phrase('replies:') }} {$thread.reply_count|number}</li>
  11766. </ul>
  11767. </div>
  11768. <div class="contentRow-minor contentRow-minor--hideLinks">
  11769. <a href="{{ link('forums', $thread.Forum) }}">{$thread.Forum.title}</a>
  11770. </div>
  11771. </div>
  11772. </div>
  11773. </xf:macro>
  11774.  
  11775. <xf:macro name="quick_thread"
  11776. arg-forum="!"
  11777. arg-page="1"
  11778. arg-order="last_post_date"
  11779. arg-direction="desc">
  11780.  
  11781. <xf:css src="structured_list.less" />
  11782.  
  11783. <xf:if is="$forum.canCreateThread()">
  11784.  
  11785. <xf:js src="xf/thread.js" min="1" />
  11786.  
  11787. <xf:set var="$inlineMode" value="{{ ($page == 1 && $order == 'last_post_date' && $direction == 'desc') ? true : false }}" />
  11788.  
  11789. <xf:form action="{{ link('forums/post-thread', $forum, {'inline-mode': $inlineMode}) }}" class="structItem" ajax="true"
  11790. draft="{{ link('forums/draft', $forum) }}"
  11791. data-xf-init="quick-thread"
  11792. data-focus-activate=".js-titleInput"
  11793. data-focus-activate-href="{{ link('forums/post-thread', $forum, {'inline-mode': true}) }}"
  11794. data-focus-activate-target=".js-quickThreadFields"
  11795. data-insert-target=".js-threadList"
  11796. data-replace-target=".js-emptyThreadList">
  11797.  
  11798. <div class="structItem-cell structItem-cell--icon">
  11799. <div class="structItem-iconContainer">
  11800. <xf:avatar user="$xf.visitor" size="s" />
  11801. </div>
  11802. </div>
  11803. <div class="structItem-cell structItem-cell--newThread js-prefixListenContainer">
  11804.  
  11805. <xf:formrow rowtype="noGutter noLabel fullWidth noPadding mergeNext"
  11806. label="{{ phrase('title') }}">
  11807.  
  11808. <xf:prefixinput maxlength="{{ max_length('XF:Thread', 'title') }}"
  11809. placeholder="{$forum.thread_prompt}"
  11810. title="{{ phrase('post_new_thread_in_this_forum') }}"
  11811. prefix-value="{$forum.default_prefix_id}"
  11812. type="thread"
  11813. prefixes="{{ $forum.getUsablePrefixes() }}"
  11814. data-xf-init="tooltip"
  11815. rows="1"/>
  11816. </xf:formrow>
  11817.  
  11818. <div class="js-quickThreadFields inserter-container is-hidden"><!--{{ phrase('loading...') }}--></div>
  11819. </div>
  11820. </xf:form>
  11821. </xf:if>
  11822.  
  11823. </xf:macro>]]></template>
  11824. <template title="widget_forum_statistics" type="public" addon_id="XF" version_id="2000270" version_string="2.0.2"><![CDATA[<div class="block"{{ widget_data($widget) }}>
  11825. <div class="block-container">
  11826. <h3 class="block-minorHeader block-forum-static"><a>{$title}</a></h3>
  11827. <div class="block-body block-row forum-static-content">
  11828. <dl class="pairs pairs--justified">
  11829. <dt>{{ phrase('threads') }}</dt>
  11830. <dd>{$forumStatistics.threads|number}</dd>
  11831. </dl>
  11832.  
  11833. <dl class="pairs pairs--justified">
  11834. <dt>{{ phrase('messages') }}</dt>
  11835. <dd>{$forumStatistics.messages|number}</dd>
  11836. </dl>
  11837.  
  11838. <dl class="pairs pairs--justified">
  11839. <dt>{{ phrase('members') }}</dt>
  11840. <dd>{$forumStatistics.users|number}</dd>
  11841. </dl>
  11842.  
  11843. <dl class="pairs pairs--justified">
  11844. <dt>{{ phrase('latest_member') }}</dt>
  11845. <dd><xf:username user="{$forumStatistics.latestUser}" /></dd>
  11846. </dl>
  11847. </div>
  11848. </div>
  11849. </div>]]></template>
  11850. <template title="widget_members_online" type="public" addon_id="XF" version_id="2000270" version_string="2.0.2"><![CDATA[<xf:if is="$options.staffOnline">
  11851. <xf:if contentcheck="true">
  11852. <div class="block" data-widget-section="staffMembers"{{ widget_data($widget) }}>
  11853. <div class="block-container">
  11854. <h3 class="block-minorHeader block-staff"><a href="{{ link('members', null, {'key': 'staff_members'}) }}">{{ phrase('staff_online') }}</a></h3>
  11855. <ul class="block-body staff-content">
  11856. <xf:contentcheck>
  11857. <xf:foreach loop="$online.users" value="$user">
  11858. <xf:if is="$user.is_staff">
  11859. <li class="block-row">
  11860. <div class="contentRow">
  11861. <div class="contentRow-figure">
  11862. <xf:avatar user="$user" size="xs" />
  11863. </div>
  11864. <div class="contentRow-main contentRow-main--close">
  11865. <xf:username user="$user" rich="true" />
  11866. <div class="contentRow-minor">
  11867. <xf:usertitle user="$user" />
  11868. </div>
  11869. </div>
  11870. </div>
  11871. </li>
  11872. </xf:if>
  11873. </xf:foreach>
  11874. </xf:contentcheck>
  11875. </ul>
  11876. </div>
  11877. </div>
  11878. </xf:if>
  11879. </xf:if>
  11880.  
  11881. <div class="block" data-widget-section="onlineNow"{{ widget_data($widget) }}>
  11882. <div class="block-container">
  11883. <h3 class="block-minorHeader block-member"><a href="{{ link('online') }}">{$title}</a></h3>
  11884. <div class="block-body member-content">
  11885. <xf:if contentcheck="true">
  11886. <div class="block-row block-row--minor">
  11887. <h4 class="block-textHeader block-textHeader--scaled">
  11888. {{ phrase('people_you_follow') }}
  11889. </h4>
  11890. <ul class="listHeap">
  11891. <xf:contentcheck>
  11892. <xf:if is="$options.followedOnline">
  11893. <xf:foreach loop="$online.users" value="$user">
  11894. <xf:if is="in_array($user.user_id, $xf.visitor.Profile.following)">
  11895. <li>
  11896. <xf:avatar user="$user" size="xxs" img="true" />
  11897. </li>
  11898. </xf:if>
  11899. </xf:foreach>
  11900. </xf:if>
  11901. </xf:contentcheck>
  11902. </ul>
  11903. </div>
  11904.  
  11905. <div class="block-row block-row--minor">
  11906. <h4 class="block-textHeader block-textHeader--scaled">
  11907. {{ phrase('members') }}
  11908. </h4>
  11909. <xf:else />
  11910. <div class="block-row block-row--minor">
  11911. </xf:if>
  11912.  
  11913. <xf:if is="$online.users is not empty">
  11914. <ul class="listInline listInline--comma">
  11915. <xf:foreach loop="$online.users" value="$user"><xf:trim>
  11916. <li><xf:username user="$user" rich="true" class="{{ !$user.visible ? 'username--invisible' : '' }}" /></li>
  11917. </xf:trim></xf:foreach>
  11918. </ul>
  11919. <xf:if is="$online.counts.unseen">
  11920. <a href="{{ link('online') }}">{{ phrase('ellipsis_and_x_more', {'count': $online.counts.unseen}) }}</a>
  11921. </xf:if>
  11922. <xf:else />
  11923. {{ phrase('no_members_online_now') }}
  11924. </xf:if>
  11925. </div>
  11926. </div>
  11927. <div class="block-footer">
  11928. <span class="block-footer-counter">{{ phrase('online_now_x_members_y_guests_z',{
  11929. 'total': number($online.counts.total),
  11930. 'members': number($online.counts.members),
  11931. 'guests': number($online.counts.guests)})
  11932. }}</span>
  11933. </div>
  11934. </div>
  11935. </div>]]></template>
  11936. <template title="widget_new_posts" type="public" addon_id="XF" version_id="2000038" version_string="2.0.0 Beta 8"><![CDATA[<xf:if is="$threads is not empty OR ($threads is empty AND $filter != 'latest')">
  11937. <div class="block"{{ widget_data($widget) }}>
  11938. <div class="block-container">
  11939. <xf:if is="$style == 'full'">
  11940. <h3 class="block-header">
  11941. <a href="{$link}" rel="nofollow">{$title}</a>
  11942. </h3>
  11943. <div class="block-body">
  11944. <div class="structItemContainer">
  11945. <xf:if is="$threads is not empty">
  11946. <xf:foreach loop="$threads" value="$thread">
  11947. <xf:macro template="thread_list_macros" name="item"
  11948. arg-allowInlineMod="{{ false }}"
  11949. arg-thread="{$thread}" />
  11950. </xf:foreach>
  11951. <xf:elseif is="$filter == 'unread'" />
  11952. <div class="block-row">
  11953. {{ phrase('no_unread_posts_view_latest', {'link': link('whats-new/posts', null, {'skip': 1})}) }}
  11954. </div>
  11955. <xf:else />
  11956. <div class="block-row">
  11957. {{ phrase('no_results_found') }}
  11958. </div>
  11959. </xf:if>
  11960. </div>
  11961. </div>
  11962. <xf:if is="$hasMore">
  11963. <div class="block-footer">
  11964. <span class="block-footer-controls">
  11965. <xf:button href="{$link}" rel="nofollow">{{ phrase('view_more...') }}</xf:button>
  11966. </span>
  11967. </div>
  11968. </xf:if>
  11969. <xf:else />
  11970. <h3 class="block-minorHeader block-post">
  11971. <a href="{$link}" rel="nofollow">{$title}</a>
  11972. </h3>
  11973. <ul class="block-body post-content">
  11974. <xf:if is="$threads is not empty">
  11975. <xf:foreach loop="$threads" value="$thread">
  11976. <li class="block-row">
  11977. <xf:macro template="thread_list_macros" name="item_new_posts"
  11978. arg-thread="{$thread}" />
  11979. </li>
  11980. </xf:foreach>
  11981. <xf:elseif is="$filter == 'unread'" />
  11982. <li class="block-row block-row--minor">
  11983. {{ phrase('no_unread_posts_view_latest', {'link': link('whats-new/posts', null, {'skip': 1})}) }}
  11984. </li>
  11985. <xf:else />
  11986. <li class="block-row block-row--minor">
  11987. {{ phrase('no_results_found') }}
  11988. </li>
  11989. </xf:if>
  11990. </ul>
  11991. </xf:if>
  11992. </div>
  11993. </div>
  11994. </xf:if>]]></template>
  11995. <template title="widget_online_statistics" type="public" addon_id="XF" version_id="2000038" version_string="2.0.0 Beta 8"><![CDATA[<div class="block"{{ widget_data($widget) }}>
  11996. <div class="block-container">
  11997. <h3 class="block-minorHeader block-static">{$title}</h3>
  11998. <div class="block-body block-row">
  11999. <dl class="pairs pairs--justified">
  12000. <dt>{{ phrase('members_online') }}</dt>
  12001. <dd>{$counts.members|number}</dd>
  12002. </dl>
  12003.  
  12004. <dl class="pairs pairs--justified">
  12005. <dt>{{ phrase('guests_online') }}</dt>
  12006. <dd>{$counts.guests|number}</dd>
  12007. </dl>
  12008.  
  12009. <dl class="pairs pairs--justified">
  12010. <dt>{{ phrase('total_visitors') }}</dt>
  12011. <dd>{$counts.total|number}</dd>
  12012. </dl>
  12013. </div>
  12014. <div class="block-footer">
  12015. {{ phrase('totals_may_include_hidden_visitors') }}
  12016. </div>
  12017. </div>
  12018. </div>]]></template>
  12019. <template title="widget_share_page" type="public" addon_id="XF" version_id="2000270" version_string="2.0.2"><![CDATA[<xf:if contentcheck="true">
  12020. <div class="block"{{ widget_data($widget) }}>
  12021. <div class="block-container">
  12022. <h3 class="block-minorHeader block-share"><a>{$title}</a></h3>
  12023. <div class="block-body block-row">
  12024. <xf:contentcheck>
  12025. <xf:macro template="share_page_macros" name="buttons" arg-iconic="{$options.iconic}" />
  12026. </xf:contentcheck>
  12027. </div>
  12028. </div>
  12029. </div>
  12030. </xf:if>]]></template>
  12031. <template title="widget_visitor_panel" type="public" addon_id="XF" version_id="2000038" version_string="2.0.0 Beta 8"><![CDATA[<xf:if is="$xf.visitor.user_id">
  12032. <div class="block member-visitor"{{ widget_data($widget) }}>
  12033. <xf:macro template="account_visitor_sidebar" name="visitor_panel_row_sidebar" />
  12034. </div>
  12035. </xf:if>]]></template>
  12036. </templates>
  12037. <properties>
  12038. <group group_name="BriviumSettings" title="[Brivium] Settings" description="" display_order="0" addon_id=""/>
  12039. <group group_name="brivium_footer" title="[Brivium] Footer" description="" display_order="1" addon_id=""/>
  12040. <property property_name="BrvColor1" group_name="BriviumSettings" title="Brv Color 1" description="" property_type="value" value_type="color" depends_on="" value_group="" display_order="0" addon_id="">
  12041. <value>"#ffffff"</value>
  12042. </property>
  12043. <property property_name="BrvColor2" group_name="BriviumSettings" title="Brv Color 2" description="" property_type="value" value_type="color" depends_on="" value_group="" display_order="10" addon_id="">
  12044. <value>"#422f53"</value>
  12045. </property>
  12046. <property property_name="BrvColor3" group_name="BriviumSettings" title="Brv Color 3" description="" property_type="value" value_type="color" depends_on="" value_group="" display_order="20" addon_id="">
  12047. <value>"#77d383"</value>
  12048. </property>
  12049. <property property_name="BrvColor4" group_name="BriviumSettings" title="Brv Color 4" description="" property_type="value" value_type="color" depends_on="" value_group="" display_order="30" addon_id="">
  12050. <value>"#f5f5f5"</value>
  12051. </property>
  12052. <property property_name="FooterBottom" group_name="footer" title="Footer Bottom" description="Footer Bottom background color." property_type="value" value_type="color" depends_on="" value_group="" display_order="20200" addon_id="">
  12053. <value>""</value>
  12054. </property>
  12055. <property property_name="FooterColumn1" group_name="brivium_footer" title="Footer Column 1" description="" property_type="value" value_type="string" depends_on="" value_group="" display_order="0" addon_id="">
  12056. <value>"&lt;div class=\"footer-title\"&gt; &lt;h3&gt;About Us&lt;/h3&gt; &lt;/div&gt; &lt;div class=\"content-inner\"&gt; &lt;p&gt;Neque porro quisquam est qui dolorem ipsum quia dolor sit amet, consectetur. Lorem Ipsum is simply dummy text of the printing and typesetting industry.&lt;/p&gt; &lt;/div&gt; &lt;div class=\"footer-social\"&gt; &lt;a class=\"facebook\" href=\"#\"&gt;&lt;span&gt;&lt;i class=\"fa fa-facebook\"&gt;&lt;/i&gt;&lt;/span&gt;&lt;/a&gt; &lt;a class=\"twitter\" href=\"#\"&gt;&lt;span&gt;&lt;i class=\"fa fa-twitter\"&gt;&lt;/i&gt;&lt;/span&gt;&lt;/a&gt; &lt;a class=\"google\" href=\"#\"&gt;&lt;span&gt;&lt;i class=\"fa fa-google-plus\"&gt;&lt;/i&gt;&lt;/span&gt;&lt;/a&gt; &lt;a class=\"linkedin\" href=\"#\"&gt;&lt;span&gt;&lt;i class=\"fa fa-linkedin\"&gt;&lt;/i&gt;&lt;/span&gt;&lt;/a&gt; &lt;a class=\"youtube\" href=\"#\"&gt;&lt;span&gt;&lt;i class=\"fa fa-youtube-play\"&gt;&lt;/i&gt;&lt;/span&gt;&lt;/a&gt; &lt;a class=\"dribbble\" href=\"#\"&gt;&lt;span&gt;&lt;i class=\"fa fa-dribbble\"&gt;&lt;/i&gt;&lt;/span&gt;&lt;/a&gt; &lt;a class=\"flickr\" href=\"#\"&gt;&lt;span&gt;&lt;i class=\"fa fa-flickr\"&gt;&lt;/i&gt;&lt;/span&gt;&lt;/a&gt; &lt;a class=\"pinterest\" href=\"#\"&gt;&lt;span&gt;&lt;i class=\"fa fa-pinterest-p\"&gt;&lt;/i&gt;&lt;/span&gt;&lt;/a&gt; &lt;a class=\"vimeo\" href=\"#\"&gt;&lt;span&gt;&lt;i class=\"fa fa-vimeo\"&gt;&lt;/i&gt;&lt;/span&gt;&lt;/a&gt; &lt;a class=\"rss\" href=\"#\"&gt;&lt;span&gt;&lt;i class=\"fa fa-rss\"&gt;&lt;/i&gt;&lt;/span&gt;&lt;/a&gt; &lt;a class=\"deviantart\" href=\"#\"&gt;&lt;span&gt;&lt;i class=\"fa fa-deviantart\"&gt;&lt;/i&gt;&lt;/span&gt;&lt;/a&gt; &lt;a class=\"email\" href=\"mailto:youremail@gmail.com\"&gt;&lt;span&gt;&lt;i class=\"fa fa-envelope-o\"&gt;&lt;/i&gt;&lt;/span&gt;&lt;/a&gt; &lt;/div&gt;"</value>
  12057. </property>
  12058. <property property_name="FooterColumn2" group_name="brivium_footer" title="Footer Column 2" description="" property_type="value" value_type="string" depends_on="" value_group="" display_order="0" addon_id="">
  12059. <value>"&lt;div class=\"footer-title\"&gt; &lt;h3&gt;Related link&lt;/h3&gt; &lt;/div&gt; &lt;div class=\"content-inner\"&gt; &lt;ul&gt; &lt;li&gt;&lt;a href=\"#\"&gt;Related link 01&lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;a href=\"#\"&gt;Related link 02&lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;a href=\"#\"&gt;Related link 03&lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;a href=\"#\"&gt;Related link 04&lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;a href=\"#\"&gt;Related link 05&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt; &lt;/div&gt;"</value>
  12060. </property>
  12061. <property property_name="FooterColumn3" group_name="brivium_footer" title="Footer Column 3" description="" property_type="value" value_type="string" depends_on="" value_group="" display_order="0" addon_id="">
  12062. <value>"&lt;div class=\"footer-title\"&gt; &lt;h3&gt;Related link&lt;/h3&gt; &lt;/div&gt; &lt;div class=\"content-inner\"&gt; &lt;ul&gt; &lt;li&gt;&lt;a href=\"#\"&gt;Related link 01&lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;a href=\"#\"&gt;Related link 02&lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;a href=\"#\"&gt;Related link 03&lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;a href=\"#\"&gt;Related link 04&lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;a href=\"#\"&gt;Related link 05&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt; &lt;/div&gt;"</value>
  12063. </property>
  12064. <property property_name="FooterColumn4" group_name="brivium_footer" title="Footer Column 4" description="" property_type="value" value_type="string" depends_on="" value_group="" display_order="0" addon_id="">
  12065. <value>"&lt;div class=\"footer-title\"&gt; &lt;h3&gt;Contact us&lt;/h3&gt; &lt;/div&gt; &lt;div class=\"content-inner contact-info\"&gt; &lt;div class=\"item address\"&gt;15 Str., 4844, Ipsum, State, UK&lt;/div&gt; &lt;div class=\"item phone\"&gt;+30-2106019311&lt;/div&gt; &lt;div class=\"item email\"&gt;&lt;a href=\"mailto:solium@gmail.com\"&gt;solium@gmail.com&lt;/a&gt;&lt;/div&gt; &lt;div class=\"item public\"&gt;&lt;a href=\"http://www.argon.com\"&gt;argon.com&lt;/a&gt;&lt;/div&gt; &lt;/div&gt;"</value>
  12066. </property>
  12067. <property property_name="MiniAvatar" group_name="BriviumSettings" title="Mini Avatar" description="Show / Hide mini avatar in thread list." property_type="value" value_type="boolean" depends_on="1" value_group="" display_order="500" addon_id="">
  12068. <value>1</value>
  12069. </property>
  12070. <property property_name="TooltipCategories" group_name="BriviumSettings" title="Tooltip Categories" description="Show categories description is tooltip." property_type="value" value_type="boolean" depends_on="1" value_group="" display_order="510" addon_id="">
  12071. <value>1</value>
  12072. </property>
  12073. <property property_name="bbCodeBlock" group_name="bbCode" title="BB code blocks" description="All BB code blocks within messages make use of these styling rules" property_type="css" value_type="" depends_on="" value_group="" display_order="20000" css_components="text,background,border,border_radius,extra" addon_id="XF">
  12074. <value>{
  12075. "background-color": "#f5f5f5",
  12076. "extra": "border-radius: 2px;\nborder: 1px solid @xf-borderColor;\nborder-radius: 15px 15px 0 0;"
  12077. }</value>
  12078. </property>
  12079. <property property_name="bbCodeBlockTitle" group_name="bbCode" title="BB code blocks - title" description="Styles the title section of BB code blocks within messages" property_type="css" value_type="" depends_on="" value_group="" display_order="20100" css_components="text,background,border,extra" addon_id="XF">
  12080. <value>{
  12081. "font-size": "@xf-fontSizeSmall",
  12082. "color": "#ffffff",
  12083. "background-color": "@xf-paletteColor3",
  12084. "extra": "text-transform: uppercase;\npadding: 10px;\nborder-radius: 15px 15px 0 0;"
  12085. }</value>
  12086. </property>
  12087. <property property_name="blockFilterBar" group_name="block" title="Block filter bar" description="When the content of a block can be filtered, the controls to do so are styled here" property_type="css" value_type="" depends_on="" value_group="" display_order="20800" css_components="text,background,border,extra" addon_id="XF">
  12088. <value>{
  12089. "font-size": "@xf-fontSizeSmall",
  12090. "color": "#fff",
  12091. "background-color": "@xf-paletteColor3",
  12092. "extra": "padding: 10px;"
  12093. }</value>
  12094. </property>
  12095. <property property_name="blockFooter" group_name="block" title="Block footer" description="When information needs to be conveyed in a footer element for a block, its style is controlled here" property_type="css" value_type="" depends_on="" value_group="" display_order="21200" css_components="text,background,border,extra" addon_id="XF">
  12096. <value>{
  12097. "font-size": "@xf-fontSizeSmaller",
  12098. "color": "@xf-linkColor",
  12099. "background-color": "#ffffff",
  12100. "border-top-width": "@xf-borderSize",
  12101. "border-top-color": "@xf-borderColorLight"
  12102. }</value>
  12103. </property>
  12104. <property property_name="blockHeader" group_name="block" title="Block header" description="Blocks often have title bars at their tops, which are styled here" property_type="css" value_type="" depends_on="" value_group="" display_order="20100" css_components="text,background,border,extra" addon_id="XF">
  12105. <value>{
  12106. "font-size": "14px",
  12107. "color": "#ffffff",
  12108. "background-color": "@xf-paletteColor3",
  12109. "extra": "padding: 10px;\nborder-radius: 15px 15px 0 0 !important;"
  12110. }</value>
  12111. </property>
  12112. <property property_name="blockMinorHeader" group_name="block" title="Block minor header" description="Sub-headings in blocks use these settings" property_type="css" value_type="" depends_on="" value_group="" display_order="20400" css_components="text,background,border,extra" addon_id="XF">
  12113. <value>{
  12114. "font-size": "14px",
  12115. "color": "#ffffff",
  12116. "background-color": "@xf-paletteColor3",
  12117. "extra": "padding: 10px;\nborder-radius: 15px 15px 0 0 !important;"
  12118. }</value>
  12119. </property>
  12120. <property property_name="blockTabHeader" group_name="block" title="Block tab header" description="Occasionally, blocks will have multi-part, tab headers, styled with these settings" property_type="css" value_type="" depends_on="" value_group="" display_order="20200" css_components="text,background,border,extra" addon_id="XF">
  12121. <value>{
  12122. "font-size": "@xf-fontSizeNormal",
  12123. "color": "#ffffff",
  12124. "background-color": "#1e1616",
  12125. "border-bottom-width": "@xf-borderSize",
  12126. "border-bottom-color": "@xf-borderColor"
  12127. }</value>
  12128. </property>
  12129. <property property_name="blockTabHeaderSelected" group_name="block" title="Block tab header - selected tab" description="The selected tab in multi-part headers takes additional styling from here" property_type="css" value_type="" depends_on="" value_group="" display_order="20300" css_components="text,background,border_color_simple,extra" addon_id="XF">
  12130. <value>{
  12131. "color": "@xf-paletteColor3"
  12132. }</value>
  12133. </property>
  12134. <property property_name="blockTextHeader" group_name="block" title="Block text header" description="Text headers are used for subtle identification of content areas, without changing the background style or color" property_type="css" value_type="" depends_on="" value_group="" display_order="20700" css_components="text,background,border,extra" addon_id="XF">
  12135. <value>{
  12136. "font-size": "@xf-fontSizeLarge",
  12137. "color": "@xf-paletteColor3",
  12138. "background-color": "#fff",
  12139. "extra": "padding: 10px;"
  12140. }</value>
  12141. </property>
  12142. <property property_name="borderColor" group_name="color" title="Border color" description="Structural borders around blocks of content generally use this color" property_type="value" value_type="color" depends_on="" value_group="borderBasic" display_order="4000" addon_id="XF">
  12143. <value>"#f5f5f5"</value>
  12144. </property>
  12145. <property property_name="buttonBase" group_name="button" title="Button base" description="Defines the styling for the basic elements that are common to all text-based buttons" property_type="css" value_type="" depends_on="" value_group="" display_order="20000" css_components="text,border_radius,padding,extra" addon_id="XF">
  12146. <value>{
  12147. "font-size": "@xf-fontSizeSmall",
  12148. "border-radius": "2px",
  12149. "padding-top": "6px",
  12150. "padding-right": "10px",
  12151. "padding-bottom": "6px",
  12152. "padding-left": "10px",
  12153. "extra": "text-align: center;"
  12154. }</value>
  12155. </property>
  12156. <property property_name="buttonCta" group_name="button" title="Button - call to action" description="Call to action buttons sit alone and invite the user to do something, like post a new thread" property_type="css" value_type="" depends_on="" value_group="" display_order="20300" css_components="text,background,extra" addon_id="XF">
  12157. <value>{
  12158. "color": "#fff",
  12159. "background-color": "@xf-paletteColor3"
  12160. }</value>
  12161. </property>
  12162. <property property_name="buttonDefault" group_name="button" title="Button - default" description="Most buttons use this styling, except for primary form submit buttons" property_type="css" value_type="" depends_on="" value_group="" display_order="20100" css_components="text,background,extra" addon_id="XF">
  12163. <value>{
  12164. "color": "#fff",
  12165. "background-color": "#77d383"
  12166. }</value>
  12167. </property>
  12168. <property property_name="buttonPrimary" group_name="button" title="Button - primary" description="These rules are used mostly for the main submit button for forms" property_type="css" value_type="" depends_on="" value_group="" display_order="20200" css_components="text,background,extra" addon_id="XF">
  12169. <value>{
  12170. "color": "#fff",
  12171. "background-color": "@xf-paletteColor3",
  12172. "extra": "min-width: 80px;"
  12173. }</value>
  12174. </property>
  12175. <property property_name="contentAccentBase" group_name="content" title="Accented content area base" description="When attention needs to be directed to content, this background may be employed" property_type="css" value_type="" depends_on="" value_group="" display_order="20300" css_components="text,background,extra" addon_id="XF">
  12176. <value>{
  12177. "color": "@xf-contentBg",
  12178. "background-color": "#2b2320"
  12179. }</value>
  12180. </property>
  12181. <property property_name="contentHighlightBase" group_name="content" title="Highlighted content area base" description="If an area of content is selected, for example a row in a table, its normal background will be substituted with this" property_type="css" value_type="" depends_on="" value_group="" display_order="20200" css_components="text,background,extra" addon_id="XF">
  12182. <value>{
  12183. "color": "@xf-textColor",
  12184. "background-color": "@xf-contentBg"
  12185. }</value>
  12186. </property>
  12187. <property property_name="fontFamilyBody" group_name="fonts" title="Body Text Font" description="This font is used for the text of messages etc." property_type="value" value_type="string" depends_on="" value_group="font" display_order="200" addon_id="XF">
  12188. <value>"'Open Sans', sans-serif"</value>
  12189. </property>
  12190. <property property_name="fontFamilyUi" group_name="fonts" title="User Interface Font" description="The font list for your main text" property_type="value" value_type="string" depends_on="" value_group="font" display_order="100" addon_id="XF">
  12191. <value>"'Open Sans', sans-serif"</value>
  12192. </property>
  12193. <property property_name="input" group_name="input" title="Form input" description="Controls the style of most text-input boxes" property_type="css" value_type="" depends_on="" value_group="" display_order="20000" css_components="text,background,border,border_radius,padding,extra" addon_id="XF">
  12194. <value>{
  12195. "font-size": "12px",
  12196. "color": "#999999",
  12197. "background-color": "#f5f5f5",
  12198. "border-width": "1px",
  12199. "border-color": "@xf-borderColor",
  12200. "border-radius": "2px",
  12201. "padding": "@xf-paddingMedium"
  12202. }</value>
  12203. </property>
  12204. <property property_name="inputFocus" group_name="input" title="Form input - focused" description="These rules are applied to text boxes when they are selected for input" property_type="css" value_type="" depends_on="" value_group="" display_order="20100" css_components="text,background,extra" addon_id="XF">
  12205. <value>[]</value>
  12206. </property>
  12207. <property property_name="linkColor" group_name="color" title="Link color" description="Basic hyperlinks on standard background colors will use this style" property_type="value" value_type="color" depends_on="" value_group="link" display_order="1000" addon_id="XF">
  12208. <value>"#666666"</value>
  12209. </property>
  12210. <property property_name="linkHoverColor" group_name="color" title="Link hover color" description="Basic hyperlinks will turn this color when hovered" property_type="value" value_type="color" depends_on="" value_group="link" display_order="1100" addon_id="XF">
  12211. <value>"@xf-paletteColor3"</value>
  12212. </property>
  12213. <property property_name="menu" group_name="menu" title="Menu" description="Controls the main block of all popup menus" property_type="css" value_type="" depends_on="" value_group="" display_order="20000" css_components="text,background,border_width_simple,border_color_simple,extra" addon_id="XF">
  12214. <value>{
  12215. "font-size": "@xf-fontSizeSmall",
  12216. "color": "@xf-textColor",
  12217. "background-color": "#ffffff",
  12218. "extra": "// border: @xf-borderSize solid @xf-borderColor;"
  12219. }</value>
  12220. </property>
  12221. <property property_name="menuFeatureBorderColor" group_name="menu" title="Menu feature border color" description="Popup menus have a thick feature border on their upper edge, the styling of which is controlled here" property_type="value" value_type="color" depends_on="" value_group="" display_order="100" addon_id="XF">
  12222. <value>"@xf-contentBg"</value>
  12223. </property>
  12224. <property property_name="menuFooter" group_name="menu" title="Menu footer" description="When a popup menu has a bottom, footer element, it will use these settings" property_type="css" value_type="" depends_on="" value_group="" display_order="20600" css_components="text,background,border,extra" addon_id="XF">
  12225. <value>{
  12226. "font-size": "@xf-fontSizeSmaller",
  12227. "color": "@xf-textColorDimmed",
  12228. "background-color": "@xf-contentAltBg",
  12229. "border-top-width": "@xf-borderSize",
  12230. "border-top-color": "@xf-borderColorLight",
  12231. "extra": "background: linear-gradient(180deg, @xf-contentAltBg, mix(@xf-contentAltBg, @xf-contentBg, 50%));"
  12232. }</value>
  12233. </property>
  12234. <property property_name="menuHeader" group_name="menu" title="Menu header" description="Most menus identify themselves with a header just underneath their top border" property_type="css" value_type="" depends_on="" value_group="" display_order="20100" css_components="text,background,border,extra" addon_id="XF">
  12235. <value>{
  12236. "font-size": "14px",
  12237. "color": "@xf-linkColor",
  12238. "background-color": "#ffffff",
  12239. "border-bottom-width": "@xf-borderSize",
  12240. "border-bottom-color": "@xf-borderColorLight",
  12241. "extra": "padding: 8px 15px;"
  12242. }</value>
  12243. </property>
  12244. <property property_name="messagePadding" group_name="message" title="Message padding" description="When using the full-size message block, this value defines the size of the padding around the message text" property_type="value" value_type="unit" depends_on="" value_group="padding" display_order="200" addon_id="XF">
  12245. <value>"15px"</value>
  12246. </property>
  12247. <property property_name="messageUserBlock" group_name="message" title="Message user info block" description="Apart from its width, the (left) message user info column is styled here" property_type="css" value_type="" depends_on="" value_group="" display_order="20000" css_components="text,background,border_width_simple,border_color_simple,extra" addon_id="XF">
  12248. <value>{
  12249. "background-color": "transparent",
  12250. "border-width": "@xf-borderSize",
  12251. "border-color": "@xf-borderColor"
  12252. }</value>
  12253. </property>
  12254. <property property_name="messageUserBlockWidth" group_name="message" title="Message user info block width" description="Controls the width of the (left) user info column on the full size message block" property_type="value" value_type="unit" depends_on="" value_group="user" display_order="500" addon_id="XF">
  12255. <value>"95px"</value>
  12256. </property>
  12257. <property property_name="nodeIconReadColor" group_name="nodeList" title="Read node icon color" description="When the content within a node has been read, its icon will revert to a less attention-grabbing color, defined here" property_type="value" value_type="color" depends_on="" value_group="" display_order="200" addon_id="XF">
  12258. <value>"@xf-paletteColor3"</value>
  12259. </property>
  12260. <property property_name="nodeIconUnreadColor" group_name="nodeList" title="Unread node icon color" description="Node icons give an at-a-glance indication of whether or not the content housed within the node has been read. The unread icon color should stand out from its background for quick identification" property_type="value" value_type="color" depends_on="" value_group="" display_order="100" addon_id="XF">
  12261. <value>"#fb6b5b"</value>
  12262. </property>
  12263. <property property_name="nodeListSubDisplay" group_name="nodeList" title="Sub-forums display style" description="Choose the style in which sub-forums will be displayed within a particular node element, according to the amount of space you want them to occupy" property_type="value" value_type="radio" depends_on="" value_group="" display_order="300" addon_id="XF">
  12264. <value_parameters>menu={{ phrase('popup_menu') }}
  12265. flat={{ phrase('listed_below_node') }}
  12266. none={{ phrase('none') }}</value_parameters>
  12267. <value>"flat"</value>
  12268. </property>
  12269. <property property_name="overlayHeader" group_name="overlay" title="Overlay header" description="Overlays use a header element to identify their contents, styled here" property_type="css" value_type="" depends_on="" value_group="" display_order="20000" css_components="text,background,border,padding,extra" addon_id="XF">
  12270. <value>{
  12271. "font-size": "14px",
  12272. "color": "#fff",
  12273. "background-color": "@xf-paletteColor3",
  12274. "padding-top": "@xf-paddingMedium",
  12275. "padding-right": "@xf-paddingLarge",
  12276. "padding-bottom": "@xf-paddingMedium",
  12277. "padding-left": "@xf-paddingLarge"
  12278. }</value>
  12279. </property>
  12280. <property property_name="overlayMaskColor" group_name="overlay" title="Overlay mask color" description="When an overlay is shown, the page behind is masked by the color defined here. Use RGBA transparency to allow the page to show through" property_type="value" value_type="color" depends_on="" value_group="" display_order="200" addon_id="XF">
  12281. <value>"rgba(0, 0, 0, .3)"</value>
  12282. </property>
  12283. <property property_name="overlayTopMargin" group_name="overlay" title="Overlay top margin" description="This defines the distance between the top of the viewport and the top of the overlay" property_type="value" value_type="unit" depends_on="" value_group="" display_order="100" addon_id="XF">
  12284. <value>"15vh"</value>
  12285. </property>
  12286. <property property_name="pageBackground" group_name="page" title="Page background" description="The page background, behind all block elements, uses the styling rules defined here" property_type="css" value_type="" depends_on="" value_group="" display_order="20200" css_components="background,extra" addon_id="XF">
  12287. <value>{
  12288. "background-color": "#eeeeee"
  12289. }</value>
  12290. </property>
  12291. <property property_name="paletteAccent1" group_name="palette" title="Accent 1" description="" property_type="value" value_type="color" depends_on="" value_group="accent" display_order="2000" addon_id="XF">
  12292. <value_parameters>hidePalette=true</value_parameters>
  12293. <value>"#e7f8fd"</value>
  12294. </property>
  12295. <property property_name="paletteAccent2" group_name="palette" title="Accent 2" description="" property_type="value" value_type="color" depends_on="" value_group="accent" display_order="2100" addon_id="XF">
  12296. <value_parameters>hidePalette=true</value_parameters>
  12297. <value>"#64d1f4"</value>
  12298. </property>
  12299. <property property_name="paletteAccent3" group_name="palette" title="Accent 3" description="" property_type="value" value_type="color" depends_on="" value_group="accent" display_order="2200" addon_id="XF">
  12300. <value_parameters>hidePalette=true</value_parameters>
  12301. <value>"#0d92bf"</value>
  12302. </property>
  12303. <property property_name="paletteColor1" group_name="palette" title="Color 1" description="" property_type="value" value_type="color" depends_on="" value_group="primary" display_order="1000" addon_id="XF">
  12304. <value_parameters>hidePalette=true</value_parameters>
  12305. <value>"#f2edf8"</value>
  12306. </property>
  12307. <property property_name="paletteColor2" group_name="palette" title="Color 2" description="" property_type="value" value_type="color" depends_on="" value_group="primary" display_order="1100" addon_id="XF">
  12308. <value_parameters>hidePalette=true</value_parameters>
  12309. <value>"#c0a3db"</value>
  12310. </property>
  12311. <property property_name="paletteColor3" group_name="palette" title="Color 3" description="" property_type="value" value_type="color" depends_on="" value_group="primary" display_order="1200" addon_id="XF">
  12312. <value_parameters>hidePalette=true</value_parameters>
  12313. <value>"#a378ca"</value>
  12314. </property>
  12315. <property property_name="paletteColor4" group_name="palette" title="Color 4" description="" property_type="value" value_type="color" depends_on="" value_group="primary" display_order="1300" addon_id="XF">
  12316. <value_parameters>hidePalette=true</value_parameters>
  12317. <value>"#8147b8"</value>
  12318. </property>
  12319. <property property_name="paletteColor5" group_name="palette" title="Color 5" description="" property_type="value" value_type="color" depends_on="" value_group="primary" display_order="1400" addon_id="XF">
  12320. <value_parameters>hidePalette=true</value_parameters>
  12321. <value>"#5b3281"</value>
  12322. </property>
  12323. <property property_name="publicFooter" group_name="footer" title="Footer" description="The footer is the primary element that sits below the main content on all public pages" property_type="css" value_type="" depends_on="" value_group="" display_order="20000" css_components="text,background,border,extra" addon_id="XF">
  12324. <value>{
  12325. "font-size": "@xf-fontSizeSmall",
  12326. "color": "#796b87",
  12327. "background-image": "styles/brivium/argon/extra/bg-footer.png",
  12328. "extra": "background-repeat: no-repeat;\nbackground-size: cover;"
  12329. }</value>
  12330. </property>
  12331. <property property_name="publicFooterLink" group_name="footer" title="Footer links" description="Controls styling for individual links within the footer" property_type="css" value_type="" depends_on="" value_group="" display_order="20100" css_components="text,extra" addon_id="XF">
  12332. <value>{
  12333. "color": "#796b87"
  12334. }</value>
  12335. </property>
  12336. <property property_name="publicHeader" group_name="headerNav" title="Header/logo row" description="The header row contains your logo and sits at the top of every public page" property_type="css" value_type="" depends_on="" value_group="" display_order="20000" css_components="text,background,extra" addon_id="XF">
  12337. <value>{
  12338. "color": "#ffffff",
  12339. "background-color": "#a87ecd"
  12340. }</value>
  12341. </property>
  12342. <property property_name="publicLogoUrl" group_name="basic" title="Logo URL" description="The web path from your site's XenForo installation directory to your logo image." property_type="value" value_type="string" depends_on="" value_group="logo" display_order="100" addon_id="XF">
  12343. <value>"styles/brivium/argon/extra/logo.png"</value>
  12344. </property>
  12345. <property property_name="publicNav" group_name="headerNav" title="Navigation row" description="The navigation row sits below the header and contains the primary site navigation tabs and menus" property_type="css" value_type="" depends_on="" value_group="" display_order="20100" css_components="text,background,extra" addon_id="XF">
  12346. <value>{
  12347. "color": "#fff",
  12348. "background-color": "#a87ecd"
  12349. }</value>
  12350. </property>
  12351. <property property_name="publicNavSelected" group_name="headerNav" title="Navigation row - selected tab" description="Additional styling to apply to navigation tabs when they are selected" property_type="css" value_type="" depends_on="" value_group="" display_order="20300" css_components="text,background,border,border_radius,extra" addon_id="XF">
  12352. <value>{
  12353. "font-size": "14px",
  12354. "font-weight": "@xf-fontWeightNormal",
  12355. "background-color": "@xf-paletteColor3",
  12356. "border-top-left-radius": "15px",
  12357. "border-top-right-radius": "15px"
  12358. }</value>
  12359. </property>
  12360. <property property_name="publicNavTab" group_name="headerNav" title="Navigation row - tab" description="Controls the styling of individual tab elements within the navigation row" property_type="css" value_type="" depends_on="" value_group="" display_order="20200" css_components="text,background,extra" addon_id="XF">
  12361. <value>{
  12362. "font-size": "14px",
  12363. "text-decoration": "none"
  12364. }</value>
  12365. </property>
  12366. <property property_name="publicNavTabHover" group_name="headerNav" title="Navigation row - hovered tab" description="Additional styling to apply to navigation tabs when the pointer hovers over them" property_type="css" value_type="" depends_on="" value_group="" display_order="20400" css_components="text,background,extra" addon_id="XF">
  12367. <value>{
  12368. "font-size": "14px",
  12369. "text-decoration": "none",
  12370. "background-color": "@xf-paletteColor3",
  12371. "extra": "border-radius: 15px 15px 0 0;"
  12372. }</value>
  12373. </property>
  12374. <property property_name="publicNavTabMenuOpen" group_name="headerNav" title="Navigation row - menu open" description="Styling applied when the popup menu for the current tab is visible" property_type="css" value_type="" depends_on="" value_group="" display_order="20450" css_components="text,background,extra" addon_id="XF">
  12375. <value>{
  12376. "text-decoration": "none",
  12377. "background-color": "@xf-paletteColor3",
  12378. "extra": "border-radius: 15px 15px 0 0;"
  12379. }</value>
  12380. </property>
  12381. <property property_name="publicStaffBar" group_name="headerNav" title="Staff tools bar" description="Visible only to staff, the staff tools bar sits above the header and contains items such as reported content, the moderation queue..." property_type="css" value_type="" depends_on="" value_group="" display_order="20700" css_components="text,background,border,extra" addon_id="XF">
  12382. <value>{
  12383. "font-size": "@xf-fontSizeSmall",
  12384. "color": "#ffffff",
  12385. "background-color": "#422f53"
  12386. }</value>
  12387. </property>
  12388. <property property_name="publicSubNav" group_name="headerNav" title="Sub-navigation row" description="Below the main navigation row, this row shows content associated with the selected main navigation tab" property_type="css" value_type="" depends_on="" value_group="" display_order="20500" css_components="text,background,border,extra" addon_id="XF">
  12389. <value>{
  12390. "font-size": "@xf-fontSizeSmall",
  12391. "color": "#ffffff",
  12392. "background-color": "@xf-paletteColor3"
  12393. }</value>
  12394. </property>
  12395. <property property_name="publicSubNavElHover" group_name="headerNav" title="Sub-navigation row - hovered element" description="Additional styling applied to sub-navigation tabs when the pointer hovers over them" property_type="css" value_type="" depends_on="" value_group="" display_order="20600" css_components="text,extra" addon_id="XF">
  12396. <value>{
  12397. "color": "#ffffff"
  12398. }</value>
  12399. </property>
  12400. <property property_name="publicSubNavElMenuOpen" group_name="headerNav" title="Sub-navigation row - menu-open element" description="Styles sub-navigation elements whose popup menu is currently open" property_type="css" value_type="" depends_on="" value_group="" display_order="20650" css_components="text,background,extra" addon_id="XF">
  12401. <value>{
  12402. "color": "#ffffff",
  12403. "text-decoration": "none"
  12404. }</value>
  12405. </property>
  12406. <property property_name="sidebarSpacer" group_name="page" title="Sidebar and side navigation spacer" description="Distance between the main content and the sidebar" property_type="value" value_type="unit" depends_on="" value_group="sidebar" display_order="1000" addon_id="XF">
  12407. <value>"20px"</value>
  12408. </property>
  12409. <property property_name="sidebarWidth" group_name="page" title="Sidebar and side navigation width" description="Width of any elements that make up the sidebar" property_type="value" value_type="unit" depends_on="" value_group="sidebar" display_order="1100" addon_id="XF">
  12410. <value>"245px"</value>
  12411. </property>
  12412. <property property_name="standaloneTab" group_name="tab" title="Standalone tabs" description="Tabs that are not part of block headers are styled here" property_type="css" value_type="" depends_on="" value_group="" display_order="20000" css_components="text,background,extra" addon_id="XF">
  12413. <value>{
  12414. "font-size": "@xf-fontSizeNormal",
  12415. "color": "#fff",
  12416. "font-weight": "@xf-fontWeightNormal",
  12417. "background-color": "#4b4276"
  12418. }</value>
  12419. </property>
  12420. <property property_name="standaloneTabSelected" group_name="tab" title="Standalone tabs - selected tab" description="The selected tab in groups that are not part of block headers" property_type="css" value_type="" depends_on="" value_group="" display_order="20100" css_components="text,background,border_color_simple,extra" addon_id="XF">
  12421. <value>{
  12422. "color": "@xf-textColorFeature",
  12423. "font-weight": "@xf-fontWeightNormal"
  12424. }</value>
  12425. </property>
  12426. <property property_name="textColor" group_name="color" title="Text color" description="Unless otherwise specified, text will be this color" property_type="value" value_type="color" depends_on="" value_group="textBasic" display_order="100" addon_id="XF">
  12427. <value>"#999999"</value>
  12428. </property>
  12429. <property property_name="tooltip" group_name="tooltip" title="Tooltip" description="Certain elements have special floating tooltips, which are controlled here" property_type="css" value_type="" depends_on="" value_group="" display_order="20000" css_components="text,background,border_radius,padding,extra" addon_id="XF">
  12430. <value>{
  12431. "font-size": "@xf-fontSizeSmaller",
  12432. "color": "#fff",
  12433. "background-color": "@xf-paletteColor3",
  12434. "border-radius": "@xf-borderRadiusMedium",
  12435. "padding-top": "5px",
  12436. "padding-right": "5px",
  12437. "padding-bottom": "5px",
  12438. "padding-left": "5px"
  12439. }</value>
  12440. </property>
  12441. </properties>
  12442. </style>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement