e0b29bd9e0a48514fcbd98558ac2cc7347dcdeae
[pharos.git] / tools / pharos-dashboard / src / templates / dashboard / resource_detail.html
1 {% load jenkins_filters %}
2
3 <div class="row">
4     <div class="col-lg-3">
5         <div class="panel panel-default">
6             <div class="panel-heading">
7                 Jenkins Utilization
8                 <div class="pull-right">
9                     <div class="form-group">
10                         <select onchange="loadChartData('{{ resource.id }}_jenkins_utilization', this.value);">
11                             <option value="{% url 'dashboard:jenkins_utilization' resource_id=resource.id weeks=1 %}">
12                                 Last Week
13                             </option>
14                             <option value="{% url 'dashboard:jenkins_utilization' resource_id=resource.id weeks=4 %}">
15                                 Last Month
16                             </option>
17                         </select>
18                     </div>
19                 </div>
20             </div>
21             <div class="panel-body">
22                 <div class="flot-chart">
23                     <div class="flot-chart-content"
24                          id="{{ resource.id }}_jenkins_utilization"></div>
25                 </div>
26             </div>
27         </div>
28     </div>
29     <div class="col-lg-9">
30         <div class="panel panel-default">
31             <div class="panel-heading">
32                 Servers
33             </div>
34             <div class="panel-body">
35                 <div class="dataTables_wrapper">
36                     <table class="table table-striped table-bordered table-hover"
37                            id="{{ resource.id }}_server_table" cellspacing="0"
38                            width="100%">
39                         {% include "dashboard/server_table.html" %}
40                     </table>
41                 </div>
42             </div>
43         </div>
44     </div>
45 </div>
46 <div class="row">
47     <div class="col-lg-3">
48         <div class="panel panel-default">
49             <div class="panel-heading">
50                 Booking Utilization
51                 <div class="pull-right">
52                     <div class="form-group">
53                         <select onchange="loadChartData('{{ resource.id }}_booking_utilization', this.value);">
54                             <option value="{% url 'dashboard:booking_utilization' resource_id=resource.id weeks=-4 %}">
55                                 Last Month
56                             </option>
57                             <option value="{% url 'dashboard:booking_utilization' resource_id=resource.id weeks=-1 %}">
58                                 Last Week
59                             </option>
60                             <option value="{% url 'dashboard:booking_utilization' resource_id=resource.id weeks=1 %}">
61                                 Next Week
62                             </option>
63                             <option selected="selected"
64                                     value="{% url 'dashboard:booking_utilization' resource_id=resource.id weeks=4 %}">
65                                 Next Month
66                             </option>
67                         </select>
68                     </div>
69                 </div>
70             </div>
71             <div class="panel-body">
72                 <div class="flot-chart">
73                     <div class="flot-chart-content"
74                          id="{{ resource.id }}_booking_utilization"></div>
75                 </div>
76             </div>
77         </div>
78     </div>
79     <div class="col-lg-9">
80         <div class="panel panel-default">
81             <div class="panel-heading">
82                 Bookings
83             </div>
84             <div class="panel-body">
85                 <div class="dataTables_wrapper">
86                     <table class="table table-striped table-bordered table-hover"
87                            id="{{ resource.id }}_bookings_table" cellspacing="0"
88                            width="100%">
89                         {% include "booking/booking_table.html" %}
90                     </table>
91                 </div>
92             </div>
93         </div>
94     </div>
95 </div>
96 <div class="row">
97     <div class="col-lg-3">
98         <div class="panel panel-default">
99             <div class="panel-heading">
100                 Contact
101             </div>
102             <div class="panel-body">
103                 <p>
104                     <b>Lab Owner: </b>
105                     {{ resource.owner.username }}
106                 </p>
107                 <p>
108                     <b>Email: </b>
109                     {{ resource.owner.email }}
110                 </p>
111                 <p>
112                     <a href="{% url 'booking:create' resource_id=resource.id %}" class="btn
113                     btn-primary">
114                         Booking
115                     </a>
116                     <a href="{{ resource.url }}" class="btn
117                     btn-primary">
118                         OPNFV Wiki
119                     </a>
120                 </p>
121             </div>
122         </div>
123     </div>
124     <div class="col-lg-3">
125         <div class="panel panel-default">
126             <div class="panel-heading">
127                 Jenkins Status
128             </div>
129             <div class="panel-body">
130                 <p>
131                     <b>Slave Name: </b>
132                     <a target='_blank'
133                        href={{ resource.slave.url }}>{{ resource.slave.name }}</a>
134                 </p>
135                 <p>
136                     <b>Status: </b>
137                     {{ resource.slave.status }}
138                 </p>
139                 <p>
140                     <b>Last Job: </b>
141                     <a href="{{ resource.slave.last_job_url }}">
142                         {{ resource.slave.last_job_name }}
143                     </a>
144                 </p>
145             </div>
146         </div>
147     </div>
148     <div class="col-lg-6">
149         <div class="panel panel-default">
150             <div class="panel-heading">
151                 VPN Users
152             </div>
153             <div class="panel-body">
154                 <div class="dataTables_wrapper">
155                     <table class="table table-striped table-bordered table-hover"
156                            id="{{ resource.id }}_vpn_user_table" cellspacing="0"
157                            width="100%">
158                         <thead>
159                         <tr>
160                             <th>User</th>
161                             <th>Email</th>
162                             <th>Company</th>
163                         </tr>
164                         </thead>
165                         <tbody>
166                         {% for user in resource.vpn_users.all %}
167                             <tr>
168                                 <td>
169                                     {{ user.username }}
170                                 </td>
171                                 <td>
172                                     {{ user.email }}
173                                 </td>
174                                 <td>
175                                     {{ user.userprofile.company }}
176                                 </td>
177                             </tr>
178                         {% endfor %}
179                     </table>
180                     </tbody>
181                 </div>
182             </div>
183         </div>
184     </div>
185 </div>