mirror of
https://github.com/UNITRONIX/BetterDesk.git
synced 2026-09-10 09:35:39 +00:00
94 lines
4.5 KiB
HTML
94 lines
4.5 KiB
HTML
<%- include('layouts/main', {
|
|
title: _('cdap.devices_title'),
|
|
pageStyles: ['cdap'],
|
|
pageScripts: ['cdap-devices'],
|
|
currentPage: 'cdap',
|
|
breadcrumb: [
|
|
{ label: _('nav.management') },
|
|
{ label: _('cdap.devices_title') }
|
|
],
|
|
body: `
|
|
<div class="cdap-list-page">
|
|
<!-- Header -->
|
|
<div class="page-header">
|
|
<div class="page-title">
|
|
<h1>${_('cdap.devices_title')}</h1>
|
|
</div>
|
|
<p class="page-subtitle">${_('cdap.devices_subtitle')}</p>
|
|
</div>
|
|
|
|
<!-- Status Banner -->
|
|
<div class="cdap-gateway-banner" id="cdap-gateway-banner">
|
|
<div class="cdap-gateway-status" id="cdap-gw-status">
|
|
<span class="cdap-status-dot"></span>
|
|
<span id="cdap-gw-status-text">${_('common.loading')}</span>
|
|
</div>
|
|
<div class="cdap-gateway-stats">
|
|
<div class="cdap-gw-stat">
|
|
<span class="cdap-gw-stat-value" id="cdap-stat-connected">0</span>
|
|
<span class="cdap-gw-stat-label">${_('cdap.stat_connected')}</span>
|
|
</div>
|
|
<div class="cdap-gw-stat">
|
|
<span class="cdap-gw-stat-value" id="cdap-stat-port">—</span>
|
|
<span class="cdap-gw-stat-label">${_('cdap.stat_port')}</span>
|
|
</div>
|
|
<div class="cdap-gw-stat">
|
|
<span class="cdap-gw-stat-value" id="cdap-stat-tls">—</span>
|
|
<span class="cdap-gw-stat-label">TLS</span>
|
|
</div>
|
|
</div>
|
|
${user && user.role === 'admin' ? `
|
|
<button class="btn btn-sm btn-danger" id="cdap-toggle-btn" title="${_('cdap.toggle_disable')}">
|
|
<span class="material-icons" style="font-size:16px">power_settings_new</span>
|
|
<span>${_('cdap.toggle_disable')}</span>
|
|
</button>
|
|
` : ''}
|
|
</div>
|
|
|
|
<!-- Filters -->
|
|
<div class="panel-actions">
|
|
<div class="search-wrapper">
|
|
<span class="material-icons">search</span>
|
|
<input type="text" class="form-input" id="cdap-search" placeholder="${_('cdap.search_devices')}" />
|
|
</div>
|
|
<div class="filter-buttons" id="cdap-type-filter">
|
|
<button class="filter-btn active" data-type="">${_('common.all')}</button>
|
|
<button class="filter-btn" data-type="iot">${_('cdap.type_iot')}</button>
|
|
<button class="filter-btn" data-type="scada">${_('cdap.type_scada')}</button>
|
|
<button class="filter-btn" data-type="os_agent">${_('cdap.type_os_agent')}</button>
|
|
<button class="filter-btn" data-type="network">${_('cdap.type_network')}</button>
|
|
<button class="filter-btn" data-type="camera">${_('cdap.type_camera')}</button>
|
|
<button class="filter-btn" data-type="custom">${_('cdap.type_custom')}</button>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- Device Grid -->
|
|
<div class="cdap-device-grid" id="cdap-device-grid">
|
|
<div class="cdap-loading" id="cdap-list-loading">
|
|
<div class="cdap-loading-spinner"></div>
|
|
<p>${_('common.loading')}</p>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- Empty State -->
|
|
<div class="cdap-list-empty hidden" id="cdap-list-empty">
|
|
<span class="material-icons cdap-empty-icon">developer_board</span>
|
|
<h3>${_('cdap.no_devices')}</h3>
|
|
<p>${_('cdap.no_devices_desc')}</p>
|
|
</div>
|
|
|
|
<!-- CDAP Disabled State -->
|
|
<div class="cdap-list-empty hidden" id="cdap-disabled-banner">
|
|
<span class="material-icons cdap-empty-icon">power_off</span>
|
|
<h3>${_('cdap.gateway_disabled')}</h3>
|
|
<p>${_('cdap.gateway_disabled_desc')}</p>
|
|
${user && user.role === 'admin' ? `
|
|
<button class="btn btn-primary" id="cdap-enable-btn" style="margin-top: 16px">
|
|
<span class="material-icons" style="font-size:18px">power_settings_new</span>
|
|
<span>${_('cdap.toggle_enable')}</span>
|
|
</button>
|
|
` : ''}
|
|
</div>
|
|
</div>
|
|
` }) %>
|