66
77{% block extrahead %}
88< style >
9- thead th {
10- border-bottom : none !important ;
11- }
9+ thead th {
10+ border-bottom : none !important ;
11+ }
1212
13- tbody tr : hover {
14- background-color : # e0e0e0 !important ;
15- cursor : pointer;
16- }
13+ tbody tr : hover {
14+ background-color : # e0e0e0 !important ;
15+ cursor : pointer;
16+ }
1717
18- tbody tr : nth-child (even): hover {
19- background-color : # d3d3d3 !important ;
20- }
18+ tbody tr : nth-child (even): hover {
19+ background-color : # d3d3d3 !important ;
20+ }
2121
22- .column {
23- word-break : break-word;
24- }
22+ .column {
23+ word-break : break-word;
24+ }
2525</ style >
26- {% endblock %}
26+ {% endblock %} {% block content %}
27+ < div class ="columns ">
28+ < div class ="column "> </ div >
2729
30+ < div class ="column is-four-fifths ">
31+ < div class ="content is-normal ">
32+ < h1 > Pipeline Dashboard</ h1 >
33+ < hr />
34+ </ div >
35+ < form method ="get " class ="box px-6 mx-0 " action ="">
36+ < div class ="field has-addons ">
37+ < div class ="control is-expanded "> {{ form.search }}</ div >
38+ < div class ="control ">
39+ < button type ="submit " class ="button is-info ">
40+ < i class ="fa fa-search mx-1 "> </ i >
41+ </ button >
42+ </ div >
43+ </ div >
44+ </ form >
2845
29- {% block content %}
30- < div class ="columns ">
31- < div class ="column ">
46+ < div class ="box has-background-light ">
47+ < nav class ="level ">
48+ < div class ="level-item has-text-centered ">
49+ < div >
50+ < p class ="heading "> Total Workers</ p >
51+ < p class ="title "> {{ total_workers }}</ p >
52+ </ div >
53+ </ div >
54+ < div class ="level-item has-text-centered ">
55+ < div >
56+ < p class ="heading "> Busy</ p >
57+ < p class ="title has-text-success "> {{ busy_workers }}</ p >
58+ </ div >
59+ </ div >
60+ < div class ="level-item has-text-centered ">
61+ < div >
62+ < p class ="heading "> Idle</ p >
63+ < p class ="title has-text-warning "> {{ idle_workers }}</ p >
64+ </ div >
65+ </ div >
66+ < div class ="level-item has-text-centered ">
67+ < div >
68+ < p class ="heading "> Queued Jobs</ p >
69+ < p class ="title "> {{ queue_count }}</ p >
70+ </ div >
71+ </ div >
72+ </ nav >
3273 </ div >
3374
34- < div class ="column is-four-fifths ">
35- < div class ="content is-normal ">
36- < h1 > Pipeline Dashboard</ h1 >
37- < hr />
75+ < div class ="box ">
76+ < div class ="column is-flex is-justify-content-end ">
77+ < div class ="tags has-addons mb-0 mr-3 ">
78+ < span class ="tag is-dark "> Active Pipelines</ span >
79+ < span class ="tag is-success "> {{ active_pipeline_count|default:0 }}</ span >
3880 </ div >
39- < form method ="get " class ="box px-6 mx-0 " action ="">
40- < div class ="field has-addons ">
41- < div class ="control is-expanded ">
42- {{ form.search }}
43- </ div >
44- < div class ="control ">
45- < button type ="submit " class ="button is-info "> < i class ="fa fa-search mx-1 "> </ i > </ button >
81+ < div class ="tags has-addons mb-0 ">
82+ < span class ="tag is-dark "> Disabled Pipelines</ span >
83+ < span class ="tag is-light "> {{ disabled_pipeline_count|default:0 }}</ span >
84+ </ div >
85+ </ div >
86+ < table class ="table is-striped is-hoverable is-fullwidth ">
87+ < thead >
88+ < tr >
89+ < th colspan ="6 ">
90+ < div class ="box is-small ">
91+ < div class ="columns is-mobile is-vcentered ">
92+ < div class ="column is-one-quarter "> Pipeline ID</ div >
93+ < div class ="column is-one-eighth "> Active</ div >
94+ < div class ="column is-one-eighth "> Interval</ div >
95+ < div class ="column is-one-eighth "> Status</ div >
96+ < div class ="column is-one-fifth "> Last Run End Time</ div >
97+ < div class ="column is-one-fifth "> Next Run Start</ div >
4698 </ div >
47- </ div >
48- </ form >
49-
50- < div class ="box ">
51- < div class ="column has-text-right ">
52- < p class ="has-text-weight-semibold ">
53- {{ active_pipeline_count|default:0 }} active pipeline{{ active_pipeline_count|default:0|pluralize }},
54- {{ disabled_pipeline_count|default:0 }} disabled pipeline{{ disabled_pipeline_count|default:0|pluralize }}
55- </ p >
56- </ div >
57- < table class ="table is-striped is-hoverable is-fullwidth ">
58- < thead >
59- < tr >
60- < th colspan ="6 ">
61- < div class ="box is-small ">
62- < div class ="columns is-mobile is-vcentered ">
63- < div class ="column is-one-quarter "> Pipeline ID</ div >
64- < div class ="column is-one-eighth "> Active</ div >
65- < div class ="column is-one-eighth "> Interval</ div >
66- < div class ="column is-one-eighth "> Status</ div >
67- < div class ="column is-one-fifth "> Last Run End Time</ div >
68- < div class ="column is-one-fifth "> Next Run Start</ div >
69- </ div >
70- </ div >
71- </ th >
72- </ tr >
73- </ thead >
99+ </ div >
100+ </ th >
101+ </ tr >
102+ </ thead >
74103 < tbody >
75104 {% for schedule in schedule_list %}
76105 < tr >
@@ -115,27 +144,32 @@ <h1>Pipeline Dashboard</h1>
115144 </ tr >
116145 {% endfor %}
117146 </ tbody >
118-
119- </ table >
120- </ div >
147+ </ table >
148+ </ div >
121149 {% if is_paginated %}
122150 < nav class ="pagination is-centered px-5 " role ="navigation " aria-label ="pagination ">
123151 {% if page_obj.has_previous %}
124- < a class ="pagination-previous " href ="?page={{ page_obj.previous_page_number }} "> Previous</ a >
152+ < a class ="pagination-previous " href ="?page={{ page_obj.previous_page_number }}{% if request.GET.search %}&search={{ request.GET.search }}{% endif %} "> Previous</ a >
125153 {% endif %}
126154
127155 {% if page_obj.has_next %}
128- < a class ="pagination-next " href ="?page={{ page_obj.next_page_number }} "> Next page</ a >
156+ < a class ="pagination-next " href ="?page={{ page_obj.next_page_number }}{% if request.GET.search %}&search={{ request.GET.search }}{% endif %} "> Next page</ a >
129157 {% endif %}
158+
130159 < ul class ="pagination-list ">
131- < li > < a class ="pagination-link " aria-label ="Goto page 1 " href ="?page=1 "> 1</ a > </ li >
132- < li > < span class ="pagination-ellipsis "> …</ span > </ li >
133- < li > < a class ="pagination-link " aria-label ="Goto page {{ page_obj.number }} "
134- href ="?page={{ page_obj.paginator.num_pages }} "> {{ page_obj.paginator.num_pages }}</ a > </ li >
160+ {% for i in elided_page_range %}
161+ {% if i == page_obj.paginator.ELLIPSIS %}
162+ < li > < span class ="pagination-ellipsis "> …</ span > </ li >
163+ {% elif page_obj.number == i %}
164+ < li > < a class ="pagination-link is-current " aria-label ="Page {{ i }} " aria-current ="page "> {{ i }}</ a > </ li >
165+ {% else %}
166+ < li > < a class ="pagination-link " aria-label ="Goto page {{ i }} " href ="?page={{ i }}{% if request.GET.search %}&search={{ request.GET.search }}{% endif %} "> {{ i }}</ a > </ li >
167+ {% endif %}
168+ {% endfor %}
135169 </ ul >
136170 </ nav >
137171 {% endif %}
138- </ div >
139- < div class ="column "> </ div >
172+ </ div >
173+ < div class ="column "> </ div >
140174</ div >
141- {% endblock %}
175+ {% endblock %}
0 commit comments