Make asyncForEach available globally to reduce code duplication

This commit is contained in:
Johannes Zellner
2018-04-02 11:35:02 +02:00
parent c329541708
commit 75eae0d8ec
5 changed files with 25 additions and 71 deletions
+2 -17
View File
@@ -1,5 +1,7 @@
'use strict';
/* global asyncForEach:false */
angular.module('Application').controller('AccountController', ['$scope', 'Client', function ($scope, Client) {
$scope.user = Client.getUserInfo();
$scope.config = Client.getConfig();
@@ -208,23 +210,6 @@ angular.module('Application').controller('AccountController', ['$scope', 'Client
}
};
// poor man's async
function asyncForEach(items, handler, callback) {
var cur = 0;
if (items.length === 0) return callback();
(function iterator() {
handler(items[cur], function (error) {
if (error) return callback(error);
if (cur >= items.length-1) return callback();
++cur;
iterator();
});
})();
}
function revokeTokensByClient(client, callback) {
Client.delTokensByClientId(client.id, function (error) {
if (error) console.error(error);
+2 -17
View File
@@ -1,5 +1,7 @@
'use strict';
/* global asyncForEach:false */
angular.module('Application').controller('EmailController', ['$scope', '$location', '$timeout', '$rootScope', 'Client', 'AppStore', function ($scope, $location, $timeout, $rootScope, Client, AppStore) {
Client.onReady(function () { if (!Client.getUserInfo().admin) $location.path('/'); });
@@ -42,23 +44,6 @@ angular.module('Application').controller('EmailController', ['$scope', '$locatio
return $scope.mailRelay.relay.provider === provider;
};
// poor man's async
function asyncForEach(items, handler, callback) {
var cur = 0;
if (items.length === 0) return callback();
(function iterator() {
handler(items[cur], function (error) {
if (error) return callback(error);
if (cur >= items.length-1) return callback();
++cur;
iterator();
});
})();
}
$scope.catchall = {
addresses: [],
availableAddresses: [],
+3 -19
View File
@@ -1,4 +1,5 @@
/* global Chart:true */
/* global Chart:false */
/* global asyncForEach:false */
'use strict';
@@ -123,7 +124,7 @@ angular.module('Application').controller('GraphsController', ['$scope', '$locati
// /dev/sda1 -> sda1
// /dev/mapper/foo -> mapper_foo (see #348)
var appDataDiskName = disks.appsDataDisk.slice(disks.appsDataDisk.indexOf('/', 1) + 1)
var appDataDiskName = disks.appsDataDisk.slice(disks.appsDataDisk.indexOf('/', 1) + 1);
appDataDiskName = appDataDiskName.replace(/\//g, '_');
Client.graphs([
@@ -172,23 +173,6 @@ angular.module('Application').controller('GraphsController', ['$scope', '$locati
});
};
// poor man's async
function asyncForEach(items, handler, callback) {
var cur = 0;
if (items.length === 0) return callback();
(function iterator() {
handler(items[cur], function (error) {
if (error) return callback(error);
if (cur >= items.length-1) return callback();
++cur;
iterator();
});
})();
}
$scope.updateMemoryAppsChart = function () {
var targets = [];
var targetsInfo = [];
+2 -18
View File
@@ -1,23 +1,7 @@
'use strict';
/* global Clipboard */
// poor man's async
function asyncForEach(items, handler, callback) {
var cur = 0;
if (items.length === 0) return callback();
(function iterator() {
handler(items[cur], function (error) {
if (error) return callback(error);
if (cur >= items.length-1) return callback();
++cur;
iterator();
});
})();
}
/* global Clipboard:false */
/* global asyncForEach:false */
angular.module('Application').controller('UsersController', ['$scope', '$location', '$timeout', 'Client', function ($scope, $location, $timeout, Client) {
Client.onReady(function () { if (!Client.getUserInfo().admin) $location.path('/'); });