Merge "Fix Javascript unassignable errors"

This commit is contained in:
Jenkins 2017-05-25 13:54:23 +00:00 committed by Gerrit Code Review
commit f15c7a20f2
4 changed files with 75 additions and 52 deletions

View File

@ -36,13 +36,14 @@
function maintenanceService($uibModal, basePath, nodeActions) { function maintenanceService($uibModal, basePath, nodeActions) {
var service = { var service = {
putNodeInMaintenanceMode: putNodeInMaintenanceMode, setMaintenance: setMaintenance
removeNodeFromMaintenanceMode: removeNodeFromMaintenanceMode
}; };
return service; return service;
/* /*
* @description Put a specified list of nodes into mainenance * @description Put a specified list of nodes into mainenance.
* A modal dialog is used to prompt the user for a reason for
* putting the nodes in maintenance mode.
* *
* @param {object[]} nodes - List of node objects * @param {object[]} nodes - List of node objects
* @return {promise} * @return {promise}
@ -66,5 +67,19 @@
function removeNodeFromMaintenanceMode(nodes) { function removeNodeFromMaintenanceMode(nodes) {
return nodeActions.removeNodeFromMaintenanceMode(nodes); return nodeActions.removeNodeFromMaintenanceMode(nodes);
} }
/*
* @description Set the maintenance mode of a specified list of nodes
*
* @param {object[]} nodes - List of node objects
* @param {boolean} mode - Desired maintenance state.
* 'true' -> Node is in maintenance mode
* 'false' -> Node is not in maintenance mode
* @return {promise}
*/
function setMaintenance(nodes, mode) {
return mode ? putNodeInMaintenanceMode(nodes)
: removeNodeFromMaintenanceMode(nodes);
}
} }
})(); })();

View File

@ -26,18 +26,17 @@
<span>{$ transition.label $}</span> <span>{$ transition.label $}</span>
</a> </a>
</li> </li>
<action button-type="menu-item" <li role="presentation">
callback="ctrl.maintenanceService.putNodeInMaintenanceMode" <a role="menuitem"
item="[ctrl.node]" ng-click="ctrl.maintenanceService.setMaintenance(
disabled="ctrl.node.maintenance"> [ctrl.node],
{$ ::'Maintenance on' | translate $} !ctrl.node.maintenance);
</action> $event.stopPropagation();
<action button-type="menu-item" $event.preventDefault()">
callback="ctrl.maintenanceService.removeNodeFromMaintenanceMode" <span>{$ ctrl.node.maintenance ?
item="[ctrl.node]" "Maintenance off" : "Maintenance on" | translate $}</span>
disabled="!ctrl.node.maintenance"> </a>
{$ ::'Maintenance off' | translate $} </li>
</action>
<li role="presentation" <li role="presentation"
ng-repeat="transition in ctrl.nodeStateTransitions"> ng-repeat="transition in ctrl.nodeStateTransitions">
<a role="menuitem" <a role="menuitem"

View File

@ -98,12 +98,15 @@
{$ ::'Edit port' | translate $} {$ ::'Edit port' | translate $}
</action> </action>
<menu> <menu>
<action button-type="menu-item" <li role="presentation">
callback="ctrl.deletePort" <a role="menuitem"
item="[port]"> ng-click="ctrl.deletePort([port]);
<span class="fa fa-trash"></span> $event.stopPropagation();
{$ ::'Delete port' | translate $} $event.preventDefault()">
</action> <span class="fa fa-trash"></span>
<span>{$ :: 'Delete port' | translate $}</span>
</a>
</li>
</menu> </menu>
</action-list> </action-list>
</td> </td>

View File

@ -49,18 +49,18 @@
<span>{$ transition.label $}</span> <span>{$ transition.label $}</span>
</a> </a>
</li> </li>
<action button-type="menu-item" <li role="presentation"
callback="table.maintenanceService.putNodeInMaintenanceMode" ng-class="{disabled: tCtrl.selected.length === 0}"
item="tCtrl.selected" ng-repeat="mode in [true, false]">
disabled="tCtrl.selected.length === 0"> <a role="menuitem"
{$ ::'Maintenance on' | translate $} ng-click="table.maintenanceService.setMaintenance(
</action> tCtrl.selected,
<action button-type="menu-item" mode);
callback="table.maintenanceService.removeNodeFromMaintenanceMode" $event.stopPropagation();
item="tCtrl.selected" $event.preventDefault()">
disabled="tCtrl.selected.length === 0"> <span>{$ mode ? 'Maintenance on' : 'Maintenance off' | translate $}</span>
{$ ::'Maintenance off' | translate $} </a>
</action> </li>
</menu> </menu>
</action-list> </action-list>
</div> </div>
@ -152,25 +152,31 @@
<span>{$ transition.label $}</span> <span>{$ transition.label $}</span>
</a> </a>
</li> </li>
<action button-type="menu-item" <li role="presentation">
callback="table.maintenanceService.putNodeInMaintenanceMode" <a role="menuitem"
item="[node]" ng-click="table.maintenanceService.setMaintenance(
disabled="node.maintenance"> [node],
{$ ::'Maintenance on' | translate $} !node.maintenance);
</action> $event.stopPropagation();
<action button-type="menu-item" $event.preventDefault()">
callback="table.maintenanceService.removeNodeFromMaintenanceMode" <span>{$ node.maintenance ?
item="[node]" "Maintenance off" : "Maintenance on" | translate $}</span>
disabled="!node.maintenance"> </a>
{$ ::'Maintenance off' | translate $} </li>
</action> <li role="presentation"
<action button-type="menu-item" ng-class="{disabled: !(
callback="table.deleteNode" node.provision_state === 'available' ||
disabled="!(node.provision_state === 'available' || node.provision_state === 'nostate' || node.provision_state === 'manageable' || node.provision_state === 'enroll')" node.provision_state === 'nostate' ||
item="[node]"> node.provision_state === 'manageable' ||
<span class="fa fa-trash"></span> node.provision_state === 'enroll')}">
{$ ::'Delete node' | translate $} <a role="menuitem"
</action> ng-click="table.deleteNode([node]);
$event.stopPropagation();
$event.preventDefault()">
<span class="fa fa-trash"></span>
{$ ::'Delete node' | translate $}
</a>
</li>
<action button-type="menu-item" <action button-type="menu-item"
callback="table.createPort" callback="table.createPort"
item="node"> item="node">