Merge ~bjornt/maas:pools-tab-to-machines into maas:master

Proposed by Björn Tillenius
Status: Merged
Approved by: Björn Tillenius
Approved revision: 5fab5fe0327dca33eb5347627c96cba9e4891b84
Merge reported by: MAAS Lander
Merged at revision: not available
Proposed branch: ~bjornt/maas:pools-tab-to-machines
Merge into: maas:master
Diff against target: 103 lines (+22/-15)
4 files modified
src/maasserver/static/js/angular/controllers/nodes_list.js (+2/-1)
src/maasserver/static/partials/nodes-list.html (+18/-3)
src/maasserver/templates/maasserver/base.html (+1/-4)
src/maasserver/templates/maasserver/index.html (+1/-7)
Reviewer Review Type Date Requested Status
Alberto Donato (community) Approve
Karl Williams (community) Approve
MAAS Lander Approve
Review via email: mp+347144@code.launchpad.net

Commit message

LP: #1774024 - Top-level navigation for 'Pools' should be moved to 'Machines' tab

To post a comment you must log in.
Revision history for this message
Björn Tillenius (bjornt) wrote :

Maybe not the most elegant way, but it works. I didn't want to spend time on implementing proper sub-level navigation.

Revision history for this message
MAAS Lander (maas-lander) wrote :

UNIT TESTS
-b pools-tab-to-machines lp:~bjornt/maas/+git/maas into -b master lp:~maas-committers/maas

STATUS: SUCCESS
COMMIT: 5fab5fe0327dca33eb5347627c96cba9e4891b84

review: Approve
Revision history for this message
Karl Williams (deadlight) wrote :

Looks good. Tested at various viewport sizes and it works.

review: Approve
Revision history for this message
Alberto Donato (ack) wrote :

+1 looks good to me

review: Approve
Revision history for this message
MAAS Lander (maas-lander) wrote :
Revision history for this message
MAAS Lander (maas-lander) wrote :
Revision history for this message
MAAS Lander (maas-lander) wrote :

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1diff --git a/src/maasserver/static/js/angular/controllers/nodes_list.js b/src/maasserver/static/js/angular/controllers/nodes_list.js
2index 1022f90..f3c2352 100644
3--- a/src/maasserver/static/js/angular/controllers/nodes_list.js
4+++ b/src/maasserver/static/js/angular/controllers/nodes_list.js
5@@ -98,7 +98,8 @@ angular.module('MAAS').controller('NodesListController', [
6
7 // Pools tab.
8 $scope.tabs.pools = {};
9- $scope.tabs.pools.pagetitle = "Pools";
10+ // The Pools tab is actually a sub tab of Machines.
11+ $scope.tabs.pools.pagetitle = "Machines";
12 $scope.tabs.pools.currentpage = "pools";
13 $scope.tabs.pools.manager = ResourcePoolsManager;
14 $scope.tabs.pools.actionOption = false;
15diff --git a/src/maasserver/static/partials/nodes-list.html b/src/maasserver/static/partials/nodes-list.html
16index 6eb9e63..9f7cc77 100644
17--- a/src/maasserver/static/partials/nodes-list.html
18+++ b/src/maasserver/static/partials/nodes-list.html
19@@ -1,4 +1,4 @@
20-<header class="p-strip--light is-shallow is-bordered page-header" media-query="min-width: 769px">
21+<header class="p-strip--light is-shallow is-bordered page-header" data-ng-class="{'u-no-padding--bottom': currentpage === 'machines' || currentpage === 'pools'}" media-query="min-width: 769px">
22 <div class="row">
23 <div class="col-8">
24 <!-- XXX ricgard 2016-06-16 - Need to add e2e test. -->
25@@ -7,8 +7,7 @@
26 <span class="u-text--loading"><i class="p-icon--spinner u-animation--spin"></i> Loading...</span>
27 </p>
28 <p class="page-header__status" data-ng-show="!loading">
29- <ng-pluralize data-ng-if="currentpage === 'machines'" count="machines.length" when="{'one': '{$ machines.length $} machine available', 'other': '{$ machines.length $} machines available'}"></ng-pluralize>
30- <ng-pluralize data-ng-if="currentpage === 'pools'" count="pools.length" when="{'one': '{$ pools.length $} resource pool available', 'other': '{$ pools.length $} resource pools available'}"></ng-pluralize>
31+ <ng-pluralize data-ng-if="currentpage === 'machines' || currentpage == 'pools'" count="machines.length" when="{'one': '{$ machines.length $} machine available', 'other': '{$ machines.length $} machines available'}"></ng-pluralize>
32 <ng-pluralize data-ng-if="currentpage === 'devices'" count="devices.length" when="{'one': '{$ devices.length $} device available', 'other': '{$ devices.length $} devices available'}"></ng-pluralize>
33 <ng-pluralize data-ng-if="currentpage === 'controllers'" count="controllers.length" when="{'one': '{$ controllers.length $} controller available', 'other': '{$ controllers.length $} controllers available'}"></ng-pluralize>
34 </p>
35@@ -729,6 +728,22 @@ sudo maas-rack register --url {$ tabs.controllers.registerUrl $} --secret {$ tab
36 data-ng-click="tabs.controllers.addController = false">Close</a>
37 </div>
38 </div>
39+ <nav class="p-tabs" data-ng-if="currentpage === 'machines' || currentpage === 'pools'">
40+ <ul class="p-tabs__list" role="tablist">
41+ <li class="p-tabs__item" role="presentation">
42+ <a href="#/machines" class="p-tabs__link" role="tab"
43+ data-ng-class="{ 'is-active': currentpage === 'machines'}">
44+ <ng-pluralize count="machines.length" when="{'one': '{$ machines.length $} Machine', 'other': '{$ machines.length $} Machines'}"></ng-pluralize>
45+ </a>
46+ </li>
47+ <li class="p-tabs__item" role="presentation">
48+ <a href="#/pools" class="p-tabs__link" role="tab"
49+ data-ng-class="{ 'is-active': currentpage === 'pools'}">
50+ <ng-pluralize count="pools.length" when="{'one': '{$ pools.length $} Resource pool', 'other': '{$ pools.length $} Resource pools'}"></ng-pluralize>
51+ </a>
52+ </li>
53+ </ul>
54+ </nav>
55 </header>
56
57 <div class="p-strip is-shallow u-no-padding--bottom">
58diff --git a/src/maasserver/templates/maasserver/base.html b/src/maasserver/templates/maasserver/base.html
59index be529f2..95f66c0 100755
60--- a/src/maasserver/templates/maasserver/base.html
61+++ b/src/maasserver/templates/maasserver/base.html
62@@ -61,12 +61,9 @@
63 </li>
64 </ul>
65 </li>
66- <li class="p-navigation__link u-hide-nav-viewport--medium" role="menuitem" data-ng-class="{ 'is-selected': page === 'machines' }">
67+ <li class="p-navigation__link u-hide-nav-viewport--medium" role="menuitem" data-ng-class="{ 'is-selected': page === 'machines' || page === 'pools' }">
68 <a class="{% block nav-active-machine-list %}{% endblock %} p-dropdown__item" href="{% url 'index' %}#/machines">Machines</a>
69 </li>
70- <li class="p-navigation__link u-hide-nav-viewport--medium" role="menuitem" data-ng-class="{ 'is-selected': page === 'pools' }">
71- <a class="{% block nav-active-pool-list %}{% endblock %} p-dropdown__item" href="{% url 'index' %}#/pools">Pools</a>
72- </li>
73 <li class="p-navigation__link u-hide-nav-viewport--medium" role="menuitem" data-ng-class="{ 'is-selected': page === 'devices' }">
74 <a class="{% block nav-active-device-list %}{% endblock %} p-dropdown__item" href="{% url 'index' %}#/devices">Devices</a>
75 </li>
76diff --git a/src/maasserver/templates/maasserver/index.html b/src/maasserver/templates/maasserver/index.html
77index 1da991b..f88d019 100755
78--- a/src/maasserver/templates/maasserver/index.html
79+++ b/src/maasserver/templates/maasserver/index.html
80@@ -41,9 +41,6 @@
81 <a href="{% url 'index' %}#/machines">Machines</a>
82 </li>
83 <li class="p-navigation__link" role="menuitem">
84- <a href="{% url 'index' %}#/pools">Pools</a>
85- </li>
86- <li class="p-navigation__link" role="menuitem">
87 <a href="{% url 'index' %}#/devices">Devices</a>
88 </li>
89 {% if user.is_superuser %}
90@@ -57,12 +54,9 @@
91
92 </ul>
93 </li>
94- <li class="p-navigation__link u-hide-nav-viewport--medium" role="menuitem" data-ng-class="{ 'is-selected': page === 'machines' }">
95+ <li class="p-navigation__link u-hide-nav-viewport--medium" role="menuitem" data-ng-class="{ 'is-selected': page === 'machines' || page === 'pools' }">
96 <a class="{% block nav-active-machine-list %}{% endblock %} p-dropdown__item" href="{% url 'index' %}#/machines">Machines</a>
97 </li>
98- <li class="p-navigation__link u-hide-nav-viewport--medium" role="menuitem" data-ng-class="{ 'is-selected': page === 'pools' }">
99- <a class="{% block nav-active-pool-list %}{% endblock %} p-dropdown__item" href="{% url 'index' %}#/pools">Pools</a>
100- </li>
101 <li class="p-navigation__link u-hide-nav-viewport--medium" role="menuitem" data-ng-class="{ 'is-selected': page === 'devices' }">
102 <a class="{% block nav-active-device-list %}{% endblock %} p-dropdown__item" href="{% url 'index' %}#/devices">Devices</a>
103 </li>

Subscribers

People subscribed via source and target branches