Free cookie consent management tool by TermsFeed Policy Generator

source: branches/HiveStatistics/sources/HeuristicLab.Services.WebApp.Statistics/3.3/WebApp/clients/clients.cshtml @ 12551

Last change on this file since 12551 was 12551, checked in by dglaser, 9 years ago

#2388:

HeuristicLab.Services.Hive.DataAccess-3.3:

  • updated database schema
  • updated sql scripts
  • updated HiveStatisticsGenerator

HeuristicLab.Services.WebApp-3.3:

  • merged from trunk

HeuristicLab.Services.WebApp.Status-3.3:

  • updated data api controller

HeuristicLab.Services.WebApp.Statistics-3.3:

  • added exception page
  • improved jobs, clients, users and groups page
File size: 5.7 KB
Line 
1@using HeuristicLab.Services.Access.DataTransfer
2@using HeuristicLab.Services.Hive
3<header class="view-header">
4    <ul class="nav nav-list nav-list-topbar pull-left">
5        <li>
6            <a ng-href="#/statistics/jobs">Jobs</a>
7        </li>
8        @if (Request.IsAuthenticated && User.IsInRole(HiveRoles.Administrator))
9        {
10            <li>
11                <a ng-href="#/statistics/users">Users</a>
12            </li>
13        }
14        <li class="active">
15            <a ng-href="#/statistics/clients">Clients</a>
16        </li>
17        <li>
18            <a ng-href="#/statistics/groups">Groups</a>
19        </li>
20        @if (Request.IsAuthenticated && User.IsInRole(HiveRoles.Administrator)) {
21            <li>
22                <a ng-href="#/statistics/exceptions">Exceptions</a>
23            </li>
24        }
25    </ul>
26</header>
27
28<div class="default-view-container">
29    <div class="row">
30        <div class="col-lg-12">
31            <div class="panel panel-default">
32                <div class="panel-heading">
33                    <h3 class="panel-title">Current Clients</h3>
34                </div>
35                <div class="panel-body">
36                    <table class="table table-hover table-condensed">
37                        <thead>
38                        <tr>
39                            <th>#</th>
40                            <th>Client Name</th>
41                            <th>Group Name</th>
42                            <th>Cores</th>
43                            <th>Cpu Utilization</th>
44                            <th>Memory</th>
45                            <th>State</th>
46                            <th></th>
47                        </tr>
48                        </thead>
49                        <tr ng-repeat="client in clientPage.Clients">
50                            <td>{{($index + 1)+((curClientsPage-1)*(clientsPageSize))}}</td>
51                            <td>{{client.Name}}</td>
52                            <td>
53                                <a ng-show="client.GroupName" ng-href="#/statistics/groups/{{client.GroupId}}">{{client.GroupName}}</a>
54                                <span ng-hide="client.GroupName">No Group</span>
55                            </td>
56                            <td>{{client.UsedCores}} / {{client.TotalCores}}</td>
57                            <td>{{client.CpuUtilization | number: 2}} %</td>
58                            <td>{{client.UsedMemory | kbToGB}} / {{client.TotalMemory | kbToGB}} GB</td>
59                            <td>{{client.State}}</td>
60                            <td>
61                                <a ng-href="#/statistics/clients/{{client.Id}}">Details</a>
62                            </td>
63                        </tr>
64                        <tr ng-hide="clientPage.Clients.length">
65                            <td colspan="7" class="text-center">No clients found!</td>
66                        </tr>
67                    </table>
68                    <div class="row text-center" ng-show="clientPage.TotalClients > clientPage.Clients.length">
69                        <pagination max-size="10" total-items="clientPage.TotalClients" ng-model="curClientsPage" ng-change="changeClientsPage()" items-per-page="clientsPageSize"
70                                    boundary-links="true" rotate="false" num-pages="numPages"></pagination>
71                    </div>
72                </div>
73            </div>
74        </div>
75    </div>
76
77    <div class="row">
78        <div class="col-lg-12">
79            <div class="panel panel-default">
80                <div class="panel-heading">
81                    <h3 class="panel-title">Expired Clients</h3>
82                </div>
83                <div class="panel-body">
84                    <table class="table table-hover table-condensed">
85                        <thead>
86                            <tr>
87                                <th>#</th>
88                                <th>Client Name</th>
89                                <th>Cores</th>
90                                <th>Cpu Utilization</th>
91                                <th>Memory</th>
92                                <th>State</th>
93                                <th></th>
94                            </tr>
95                        </thead>
96                        <tr ng-repeat="client in expiredClientPage.Clients">
97                            <td>{{($index + 1)+((curExpiredClientsPage-1)*(expiredClientsPageSize))}}</td>
98                            <td>{{client.Name}}</td>
99                            <td>{{client.UsedCores}} / {{client.TotalCores}}</td>
100                            <td>{{client.CpuUtilization | number: 2}} %</td>
101                            <td>{{client.UsedMemory | kbToGB}} / {{client.TotalMemory | kbToGB}} GB</td>
102                            <td>{{client.State}}</td>
103                            <td>
104                                <a ng-href="#/statistics/clients/{{client.Id}}">Details</a>
105                            </td>
106                        </tr>
107                        <tr ng-hide="expiredClientPage.Clients.length">
108                            <td colspan="7" class="text-center">No expired clients found!</td>
109                        </tr>
110                    </table>
111                    <div class="row text-center" ng-show="expiredClientPage.TotalClients > expiredClientPage.Clients.length">
112                        <pagination max-size="10" total-items="expiredClientPage.TotalClients" ng-model="curExpiredClientsPage" ng-change="changeExpiredClientsPage()" items-per-page="expiredClientsPageSize"
113                                    boundary-links="true" rotate="false" num-pages="numPages"></pagination>
114                    </div>
115                </div>
116            </div>
117        </div>
118    </div>
119</div>
Note: See TracBrowser for help on using the repository browser.