diff --git a/htdocs/js/versions.js b/htdocs/js/versions.js index 0112161..fc678d5 100644 --- a/htdocs/js/versions.js +++ b/htdocs/js/versions.js @@ -22,7 +22,7 @@ $j(document).ready(function() { appDownloadStatus = 'running'; } } - if (data.app_installed && showTemplateUpToDate) { + if (data.running_tasks_count == 0) { $j('.js-templates-up-to-date').show(); $j('.js-check-for-update').removeAttr('disabled'); $j('.js-check-for-update').html('Check for updates'); diff --git a/plib/controllers/TaskController.php b/plib/controllers/TaskController.php index 73ac204..88f7462 100644 --- a/plib/controllers/TaskController.php +++ b/plib/controllers/TaskController.php @@ -6,13 +6,16 @@ public function taskstatusesAction() { $taskStatuses = []; $taskManager = new pm_LongTask_Manager(); - + $runningTasksCount = 0; $tasks = $taskManager->getTasks(['task_templatesdownload']); if (isset($tasks[0])) { $taskStatuses['templates_download'] = [ 'status' => $tasks[0]->getStatus(), 'progress' => $tasks[0]->getProgress(), ]; + if ($tasks[0]->getStatus() == pm_LongTask_Task::STATUS_RUNNING) { + $runningTasksCount++; + } } $tasks = $taskManager->getTasks(['task_appdownload']); @@ -21,6 +24,9 @@ public function taskstatusesAction() 'status' => $tasks[0]->getStatus(), 'progress' => $tasks[0]->getProgress(), ]; + if ($tasks[0]->getStatus() == pm_LongTask_Task::STATUS_RUNNING) { + $runningTasksCount++; + } } $tasks = $taskManager->getTasks(['task_domainreinstall']); @@ -29,6 +35,9 @@ public function taskstatusesAction() 'status' => $tasks[0]->getStatus(), 'progress' => $tasks[0]->getProgress(), ]; + if ($tasks[0]->getStatus() == pm_LongTask_Task::STATUS_RUNNING) { + $runningTasksCount++; + } } $appInstalled = false; @@ -41,6 +50,7 @@ public function taskstatusesAction() 'tasks' => $taskStatuses, 'current_version' => $currentVersionOfApp, 'app_installed' => $appInstalled, + 'running_tasks_count' => $runningTasksCount, ]); }