diff --git a/client/ayon_core/tools/sceneinventory/model.py b/client/ayon_core/tools/sceneinventory/model.py index 67ff700806..2997d5cfd8 100644 --- a/client/ayon_core/tools/sceneinventory/model.py +++ b/client/ayon_core/tools/sceneinventory/model.py @@ -131,31 +131,24 @@ class InventoryModel(QtGui.QStandardItemModel): return item.get("isOutdated", True) def generate_group_formatting_data(self, repre_info): - hierarchy_parts = repre_info.folder_path.split("/") - hierarchy_parts.pop(0) - hierarchy_parts.pop(-1) - - folder = { + fake_folder_entity = { "name": repre_info.folder_name, "id": repre_info.folder_id, "folderType": repre_info.folder_type, - "path": repre_info.folder_type + "path": repre_info.folder_path } - extra_folder_keys = template_data.construct_extra_folder_template_keys( - self._controller.get_current_project_name(), - folder, - hierarchy_parts + + folder_data = template_data.get_folder_template_data( + fake_folder_entity, + self._controller.get_current_project_name() ) formatting_data = { - "folder": { - "name": repre_info.folder_name, - **extra_folder_keys - }, "product": repre_info.product_name, "productType": repre_info.product_type, "representation": repre_info.representation_name } + formatting_data.update(folder_data) return formatting_data def refresh(self, selected=None): diff --git a/client/ayon_core/tools/sceneinventory/models/containers.py b/client/ayon_core/tools/sceneinventory/models/containers.py index f841f87c8e..c78a166abc 100644 --- a/client/ayon_core/tools/sceneinventory/models/containers.py +++ b/client/ayon_core/tools/sceneinventory/models/containers.py @@ -41,6 +41,7 @@ def representations_parent_ids_qraphql_query(): folder_field = product_field.add_field("folder") folder_field.add_field("id") folder_field.add_field("path") + folder_field.add_field("folderType") return query @@ -123,6 +124,8 @@ class RepresentationInfo: self, folder_id, folder_path, + folder_name, + folder_type, product_id, product_name, product_type, @@ -132,6 +135,8 @@ class RepresentationInfo: ): self.folder_id = folder_id self.folder_path = folder_path + self.folder_name = folder_name + self.folder_type = folder_type self.product_id = product_id self.product_name = product_name self.product_type = product_type @@ -250,6 +255,8 @@ class ContainersModel: kwargs = { "folder_id": None, "folder_path": None, + "folder_name": None, + "folder_type": None, "product_id": None, "product_name": None, "product_type": None, @@ -264,6 +271,8 @@ class ContainersModel: if folder: kwargs["folder_id"] = folder["id"] kwargs["folder_path"] = folder["path"] + kwargs["folder_name"] = folder["path"].split("/")[-1] + kwargs["folder_type"] = folder["folderType"] if product: group = product["attrib"]["productGroup"] kwargs["product_id"] = product["id"]