diff --git a/app/extensions/storidge/components/drives-datatable/storidgeDrivesDatatable.html b/app/extensions/storidge/components/drives-datatable/storidgeDrivesDatatable.html
index e5c428da2..8a3c23b5a 100644
--- a/app/extensions/storidge/components/drives-datatable/storidgeDrivesDatatable.html
+++ b/app/extensions/storidge/components/drives-datatable/storidgeDrivesDatatable.html
@@ -10,6 +10,10 @@
+
@@ -20,6 +24,10 @@
+
+
+
+
Id
@@ -73,6 +81,10 @@
+
+
+
+
{{ item.Id }}
|
{{ item.Node }} |
diff --git a/app/extensions/storidge/views/drives/drives.html b/app/extensions/storidge/views/drives/drives.html
index dc5b12d89..7bd996ebe 100644
--- a/app/extensions/storidge/views/drives/drives.html
+++ b/app/extensions/storidge/views/drives/drives.html
@@ -16,6 +16,7 @@
dataset="drives" table-key="storidge_drives"
order-by="Id"
rescan-action="rescanAction"
+ add-action="addAction"
>
diff --git a/app/extensions/storidge/views/drives/drivesController.js b/app/extensions/storidge/views/drives/drivesController.js
index 6110d064a..b16f67837 100644
--- a/app/extensions/storidge/views/drives/drivesController.js
+++ b/app/extensions/storidge/views/drives/drivesController.js
@@ -2,6 +2,28 @@ angular.module('extension.storidge')
.controller('StoridgeDrivesController', ['$scope', '$state', 'Notifications', 'StoridgeDriveService',
function ($scope, $state, Notifications, StoridgeDriveService) {
+ $scope.addAction = function (selectedItems) {
+ var actionCount = selectedItems.length;
+ selectedItems = selectedItems.filter(function (item) {
+ return item.Status === 'available';
+ });
+ angular.forEach(selectedItems, function (drive) {
+ StoridgeDriveService.add(drive.Device, drive.Node)
+ .then(function success() {
+ Notifications.success('Drive ' + drive.Device + ' successfully added on node ' + drive.Node);
+ })
+ .catch(function error(err) {
+ Notifications.error('Failure', err, 'Unable to add drive');
+ })
+ .finally(function final() {
+ --actionCount;
+ if (actionCount === 0) {
+ $state.reload();
+ }
+ });
+ });
+ };
+
$scope.rescanAction = function () {
StoridgeDriveService.rescan()
.then(function sucess() {
|