From 81851db5c00f11d9c9e7151680aa09ac8972884b Mon Sep 17 00:00:00 2001 From: Igor Kulikov Date: Fri, 29 May 2020 16:31:15 +0300 Subject: [PATCH 1/2] Alias: Batch support for fetching entities from relations --- ui/src/app/api/entity.service.js | 73 +++++++++++++++++++++++--------- 1 file changed, 54 insertions(+), 19 deletions(-) diff --git a/ui/src/app/api/entity.service.js b/ui/src/app/api/entity.service.js index f692c99051..30f7b7ae65 100644 --- a/ui/src/app/api/entity.service.js +++ b/ui/src/app/api/entity.service.js @@ -355,18 +355,20 @@ function EntityService($http, $q, $filter, $translate, $log, userService, device }; } - function entityRelationInfoToEntityInfo(entityRelationInfo, direction) { + function entityRelationInfoToEntityInfoFunc(entityRelationInfo, direction) { + return function() { var deferred = $q.defer(); var entityId = direction == types.entitySearchDirection.from ? entityRelationInfo.to : entityRelationInfo.from; getEntity(entityId.entityType, entityId.id, {ignoreLoading: true}).then( - function success(entity) { - deferred.resolve(entityToEntityInfo(entity)); - }, - function fail() { - deferred.reject(); - } + function success(entity) { + deferred.resolve(entityToEntityInfo(entity)); + }, + function fail() { + deferred.reject(); + } ); return deferred.promise; + } } function entitiesToEntitiesInfo(entities) { @@ -381,23 +383,56 @@ function EntityService($http, $q, $filter, $translate, $log, userService, device function entityRelationInfosToEntitiesInfo(entityRelations, direction) { var deferred = $q.defer(); - var entitiesInfoTaks = []; - if (entityRelations) { - for (var d = 0; d < entityRelations.length; d++) { - entitiesInfoTaks.push(entityRelationInfoToEntityInfo(entityRelations[d], direction)); + if (entityRelations && entityRelations.length) { + var entityInfoTasks = []; + for (var d = 0; d < entityRelations.length; d++) { + entityInfoTasks.push(entityRelationInfoToEntityInfoFunc(entityRelations[d], direction)); + } + sendPackedRequests(entityInfoTasks).then( + function success(entityInfos) { + deferred.resolve(entityInfos); + }, function fail () { + deferred.reject(); } + ); + } else { + deferred.resolve([]); } - $q.all(entitiesInfoTaks).then( - function success(entitiesInfo) { - deferred.resolve(entitiesInfo); - }, - function fail() { - deferred.reject(); - } - ); return deferred.promise; } + function sendPackedRequests(taskFunctions) { + var taskFunctionPacks = []; + for (var e = 0; e < taskFunctions.length; e+=100) { + taskFunctionPacks.push(taskFunctions.slice(e,e + 100)); + } + var deferred = $q.defer(); + var resolvePack = []; + doSendPackedRequests(taskFunctionPacks, 0, resolvePack, deferred); + return deferred.promise; + } + + function doSendPackedRequests (functionPack, index, resolvePack, deferred) { + var tasks = []; + var currentFunctionPack = functionPack[index]; + for (var i=0;i Date: Mon, 1 Jun 2020 11:50:25 +0300 Subject: [PATCH 2/2] Improvment view mail-setting --- ui/src/app/admin/admin.controller.js | 3 + .../app/admin/outgoing-mail-settings.tpl.html | 73 ++++++++++--------- 2 files changed, 43 insertions(+), 33 deletions(-) diff --git a/ui/src/app/admin/admin.controller.js b/ui/src/app/admin/admin.controller.js index 8a2f04c621..f949c7a2fa 100644 --- a/ui/src/app/admin/admin.controller.js +++ b/ui/src/app/admin/admin.controller.js @@ -39,6 +39,9 @@ export default function AdminController(adminService, toast, $scope, $rootScope, function loadSettings() { adminService.getAdminSettings($state.$current.data.key).then(function success(settings) { vm.settings = settings; + if(vm.settings.jsonValue && vm.settings.jsonValue.enableTls && angular.isString(vm.settings.jsonValue.enableTls)){ + vm.settings.jsonValue.enableTls = vm.settings.jsonValue.enableTls === 'true'; + } }); } diff --git a/ui/src/app/admin/outgoing-mail-settings.tpl.html b/ui/src/app/admin/outgoing-mail-settings.tpl.html index 89f551ed29..596c9c4091 100644 --- a/ui/src/app/admin/outgoing-mail-settings.tpl.html +++ b/ui/src/app/admin/outgoing-mail-settings.tpl.html @@ -38,7 +38,7 @@ - + {{smtpProtocol.toUpperCase()}} @@ -77,48 +77,55 @@
admin.timeout-invalid
admin.timeout-invalid
-
- {{ 'admin.enable-tls' | translate }} + + + {{ 'admin.enable-tls' | translate }} + - + {{tlsVersion}} - + {{ 'admin.enable-proxy' | translate }} -
- - - -
-
admin.proxy-host-required
-
-
- - - -
-
admin.proxy-port-required
-
admin.proxy-port-invalid
-
admin.proxy-port-invalid
+
+
+ + + +
+
admin.proxy-host-required
+
+
+ + + +
+
admin.proxy-port-required
+
admin.proxy-port-invalid
+
admin.proxy-port-invalid
+
+
- -
- - - - - - - - + + + + + + + + +