Content Security Policy (CSP) compatibility beta.

This commit is contained in:
2026-06-20 00:21:19 +02:00
parent 0b76255cfa
commit 8b742d997c
68 changed files with 1632 additions and 1421 deletions

View File

@@ -58,7 +58,7 @@ if ($_GET['add'] == 'phone' || $_GET['add'] == 'base') {
$formInputs[] = 'device_extra';
# Set breadcrumb data
array_push($GLOBALS['breadCrumbArray'], array('display' => __('add_device'), 'href' => ''));
$_SESSION['breadCrumbArray'][] = ['display' => __('add_device'), 'href' => ''];
# Start page output
$pageNavbar->outPutNavbar();

View File

@@ -56,8 +56,7 @@ $stmt->bind_param("s", $_GET['edit']);
$stmt->execute();
$device_data_result = $stmt->get_result();
$device_data = $device_data_result->fetch_assoc();
array_push($GLOBALS['breadCrumbArray'], array('display' => $device_data['vendor_name'] . ' ' . $device_data['device_name'], 'href' => '?view=' . $device_data['device_uuid']));
array_push($GLOBALS['breadCrumbArray'], array('display' => __('edit'), 'href' => '?view=' . $device_data['device_uuid']));
if ($device_data_result->num_rows > 0) {
$device_found = true;
}
@@ -70,7 +69,9 @@ if ($device_data['device_type'] == 'phone' || $device_data['device_type'] == 'ba
$formInputs[] = 'device_extra';
# Set breadcrumb data
array_push($GLOBALS['breadCrumbArray'], array('display' => __('devices'), 'href' => '/devices/'));
$_SESSION['breadCrumbArray'][] = ['display' => $device_data['vendor_name'] . ' ' . $device_data['device_name'], 'href' => '?view=' . $device_data['device_uuid']];
$_SESSION['breadCrumbArray'][] = ['display' => __('edit'), 'href' => '?view=' . $device_data['device_uuid']];
$_SESSION['breadCrumbArray'][] = ['display' => __('devices'), 'href' => '/devices/'];
# Start page output
$pageNavbar->outPutNavbar();

View File

@@ -48,7 +48,7 @@ if ($API->checkPermissions('admin-devices', 'RW', true)) {
$data = $GLOBALS['conn']->query("SELECT * FROM autop_devices INNER JOIN autop_vendors ON autop_devices.device_vendor_uuid = autop_vendors.vendor_uuid");
# Set breadcrumb data
array_push($GLOBALS['breadCrumbArray'], array('display' => __('devices'), 'href' => '/devices/'));
$_SESSION['breadCrumbArray'][] = ['display' => __('devices'), 'href' => '/devices/'];
# Start page output
$pageNavbar->outPutNavbar();

View File

@@ -34,8 +34,8 @@ $formBuilder->submitButtonIcon = '<i class="fas fa-save"></i>';
# Retrieve Information for the page
# Set breadcrumb data
array_push($GLOBALS['breadCrumbArray'], array('display' => __('platforms'), 'href' => '/platforms/'));
array_push($GLOBALS['breadCrumbArray'], array('display' => __('add_platform'), 'href' => ''));
$_SESSION['breadCrumbArray'][] = ['display' => __('platforms'), 'href' => '/platforms/'];
$_SESSION['breadCrumbArray'][] = ['display' => __('add_platform'), 'href' => ''];
# Start page output
$pageNavbar->outPutNavbar();

View File

@@ -47,8 +47,8 @@ $API_platforms->validateData($requiredFields);
$platform_data = $API_platforms->getPlatforms()[0];
# Set breadcrumb data
array_push($GLOBALS['breadCrumbArray'], array('display' => __('platforms'), 'href' => '/platforms/'));
array_push($GLOBALS['breadCrumbArray'], array('display' => __('edit_platform'), 'href' => ''));
$_SESSION['breadCrumbArray'][] = ['display' => __('platforms'), 'href' => '/platforms/'];
$_SESSION['breadCrumbArray'][] = ['display' => __('edit_platform'), 'href' => ''];
# Start page output
if ($platform_data) {

View File

@@ -34,7 +34,7 @@ $pageNavbar->AddHTMLButton('<a href="?add="><button class="btn btn-primary"><i c
$formBuilder = new formBuilder('add_vendor', '<i class="fas fa-plus"></i>', '/vendors/');
# Set breadcrumb data
array_push($GLOBALS['breadCrumbArray'], array('display' => __('add_vendor'), 'href' => '/vendors/'));
$_SESSION['breadCrumbArray'][] = ['display' => __('add_vendor'), 'href' => '/vendors/'];
# Retrieve Information for the page

View File

@@ -47,7 +47,7 @@ $API_vendors->validateData($requiredFields);
$vendor_data = $API_vendors->getVendors()[0];
# Set breadcrumb data
array_push($GLOBALS['breadCrumbArray'], array('display' => __('edit_vendor'), 'href' => '/vendors/'));
$_SESSION['breadCrumbArray'][] = ['display' => __('edit_vendor'), 'href' => '/vendors/'];
# Start page output
$pageNavbar->outPutNavbar();

View File

@@ -49,8 +49,8 @@ $result = $stmt->get_result();
$company_data = $result->fetch_assoc();
# Set breadcrumb data
array_push($GLOBALS['breadCrumbArray'], array('display' => __('companies'), 'href' => '/companies/'));
array_push($GLOBALS['breadCrumbArray'], array('display' => $company_data['company_name'], 'href' => ''));
$_SESSION['breadCrumbArray'][] = ['display' => __('companies'), 'href' => '/companies/'];
$_SESSION['breadCrumbArray'][] = ['display' => $company_data['company_name'], 'href' => ''];
# Retrieve Information for the page
$company_uuid = htmlspecialchars($_GET['view'], ENT_QUOTES, 'UTF-8');

View File

@@ -57,23 +57,14 @@ if (!isset($_GET['td'])) {
$SelectTillDate = strtotime($date . ' 23:59:59');
}
$stompjes = array();
$stmt = $GLOBALS['conn']->query("SELECT stomp_uuid, office_stompjes.user_uuid, user_full_name, user_first_name, stomp_timestamp FROM office_stompjes
INNER JOIN system_users ON office_stompjes.user_uuid = system_users.user_uuid
WHERE stomp_timestamp BETWEEN '$SelectFromDate' AND '$SelectTillDate'
AND user_stompable = '1'
ORDER BY stomp_timestamp DESC");
while ($row = $stmt->fetch_assoc()) {
array_push($stompjes, $row);
$administrators[$row['user_uuid']]['amount']++;
$stompjes = $API->getStomp(true);
foreach ($stompjes as $stompje) {
$administrators[$stompje['user_uuid']]['amount']++;
}
# Start page output
?>
<script>
const stompData = <?php echo json_encode($stompjes); ?>;
</script>
<div class="form-group form-show-validation row mb-3">
<div class="col-5">
<h2>

View File

@@ -43,8 +43,8 @@ if ($result->num_rows == 1) {
}
# Set breadcrumb data
array_push($GLOBALS['breadCrumbArray'], array('display' => __('user_profile'), 'href' => '/userprofile/'));
array_push($GLOBALS['breadCrumbArray'], array('display' => __('edit'), 'href' => ''));
$_SESSION['breadCrumbArray'][] = ['display' => __('user_profile'), 'href' => '/userprofile/'];
$_SESSION['breadCrumbArray'][] = ['display' => __('edit'), 'href' => ''];
# Start page output
$pageNavbar->outPutNavbar();

View File

@@ -46,8 +46,8 @@ while ($user_group = $user_groups_data->fetch_assoc()) {
}
# Set breadcrumb data
array_push($GLOBALS['breadCrumbArray'], array('display' => __('administrators'), 'href' => '/accesscontrol/#administrators'));
array_push($GLOBALS['breadCrumbArray'], array('display' => __('add_admin'), 'href' => ''));
$_SESSION['breadCrumbArray'][] = ['display' => __('administrators'), 'href' => '/accesscontrol/#administrators'];
$_SESSION['breadCrumbArray'][] = ['display' => __('add_admin'), 'href' => ''];
# Start page output
$pageNavbar->outPutNavbar();

View File

@@ -52,8 +52,8 @@ if ($result->num_rows == 1) {
}
# Set breadcrumb data
array_push($GLOBALS['breadCrumbArray'], array('display' => __('administrators'), 'href' => '/accesscontrol/#administrators'));
array_push($GLOBALS['breadCrumbArray'], array('display' => __('edit_admin'), 'href' => ''));
$_SESSION['breadCrumbArray'][] = ['display' => __('administrators'), 'href' => '/accesscontrol/#administrators'];
$_SESSION['breadCrumbArray'][] = ['display' => __('edit_admin'), 'href' => ''];
# Start page output
$pageNavbar->outPutNavbar();

View File

@@ -71,9 +71,8 @@ $API_token->validateData($requiredFields);
$apitokens = $API_token->getTokens();
# Set breadcrumb data
array_push($GLOBALS['breadCrumbArray'], array('display' => __('administrators'), 'href' => '/accesscontrol/#administrators'));
array_push($GLOBALS['breadCrumbArray'], array('display' => __('view'), 'href' => ''));
$_SESSION['breadCrumbArray'][] = ['display' => __('administrators'), 'href' => '/accesscontrol/#administrators'];
$_SESSION['breadCrumbArray'][] = ['display' => __('view'), 'href' => ''];
# Start page output
$pageNavbar->outPutNavbar();
@@ -223,18 +222,18 @@ if ($admin_data) { ?>
</div>
<div class="card-body">
<?php if ($API->checkPermissions('admin-access-admins-mfa', 'RW', true)) { ?>
<div id="mfa-enabled-row" class="row" style="display: <?php echo(($admin_data['user_two_factor_enabled']) ? '' : 'none') ?>">
<div id="mfa-enabled-row" class="row <?= ($admin_data['user_two_factor_enabled'] ? '' : 'd-none') ?>">
<div class="col-auto">
<a href="#" class="btn btn-danger delete-btn" data-item-uuid="<?php echo $admin_data['user_uuid'] ?>" data-api-url="/api/v1/user/mfa/" data-item-name='user_uuid' data-delete-action='{"mfa-enabled-row":"hide", "mfa-disabled-row":"show"}'>
<i class="fa-solid fa-lock"></i> <?php echo __('reset_mfa') ?>
<a href="#" class="btn btn-danger delete-btn" data-item-uuid="<?= $admin_data['user_uuid'] ?>" data-api-url="/api/v1/user/mfa/" data-item-name="user_uuid" data-delete-action='{"mfa-enabled-row":"hide", "mfa-disabled-row":"show"}'>
<i class="fa-solid fa-lock"></i> <?= __('reset_mfa') ?>
</a>
</div>
</div>
<div id="mfa-disabled-row" class="row" style="display: <?php echo(($admin_data['user_two_factor_enabled'] == 1) ? 'none' : '') ?>">
<div id="mfa-disabled-row" class="row <?= ($admin_data['user_two_factor_enabled'] ? 'd-none' : '') ?>">
<div class="col-auto">
<button class="btn btn-danger delete-btn" href="#" disabled>
<i class="fa-solid fa-lock"></i> <?php echo __('reset_mfa') ?>
<button class="btn btn-danger delete-btn" disabled>
<i class="fa-solid fa-lock"></i> <?= __('reset_mfa') ?>
</button>
</div>
</div>
@@ -288,9 +287,9 @@ if ($admin_data) { ?>
<tbody>
<?php foreach ($apitokens as $token_data) { ?>
<tr>
<td class="text-nowrap" style="max-width: 100%;">
<div class="d-flex align-items-center gap-2" style="max-width: 100%;">
<div class="text-truncate" style="max-width: 200px;" id="<?php echo $token_data['api_token_uuid'] ?>" data-copy-data="<?php echo $token_data['api_token_uuid']; ?>">
<td class="text-nowrap">
<div class="d-flex align-items-center gap-2">
<div class="text-truncate" id="<?php echo $token_data['api_token_uuid'] ?>" data-copy-data="<?php echo $token_data['api_token_uuid']; ?>">
<?php echo $token_data['api_token_uuid']; ?>
</div>
<button type="button" class="btn btn-sm btn-outline-secondary" data-copy-target="<?php echo $token_data['api_token_uuid'] ?>" title="Copy ID">

View File

@@ -41,8 +41,8 @@ while ($module = $system_modules_data->fetch_assoc()) {
# Set breadcrumb data
array_push($GLOBALS['breadCrumbArray'], array('display' => __('permission'), 'href' => '/accesscontrol/#permissions'));
array_push($GLOBALS['breadCrumbArray'], array('display' => __('add_permission'), 'href' => ''));
$_SESSION['breadCrumbArray'][] = ['display' => __('permission'), 'href' => '/accesscontrol/#permissions'];
$_SESSION['breadCrumbArray'][] = ['display' => __('add_permission'), 'href' => ''];
# Start page output
$pageNavbar->outPutNavbar();

View File

@@ -51,8 +51,8 @@ while ($module = $system_modules_data->fetch_assoc()) {
}
# Set breadcrumb data
array_push($GLOBALS['breadCrumbArray'], array('display' => __('permission'), 'href' => '/accesscontrol/#permissions'));
array_push($GLOBALS['breadCrumbArray'], array('display' => __('edit_permission'), 'href' => ''));
$_SESSION['breadCrumbArray'][] = ['display' => __('permission'), 'href' => '/accesscontrol/#permissions'];
$_SESSION['breadCrumbArray'][] = ['display' => __('edit_permission'), 'href' => ''];
# Start page output
$pageNavbar->outPutNavbar();

View File

@@ -52,8 +52,8 @@ $API_permissions->validateData($requiredFields);
$permission_data = $API_permissions->getPermissionRights();
# Set breadcrumb data
array_push($GLOBALS['breadCrumbArray'], array('display' => __('permission'), 'href' => '/accesscontrol/#permissions'));
array_push($GLOBALS['breadCrumbArray'], array('display' => __('view'), 'href' => ''));
$_SESSION['breadCrumbArray'][] = ['display' => __('permission'), 'href' => '/accesscontrol/#permissions'];
$_SESSION['breadCrumbArray'][] = ['display' => __('view'), 'href' => ''];
# Start page output
$pageNavbar->outPutNavbar();

View File

@@ -41,8 +41,8 @@ while ($user_group = $user_groups_data->fetch_assoc()) {
}
# Set breadcrumb data
array_push($GLOBALS['breadCrumbArray'], array('display' => __('user_groups'), 'href' => '/accesscontrol/#user-groups'));
array_push($GLOBALS['breadCrumbArray'], array('display' => __('add_user_groups'), 'href' => ''));
$_SESSION['breadCrumbArray'][] = ['display' => __('user_groups'), 'href' => '/accesscontrol/#user-groups'];
$_SESSION['breadCrumbArray'][] = ['display' => __('add_user_groups'), 'href' => ''];
# Start page output
$pageNavbar->outPutNavbar();

View File

@@ -44,9 +44,9 @@ $API_usergroups->validateData($requiredFields);
$user_group = $API_usergroups->getUsergroup()[0];
# Set breadcrumb data
array_push($GLOBALS['breadCrumbArray'], array('display' => __('user_groups'), 'href' => '/accesscontrol/#user-groups'));
array_push($GLOBALS['breadCrumbArray'], array('display' => $user_group['user_group_name'], 'href' => '/accesscontrol/#user-groups'));
array_push($GLOBALS['breadCrumbArray'], array('display' => __('edit'), 'href' => ''));
$_SESSION['breadCrumbArray'][] = ['display' => __('user_groups'), 'href' => '/accesscontrol/#user-groups'];
$_SESSION['breadCrumbArray'][] = ['display' => $user_group['user_group_name'], 'href' => '/accesscontrol/#user-groups'];
$_SESSION['breadCrumbArray'][] = ['display' => __('edit'), 'href' => ''];
# Start page output
$pageNavbar->outPutNavbar();

View File

@@ -56,8 +56,8 @@ if (!$API->checkPermissions('admin-access-control-permissions', 'RW', true)) {
}
# Set breadcrumb data
array_push($GLOBALS['breadCrumbArray'], array('display' => __('user_groups'), 'href' => '/accesscontrol/#user-groups'));
array_push($GLOBALS['breadCrumbArray'], array('display' => $user_group['user_group_name'], 'href' => ''));
$_SESSION['breadCrumbArray'][] = ['display' => __('user_groups'), 'href' => '/accesscontrol/#user-groups'];
$_SESSION['breadCrumbArray'][] = ['display' => $user_group['user_group_name'], 'href' => ''];
# Start page output
$pageNavbar->outPutNavbar();

View File

@@ -6,7 +6,7 @@ if (!defined('APP_INIT')) {
$jsScriptLoadData['activeTabOnRefresh'] = true;
?>
<div class="card-body activeTabOnRefresh" style="opacity: 0; transition: opacity 10ms;">
<div class="card-body activeTabOnRefresh">
<div class="row">
<div class="col-md-1">
<div class="nav flex-column nav-pills nav-secondary nav-pills-no-bd nav-pills-icons" id="v-pills-tab-with-icon" role="tablist" aria-orientation="vertical">

View File

@@ -128,7 +128,7 @@ while ($module = $system_modules_data->fetch_assoc()) {
<div class="col-lg-9 col-md-12 col-sm-10">
<div class="input-group">
<input type="text" class="form-control" id="cacert_url" name="cacert_url" value="<?php echo $portal_settings['cacert_url'] ?>" placeholder="" disabled/>
<button class="btn btn-outline-secondary" type="button" onclick="copyToClipboard('cacert_url')">
<button class="btn btn-outline-secondary" type="button" data-copy-target="cacert_url">
<i class="fas fa-copy"></i>
</button>
</div>
@@ -141,7 +141,7 @@ while ($module = $system_modules_data->fetch_assoc()) {
<div class="col-lg-9 col-md-12 col-sm-10">
<div class="input-group">
<input type="text" class="form-control" id="autop_url" name="autop_url" value="<?php echo $portal_settings['autop_url'] ?>" placeholder="" disabled/>
<button class="btn btn-outline-secondary" type="button" onclick="copyToClipboard('autop_url')">
<button class="btn btn-outline-secondary" type="button" data-copy-target="autop_url">
<i class="fas fa-copy"></i>
</button>
</div>

View File

@@ -35,10 +35,9 @@ $inserve_settings = $GLOBALS['conn']->query("SELECT * FROM system_sources WHERE
$inserve_custom_data = ($inserve_settings['source_custom_data'] ? json_encode(json_decode($inserve_settings['source_custom_data']), JSON_PRETTY_PRINT) : "{}");
# Set breadcrumb data
array_push($GLOBALS['breadCrumbArray'], array('display' => __('portal_management'), 'href' => '/systemconfig'));
array_push($GLOBALS['breadCrumbArray'], array('display' => __('sources'), 'href' => '/systemconfig#sources'));
array_push($GLOBALS['breadCrumbArray'], array('display' => 'Inserve', 'href' => ''));
$_SESSION['breadCrumbArray'][] = ['display' => __('portal_management'), 'href' => '/systemconfig'];
$_SESSION['breadCrumbArray'][] = ['display' => __('sources'), 'href' => '/systemconfig#sources'];
$_SESSION['breadCrumbArray'][] = ['display' => 'Inserve', 'href' => ''];
# Start page output
$pageNavbar->outPutNavbar();

View File

@@ -30,6 +30,7 @@ if (!$API->checkPermissions('servers', 'RO', true)) {
$jsScriptLoadData['delete_confirmation'] = true;
$jsScriptLoadData['breadCrumbs'] = true;
$jsScriptLoadData['codeblocks'] = true;
$jsScriptLoadData['serverView'] = true;
# PageClasses Setup
$pageNavbar = new pageNavbar(true);
@@ -129,8 +130,8 @@ if ($API->checkPermissions('servers', 'RW', true)) {
};
# Set breadcrumb data
array_push($GLOBALS['breadCrumbArray'], array('display' => __('server_overview'), 'href' => '/servers/'));
array_push($GLOBALS['breadCrumbArray'], array('display' => $server_data['server_vm_host_name'], 'href' => ''));
$_SESSION['breadCrumbArray'][] = ['display' => __('server_overview'), 'href' => '/servers/'];
$_SESSION['breadCrumbArray'][] = ['display' => $server_data['server_vm_host_name'], 'href' => ''];
# Start page output
$pageNavbar->outPutNavbar();

View File

@@ -59,8 +59,8 @@ if (!$GLOBALS['modules_enabled']['customers']) {
}
# Set breadcrumb data
array_push($GLOBALS['breadCrumbArray'], array('display' => __('permission'), 'href' => '/accesscontrol/#permissions'));
array_push($GLOBALS['breadCrumbArray'], array('display' => __('view'), 'href' => ''));
$_SESSION['breadCrumbArray'][] = ['display' => __('permission'), 'href' => '/accesscontrol/#permissions'];
$_SESSION['breadCrumbArray'][] = ['display' => __('view'), 'href' => ''];
# Start page output
$serverOverview->serverOverviewOutPut();

View File

@@ -47,7 +47,7 @@ class pageBuilder extends API
$requestUri = rtrim($requestUri, '/');
}
$GLOBALS['breadCrumbArray'] = array(array('display' => '<i class="fas fa-home"></i>', 'href' => '/'));
$_SESSION['breadCrumbArray'] = array(array('display' => '<i class="fas fa-home"></i>', 'href' => '/'));
$GLOBALS['pageContentToShow']['pageName'] = '404';
$GLOBALS['pageContentToShow']['pageFile'] = 'pageNotFound.php';
@@ -109,49 +109,11 @@ class pageBuilder extends API
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/css/all.min.css">
<link href="https://fonts.googleapis.com/css?family=Public+Sans:300,400,500,600,700|Quicksand:300,400,500,600,700&display=swap" rel="stylesheet">
<style>
.dataTables_filter label {
width: 100%;
height: 40px;
display: flex;
}
.dataTables_filter input {
height: 40px;
width: 100% !important; /* Make the input field full width */
box-sizing: border-box; /* Ensure padding doesn't exceed the width */
}
.dataTables_filter .fa-search {
position: absolute;
top: 12px;
left: auto;
right: 10px;
}
.dataTables_length label {
display: flex;
align-items: center;
height: 40px;
}
.dataTables_length label::before {
display: inline-block;
height: 40px;
padding-top: 10px;
}
.dataTables_length select {
flex: 1;
max-width: 100%;
margin-left: 10px;
}
</style>
<!-- CSS Files -->
<link rel="stylesheet" href="/src/css/bootstrap.gruvbox.min.css"/> <!-- Basic bootstrap and theming -->
<link rel="stylesheet" href="/src/css/sentri.min.css"/> <!-- Special css tricks for Sentri -->
<link rel="stylesheet" href="/src/css/plugins.min.css"/> <!-- need this for scroll bars and other small things -->
<link rel="stylesheet" href="/src/js/plugin/sweetalert2/sweetalert2.min.css"/> <!-- need this for scroll bars and other small things -->
<!--<link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/lipis/flag-icons@7.2.3/css/flag-icons.min.css"/> -->
@@ -162,22 +124,6 @@ class pageBuilder extends API
<link rel="shortcut icon" href="/src/images/favicon/favicon.ico"/>
<link rel="apple-touch-icon" sizes="180x180" href="/src/images/favicon/apple-touch-icon.png"/>
<link rel="manifest" href="/src/images/favicon/site.webmanifest"/>
<style>
.fade-in {
opacity: 0;
transition: opacity 0.3s ease, transform 0.3s ease;
}
.fade-in.show {
opacity: 1;
transform: scale(1);
}
.transition-opacity {
transition: opacity 0.3s ease;
}
</style>
</head>
<?php }
@@ -383,6 +329,9 @@ class pageBuilder extends API
<script src="/src/js/core/popper.min.js"></script>
<script src="/src/js/core/bootstrap.min.js"></script>
<!-- Load the locales in js -->
<script src="/src/js/i18n-loader.js"></script>
<!-- Bootstrap Notify -->
<script src="/src/js/plugin/bootstrap-notify/bootstrap-notify.min.js"></script>
@@ -418,37 +367,11 @@ class pageBuilder extends API
setTimeZoneCookie();
if (isset($this->jsScriptLoadData)) {
include_once $_SERVER['DOCUMENT_ROOT'] . '/bin/php/jsScripts.php';
require_once "{$_SERVER['DOCUMENT_ROOT']}/bin/php/jsScripts.php";
}
# process response from actions
if (isset($_SESSION['response'])) {
$ar = json_decode($_SESSION['response']);
$type = key($ar);
$text = reset($ar);
$title = $type;
if ($type == 'error') {
$type = 'danger';
}
unset($_SESSION['response']) ?>
<script>
var content = {};
content.message = '<?php echo __($text) ?>';
content.title = '<?php echo ucfirst($title) ?>';
content.icon = "fa fa-bell";
$.notify(content, {
type: '<?php echo $type ?>',
placement: {
from: 'top',
align: 'right',
},
time: 10,
delay: 3,
});
$('#multiple').select2({
theme: "bootstrap"
});
</script>
if (isset($_SESSION['response'])) { ?>
<script src="/src/js/sentri/response.js"></script>
<?php }
}
}

View File

@@ -27,7 +27,7 @@ class pageNavbar
<div class="row">
<div class="col d-flex justify-content-start">
<?php if ($this->breadCrumb) { ?>
<div class="pb-2" id="breadCrumb"></div>
<div class="pb-2" id="breadCrumb">&nbsp;</div>
<?php } elseif ($this->title) { ?>
<h2 class="px-4 mb-0"><?php echo $this->title ?></h2>
<?php } else { ?>

File diff suppressed because it is too large Load Diff