2015-12-18 05:35:04 +00:00
|
|
|
angular.module('networks', []).config(['$routeProvider', function ($routeProvider) {
|
2016-03-19 23:09:17 +00:00
|
|
|
$routeProvider.when('/networks/', {
|
2015-12-18 05:35:04 +00:00
|
|
|
templateUrl: 'app/components/networks/networks.html',
|
|
|
|
controller: 'NetworksController'
|
|
|
|
});
|
2015-12-21 02:07:57 +00:00
|
|
|
}]).controller('NetworksController', ['$scope', 'Network', 'ViewSpinner', 'Messages', '$route', 'errorMsgFilter',
|
|
|
|
function ($scope, Network, ViewSpinner, Messages, $route, errorMsgFilter) {
|
2016-03-19 23:09:17 +00:00
|
|
|
$scope.sortType = 'Name';
|
|
|
|
$scope.sortReverse = true;
|
2015-12-18 05:35:04 +00:00
|
|
|
$scope.toggle = false;
|
2016-03-19 23:09:17 +00:00
|
|
|
$scope.order = function(sortType) {
|
|
|
|
$scope.sortReverse = ($scope.sortType === sortType) ? !$scope.sortReverse : false;
|
|
|
|
$scope.sortType = sortType;
|
|
|
|
};
|
2015-12-21 02:07:57 +00:00
|
|
|
$scope.createNetworkConfig = {
|
|
|
|
"Name": '',
|
|
|
|
"Driver": '',
|
|
|
|
"IPAM": {
|
|
|
|
"Config": [{
|
|
|
|
"Subnet": '',
|
|
|
|
"IPRange": '',
|
|
|
|
"Gateway": ''
|
|
|
|
}]
|
|
|
|
}
|
|
|
|
};
|
|
|
|
|
|
|
|
|
2015-12-18 05:35:04 +00:00
|
|
|
|
|
|
|
$scope.removeAction = function () {
|
|
|
|
ViewSpinner.spin();
|
|
|
|
var counter = 0;
|
|
|
|
var complete = function () {
|
|
|
|
counter = counter - 1;
|
|
|
|
if (counter === 0) {
|
|
|
|
ViewSpinner.stop();
|
|
|
|
}
|
|
|
|
};
|
|
|
|
angular.forEach($scope.networks, function (network) {
|
|
|
|
if (network.Checked) {
|
|
|
|
counter = counter + 1;
|
|
|
|
Network.remove({id: network.Id}, function (d) {
|
2015-12-21 02:07:57 +00:00
|
|
|
Messages.send("Network deleted", network.Id);
|
2015-12-18 05:35:04 +00:00
|
|
|
var index = $scope.networks.indexOf(network);
|
|
|
|
$scope.networks.splice(index, 1);
|
|
|
|
complete();
|
|
|
|
}, function (e) {
|
|
|
|
Messages.error("Failure", e.data);
|
|
|
|
complete();
|
|
|
|
});
|
|
|
|
}
|
|
|
|
});
|
|
|
|
};
|
|
|
|
|
|
|
|
$scope.toggleSelectAll = function () {
|
2016-03-25 14:29:39 +00:00
|
|
|
angular.forEach($scope.filteredNetworks, function (i) {
|
2015-12-18 05:35:04 +00:00
|
|
|
i.Checked = $scope.toggle;
|
|
|
|
});
|
|
|
|
};
|
|
|
|
|
2015-12-21 02:07:57 +00:00
|
|
|
$scope.addNetwork = function addNetwork(createNetworkConfig) {
|
|
|
|
ViewSpinner.spin();
|
|
|
|
Network.create(createNetworkConfig, function (d) {
|
|
|
|
if (d.Id) {
|
|
|
|
Messages.send("Network created", d.Id);
|
|
|
|
} else {
|
|
|
|
Messages.error('Failure', errorMsgFilter(d));
|
|
|
|
}
|
|
|
|
ViewSpinner.stop();
|
|
|
|
fetchNetworks();
|
|
|
|
}, function (e) {
|
|
|
|
Messages.error("Failure", e.data);
|
|
|
|
ViewSpinner.stop();
|
|
|
|
});
|
|
|
|
};
|
|
|
|
|
|
|
|
function fetchNetworks() {
|
|
|
|
ViewSpinner.spin();
|
|
|
|
Network.query({}, function (d) {
|
|
|
|
$scope.networks = d;
|
|
|
|
ViewSpinner.stop();
|
|
|
|
}, function (e) {
|
|
|
|
Messages.error("Failure", e.data);
|
|
|
|
ViewSpinner.stop();
|
|
|
|
});
|
|
|
|
}
|
|
|
|
fetchNetworks();
|
2015-12-18 05:35:04 +00:00
|
|
|
}]);
|