Files
XenforoMasterTemplate/templates/public/topbar_actions.html

177 lines
8.5 KiB
HTML
Raw Normal View History

2026-07-01 13:37:28 +02:00
²<xf:set var="$topbarAdminSeparator" value="false" />
2026-05-24 11:49:38 +02:00
<xf:set var="$topbarModSeparator" value="false" />
<div class="$topbar-actions">
<xf:if is="$xf.visitor.is_admin">
<xf:set var="$topbarAdminSeparator" value="true" />
2026-06-23 19:24:37 +02:00
<a href="{{ base_url('admin.php') }}" class="$btn topbar-admin-btn">
2026-05-24 11:49:38 +02:00
<i data-lucide="landmark" size="18"></i>
</a>
2026-06-23 19:24:37 +02:00
<a href="{{ $xf.options.homePageUrl }}/manage" class="$btn topbar-admin-btn">
2026-05-24 11:49:38 +02:00
<i data-lucide="shield-cog" size="18"></i>
</a>
</xf:if>
<xf:if is="$topbarAdminSeparator == true">
<div class="$vertical-separator"></div>
</xf:if>
<xf:if is="$xf.visitor.is_moderator">
<xf:set var="$topbarModSeparator" value="true" />
2026-06-23 19:24:37 +02:00
<a href="{{ $xf.options.homePageUrl }}/modcp" class="$btn $topbar-mod-btn">
2026-05-24 11:49:38 +02:00
<i data-lucide="siren" size="18"></i>
</a>
2026-06-23 19:24:37 +02:00
<a href="{{ link('approval-queue') }}" class="$btn $topbar-mod-btn">
2026-05-24 11:49:38 +02:00
<i data-lucide="message-circle-check" size="18"></i>
</a>
2026-06-23 19:24:37 +02:00
<a href="{{ link('reports') }}" class="$btn $topbar-mod-btn badgeContainer badgeContainer--visible {{ ($xf.session.reportCounts.total && ($xf.session.reportCounts.lastBuilt > $xf.session.reportLastRead) OR $xf.session.reportCounts.assigned) ? ' badgeContainer--highlighted' : '' }}" data-badge="{{ $xf.session.reportCounts.assigned ? $xf.session.reportCounts.assigned|number . ' / ' . $xf.session.reportCounts.total|number : $xf.session.reportCounts.total|number }}">
2026-05-24 11:49:38 +02:00
<i data-lucide="triangle-alert" size="18"></i>
</a>
</xf:if>
<xf:if is="$topbarModSeparator == true">
<div class="$vertical-separator"></div>
</xf:if>
2026-06-23 19:24:37 +02:00
<div class="$topbar-more-container" style="position: relative;">
<xf:if is="$xf.visitor.is_moderator || $xf.visitor.is_admin">
<button id="rhpzMoreBtn" class="$btn topbar-btn-more" title="More actions">
<i data-lucide="more-vertical" size="18"></i>
</button>
<div id="rhpzMoreMenu" class="$topbar-more-menu" style="display: none;">
<xf:if is="$xf.visitor.is_admin">
<a href="{{ base_url('admin.php') }}" class="$topbar-more-item" title="Admin">
<i data-lucide="landmark" size="16"></i>
<span>Admin</span>
</a>
<a href="{{ $xf.options.homePageUrl }}/manage" class="$topbar-more-item" title="Manage">
<i data-lucide="shield-cog" size="16"></i>
<span>Manage</span>
</a>
</xf:if>
<xf:if is="$xf.visitor.is_moderator">
<a href="{{ $xf.options.homePageUrl }}/modcp" class="$topbar-more-item" title="Moderation">
<i data-lucide="siren" size="16"></i>
<span>Mod CP</span>
</a>
<a href="{{ link('approval-queue') }}" class="$topbar-more-item" title="Approvals">
<i data-lucide="message-circle-check" size="16"></i>
<span>Approval Queue</span>
</a>
<a href="{{ link('reports') }}" class="$topbar-more-item" title="Reports">
<i data-lucide="triangle-alert" size="16"></i>
<span>Reports</span>
</a>
</xf:if>
</div>
</xf:if>
</div>
<script>
(function () {
var btn = document.getElementById('rhpzMoreBtn');
var menu = document.getElementById('rhpzMoreMenu');
if (!btn || !menu) return;
btn.addEventListener('click', function (e) {
e.stopPropagation();
menu.style.display = (menu.style.display === 'none') ? 'block' : 'none';
});
document.addEventListener('click', function (e) {
if (menu.style.display === 'block' && !menu.contains(e.target) && e.target !== btn) {
menu.style.display = 'none';
}
});
})();
</script>
2026-06-16 16:21:43 +02:00
<xf:if is="$xf.visitor.canCreateEntry()">
2026-07-01 13:37:28 +02:00
<a href="{{ $xf.options.homePageUrl }}/submit" class="$btn" title="Submit">
2026-05-24 11:49:38 +02:00
<i data-lucide="hard-drive-upload" size="18"></i>
</a>
</xf:if>
<xf:if is="$xf.visitor.user_id">
<!-- Notifications -->
2026-07-01 13:37:28 +02:00
<a href="{{ link('account/alerts') }}" class="$btn js-badge--alerts badgeContainer{{ $xf.visitor.alerts_unviewed ? ' badgeContainer--highlighted' : '' }}" data-badge="{$xf.visitor.alerts_unviewed|number}" data-xf-click="menu" data-xf-key="{{ phrase('shortcut.alerts_menu')|for_attr }}" title="" aria-expanded="false" title="Notifications"
2026-05-24 11:49:38 +02:00
aria-haspopup="true">
<i data-lucide="bell" size="18"></i>
</a>
<div class="menu menu--structural menu--medium" data-menu="menu" aria-hidden="true"
data-href="{{ link('account/alerts-popup') }}"
data-nocache="true"
data-load-target=".js-alertsMenuBody">
<div class="menu-content">
<div class="$notifications-header">
<span class="$notifications-header-title">Notifications</span>
<div class="$notifications-header-actions">
<a href="{{ link('account/alerts/mark-read') }}" class="$btn js-alertsMarkRead" title="Mark all as read">
<i data-lucide="check-circle" size="14"></i>
</a>
<a href="{{ link('account/alerts') }}" class="$btn">
<i data-lucide="external-link" size="14"></i>
</a>
</div>
</div>
2026-07-01 13:56:38 +02:00
<div class="menu-scroller">
<div class="js-alertsMenuBody">
<div class="notifications-loading">
<i data-lucide="loader-2" class="$spin"></i>
</div>
2026-05-24 11:49:38 +02:00
</div>
</div>
</div>
</div>
2026-07-01 13:56:38 +02:00
<a class="$btn js-badge--conversations badgeContainer{{ $xf.visitor.conversations_unread ? ' badgeContainer--highlighted' : '' }}" data-badge="{$xf.visitor.conversations_unread|number}" data-xf-click="menu" data-xf-key="{{ phrase('shortcut.conversations_menu')|for_attr }}" data-menu-pos-ref="< .p-navgroup" aria-haspopup="true" aria-expanded="false" title="Messages">
2026-05-24 11:49:38 +02:00
<i data-lucide="mail" size="18"></i>
2026-05-25 09:56:23 +02:00
</a>
<div class="menu menu--structural menu--medium" data-menu="menu" aria-hidden="true"
data-href="{{ link('direct-messages/popup') }}"
data-nocache="true"
data-load-target=".js-convMenuBody">
<div class="menu-content">
<div class="$notifications-header">
<span class="$notifications-header-title">Direct Messages</span>
<div class="$notifications-header-actions">
<a href="{{ link('direct-messages/add') }}" class="$btn">
<i data-lucide="plus" size="14"></i>
</a>
<a href="{{ link('direct-messages') }}" class="$btn">
<i data-lucide="external-link" size="14"></i>
</a>
</div>
</div>
2026-07-01 13:56:38 +02:00
<div class="menu-scroller">
<div class="js-convMenuBody">
<div class="$notifications-loading">
<i data-lucide="loader-2" class="$spin"></i>
</div>
2026-05-25 09:56:23 +02:00
</div>
</div>
</div>
</div>
2026-05-24 11:49:38 +02:00
</xf:if>
2026-07-01 13:37:28 +02:00
<a class="$btn" title="Settings" data-xf-click="menu" data-menu-pos-ref="< .p-navgroup" title="{{ phrase('settings')|for_attr }}" aria-haspopup="true">
2026-05-24 11:49:38 +02:00
<i data-lucide="settings" size="18"></i>
2026-06-16 16:21:43 +02:00
</a>
<div class="menu menu--structural menu--medium" data-menu="menu" aria-hidden="true"
data-href="{{ link('misc/preferences-popup') }}"
data-nocache="true"
data-load-target=".js-convMenuBody"
data-xf-init="rhpz-dynamic-theme"
>
<div class="menu-content">
<div class="$settings-header">
<span>Settings</span>
</div>
<div class="js-convMenuBody">
<div class="$notifications-loading">
<i data-lucide="loader-2" class="$spin"></i>
</div>
</div>
</div>
</div>
2026-05-24 11:49:38 +02:00
</div>