mirror of
https://github.com/portainer/portainer.git
synced 2025-07-19 13:29:41 +02:00
* chore(project): install prettier and lint-staged * chore(project): apply prettier to html too * chore(project): git ignore eslintcache * chore(project): add a comment about format script * chore(prettier): update printWidth * chore(prettier): remove useTabs option * chore(prettier): add HTML validation * refactor(prettier): fix closing tags * feat(prettier): define angular parser for html templates * style(prettier): run prettier on codebase Co-authored-by: Anthony Lapenna <lapenna.anthony@gmail.com>
105 lines
5.3 KiB
HTML
105 lines
5.3 KiB
HTML
<div class="row">
|
|
<div class="col-lg-12 col-md-12 col-sm-12 col-xs-12">
|
|
<div class="datatable">
|
|
<rd-widget>
|
|
<rd-widget-body classes="no-padding">
|
|
<div class="toolBar">
|
|
<div class="toolBarTitle">
|
|
<i class="fa" ng-class="$ctrl.titleIcon" aria-hidden="true" style="margin-right: 2px;"></i>
|
|
{{ $ctrl.titleText }}
|
|
</div>
|
|
</div>
|
|
<div class="searchBar">
|
|
<i class="fa fa-search searchIcon" aria-hidden="true"></i>
|
|
<input type="text" class="searchInput" ng-model="$ctrl.state.textFilter" placeholder="Search..." auto-focus ng-model-options="{ debounce: 300 }" />
|
|
</div>
|
|
<div class="table-responsive">
|
|
<table class="table table-hover table-filters nowrap-cells">
|
|
<thead>
|
|
<tr>
|
|
<th>
|
|
<a ng-click="$ctrl.changeOrderBy('Endpoint')">
|
|
<i class="fa fa-sort-alpha-down" aria-hidden="true" ng-if="$ctrl.state.orderBy === 'Endpoint' && !$ctrl.state.reverseOrder"></i>
|
|
<i class="fa fa-sort-alpha-up" aria-hidden="true" ng-if="$ctrl.state.orderBy === 'Endpoint' && $ctrl.state.reverseOrder"></i>
|
|
Endpoint
|
|
</a>
|
|
</th>
|
|
<th>
|
|
<a ng-click="$ctrl.changeOrderBy('Id')">
|
|
Id
|
|
<i class="fa fa-sort-alpha-down" aria-hidden="true" ng-if="$ctrl.state.orderBy === 'Id' && !$ctrl.state.reverseOrder"></i>
|
|
<i class="fa fa-sort-alpha-up" aria-hidden="true" ng-if="$ctrl.state.orderBy === 'Id' && $ctrl.state.reverseOrder"></i>
|
|
</a>
|
|
</th>
|
|
<th>
|
|
<a ng-click="$ctrl.changeOrderBy('Status')">
|
|
State
|
|
<i class="fa fa-sort-alpha-down" aria-hidden="true" ng-if="$ctrl.state.orderBy === 'Status' && !$ctrl.state.reverseOrder"></i>
|
|
<i class="fa fa-sort-alpha-up" aria-hidden="true" ng-if="$ctrl.state.orderBy === 'Status' && $ctrl.state.reverseOrder"></i>
|
|
</a>
|
|
</th>
|
|
<th>
|
|
<a ng-click="$ctrl.changeOrderBy('Created')">
|
|
<i class="fa fa-sort-alpha-down" aria-hidden="true" ng-if="$ctrl.state.orderBy === 'Created' && !$ctrl.state.reverseOrder"></i>
|
|
<i class="fa fa-sort-alpha-up" aria-hidden="true" ng-if="$ctrl.state.orderBy === 'Created' && $ctrl.state.reverseOrder"></i>
|
|
Created
|
|
</a>
|
|
</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr
|
|
dir-paginate="item in ($ctrl.state.filteredDataSet = ($ctrl.dataset | filter: $ctrl.applyFilters | filter:$ctrl.state.textFilter | orderBy:$ctrl.state.orderBy:$ctrl.state.reverseOrder | itemsPerPage: $ctrl.state.paginatedItemLimit))"
|
|
>
|
|
<td>
|
|
{{ item.Endpoint.Name }}
|
|
<a ng-if="item.Edge" ng-click="$ctrl.getEdgeTaskLogs(item.EndpointId, item.Id)"
|
|
><i class="fa fa-download" aria-hidden="true" style="margin-left: 5px; margin-right: 2px;"></i> Download logs</a
|
|
>
|
|
</td>
|
|
<td>
|
|
<a ng-if="!item.Edge" ng-click="$ctrl.goToContainerLogs(item.EndpointId, item.Id)">{{ item.Id | truncate: 32 }}</a>
|
|
<span ng-if="item.Edge">-</span>
|
|
</td>
|
|
<td>
|
|
<span ng-if="!item.Edge" class="label label-{{ item.Status | containerstatusbadge }}">{{ item.Status }}</span>
|
|
<span ng-if="item.Edge">-</span>
|
|
</td>
|
|
<td>
|
|
<span ng-if="!item.Edge">{{ item.Created | getisodatefromtimestamp }}</span>
|
|
<span ng-if="item.Edge">-</span>
|
|
</td>
|
|
</tr>
|
|
<tr ng-if="!$ctrl.dataset">
|
|
<td colspan="9" class="text-center text-muted">Loading...</td>
|
|
</tr>
|
|
<tr ng-if="$ctrl.state.filteredDataSet.length === 0">
|
|
<td colspan="9" class="text-center text-muted">No tasks available.</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
<div class="footer" ng-if="$ctrl.dataset">
|
|
<div class="paginationControls">
|
|
<form class="form-inline">
|
|
<span class="limitSelector">
|
|
<span style="margin-right: 5px;">
|
|
Items per page
|
|
</span>
|
|
<select class="form-control" ng-model="$ctrl.state.paginatedItemLimit" ng-change="$ctrl.changePaginationLimit()">
|
|
<option value="0">All</option>
|
|
<option value="10">10</option>
|
|
<option value="25">25</option>
|
|
<option value="50">50</option>
|
|
<option value="100">100</option>
|
|
</select>
|
|
</span>
|
|
<dir-pagination-controls max-size="5"></dir-pagination-controls>
|
|
</form>
|
|
</div>
|
|
</div>
|
|
</rd-widget-body>
|
|
</rd-widget>
|
|
</div>
|
|
</div>
|
|
</div>
|