95 lines
		
	
	
		
			6.6 KiB
		
	
	
	
		
			PHP
		
	
		
		
			
		
	
	
			95 lines
		
	
	
		
			6.6 KiB
		
	
	
	
		
			PHP
		
	
|  | 
 | ||
|  | <!-- agents live data --> | ||
|  | <div class="container-fluid mt-2"> | ||
|  |     <div class="row mb-4"> | ||
|  |         <div class="col-12 mb-4"> | ||
|  |             <h2 class="mb-0">Jilo Agents on platform <?= htmlspecialchars($platform_id) ?> (<?= htmlspecialchars($platformDetails[0]['name']) ?>)</h2>
 | ||
|  |             <small>Manage and monitor agents on this platform.</small> | ||
|  |         </div> | ||
|  |     </div> | ||
|  | 
 | ||
|  |     <!-- hosts and their agents --> | ||
|  |     <div class="row"> | ||
|  |         <?php foreach ($agentsByHost as $hostId => $hostData): ?>
 | ||
|  |             <div class="col-12 mb-4"> | ||
|  |                 <div class="card"> | ||
|  |                     <div class="card-header bg-light"> | ||
|  |                         <h5 class="mb-0"> | ||
|  |                             <i class="fas fa-network-wired me-2 text-secondary"></i> | ||
|  |                             Host: <?= htmlspecialchars($hostData['host_name']) ?>
 | ||
|  |                             <a href="<?= htmlspecialchars($app_root) ?>?page=settings#platform-<?= htmlspecialchars($platform_id) ?>host-<?= htmlspecialchars($hostId) ?>" class="text-decoration-none"> | ||
|  |                                 <i class="fas fa-edit ms-2"></i> | ||
|  |                             </a> | ||
|  |                         </h5> | ||
|  |                     </div> | ||
|  |                     <div class="card-body"> | ||
|  |                         <?php if (empty($hostData['agents'])): ?>
 | ||
|  |                             <p class="text-muted">No agents on this host.</p> | ||
|  |                         <?php else: ?>
 | ||
|  |                             <?php foreach ($hostData['agents'] as $agent): ?>
 | ||
|  |                                 <div class="agent-item mb-4 pb-3 border-bottom"> | ||
|  |                                     <div class="d-flex align-items-center mb-2"> | ||
|  |                                         <div class="flex-grow-1"> | ||
|  |                                             <i class="fas fa-robot me-2 text-secondary"></i> | ||
|  |                                             <strong>Agent ID:</strong> <?= htmlspecialchars($agent['id']) ?> |
 | ||
|  |                                             <strong>Type:</strong> <?= htmlspecialchars($agent['agent_type_id']) ?> (<?= htmlspecialchars($agent['agent_description']) ?>) |
 | ||
|  |                                             <strong>Endpoint:</strong> <?= htmlspecialchars($agent['url']) ?><?= htmlspecialchars($agent['agent_endpoint']) ?>
 | ||
|  |                                             <a href="<?= htmlspecialchars($app_root) ?>?page=settings#platform-<?= htmlspecialchars($platform_id) ?>agent-<?= htmlspecialchars($agent['id']) ?>" class="text-decoration-none"> | ||
|  |                                                 <i class="fas fa-edit ms-2"></i> | ||
|  |                                             </a> | ||
|  |                                         </div> | ||
|  |                                     </div> | ||
|  | 
 | ||
|  |                                     <div class="btn-group" role="group"> | ||
|  |                                         <button id="agent<?= htmlspecialchars($agent['id']) ?>-status"  | ||
|  |                                                 class="btn btn-primary"  | ||
|  |                                                 data-toggle="tooltip"  | ||
|  |                                                 data-trigger="hover"  | ||
|  |                                                 data-placement="bottom"  | ||
|  |                                                 title="Get the agent status"  | ||
|  |                                                 onclick="fetchData('<?= htmlspecialchars($agent['id']) ?>', '<?= htmlspecialchars($agent['url']) ?>', '/status', '<?= htmlspecialchars($agentTokens[$agent['id']]) ?>', true)"> | ||
|  |                                             Get Status | ||
|  |                                         </button> | ||
|  |                                         <button id="agent<?= htmlspecialchars($agent['id']) ?>-fetch"  | ||
|  |                                                 class="btn btn-primary"  | ||
|  |                                                 data-toggle="tooltip"  | ||
|  |                                                 data-trigger="hover"  | ||
|  |                                                 data-placement="bottom"  | ||
|  |                                                 title="Get data from the agent"  | ||
|  |                                                 onclick="fetchData('<?= htmlspecialchars($agent['id']) ?>', '<?= htmlspecialchars($agent['url']) ?>', '<?= htmlspecialchars($agent['agent_endpoint']) ?>', '<?= htmlspecialchars($agentTokens[$agent['id']]) ?>', <?= isset($_SESSION["agent{$agent['id']}_cache"]) ? 'true' : 'false' ?>)">
 | ||
|  |                                             Fetch Data | ||
|  |                                         </button> | ||
|  |                                         <button id="agent<?= htmlspecialchars($agent['id']) ?>-cache"  | ||
|  |                                                 <?= !isset($_SESSION["agent{$agent['id']}_cache"]) ? 'style="display:none;" ' : '' ?>
 | ||
|  |                                                 class="btn btn-secondary"  | ||
|  |                                                 data-toggle="tooltip"  | ||
|  |                                                 data-trigger="hover"  | ||
|  |                                                 data-placement="bottom"  | ||
|  |                                                 title="Load cache"  | ||
|  |                                                 onclick="loadCache('<?= htmlspecialchars($agent['id']) ?>')"> | ||
|  |                                             Load Cache | ||
|  |                                         </button> | ||
|  |                                         <button id="agent<?= htmlspecialchars($agent['id']) ?>-clear"  | ||
|  |                                                 <?= !isset($_SESSION["agent{$agent['id']}_cache"]) ? 'style="display:none;" ' : '' ?>
 | ||
|  |                                                 class="btn btn-danger"  | ||
|  |                                                 data-toggle="tooltip"  | ||
|  |                                                 data-trigger="hover"  | ||
|  |                                                 data-placement="bottom"  | ||
|  |                                                 title="Clear cache"  | ||
|  |                                                 onclick="clearCache('<?= htmlspecialchars($agent['id']) ?>')"> | ||
|  |                                             Clear Cache | ||
|  |                                         </button> | ||
|  |                                     </div> | ||
|  |                                     <span id="cacheInfo<?= htmlspecialchars($agent['id']) ?>" class="ms-2 <?= isset($_SESSION["agent{$agent['id']}_cache"]) ? '' : 'd-none' ?>"></span>
 | ||
|  |                                     <pre class="results mt-3" id="result<?= htmlspecialchars($agent['id']) ?>">Click a button to display data from the agent.</pre> | ||
|  |                                 </div> | ||
|  |                             <?php endforeach; ?>
 | ||
|  |                         <?php endif; ?>
 | ||
|  |                     </div> | ||
|  |                 </div> | ||
|  |             </div> | ||
|  |         <?php endforeach; ?>
 | ||
|  |     </div> | ||
|  | </div> | ||
|  | <!-- agents live data --> |