mirror of
https://github.com/valitydev/wazuh-kibana-app.git
synced 2024-11-07 10:18:57 +00:00
124 lines
6.2 KiB
Plaintext
124 lines
6.2 KiB
Plaintext
<div flex layout="column" ng-cloak ng-controller="agentsController">
|
|
|
|
<!-- Top navbar section -->
|
|
<wz-menu ng-init="menuNavItem = 'agents'"></wz-menu>
|
|
<!-- End top navbar section -->
|
|
|
|
<!-- Navigation section (Breadcrumbs, Discover, etc) -->
|
|
<div layout="row" layout-align="start center">
|
|
<!-- Breadcrumbs -->
|
|
<div layout="row" layout-padding ng-if="agent">
|
|
<!-- If you're not on the Welcome tab, show a functional breadcrumb -->
|
|
<div ng-if="tab !== 'welcome'">
|
|
<i class="fa fa-fw fa-tv" aria-hidden="true"></i>
|
|
<span class="wz-text-link wz-text-bold cursor-pointer" ng-click="switchTab('welcome')">{{agent.name}} ({{agent.id}})</span>
|
|
<span> / {{ tabNames[tab] }}</span>
|
|
</div>
|
|
<!-- If you're on the Welcome tab, show a blank, simple breadcrumb -->
|
|
<div ng-if="tab === 'welcome'">
|
|
<i class="fa fa-fw fa-tv" aria-hidden="true"></i>
|
|
<span class="wz-text-bold">{{agent.name}} ({{agent.id}})</span>
|
|
<span> / Welcome</span>
|
|
</div>
|
|
</div>
|
|
<!-- End breadcrumbs -->
|
|
|
|
<!-- Agent status section -->
|
|
<div ng-if="agent.status">
|
|
<span class="wz-agent-status-indicator small" ng-class="getAgentStatusClass(agent.status)" aria-label="Agent status indicator">{{formatAgentStatus(agent.status)}}</span>
|
|
</div>
|
|
<!-- End agent status section -->
|
|
|
|
<!-- Reporting button section -->
|
|
<div ng-show="tab !== 'welcome' && tab !== 'configuration' && tab !== 'syscollector'">
|
|
<!-- Report button -->
|
|
<md-button md-no-ink class="md-icon-button small wz-no-margin-padding" tooltip="Generate report" tooltip-placement="bottom" ng-disabled="!rendered || loading || resultState !== 'ready'" ng-click="startVis2Png()" aria-label="Generate report button">
|
|
<i class="fa fa-fw fa-print" aria-hidden="true"></i>
|
|
</md-button>
|
|
</div>
|
|
<!-- End Reporting buttons section -->
|
|
|
|
<!-- Separator -->
|
|
<span flex></span>
|
|
<!-- End separator -->
|
|
|
|
<!-- Discover/Panels buttons section -->
|
|
<div ng-show="tab !== 'welcome' && tab !== 'configuration' && tab !== 'syscollector'">
|
|
<!-- Panels button -->
|
|
<md-button ng-if="tabView === 'discover'" class="wz-button-flat small" ng-click="switchSubtab('panels')" aria-label="View panels button">
|
|
<i class="fa fa-fw fa-th" aria-hidden="true"></i> View panels
|
|
</md-button>
|
|
|
|
<!-- Discover button -->
|
|
<md-button ng-if="tabView === 'panels'" class="wz-button-flat small" ng-click="switchSubtab('discover')" aria-label="View Discover button">
|
|
<i class="fa fa-fw fa-compass" aria-hidden="true"></i> View Discover
|
|
</md-button>
|
|
</div>
|
|
<!-- End Discover/Panels buttons section -->
|
|
|
|
<!-- Agent autocomplete selector section -->
|
|
<div flex="30" class="wz-margin-8-no-left">
|
|
<md-autocomplete id="agentsAutocomplete" flex class="wz-autocomplete wz-select-input"
|
|
md-no-cache="true"
|
|
md-select-on-match="false"
|
|
md-selected-item="_swpagent"
|
|
md-selected-item-change="getAgent(_swpagent.id,true)"
|
|
md-search-text="searchTerm"
|
|
md-items="agentAutoComplete in analyzeAgents(searchTerm)"
|
|
md-item-text="agentAutoComplete.name"
|
|
md-min-length="0"
|
|
md-no-asterisk="false"
|
|
md-menu-class="autocomplete-custom-agents-bar"
|
|
md-search-text-change="analyzeAgents(searchTerm)"
|
|
placeholder="Search by name, ID or IP address"
|
|
lazy-load-data="agentsAutoComplete.nextPage('')">
|
|
<md-item-template>
|
|
<span class="item-title">
|
|
<span><strong md-highlight-text="search" md-highlight-flags="i"> {{agentAutoComplete.name}} ({{agentAutoComplete.id}}) </strong></span>
|
|
</span>
|
|
<span class="item-metadata">
|
|
<span class="item-metastat" md-highlight-text="searchTerm" md-highlight-flags="i"> {{agentAutoComplete.ip}} ({{agentAutoComplete.status}}) </span>
|
|
</span>
|
|
</md-item-template>
|
|
<md-not-found>
|
|
No agents matching "{{searchTerm}}" were found.
|
|
</md-not-found>
|
|
</md-autocomplete>
|
|
</div>
|
|
<!-- End agent autocomplete selector section -->
|
|
</div>
|
|
<!-- End navigation section -->
|
|
|
|
<!-- Discover search bar section -->
|
|
<kbn-dis ng-show="(tab !== 'welcome') && (tab !== 'configuration') && tab !== 'syscollector'"></kbn-dis>
|
|
<!-- End Discover search bar section -->
|
|
|
|
<!-- Loading status section -->
|
|
<div layout="column" layout-align="center center" ng-if="(tab !== 'welcome') && (tab !== 'configuration') && tab !== 'syscollector'" ng-show="resultState === 'ready' && tabView === 'panels' && !rendered">
|
|
<div class="percentage"><i class="fa fa-fw fa-spin fa-spinner" aria-hidden="true"></i></div>
|
|
<div class="percentage">{{loadingStatus}}</div>
|
|
</div>
|
|
<!-- End loading status section -->
|
|
|
|
<!-- Report status section -->
|
|
<div layout="column" layout-align="center center" ng-if="(tab !== 'welcome') && (tab !== 'configuration') && tab !== 'syscollector'" ng-show="reportBusy && reportStatus">
|
|
<div class="percentage"><i class="fa fa-fw fa-spin fa-spinner" aria-hidden="true"></i></div>
|
|
<div class="percentage">{{reportStatus}}</div>
|
|
</div>
|
|
<!-- End report status section -->
|
|
|
|
<!-- No results section -->
|
|
<div layout="row" ng-if="(tab !== 'welcome') && (tab !== 'configuration') && tab !== 'syscollector'" ng-show="resultState !== 'ready' && tabView === 'panels'">
|
|
<md-card flex layout="column" class="wz-md-card">
|
|
<md-card-content class="wz-text-center">
|
|
<span>There are no results for selected time range. Try another one.</span>
|
|
</md-card-content>
|
|
</md-card>
|
|
</div>
|
|
<!-- No results section -->
|
|
|
|
<!-- Loading ring -->
|
|
<div class='uil-ring-css' ng-show="load">
|
|
<div></div>
|
|
</div>
|