From c75dbd6c4ed971988a37adaaec314fde0eb19b81 Mon Sep 17 00:00:00 2001 From: Jakub Trllo <43494761+iLLiCiTiT@users.noreply.github.com> Date: Thu, 25 Jul 2024 13:40:32 +0200 Subject: [PATCH] receive information only from context data --- client/ayon_core/tools/loader/control.py | 28 ++++++++++++++++-------- 1 file changed, 19 insertions(+), 9 deletions(-) diff --git a/client/ayon_core/tools/loader/control.py b/client/ayon_core/tools/loader/control.py index fa0443d876..b83cb74e76 100644 --- a/client/ayon_core/tools/loader/control.py +++ b/client/ayon_core/tools/loader/control.py @@ -3,9 +3,8 @@ import uuid import ayon_api -from ayon_core.settings import get_current_project_settings +from ayon_core.settings import get_project_settings from ayon_core.pipeline import get_current_host_name -from ayon_core.pipeline.context_tools import get_current_task_entity from ayon_core.lib import NestedCacheItem, CacheItem, filter_profiles from ayon_core.lib.events import QueuedEventSystem from ayon_core.pipeline import Anatomy, get_current_context @@ -443,12 +442,10 @@ class LoaderController(BackendLoaderController, FrontendLoaderController): return output context = self.get_current_context() - if ( - not all(context.values()) - or context["project_name"] != project_name - ): + project_name = context.get("project_name") + if not project_name: return output - settings = get_current_project_settings() + settings = get_project_settings(project_name) profiles = ( settings ["core"] @@ -458,13 +455,26 @@ class LoaderController(BackendLoaderController, FrontendLoaderController): ) if not profiles: return output - task_entity = get_current_task_entity(fields={"taskType"}) + + folder_id = context.get("folder_id") + task_name = context.get("task_name") + task_type = None + if folder_id and task_name: + task_entity = ayon_api.get_task_by_name( + project_name, + folder_id, + task_name, + fields={"taskType"} + ) + if task_entity: + task_type = task_entity.get("taskType") + host_name = getattr(self._host, "name", get_current_host_name()) profile = filter_profiles( profiles, { "hosts": host_name, - "task_types": (task_entity or {}).get("taskType") + "task_types": task_type, } ) if profile: