124 lines
13 KiB
Plaintext
124 lines
13 KiB
Plaintext
<?
|
|
--[[
|
|
* Pi-hole: A black hole for Internet advertisements
|
|
* (c) 2017 Pi-hole, LLC (https://pi-hole.net)
|
|
* Network-wide ad blocking via your own hardware.
|
|
*
|
|
* This file is copyright under the latest version of the EUPL.
|
|
* Please see LICENSE file for your rights under this license.
|
|
]]--
|
|
mg.include('header.lp','r')
|
|
?>
|
|
<script src="<?=pihole.fileversion('vendor/select2/select2.min.js')?>"></script>
|
|
<script src="<?=pihole.fileversion('vendor/datatables/datatables.min.js')?>"></script>
|
|
<script src="<?=pihole.fileversion('vendor/datatables-select/datatables.select.min.js')?>"></script>
|
|
<script src="<?=pihole.fileversion('vendor/datatables-buttons/datatables.buttons.min.js')?>"></script>
|
|
<script src="<?=pihole.fileversion('vendor/chartjs/chart.umd.js')?>"></script>
|
|
<script src="<?=pihole.fileversion('vendor/chartjs-plugin-deferred/chartjs-plugin-deferred.min.js')?>"></script>
|
|
<script src="<?=pihole.fileversion('vendor/moment/moment.min.js')?>"></script>
|
|
<script src="<?=pihole.fileversion('vendor/chartjs-adapter-moment/chartjs-adapter-moment.js')?>"></script>
|
|
<script src="<?=pihole.fileversion('vendor/hammer/hammer.min.js')?>"></script> <!-- Needed for chartjs-plugin-zoom -->
|
|
<script src="<?=pihole.fileversion('vendor/chartjs-plugin-zoom/chartjs-plugin-zoom.min.js')?>"></script>
|
|
<script src="<?=pihole.fileversion('vendor/bstreeview/bstreeview.min.js')?>"></script>
|
|
<script src="<?=pihole.fileversion('scripts/js/logout.js')?>"></script>
|
|
</head>
|
|
<body class="<?=theme.name?> hold-transition sidebar-mini <? if pihole.boxedlayout() then ?>layout-boxed<? end ?> logged-in page-<?=pihole.format_path(mg.request_info.request_uri)?>" data-apiurl="<?=pihole.api_url()?>" data-webhome="<?=webhome?>">
|
|
<noscript>
|
|
<!-- JS Warning -->
|
|
<div>
|
|
<input type="checkbox" id="js-hide">
|
|
<div class="js-warn" id="js-warn-exit"><h1><?= i18n('header.javascript_disabled') ?></h1><p><?= i18n('header.javascript_required') ?></p>
|
|
<p><?= i18n('header.enable_javascript_info') ?></p><label for="js-hide"><?= i18n('shared.close') ?></label>
|
|
</div>
|
|
</div>
|
|
<!-- /JS Warning -->
|
|
</noscript>
|
|
|
|
<!-- Send token to JS -->
|
|
<div id="enableTimer" hidden></div>
|
|
<div class="wrapper">
|
|
<header class="main-header">
|
|
<!-- Logo -->
|
|
<a href="<?=webhome?>?lang=<?= lang ?>" class="logo">
|
|
<!-- mini logo for sidebar mini 50x50 pixels -->
|
|
<span class="logo-mini">P<strong>h</strong></span>
|
|
<!-- logo for regular state and mobile devices -->
|
|
<span class="logo-lg">Pi-<strong>hole</strong></span>
|
|
</a>
|
|
<!-- Header Navbar: style can be found in header.less -->
|
|
<nav class="navbar navbar-static-top">
|
|
<!-- Sidebar toggle button-->
|
|
<button class="sidebar-toggle-svg" data-toggle="push-menu" aria-label="<?= i18n('header.toggle_navigation') ?>">
|
|
<i aria-hidden="true" class="fa fa-angle-double-left"></i>
|
|
<span class="warning-count hidden" id="top-warning-count"></span>
|
|
</button>
|
|
<div class="navbar-custom-menu">
|
|
<ul class="nav navbar-nav">
|
|
<li<? if string.len(hostname) == 0 then ?> class="hidden"<? end ?>>
|
|
<p class="navbar-text">
|
|
<span class="hidden-xs"><?= i18n('header.hostname') ?></span>
|
|
<code><?=hostname?></code>
|
|
</p>
|
|
</li>
|
|
<li class="dropdown user user-menu">
|
|
<a href="#" class="dropdown-toggle" data-toggle="dropdown" aria-expanded="false">
|
|
<i class="fa fa-bars"></i>
|
|
</a>
|
|
<ul class="dropdown-menu">
|
|
<!-- User image -->
|
|
<li class="user-header">
|
|
<img class="logo-img" src="<?=webhome?>img/logo.svg" alt="Pi-hole Logo" width="50" height="50">
|
|
<p>
|
|
<?= i18n('header.user_header_description') ?>
|
|
</p>
|
|
</li>
|
|
<!-- Menu Body -->
|
|
<li class="user-body" id="advanced-info" style="display:none;"></li>
|
|
<!-- Menu Footer -->
|
|
<li class="user-footer">
|
|
<a class="btn-link" href="https://pi-hole.net/" rel="noopener noreferrer" target="_blank">
|
|
<? mg.include('../../img/logo-bw.svg', 'r') ?>
|
|
<?= i18n('header.pi_hole_website') ?>
|
|
</a>
|
|
<a class="btn-link" href="https://docs.pi-hole.net/" rel="noopener noreferrer" target="_blank"><i class="fa-fw menu-icon fa-solid fa-circle-question"></i> <?= i18n('header.documentation') ?></a>
|
|
<a class="btn-link" href="https://discourse.pi-hole.net/" rel="noopener noreferrer" target="_blank"><i class="fa-fw menu-icon fab fa-discourse"></i> <?= i18n('header.pi_hole_discourse') ?></a>
|
|
<a class="btn-link" href="https://github.com/pi-hole" rel="noopener noreferrer" target="_blank"><i class="fa-fw menu-icon fab fa-github"></i> <?= i18n('shared.github') ?></a>
|
|
<a class="btn-link" href="https://discourse.pi-hole.net/c/announcements/5" rel="noopener noreferrer" target="_blank"><i class="fa-fw menu-icon fa-solid fa-rocket"></i> <?= i18n('header.pi_hole_releases') ?></a>
|
|
<? if pihole.needLogin() then ?>
|
|
<a class="btn-link" href="#" id="logout-button"><i class="fa-fw menu-icon fa-solid fa-arrow-right-from-bracket"></i> <?= i18n('header.logout') ?></a>
|
|
<? end ?>
|
|
</li>
|
|
</ul>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
</nav>
|
|
</header>
|
|
|
|
<div class="dropdown dropup language language-menu" style="position: fixed; width: 42px; z-index: 999999; background: var(--datatable-bgcolor); padding: 4px; border-radius: 4px; bottom: 16px; left: 16px;">
|
|
<?
|
|
germanyFlag = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 301 181"><g fill="none"><path fill="#000" d="M.5.5h300v180H.5z"/><path fill="#d00" d="M.5 60.5h300v120H.5z"/><path fill="#ffce00" d="M.5 120.5h300v60H.5z"/></g></svg>'
|
|
usaFlag = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 300 159"><g fill="none"><path fill="#fff" d="M0 .552h300v157.895H0z"/><path fill="#b22234" d="M0 .552h300v12.146H0zm0 24.292h300V36.99H0zm0 24.291h300v12.146H0zm0 24.292h300v12.146H0zm0 24.291h300v12.146H0zm0 24.292h300v12.146H0zm0 24.291h300v12.146H0z"/><path fill="#3c3b6e" d="M0 .552h120v85.02H0z"/><path fill="#fff" d="m5.638 7.454l2.859 2.077l-1.092 3.361l2.858-2.077l2.859 2.077l-1.092-3.361l2.858-2.077h-3.533l-1.092-3.36l-1.092 3.36zm19.895 0l2.858 2.077l-1.092 3.361l2.859-2.077l2.859 2.077l-1.092-3.361l2.858-2.077H31.25l-1.092-3.36l-1.092 3.36zm19.895 0l2.858 2.077l-1.092 3.361l2.859-2.077l2.858 2.077l-1.092-3.361l2.859-2.077h-3.533l-1.092-3.36l-1.092 3.36zm19.895 0l2.858 2.077l-1.092 3.361l2.859-2.077l2.858 2.077l-1.092-3.361l2.859-2.077h-3.534l-1.091-3.36l-1.092 3.36zm19.894 0l2.859 2.077l-1.092 3.361l2.858-2.077l2.859 2.077l-1.092-3.361l2.858-2.077h-3.533l-1.092-3.36l-1.092 3.36zm19.895 0l2.858 2.077l-1.092 3.361l2.859-2.077l2.858 2.077l-1.092-3.361l2.859-2.077h-3.533l-1.092-3.36l-1.092 3.36zm-89.527 8.527l2.859 2.077l-1.092 3.36l2.859-2.077l2.858 2.077l-1.092-3.36l2.859-2.077h-3.534l-1.091-3.361l-1.092 3.361zm19.895 0l2.859 2.077l-1.092 3.36l2.858-2.077l2.859 2.077l-1.092-3.36l2.858-2.077h-3.533l-1.092-3.361l-1.092 3.361zm19.895 0l2.859 2.077l-1.092 3.36L60 19.341l2.859 2.077l-1.092-3.36l2.858-2.077h-3.533L60 12.62l-1.092 3.361zm19.895 0l2.858 2.077l-1.092 3.36l2.859-2.077l2.858 2.077l-1.092-3.36l2.859-2.077h-3.533l-1.092-3.361l-1.092 3.361zm19.894 0l2.859 2.077l-1.092 3.36l2.858-2.077l2.859 2.077l-1.092-3.36l2.858-2.077h-3.533l-1.092-3.361l-1.091 3.361zM5.638 24.507l2.859 2.077l-1.092 3.361l2.858-2.077l2.859 2.077l-1.092-3.361l2.858-2.077h-3.533l-1.092-3.36l-1.092 3.36zm19.895 0l2.858 2.077l-1.092 3.361l2.859-2.077l2.859 2.077l-1.092-3.361l2.858-2.077H31.25l-1.092-3.36l-1.092 3.36zm19.895 0l2.858 2.077l-1.092 3.361l2.859-2.077l2.858 2.077l-1.092-3.361l2.859-2.077h-3.533l-1.092-3.36l-1.092 3.36zm19.895 0l2.858 2.077l-1.092 3.361l2.859-2.077l2.858 2.077l-1.092-3.361l2.859-2.077h-3.534l-1.091-3.36l-1.092 3.36zm19.894 0l2.859 2.077l-1.092 3.361l2.858-2.077l2.859 2.077l-1.092-3.361l2.858-2.077h-3.533l-1.092-3.36l-1.092 3.36zm19.895 0l2.858 2.077l-1.092 3.361l2.859-2.077l2.858 2.077l-1.092-3.361l2.859-2.077h-3.533l-1.092-3.36l-1.092 3.36zm-89.281 8.555l2.858 2.077l-1.091 3.36l2.858-2.077l2.859 2.077l-1.092-3.361l2.858-2.076h-3.533l-1.092-3.361l-1.092 3.361zm19.895 0l2.858 2.077l-1.092 3.36l2.859-2.077l2.858 2.077l-1.092-3.361l2.859-2.076h-3.533l-1.092-3.361l-1.092 3.361zm19.895 0l2.858 2.077l-1.092 3.36l2.859-2.077l2.858 2.077l-1.092-3.361l2.859-2.076h-3.534l-1.091-3.361l-1.092 3.361zm19.894 0l2.859 2.077l-1.092 3.36l2.858-2.077l2.859 2.077l-1.092-3.361l2.858-2.076h-3.533l-1.092-3.361l-1.092 3.361zm19.895 0l2.858 2.077l-1.092 3.36l2.859-2.077l2.858 2.077l-1.092-3.361l2.859-2.076h-3.533l-1.092-3.361l-1.092 3.361zM5.94 41.517l2.859 2.076l-1.092 3.361l2.858-2.077l2.859 2.077l-1.092-3.361l2.858-2.076h-3.533l-1.092-3.361l-1.092 3.361zm19.895 0l2.858 2.076l-1.092 3.361l2.859-2.077l2.858 2.077l-1.091-3.361l2.858-2.076h-3.533l-1.092-3.361l-1.092 3.361zm19.895 0l2.858 2.076l-1.092 3.361l2.859-2.077l2.858 2.077l-1.092-3.361l2.859-2.076h-3.533l-1.092-3.361l-1.092 3.361zm19.894 0l2.859 2.076l-1.092 3.361l2.858-2.077l2.859 2.077l-1.092-3.361l2.859-2.076h-3.534l-1.092-3.361l-1.091 3.361zm19.895 0l2.858 2.076l-1.091 3.361l2.858-2.077l2.859 2.077l-1.092-3.361l2.858-2.076h-3.533l-1.092-3.361l-1.092 3.361zm19.895 0l2.858 2.076l-1.092 3.361l2.859-2.077l2.858 2.077l-1.092-3.361l2.859-2.076h-3.533l-1.092-3.361l-1.092 3.361zM6.127 58.299l2.858 2.077l-1.092 3.361l2.859-2.077l2.858 2.077l-1.092-3.361l2.859-2.077h-3.533l-1.092-3.36l-1.092 3.36zm19.894 0l2.859 2.077l-1.092 3.361l2.858-2.077l2.859 2.077l-1.092-3.361l2.858-2.077h-3.533l-1.092-3.36l-1.092 3.36zm19.895 0l2.858 2.077l-1.091 3.361l2.858-2.077l2.859 2.077l-1.092-3.361l2.858-2.077h-3.533l-1.092-3.36l-1.092 3.36zm19.895 0l2.858 2.077l-1.092 3.361l2.859-2.077l2.858 2.077l-1.091-3.361l2.858-2.077h-3.533l-1.092-3.36l-1.092 3.36zm19.894 0l2.859 2.077l-1.092 3.361l2.858-2.077l2.859 2.077l-1.092-3.361l2.859-2.077h-3.534l-1.092-3.36l-1.091 3.36zm19.895 0l2.858 2.077l-1.091 3.361l2.858-2.077l2.859 2.077l-1.092-3.361l2.858-2.077h-3.533l-1.092-3.36l-1.092 3.36zM5.884 75.279l2.858 2.077l-1.092 3.361l2.859-2.077l2.858 2.077l-1.092-3.361l2.859-2.077H11.6l-1.091-3.36l-1.092 3.36zm19.894 0l2.859 2.077l-1.092 3.361l2.858-2.077l2.859 2.077l-1.092-3.361l2.858-2.077h-3.533l-1.092-3.36l-1.092 3.36zm19.895 0l2.858 2.077l-1.091 3.361l2.858-2.077l2.859 2.077l-1.092-3.361l2.858-2.077H51.39l-1.092-3.36l-1.092 3.36zm19.895 0l2.858 2.077l-1.092 3.361l2.859-2.077l2.858 2.077l-1.091-3.361l2.858-2.077h-3.533l-1.092-3.36l-1.092 3.36zm19.894 0l2.859 2.077l-1.092 3.361l2.858-2.077l2.859 2.077l-1.092-3.361l2.859-2.077h-3.534l-1.092-3.36l-1.091 3.36zm19.895 0l2.858 2.077l-1.091 3.361l2.858-2.077l2.859 2.077l-1.092-3.361l2.858-2.077h-3.533l-1.092-3.36l-1.092 3.36zM15.89 49.824l2.858 2.077l-1.091 3.36l2.858-2.077l2.859 2.077l-1.092-3.36l2.858-2.077h-3.533l-1.092-3.361l-1.092 3.361zm19.895 0l2.858 2.077l-1.092 3.36l2.859-2.077l2.858 2.077l-1.091-3.36l2.858-2.077h-3.533l-1.092-3.361l-1.092 3.361zm19.895 0l2.858 2.077l-1.092 3.36l2.859-2.077l2.858 2.077l-1.092-3.36l2.859-2.077h-3.533l-1.092-3.361l-1.092 3.361zm19.894 0l2.859 2.077l-1.092 3.36l2.858-2.077l2.859 2.077l-1.092-3.36l2.858-2.077h-3.533l-1.092-3.361l-1.092 3.361zm19.895 0l2.858 2.077l-1.092 3.36l2.859-2.077l2.858 2.077l-1.091-3.36l2.858-2.077h-3.533l-1.092-3.361l-1.092 3.361zM15.831 66.777l2.859 2.077l-1.092 3.361l2.858-2.077l2.859 2.077l-1.092-3.361l2.858-2.077h-3.533l-1.092-3.36l-1.092 3.36zm19.895 0l2.858 2.077l-1.092 3.361l2.859-2.077l2.859 2.077l-1.092-3.361l2.858-2.077h-3.533l-1.092-3.36l-1.092 3.36zm19.895 0l2.858 2.077l-1.092 3.361l2.859-2.077l2.858 2.077l-1.092-3.361l2.859-2.077h-3.533l-1.092-3.36l-1.092 3.36zm19.894 0l2.859 2.077l-1.092 3.361l2.858-2.077l2.859 2.077l-1.092-3.361l2.858-2.077h-3.533l-1.092-3.36l-1.092 3.36zm19.895 0l2.858 2.077l-1.092 3.361l2.859-2.077l2.858 2.077l-1.091-3.361l2.858-2.077h-3.533l-1.092-3.36l-1.092 3.36z"/></g></svg>'
|
|
|
|
local svg
|
|
if lang == 'de-de' then
|
|
svg = germanyFlag
|
|
elseif lang == 'en-us' then
|
|
svg = usaFlag
|
|
end
|
|
?>
|
|
<a href="#" class="dropdown-toggle" data-toggle="dropdown" aria-expanded="false" style="max-width: 32px; display: block; margin-inline: auto;">
|
|
<?= svg ?>
|
|
</a>
|
|
<ul class="dropdown-menu" style="min-width: 32px; left: 50%; right: auto; transform: translate(-50%, 0)">
|
|
<a href="?lang=de-de" style="max-width: 32px; display: block"><?= germanyFlag ?></a>
|
|
<a href="?lang=en-us" style="max-width: 32px; display: block"><?= usaFlag ?></a>
|
|
</ul>
|
|
</div>
|
|
|
|
<? mg.include('sidebar.lp', 'r') ?>
|
|
<!-- Content Wrapper. Contains page content -->
|
|
<div class="content-wrapper">
|
|
<!-- Main content -->
|
|
<section class="content">
|