mirror of
https://github.com/itflow-org/itflow
synced 2026-09-22 06:31:15 +00:00
Add Proper footers to Guest Area and client portal
This commit is contained in:
@@ -8,17 +8,29 @@
|
|||||||
<!-- Close container -->
|
<!-- Close container -->
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<br>
|
<?php /* This portal has no .app-wrapper grid - it is a plain navbar over a
|
||||||
<hr>
|
.container - so the bottom edge is held by the body instead:
|
||||||
|
header.php gives the body d-flex flex-column min-vh-100, and mt-auto here
|
||||||
|
eats whatever height is left over. On a short page (an empty ticket
|
||||||
|
list, the statement) the bar lands on the bottom of the window rather
|
||||||
|
than directly under the content.
|
||||||
|
|
||||||
<p class="text-center">
|
.app-footer is AdminLTE's own bar styling - border-top, body-bg,
|
||||||
|
min-height 3rem - which is what the old rule was standing in for, so
|
||||||
|
the trailing br and hr go with it. Its grid-area is inert outside a
|
||||||
|
grid.
|
||||||
|
|
||||||
|
Only the navbar, the .container and this become flex items: script
|
||||||
|
elements are display:none, and anything the libraries fix to the
|
||||||
|
viewport (sweetalert2, modal backdrops) is out of flow either way. */ ?>
|
||||||
|
<footer class="app-footer mt-auto py-2 text-center">
|
||||||
<?php
|
<?php
|
||||||
echo escapeHtml($session_company_name);
|
echo escapeHtml($session_company_name);
|
||||||
if (!$config_whitelabel_enabled) {
|
if (!$config_whitelabel_enabled) {
|
||||||
echo '<br><small class="text-muted">Powered by ITFlow</small>';
|
echo '<br><small class="text-muted">Powered by ITFlow</small>';
|
||||||
}
|
}
|
||||||
?>
|
?>
|
||||||
</p>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -59,7 +59,7 @@ header("X-Frame-Options: DENY"); // Legacy
|
|||||||
(default-src 'self') would block outright. Empty when the company has
|
(default-src 'self') would block outright. Empty when the company has
|
||||||
no country set, which js/phone_inputs.js reads as "let the library
|
no country set, which js/phone_inputs.js reads as "let the library
|
||||||
decide". */ ?>
|
decide". */ ?>
|
||||||
<body class="bg-body-tertiary theme-<?= escapeHtml($config_theme) ?>" data-lte-primary="<?= escapeHtml($config_theme) ?>"
|
<body class="d-flex flex-column min-vh-100 bg-body-tertiary theme-<?= escapeHtml($config_theme) ?>" data-lte-primary="<?= escapeHtml($config_theme) ?>"
|
||||||
data-itflow-phone-country="<?= escapeHtml($country_iso2_array[$session_company_country] ?? '') ?>">
|
data-itflow-phone-country="<?= escapeHtml($country_iso2_array[$session_company_country] ?? '') ?>">
|
||||||
|
|
||||||
<!-- Navbar -->
|
<!-- Navbar -->
|
||||||
@@ -153,10 +153,18 @@ header("X-Frame-Options: DENY"); // Legacy
|
|||||||
</div>
|
</div>
|
||||||
</nav>
|
</nav>
|
||||||
|
|
||||||
<br>
|
<?php /* The gap under the navbar used to be a bare line-break element sitting
|
||||||
|
directly in the body. That stopped working the moment the body became a
|
||||||
|
flex column: a break is only a break inside an inline formatting
|
||||||
|
context, and as a flex item it is blockified into an empty zero-height
|
||||||
|
box - so the gap vanished and the welcome row rode up against the
|
||||||
|
navbar.
|
||||||
|
|
||||||
|
Carried on the container as a real margin instead. mt-4 is 1.5rem,
|
||||||
|
exactly what the break was worth: one line box at the body's 1.5
|
||||||
|
line-height on a 1rem font. */ ?>
|
||||||
<!-- Page content container -->
|
<!-- Page content container -->
|
||||||
<div class="container">
|
<div class="container mt-4">
|
||||||
|
|
||||||
<div class="row mb-3">
|
<div class="row mb-3">
|
||||||
<div class="col-md-1 text-center">
|
<div class="col-md-1 text-center">
|
||||||
|
|||||||
@@ -1,18 +1,6 @@
|
|||||||
<?php
|
<?php
|
||||||
?>
|
?>
|
||||||
|
|
||||||
<?php
|
|
||||||
if (basename(dirname($_SERVER['REQUEST_URI'])) === 'guest') { ?>
|
|
||||||
<p class="text-center">
|
|
||||||
<?php
|
|
||||||
echo escapeHtml($session_company_name);
|
|
||||||
if (!$config_whitelabel_enabled) {
|
|
||||||
echo '<br><small class="text-muted">Powered by ITFlow</small>';
|
|
||||||
}
|
|
||||||
?>
|
|
||||||
</p>
|
|
||||||
<?php } ?>
|
|
||||||
|
|
||||||
</div><!-- /.container-fluid -->
|
</div><!-- /.container-fluid -->
|
||||||
</div> <!-- /.app-content -->
|
</div> <!-- /.app-content -->
|
||||||
</main> <!-- /.app-main -->
|
</main> <!-- /.app-main -->
|
||||||
@@ -32,6 +20,23 @@ if (basename(dirname($_SERVER['REQUEST_URI'])) === 'guest') { ?>
|
|||||||
</footer>
|
</footer>
|
||||||
<?php } ?>
|
<?php } ?>
|
||||||
|
|
||||||
|
<?php /* The guest portal shares this file and the same .app-wrapper grid (its
|
||||||
|
own guest_header.php opens it), so its footer goes in the same row.
|
||||||
|
guest_header.php renders no .app-header and no .app-sidebar, which the
|
||||||
|
grid handles on its own - the sidebar column is `auto` and the header
|
||||||
|
row is min-content, so both collapse to zero and .app-main still takes
|
||||||
|
the 1fr. */ ?>
|
||||||
|
<?php if (basename(dirname($_SERVER['REQUEST_URI'])) === 'guest') { ?>
|
||||||
|
<footer class="app-footer py-2 text-center">
|
||||||
|
<?php
|
||||||
|
echo escapeHtml($session_company_name);
|
||||||
|
if (!$config_whitelabel_enabled) {
|
||||||
|
echo '<br><small class="text-muted">Powered by ITFlow</small>';
|
||||||
|
}
|
||||||
|
?>
|
||||||
|
</footer>
|
||||||
|
<?php } ?>
|
||||||
|
|
||||||
</div> <!-- /.app-wrapper -->
|
</div> <!-- /.app-wrapper -->
|
||||||
|
|
||||||
<!-- Set the browser window title to the clients name -->
|
<!-- Set the browser window title to the clients name -->
|
||||||
|
|||||||
Reference in New Issue
Block a user