mirror of
https://github.com/jokob-sk/NetAlertX.git
synced 2025-12-07 09:36:05 -08:00
Device Edit Rebuild + New Dummy Device
This commit is contained in:
57
front/php/components/device_cards.php
Executable file
57
front/php/components/device_cards.php
Executable file
@@ -0,0 +1,57 @@
|
||||
<?php
|
||||
|
||||
require '../server/init.php';
|
||||
|
||||
//------------------------------------------------------------------------------
|
||||
// check if authenticated
|
||||
require_once $_SERVER['DOCUMENT_ROOT'] . '/php/templates/security.php';
|
||||
|
||||
function renderSmallBox($params) {
|
||||
$onclickEvent = isset($params['onclickEvent']) ? $params['onclickEvent'] : '';
|
||||
$color = isset($params['color']) ? $params['color'] : '';
|
||||
$headerId = isset($params['headerId']) ? $params['headerId'] : '';
|
||||
$headerStyle = isset($params['headerStyle']) ? $params['headerStyle'] : '';
|
||||
$labelLang = isset($params['labelLang']) ? $params['labelLang'] : '';
|
||||
$iconId = isset($params['iconId']) ? $params['iconId'] : '';
|
||||
$iconClass = isset($params['iconClass']) ? $params['iconClass'] : '';
|
||||
$dataValue = isset($params['dataValue']) ? $params['dataValue'] : '';
|
||||
|
||||
return '
|
||||
<div class="col-lg-3 col-sm-6 col-xs-6">
|
||||
<a href="#" onclick="javascript: ' . htmlspecialchars($onclickEvent) . '">
|
||||
<div class="small-box ' . htmlspecialchars($color) . '">
|
||||
<div class="inner">
|
||||
<h3 id="' . htmlspecialchars($headerId) . '" style="' . htmlspecialchars($headerStyle) . '"> '.$dataValue.' </h3>
|
||||
<p class="infobox_label">'.lang(htmlspecialchars($labelLang)).'</p>
|
||||
</div>
|
||||
<div class="icon">
|
||||
<i id="' . htmlspecialchars($iconId) . '" class="' . htmlspecialchars($iconClass) . '"></i>
|
||||
</div>
|
||||
</div>
|
||||
</a>
|
||||
</div>';
|
||||
}
|
||||
|
||||
// Load default data from JSON file
|
||||
$defaultDataFile = 'device_cards_defaults.json';
|
||||
$defaultData = file_exists($defaultDataFile) ? json_decode(file_get_contents($defaultDataFile), true) : [];
|
||||
|
||||
// Check if 'items' parameter exists and is valid JSON
|
||||
$items = isset($_POST['items']) ? json_decode($_POST['items'], true) : [];
|
||||
|
||||
// Use default data if 'items' is not provided or cannot be decoded
|
||||
if (empty($items)) {
|
||||
$items = $defaultData;
|
||||
}
|
||||
|
||||
// Generate HTML
|
||||
$html = '<div class="row">';
|
||||
foreach ($items as $item) {
|
||||
$html .= renderSmallBox($item);
|
||||
}
|
||||
$html .= '</div>';
|
||||
|
||||
// Output generated HTML
|
||||
echo $html;
|
||||
exit();
|
||||
?>
|
||||
43
front/php/components/device_cards_defaults.json
Executable file
43
front/php/components/device_cards_defaults.json
Executable file
@@ -0,0 +1,43 @@
|
||||
[
|
||||
{
|
||||
"onclickEvent": "$('#tabDetails').trigger('click')",
|
||||
"color": "bg-aqua",
|
||||
"headerId": "deviceStatus",
|
||||
"headerStyle": "margin-left: 0em",
|
||||
"labelLang": "DevDetail_Shortcut_CurrentStatus",
|
||||
"iconId": "deviceStatusIcon",
|
||||
"iconClass": "",
|
||||
"dataValue": "--"
|
||||
},
|
||||
{
|
||||
"onclickEvent": "$('#tabSessions').trigger('click');",
|
||||
"color": "bg-green",
|
||||
"headerId": "deviceSessions",
|
||||
"headerStyle": "",
|
||||
"labelLang": "DevDetail_Shortcut_Sessions",
|
||||
"iconId": "",
|
||||
"iconClass": "fa fa-plug",
|
||||
"dataValue": "--"
|
||||
},
|
||||
{
|
||||
"onclickEvent": "$('#tabPresence').trigger('click')",
|
||||
"color": "bg-yellow",
|
||||
"headerId": "deviceEvents",
|
||||
"headerStyle": "margin-left: 0em",
|
||||
"labelLang": "DevDetail_Shortcut_Presence",
|
||||
"iconId": "deviceEventsIcon",
|
||||
"iconClass": "fa fa-calendar",
|
||||
"dataValue": "--"
|
||||
},
|
||||
{
|
||||
"onclickEvent": "$('#tabEvents').trigger('click');",
|
||||
"color": "bg-red",
|
||||
"headerId": "deviceDownAlerts",
|
||||
"headerStyle": "",
|
||||
"labelLang": "DevDetail_Shortcut_DownAlerts",
|
||||
"iconId": "",
|
||||
"iconClass": "fa fa-warning",
|
||||
"dataValue": "--"
|
||||
}
|
||||
]
|
||||
|
||||
@@ -68,6 +68,10 @@
|
||||
},
|
||||
{
|
||||
"buttons": [
|
||||
{
|
||||
"labelStringCode": "Maint_PurgeLog",
|
||||
"event": "logManage('db_is_locked.log', 'cleanLog')"
|
||||
}
|
||||
],
|
||||
"fileName": "db_is_locked.log",
|
||||
"filePath": "/app/front/log/db_is_locked.log",
|
||||
|
||||
Reference in New Issue
Block a user