|
13 | 13 | <notification-icon ng-if="!row.expanded" alerts="row.notifications"></notification-icon>
|
14 | 14 | </div>
|
15 | 15 | </div>
|
16 |
| - <div class="list-pf-details"> |
17 |
| - <div ng-if="!row.expanded"> |
| 16 | + <div class="list-pf-details" ng-if="!row.expanded" ng-switch="row.instanceStatus"> |
| 17 | + |
| 18 | + <span ng-switch-when="failed" |
| 19 | + dynamic-content="{{row.instanceError.message}}" |
| 20 | + data-toggle="tooltip" |
| 21 | + data-trigger="hover"> |
| 22 | + <span class="pficon pficon-error-circle-o" aria-hidden="true"></span> |
| 23 | + <span>Error</span> |
| 24 | + </span> |
| 25 | + <span ng-switch-when="deleted"> |
| 26 | + <span class="pficon pficon-warning-triangle-o" aria-hidden="true"></span> |
| 27 | + <span>Marked for Deletion</span> |
| 28 | + </span> |
| 29 | + <span ng-switch-when="pending"> |
| 30 | + <span class="spinner spinner-xs spinner-inline" aria-hidden="true"></span> |
| 31 | + <span>Pending</span> |
| 32 | + </span> |
| 33 | + <div ng-switch-default> |
18 | 34 | <div class="hidden-xs hidden-sm">
|
19 | 35 | <span ng-if="!row.bindings.length
|
20 | 36 | && row.isBindable
|
|
44 | 60 | </div>
|
45 | 61 | <div
|
46 | 62 | class="hidden-xs"
|
47 |
| - ng-if="!row.expanded && row.apiObject.status.dashboardURL"> |
| 63 | + ng-if="(!row.instanceStatus || row.instanceStatus === 'ok') && row.apiObject.status.dashboardURL"> |
48 | 64 | <a ng-href="{{row.apiObject.status.dashboardURL}}" target="_blank">
|
49 | 65 | Console
|
50 | 66 | </a> <i class="fa fa-external-link small" aria-hidden="true"></i>
|
51 | 67 | </div>
|
52 | 68 | </div>
|
53 | 69 | </div>
|
54 |
| - <div class="list-pf-actions" ng-if="row.actionsDropdownVisible()"> |
55 |
| - <div uib-dropdown> |
| 70 | + <div class="list-pf-actions"> |
| 71 | + <div uib-dropdown ng-if="row.actionsDropdownVisible()"> |
56 | 72 | <a href=""
|
57 | 73 | uib-dropdown-toggle
|
58 | 74 | class="actions-dropdown-kebab"><i class="fa fa-ellipsis-v"></i><span class="sr-only">Actions</span></a>
|
@@ -97,59 +113,91 @@ <h3>
|
97 | 113 | </div>
|
98 | 114 | </div>
|
99 | 115 | -->
|
100 |
| - <div class="row"> |
101 |
| - <div class="col-sm-12" ng-if="row.description"> |
102 |
| - <p class="pre-wrap" ng-bind-html="row.description | linky"></p> |
| 116 | + <div ng-switch="row.instanceStatus"> |
| 117 | + <div ng-switch-when="deleted" class="row"> |
| 118 | + <div class="col-sm-12"> |
| 119 | + <div class="alert word-break alert-warning"> |
| 120 | + <span class="pficon pficon-warning-triangle-o" aria-hidden="true"></span> |
| 121 | + <span class="sr-only">warning</span> |
| 122 | + <span class="strong">The service was marked for deletion</span> |
| 123 | + <span class="strong" am-time-ago="row.apiObject.metadata.deletionTimestamp"></span> |
| 124 | + </div> |
| 125 | + </div> |
103 | 126 | </div>
|
104 |
| - </div> |
105 |
| - <div class="section-title" ng-if="row.isBindable || row.bindings"> |
106 |
| - Bindings |
107 |
| - </div> |
108 |
| - <div class="row overview-bindings" ng-repeat="(name, binding) in row.bindings"> |
109 |
| - <div class="col-sm-5 col-md-6"> |
110 |
| - <div ng-if="!(row.state.applicationsByBinding[binding.metadata.name] | size)"> |
111 |
| - <h3> |
112 |
| - <div class="component-label"> |
113 |
| - Secret |
| 127 | + <div ng-switch-when="failed" class="row"> |
| 128 | + <div class="col-sm-12"> |
| 129 | + <div class="alert word-break alert-danger"> |
| 130 | + <span class="pficon pficon-error-circle-o" aria-hidden="true"></span> |
| 131 | + <span class="sr-only">error</span> |
| 132 | + <span class="strong">{{row.instanceError.message}}</span> |
| 133 | + </div> |
| 134 | + </div> |
| 135 | + </div> |
| 136 | + <div ng-switch-when="pending" class="row"> |
| 137 | + <div class="col-sm-12"> |
| 138 | + <div class="alert word-break alert-info"> |
| 139 | + <span class="pficon pficon-info" aria-hidden="true"></span> |
| 140 | + <span class="sr-only">info</span> |
| 141 | + <span>{{row.pendingMessage}}</span> |
| 142 | + </div> |
| 143 | + </div> |
| 144 | + </div> |
| 145 | + <div ng-switch-default> |
| 146 | + <div class="row"> |
| 147 | + <div class="col-sm-12" ng-if="row.description"> |
| 148 | + <p class="pre-wrap" ng-bind-html="row.description | linky"></p> |
| 149 | + </div> |
| 150 | + </div> |
| 151 | + <div class="section-title" ng-if="row.isBindable || row.bindings"> |
| 152 | + Bindings |
| 153 | + </div> |
| 154 | + <div class="row overview-bindings" ng-repeat="(name, binding) in row.bindings"> |
| 155 | + <div class="col-sm-5 col-md-6"> |
| 156 | + <div ng-if="!(row.state.applicationsByBinding[binding.metadata.name] | size)"> |
| 157 | + <h3> |
| 158 | + <div class="component-label"> |
| 159 | + Secret |
| 160 | + </div> |
| 161 | + <a ng-if="('secrets' | canI : 'get')" |
| 162 | + ng-href="{{binding.spec.secretName | navigateResourceURL : 'Secret' : row.apiObject.metadata.namespace}}"> |
| 163 | + {{binding.spec.secretName}} |
| 164 | + </a> |
| 165 | + <span ng-if="!('secrets' | canI : 'get')"> |
| 166 | + {{binding.spec.secretName}} |
| 167 | + </span> |
| 168 | + </h3> |
114 | 169 | </div>
|
115 |
| - <a ng-if="('secrets' | canI : 'get')" |
116 |
| - ng-href="{{binding.spec.secretName | navigateResourceURL : 'Secret' : row.apiObject.metadata.namespace}}"> |
117 |
| - {{binding.spec.secretName}} |
118 |
| - </a> |
119 |
| - <span ng-if="!('secrets' | canI : 'get')"> |
120 |
| - {{binding.spec.secretName}} |
| 170 | + <div ng-repeat="target in row.state.applicationsByBinding[binding.metadata.name] track by (target | uid)"> |
| 171 | + <h3> |
| 172 | + <div class="component-label"> |
| 173 | + {{target.kind | humanizeKind : true}} |
| 174 | + </div> |
| 175 | + <a ng-href="{{target | navigateResourceURL}}">{{target.metadata.name}}</a> |
| 176 | + </h3> |
| 177 | + </div> |
| 178 | + </div> |
| 179 | + <div class="col-sm-7 col-md-6 overview-bindings"> |
| 180 | + <span ng-if="binding.metadata.deletionTimestamp"> |
| 181 | + <status-icon status="'Pending'"></status-icon> Deleting |
| 182 | + </span> |
| 183 | + <span ng-if="!(binding | isBindingReady) && !binding.metadata.deletionTimestamp"> |
| 184 | + <status-icon status="'Pending'"></status-icon> Pending |
121 | 185 | </span>
|
122 |
| - </h3> |
| 186 | + </div> |
123 | 187 | </div>
|
124 |
| - <div ng-repeat="target in row.state.applicationsByBinding[binding.metadata.name] track by (target | uid)"> |
125 |
| - <h3> |
126 |
| - <div class="component-label"> |
127 |
| - {{target.kind | humanizeKind : true}} |
128 |
| - </div> |
129 |
| - <a ng-href="{{target | navigateResourceURL}}">{{target.metadata.name}}</a> |
130 |
| - </h3> |
| 188 | + <div class="row" ng-if="row.isBindable && ({resource: 'bindings', group: 'servicecatalog.k8s.io'} | canI : 'create')"> |
| 189 | + <div class="col-sm-12"> |
| 190 | + <a href="" ng-click="row.showOverlayPanel('bindService', {target: row.apiObject})"> |
| 191 | + <span class="pficon pficon-add-circle-o" aria-hidden="true"></span> |
| 192 | + Create Binding |
| 193 | + </a> |
| 194 | + </div> |
| 195 | + </div> |
| 196 | + <div class="row" ng-if="!row.bindings.length && (!row.isBindable || !({resource: 'bindings', group: 'servicecatalog.k8s.io'} | canI : 'create'))"> |
| 197 | + <div class="col-sm-12"> |
| 198 | + <em>No bindings</em> |
| 199 | + </div> |
131 | 200 | </div>
|
132 |
| - </div> |
133 |
| - <div class="col-sm-7 col-md-6 overview-bindings"> |
134 |
| - <span ng-if="binding.metadata.deletionTimestamp"> |
135 |
| - <status-icon status="'Pending'"></status-icon> Deleting |
136 |
| - </span> |
137 |
| - <span ng-if="!(binding | isBindingReady) && !binding.metadata.deletionTimestamp"> |
138 |
| - <status-icon status="'Pending'"></status-icon> Pending |
139 |
| - </span> |
140 |
| - </div> |
141 |
| - </div> |
142 |
| - <div class="row" ng-if="row.isBindable && ({resource: 'bindings', group: 'servicecatalog.k8s.io'} | canI : 'create')"> |
143 |
| - <div class="col-sm-12"> |
144 |
| - <a href="" ng-click="row.showOverlayPanel('bindService', {target: row.apiObject})"> |
145 |
| - <span class="pficon pficon-add-circle-o" aria-hidden="true"></span> |
146 |
| - Create Binding |
147 |
| - </a> |
148 |
| - </div> |
149 |
| - </div> |
150 |
| - <div class="row" ng-if="!row.bindings.length && (!row.isBindable || !({resource: 'bindings', group: 'servicecatalog.k8s.io'} | canI : 'create'))"> |
151 |
| - <div class="col-sm-12"> |
152 |
| - <em>No bindings</em> |
153 | 201 | </div>
|
154 | 202 | </div>
|
155 | 203 | </div>
|
|
0 commit comments