mirror of
https://github.com/slawkens/myaac.git
synced 2025-04-26 17:29:21 +02:00
Dashboard modules updated
More flexibility and additions on the dashboard modules. -Statistics: Accounts, Players, Monsters, Guilds, Houses -Website Status: Maintenance -Server Status: name, client, map, monsters loaded, MOTD, default: 'admin_panel_modules' => 'statistics,web_status,server_status,lastlogin,created,points,coins,balance',
This commit is contained in:
parent
0f6612904e
commit
30cdb1ba73
@ -273,7 +273,7 @@ $config = array(
|
||||
'status_interval' => 60,
|
||||
|
||||
// admin panel
|
||||
'admin_panel_modules' => 'lastlogin,points,coins',
|
||||
'admin_panel_modules' => 'statistics,web_status,server_status,lastlogin,created,points,coins,balance', // default - statistics,web_status,server_status,lastlogin,created,points,coins,balance
|
||||
|
||||
// other
|
||||
'anonymous_usage_statistics' => true,
|
||||
|
@ -47,33 +47,20 @@ $tmp = '';
|
||||
if (fetchDatabaseConfig('site_closed_message', $tmp))
|
||||
$closed_message = $tmp;
|
||||
|
||||
$query_count = $db->query('SELECT
|
||||
(SELECT COUNT(*) FROM accounts) as total_accounts,
|
||||
(SELECT COUNT(*) FROM players) as total_players,
|
||||
(SELECT COUNT(*) FROM guilds) as total_guilds,
|
||||
(SELECT COUNT(*) FROM houses) as total_houses;')->fetch();
|
||||
|
||||
$twig->display('admin.statistics.html.twig', array(
|
||||
'count' => $query_count,
|
||||
));
|
||||
|
||||
echo '<div class="row">';
|
||||
$twig->display('admin.dashboard.html.twig', array(
|
||||
'is_closed' => $is_closed,
|
||||
'closed_message' => $closed_message,
|
||||
'status' => $status,
|
||||
'account_type' => USE_ACCOUNT_NAME ? 'name' : 'number'
|
||||
));
|
||||
$twig->display('admin.dashboard.html.twig', array());
|
||||
echo '</div>';
|
||||
|
||||
$configAdminPanelModules = config('admin_panel_modules');
|
||||
if (isset($configAdminPanelModules))
|
||||
if (isset($configAdminPanelModules)) {
|
||||
echo '<div class="row">';
|
||||
$configAdminPanelModules = explode(',', $configAdminPanelModules);
|
||||
|
||||
$twig_loader->prependPath(__DIR__ . '/modules/templates');
|
||||
foreach ($configAdminPanelModules as $box) {
|
||||
$twig_loader->prependPath(__DIR__ . '/modules/templates');
|
||||
foreach ($configAdminPanelModules as $box) {
|
||||
$file = __DIR__ . '/modules/' . $box . '.php';
|
||||
if (file_exists($file)) {
|
||||
include($file);
|
||||
}
|
||||
}
|
||||
}
|
||||
echo '</div>';
|
||||
}
|
46
system/pages/admin/modules/server_status.php
Normal file
46
system/pages/admin/modules/server_status.php
Normal file
@ -0,0 +1,46 @@
|
||||
<?php
|
||||
defined('MYAAC') or die('Direct access not allowed!');
|
||||
if (isset($status)) {
|
||||
|
||||
$error_icon = '<i class="fas fa-exclamation-circle text-danger"></i>'; ?>
|
||||
<div class=" col-md-6 col-lg-6">
|
||||
<div class="card card-info card-outline">
|
||||
<div class="card-header border-bottom-0">
|
||||
<span class="font-weight-bold m-0">Server Status</span> <span class="float-right small"><b>Last checked</b>: <?php echo(isset($status['lastCheck']) ? date("H:i:s", $status['lastCheck']) : $error_icon); ?></span>
|
||||
</div>
|
||||
<div class="card-body p-0 ">
|
||||
<table class="table">
|
||||
<tbody>
|
||||
<tr>
|
||||
<th width="30%">Server</th>
|
||||
<td><?php echo(isset($status['server']) & isset($status['serverVersion']) ? $status['server'] . ' x ' . $status['serverVersion'] : $error_icon) ?></td>
|
||||
|
||||
</tr>
|
||||
<tr>
|
||||
<th>Client</th>
|
||||
<td><?php echo(isset($status['clientVersion']) ? $status['clientVersion'] : $error_icon) ?></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>Map</th>
|
||||
<td>
|
||||
<?php if (isset($status['mapName']) & isset($status['mapAuthor']) & isset($status['mapWidth']) & isset($status['mapHeight'])) {
|
||||
echo $status['mapName'] . ' by <b>' . $status['mapAuthor'] . '</b><br/>' . $status['mapWidth'] . ' x ' . $status['mapHeight'];
|
||||
} else {
|
||||
echo $error_icon;
|
||||
} ?>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>Monsters</th>
|
||||
<td><?php echo (isset($status['monsters']) ? $status['monsters'] : $error_icon); ?></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>MOTD:</th>
|
||||
<td><?php echo(isset($status['motd']) ? $status['motd'] : $error_icon); ?></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<?php } ?>
|
56
system/pages/admin/modules/statistics.php
Normal file
56
system/pages/admin/modules/statistics.php
Normal file
@ -0,0 +1,56 @@
|
||||
<?php
|
||||
defined('MYAAC') or die('Direct access not allowed!');
|
||||
$count = $db->query('SELECT
|
||||
(SELECT COUNT(*) FROM `accounts`) as total_accounts,
|
||||
(SELECT COUNT(*) FROM `players`) as total_players,
|
||||
(SELECT COUNT(*) FROM `guilds`) as total_guilds,
|
||||
(SELECT COUNT(*) FROM `' . TABLE_PREFIX . 'monsters`) as total_monsters,
|
||||
(SELECT COUNT(*) FROM `houses`) as total_houses;')->fetch();
|
||||
|
||||
$error_icon = '<i class="fas fa-exclamation-circle text-danger"></i>';
|
||||
?>
|
||||
<div class="col">
|
||||
<div class="info-box">
|
||||
<span class="info-box-icon bg-info elevation-1"><i class="fas fa-user-plus"></i></span>
|
||||
<div class="info-box-content">
|
||||
<span class="info-box-text">Accounts:</span>
|
||||
<span class="info-box-number"><?php echo $count['total_accounts']?></span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col">
|
||||
<div class="info-box">
|
||||
<span class="info-box-icon bg-red elevation-1"><i class="fas fa-user-plus"></i></span>
|
||||
<div class="info-box-content">
|
||||
<span class="info-box-text">Players:</span>
|
||||
<span class="info-box-number"><?php echo $count['total_players']?></span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col">
|
||||
<div class="info-box">
|
||||
<span class="info-box-icon bg-teal elevation-1"><i class="fas fa-pastafarianism"></i></span>
|
||||
<div class="info-box-content">
|
||||
<span class="info-box-text">Monsters:</span>
|
||||
<span class="info-box-number"><?php echo $count['total_monsters']?></span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col">
|
||||
<div class="info-box">
|
||||
<span class="info-box-icon bg-green elevation-1"><i class="fas fa-chart-pie"></i></span>
|
||||
<div class="info-box-content">
|
||||
<span class="info-box-text">Guilds:</span>
|
||||
<span class="info-box-number"><?php echo $count['total_guilds']?></span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col">
|
||||
<div class="info-box">
|
||||
<span class="info-box-icon bg-yellow elevation-1"><i class="fas fa-home"></i></span>
|
||||
<div class="info-box-content">
|
||||
<span class="info-box-text">Houses:</span>
|
||||
<span class="info-box-number"><?php echo $count['total_houses']?></span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
27
system/pages/admin/modules/templates/web_status.twig
Normal file
27
system/pages/admin/modules/templates/web_status.twig
Normal file
@ -0,0 +1,27 @@
|
||||
<div class="col-12 col-md-6">
|
||||
<div class="card card-warning card-outline">
|
||||
<form action="?p=dashboard&maintenance" method="post" class="form-horizontal">
|
||||
<div class="card-header">
|
||||
<span class="m-0">Website Status<span class="float-right">
|
||||
<div class="custom-control custom-switch custom-switch-off-danger custom-switch-on-success">
|
||||
<input type="checkbox" class="custom-control-input" name="status" id="status" value="true" {% if not is_closed %} checked{% endif %}>
|
||||
<label class="custom-control-label" for="status"> {% if is_closed %}Closed{% else %}Open{% endif %}</label>
|
||||
</div></span>
|
||||
</span>
|
||||
</div>
|
||||
<div class="card-body p-2">
|
||||
<div class="col-sm-12">
|
||||
<label for="message" class="col-form-label">Maintenance Message</label>
|
||||
<textarea name="message" class="form-control" cols="40" rows="3" maxlength="255" placeholder="Enter ...">{{ closed_message }}</textarea>
|
||||
<small>(only visible if closed)</small>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-footer">
|
||||
<button type="submit" class="btn btn-info"><i class="far fa-update"></i> Update</button>
|
||||
<a href="?p=dashboard&clear_cache" onclick="return confirm('Are you sure?');" class="float-right">
|
||||
<span class="btn btn-danger"><i class="fas fa-clear"></i>Clear cache</span>
|
||||
</a>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
10
system/pages/admin/modules/web_status.php
Normal file
10
system/pages/admin/modules/web_status.php
Normal file
@ -0,0 +1,10 @@
|
||||
<?php
|
||||
defined('MYAAC') or die('Direct access not allowed!');
|
||||
|
||||
$twig->display('web_status.twig', array(
|
||||
'is_closed' => $is_closed,
|
||||
'closed_message' => $closed_message,
|
||||
'status' => $status,
|
||||
'account_type' => USE_ACCOUNT_NAME ? 'name' : 'number'
|
||||
));
|
||||
?>
|
@ -1,27 +0,0 @@
|
||||
<div class="col-12 col-md-6">
|
||||
<div class="card card-warning card-outline">
|
||||
<form action="?p=dashboard&maintenance" method="post" class="form-horizontal">
|
||||
<div class="card-header">
|
||||
<h5 class="m-0">Website Status<span class="float-right">
|
||||
<div class="custom-control custom-switch custom-switch-off-danger custom-switch-on-success">
|
||||
<input type="checkbox" class="custom-control-input" name="status" id="status" value="true" {% if not is_closed %} checked{% endif %}>
|
||||
<label class="custom-control-label" for="status"> {% if is_closed %}Closed{% else %}Open{% endif %}</label>
|
||||
</div></span>
|
||||
</h5>
|
||||
</div>
|
||||
<div class="card-body p-2">
|
||||
<div class="col-sm-12">
|
||||
<label for="message" class="col-form-label">Maintenance Message</label>
|
||||
<textarea name="message" class="form-control" cols="40" rows="3" maxlength="255" placeholder="Enter ...">{{ closed_message }}</textarea>
|
||||
<small>(only visible if closed)</small>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-footer">
|
||||
<button type="submit" class="btn btn-info"><i class="far fa-update"></i> Update</button>
|
||||
<a href="?p=dashboard&clear_cache" onclick="return confirm('Are you sure?');" class="float-right">
|
||||
<span class="btn btn-danger"><i class="fas fa-clear"></i>Clear cache</span>
|
||||
</a>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
Loading…
x
Reference in New Issue
Block a user