updated router.php to automatically determine relative path based off directory depth and use var path_prefix instead of prepend_uri var these vars are only used in header and footer php files for now

This commit is contained in:
johnnyq 2025-08-06 18:02:25 -04:00
parent 9caa42975d
commit 8407cd3ea5
3 changed files with 34 additions and 37 deletions

View File

@ -1,5 +1,5 @@
<?php
require_once "$prepend_uri../includes/inc_confirm_modal.php";
require_once $path_prefix . "includes/inc_confirm_modal.php";
?>
<?php
@ -19,27 +19,27 @@ if (basename(dirname($_SERVER['REQUEST_URI'])) === 'admin') { ?>
<!-- REQUIRED SCRIPTS -->
<!-- Bootstrap 4 -->
<script src="<?= $prepend_uri ?>../plugins/bootstrap/js/bootstrap.bundle.min.js"></script>
<script src="<?= $path_prefix ?>plugins/bootstrap/js/bootstrap.bundle.min.js"></script>
<!-- Custom js-->
<script src="<?= $prepend_uri ?>../plugins/moment/moment.min.js"></script>
<script src="<?= $prepend_uri ?>../plugins/chart.js/Chart.min.js"></script>
<script src="<?= $prepend_uri ?>../plugins/tempusdominus-bootstrap-4/js/tempusdominus-bootstrap-4.min.js"></script>
<script src="<?= $prepend_uri ?>../plugins/daterangepicker/daterangepicker.js"></script>
<script src="<?= $prepend_uri ?>../plugins/select2/js/select2.min.js"></script>
<script src="<?= $prepend_uri ?>../plugins/inputmask/jquery.inputmask.min.js"></script>
<script src="<?= $prepend_uri ?>../plugins/tinymce/tinymce.min.js" referrerpolicy="origin"></script>
<script src="<?= $prepend_uri ?>../plugins/Show-Hide-Passwords-Bootstrap-4/bootstrap-show-password.min.js"></script>
<script src="<?= $prepend_uri ?>../plugins/clipboardjs/clipboard.min.js"></script>
<script src="<?= $prepend_uri ?>../js/keepalive.js"></script>
<script src="<?= $prepend_uri ?>../plugins/DataTables/datatables.min.js"></script>
<script src="<?= $prepend_uri ?>../plugins/intl-tel-input/js/intlTelInput.min.js"></script>
<script src="<?= $path_prefix ?>plugins/moment/moment.min.js"></script>
<script src="<?= $path_prefix ?>plugins/chart.js/Chart.min.js"></script>
<script src="<?= $path_prefix ?>plugins/tempusdominus-bootstrap-4/js/tempusdominus-bootstrap-4.min.js"></script>
<script src="<?= $path_prefix ?>plugins/daterangepicker/daterangepicker.js"></script>
<script src="<?= $path_prefix ?>plugins/select2/js/select2.min.js"></script>
<script src="<?= $path_prefix ?>plugins/inputmask/jquery.inputmask.min.js"></script>
<script src="<?= $path_prefix ?>plugins/tinymce/tinymce.min.js" referrerpolicy="origin"></script>
<script src="<?= $path_prefix ?>plugins/Show-Hide-Passwords-Bootstrap-4/bootstrap-show-password.min.js"></script>
<script src="<?= $path_prefix ?>plugins/clipboardjs/clipboard.min.js"></script>
<script src="<?= $path_prefix ?>js/keepalive.js"></script>
<script src="<?= $path_prefix ?>plugins/DataTables/datatables.min.js"></script>
<script src="<?= $path_prefix ?>plugins/intl-tel-input/js/intlTelInput.min.js"></script>
<!-- AdminLTE App -->
<script src="<?= $prepend_uri ?>../plugins/adminlte/js/adminlte.min.js"></script>
<script src="<?= $prepend_uri ?>../js/app.js"></script>
<script src="<?= $prepend_uri ?>../js/ajax_modal.js"></script>
<script src="<?= $prepend_uri ?>../js/confirm_modal.js"></script>
<script src="<?= $path_prefix ?>plugins/adminlte/js/adminlte.min.js"></script>
<script src="<?= $path_prefix ?>js/app.js"></script>
<script src="<?= $path_prefix ?>js/ajax_modal.js"></script>
<script src="<?= $path_prefix ?>js/confirm_modal.js"></script>
</body>
</html>

View File

@ -19,27 +19,27 @@ header("X-Frame-Options: DENY");
<title><?= $session_company_name; ?></title>
<!-- Favicon -->
<?php if(file_exists($prepend_uri . '../uploads/favicon.ico')): ?>
<link rel="icon" type="image/x-icon" href="<?= $prepend_uri ?>../uploads/favicon.ico">
<?php if(file_exists($path_prefix . 'uploads/favicon.ico')): ?>
<link rel="icon" type="image/x-icon" href="<?= $path_prefix ?>uploads/favicon.ico">
<?php endif; ?>
<!-- Font Awesome -->
<link rel="stylesheet" href="<?= $prepend_uri ?>../plugins/fontawesome-free/css/all.min.css">
<link rel="stylesheet" href="<?= $path_prefix ?>plugins/fontawesome-free/css/all.min.css">
<!-- Custom Styles -->
<link href="<?= $prepend_uri ?>../plugins/tempusdominus-bootstrap-4/css/tempusdominus-bootstrap-4.min.css" rel="stylesheet" type="text/css">
<link href="<?= $prepend_uri ?>../plugins/select2/css/select2.min.css" rel="stylesheet" type="text/css">
<link href="<?= $prepend_uri ?>../plugins/select2-bootstrap4-theme/select2-bootstrap4.min.css" rel="stylesheet" type="text/css">
<link href="<?= $prepend_uri ?>../plugins/daterangepicker/daterangepicker.css" rel="stylesheet">
<link href="<?= $prepend_uri ?>../plugins/toastr/toastr.min.css" rel="stylesheet">
<link href="<?= $prepend_uri ?>../plugins/DataTables/datatables.min.css" rel="stylesheet">
<link href="<?= $prepend_uri ?>../plugins/intl-tel-input/css/intlTelInput.min.css" rel="stylesheet">
<link href="<?= $prepend_uri ?>../css/itflow_custom.css" rel="stylesheet">
<link rel="stylesheet" href="<?= $prepend_uri ?>../plugins/adminlte/css/adminlte.min.css">
<link href="<?= $path_prefix ?>plugins/tempusdominus-bootstrap-4/css/tempusdominus-bootstrap-4.min.css" rel="stylesheet" type="text/css">
<link href="<?= $path_prefix ?>plugins/select2/css/select2.min.css" rel="stylesheet" type="text/css">
<link href="<?= $path_prefix ?>plugins/select2-bootstrap4-theme/select2-bootstrap4.min.css" rel="stylesheet" type="text/css">
<link href="<?= $path_prefix ?>plugins/daterangepicker/daterangepicker.css" rel="stylesheet">
<link href="<?= $path_prefix ?>plugins/toastr/toastr.min.css" rel="stylesheet">
<link href="<?= $path_prefix ?>plugins/DataTables/datatables.min.css" rel="stylesheet">
<link href="<?= $path_prefix ?>plugins/intl-tel-input/css/intlTelInput.min.css" rel="stylesheet">
<link href="<?= $path_prefix ?>css/itflow_custom.css" rel="stylesheet">
<link rel="stylesheet" href="<?= $path_prefix ?>plugins/adminlte/css/adminlte.min.css">
<!-- Scripts -->
<script src="<?= $prepend_uri ?>../plugins/jquery/jquery.min.js"></script>
<script src="<?= $prepend_uri ?>../plugins/toastr/toastr.min.js"></script>
<script src="<?= $path_prefix ?>plugins/jquery/jquery.min.js"></script>
<script src="<?= $path_prefix ?>plugins/toastr/toastr.min.js"></script>
</head>
<body class="
hold-transition sidebar-mini layout-fixed layout-navbar-fixed

View File

@ -4,8 +4,5 @@
// Currently unused, but the idea is to dynamically prepend ../../ to asset paths (like includes, libraries, etc.)
// based on the current directory depth. This allows us to support deeply nested folder structures.
if ($_SERVER['REQUEST_URI'] === '/user/reports') {
$prepend_uri = "../";
} else {
$prepend_uri = '';
}
$depth = substr_count(trim($_SERVER['REQUEST_URI'], '/'), '/');
$path_prefix = str_repeat('../', $depth);