Fixes in settings admin
This commit is contained in:
parent
2df08a0e7d
commit
e3775e1045
6 changed files with 597 additions and 14 deletions
218
modules/admin/templates/layout.php
Normal file
218
modules/admin/templates/layout.php
Normal file
|
|
@ -0,0 +1,218 @@
|
|||
<?php
|
||||
|
||||
|
||||
//use
|
||||
|
||||
$theme=$_SESSION['theme'] ?? 0;
|
||||
|
||||
$dark_checked='';
|
||||
$dark_css='';
|
||||
|
||||
if($theme=='1') {
|
||||
|
||||
$dark_checked='checked';
|
||||
$dark_css='dark';
|
||||
|
||||
}
|
||||
|
||||
foreach(PhangoApp\PhaRouter\Config::$modules_allowed as $module) {
|
||||
|
||||
//echo $module;
|
||||
|
||||
if(is_file($module.'/settings/config_admin.php')) {
|
||||
|
||||
include($module.'/settings/config_admin.php');
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
?>
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0">
|
||||
<title><?=$title?></title>
|
||||
<link href="<?=$this->make_media_url('modules/admin/media/css/admin.css')?>" rel="stylesheet" />
|
||||
<link href="<?=$this->make_media_url('modules/admin/media/css/responsive-nav.css')?>" rel="stylesheet" />
|
||||
<link href="<?=$this->make_media_url('modules/admin/media/css/tooltipster.bundle.min.css')?>" rel="stylesheet" />
|
||||
<?=$this->section('extra_css')?>
|
||||
<script language="Javascript" src="<?=$this->make_media_url('modules/admin/media/js/jquery.min.js')?>"></script>
|
||||
<script language="Javascript" src="<?=$this->make_media_url('modules/admin/media/js/responsive-nav.min.js')?>"></script>
|
||||
<script language="Javascript" src="<?=$this->make_media_url('modules/admin/media/js/tooltipster.bundle.min.js')?>"></script>
|
||||
<?=$this->section('extra_js')?>
|
||||
<?=$this->section('extra_header')?>
|
||||
</head>
|
||||
<body class="<?=$dark_css?>">
|
||||
<div id="layer_loading"><div id="container_loading"><div class="lds-dual-ring"></div></div></div>
|
||||
<div id="languages_general">
|
||||
</div>
|
||||
<div id="logout">
|
||||
<a href="<?=$this->make_url('admin', 'app', ['logout'])?>"><i class="fa fa-power-off" aria-hidden="true"></i> <?=_('Logout')?></a>
|
||||
</div>
|
||||
|
||||
<div id="center_body">
|
||||
<div id="header">
|
||||
<a href="#nav" id="toggle"><i class="fa fa-bars" aria-hidden="true"></i><span>Menu</span></a>
|
||||
<span id="title_phango"><?=PhangoApp\PhaRouter\Config::$portal_name?></span>
|
||||
</div>
|
||||
<div class="content_admin">
|
||||
|
||||
<nav id="menu" class="nav-collapse">
|
||||
<ul>
|
||||
<li class="menu_title">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 640" width="22" style="fill: currentColor;display: inline-block;vertical-align: -.130em;position:relative;left:-3px;top:2px;">
|
||||
<!--!Font Awesome Free v7.0.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.-->
|
||||
<path d="M259.1 73.5C262.1 58.7 275.2 48 290.4 48L350.2 48C365.4 48 378.5 58.7 381.5 73.5L396 143.5C410.1 149.5 423.3 157.2 435.3 166.3L503.1 143.8C517.5 139 533.3 145 540.9 158.2L570.8 210C578.4 223.2 575.7 239.8 564.3 249.9L511 297.3C511.9 304.7 512.3 312.3 512.3 320C512.3 327.7 511.8 335.3 511 342.7L564.4 390.2C575.8 400.3 578.4 417 570.9 430.1L541 481.9C533.4 495 517.6 501.1 503.2 496.3L435.4 473.8C423.3 482.9 410.1 490.5 396.1 496.6L381.7 566.5C378.6 581.4 365.5 592 350.4 592L290.6 592C275.4 592 262.3 581.3 259.3 566.5L244.9 496.6C230.8 490.6 217.7 482.9 205.6 473.8L137.5 496.3C123.1 501.1 107.3 495.1 99.7 481.9L69.8 430.1C62.2 416.9 64.9 400.3 76.3 390.2L129.7 342.7C128.8 335.3 128.4 327.7 128.4 320C128.4 312.3 128.9 304.7 129.7 297.3L76.3 249.8C64.9 239.7 62.3 223 69.8 209.9L99.7 158.1C107.3 144.9 123.1 138.9 137.5 143.7L205.3 166.2C217.4 157.1 230.6 149.5 244.6 143.4L259.1 73.5zM320.3 400C364.5 399.8 400.2 363.9 400 319.7C399.8 275.5 363.9 239.8 319.7 240C275.5 240.2 239.8 276.1 240 320.3C240.2 364.5 276.1 400.2 320.3 400z"/></svg><?=_('Applications')?></li>
|
||||
<?php
|
||||
|
||||
foreach(Admin\Settings\Config::$config_admin as $admin) {
|
||||
|
||||
$class_selected='';
|
||||
$link_text='';
|
||||
|
||||
if(count($admin)>=3) {
|
||||
|
||||
if($admin[2]==$path_module) {
|
||||
|
||||
$class_selected='selected_menu';
|
||||
|
||||
}
|
||||
|
||||
$icon_module='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 640" width="22" style="fill: currentColor;display: inline-block;vertical-align: -.130em;position:relative;left:-3px;top:2px;"><!--!Font Awesome Free v7.1.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M528 320C528 205.1 434.9 112 320 112C205.1 112 112 205.1 112 320C112 434.9 205.1 528 320 528C434.9 528 528 434.9 528 320zM64 320C64 178.6 178.6 64 320 64C461.4 64 576 178.6 576 320C576 461.4 461.4 576 320 576C178.6 576 64 461.4 64 320z"/></svg>';
|
||||
|
||||
if(count($admin)>3) {
|
||||
|
||||
$icon_module=$admin[3];
|
||||
|
||||
}
|
||||
|
||||
$link_text=$admin[0];
|
||||
|
||||
?>
|
||||
<li><a href="<?=$this->make_url($admin[1])?>" class="<?=$class_selected?>">
|
||||
<?=$icon_module?>
|
||||
<?=$link_text?>
|
||||
</a>
|
||||
</li>
|
||||
<?php
|
||||
|
||||
}
|
||||
else if(count($admin)==1) {
|
||||
|
||||
$link_text=$admin[0];
|
||||
?>
|
||||
<li><div class="father_admin"><?=$link_text?></div></li>
|
||||
<?php
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
?>
|
||||
</ul>
|
||||
</nav>
|
||||
<div class="contents">
|
||||
<h1><?=$title?></h1>
|
||||
<div class="switch-btn">
|
||||
<div class="switch-text">
|
||||
<?=_('Dark theme')?>
|
||||
</div>
|
||||
<div class="switch-slider">
|
||||
<label class="switch">
|
||||
<input type="checkbox" name="theme" value="1" id="theme" <?=$dark_checked?>/>
|
||||
<span class="slider round"></span>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="content">
|
||||
|
||||
<?php
|
||||
|
||||
if(isset($_SESSION['flash'])) {
|
||||
?>
|
||||
<div class="flash"><?=$_SESSION['flash']?></div>
|
||||
<?php
|
||||
unset($_SESSION['flash']);
|
||||
}
|
||||
?>
|
||||
<script>setTimeout(function () { $(".flash").fadeOut(); }, 3000);</script>
|
||||
<?=$this->section('content')?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="loading_ajax">
|
||||
</div>
|
||||
<script>
|
||||
var navigation = responsiveNav(".nav-collapse", {customToggle: "#toggle"});
|
||||
|
||||
$('.tooltip').tooltipster({
|
||||
animation: 'fade',
|
||||
delay: 100,
|
||||
trigger: 'click'
|
||||
});
|
||||
|
||||
const slider = document.querySelector('input[name="theme"]');
|
||||
|
||||
slider.addEventListener("change", function () {
|
||||
|
||||
//Block button while send to ajax.
|
||||
|
||||
$(this).prop("disabled",true);
|
||||
|
||||
var dark='';
|
||||
|
||||
if (this.checked) {
|
||||
document.body.classList.add("dark");
|
||||
|
||||
dark='1';
|
||||
|
||||
} else {
|
||||
document.body.classList.remove("dark");
|
||||
|
||||
dark='0';
|
||||
}
|
||||
|
||||
$.ajax({
|
||||
url: "<?=$this->make_url('admin', 'app', ['change_theme'])?>?theme="+dark,
|
||||
type: 'GET',
|
||||
data: {},
|
||||
success: function (data) {
|
||||
|
||||
if(!data.error) {
|
||||
|
||||
console.log('Changed to dark in all pages');
|
||||
|
||||
}
|
||||
else {
|
||||
|
||||
console.log('Cannot set dark theme in all pages!');
|
||||
|
||||
}
|
||||
|
||||
$(slider).prop("disabled",false);
|
||||
|
||||
},
|
||||
error: function (data) {
|
||||
|
||||
alert('Error: '+data.status+' '+data.statusText);
|
||||
|
||||
$(slider).prop("disabled", false);
|
||||
|
||||
},
|
||||
dataType: 'json'
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
$(document).ready(function () {
|
||||
|
||||
$('#layer_loading').hide();
|
||||
|
||||
});
|
||||
|
||||
</script>
|
||||
<?=$this->section('footer_js')?>
|
||||
</body>
|
||||
</html>
|
||||
Loading…
Add table
Add a link
Reference in a new issue