diff --git a/pype/modules/ftrack/actions/action_create_project_structure.py b/pype/modules/ftrack/actions/action_create_project_structure.py index 22190c16db..d5cb381a63 100644 --- a/pype/modules/ftrack/actions/action_create_project_structure.py +++ b/pype/modules/ftrack/actions/action_create_project_structure.py @@ -2,7 +2,7 @@ import os import re from pype.modules.ftrack.lib import BaseAction, statics_icon -from pype.api import config, Anatomy +from pype.api import Anatomy, project_settings as get_project_settings class CreateProjectFolders(BaseAction): @@ -69,25 +69,26 @@ class CreateProjectFolders(BaseAction): return True def launch(self, session, entities, event): - entity = entities[0] - project = self.get_project_from_entity(entity) - project_folder_presets = ( - config.get_presets() - .get("tools", {}) - .get("project_folder_structure") + # Get project entity + project_entity = self.get_project_from_entity(entities[0]) + # Load settings for project + project_name = project_entity["full_name"] + project_settings = get_project_settings(project_name) + project_folder_structure = ( + project_settings["global"]["project_folder_structure"] ) - if not project_folder_presets: + if not project_folder_structure: return { "success": False, - "message": "Project structure presets are not set." + "message": "Project structure is not set." } try: # Get paths based on presets - basic_paths = self.get_path_items(project_folder_presets) - anatomy = Anatomy(project["full_name"]) - self.create_folders(basic_paths, entity, project, anatomy) - self.create_ftrack_entities(basic_paths, project) + basic_paths = self.get_path_items(project_folder_structure) + anatomy = Anatomy(project_entity["full_name"]) + self.create_folders(basic_paths, project_entity, anatomy) + self.create_ftrack_entities(basic_paths, project_entity) except Exception as exc: session.rollback() @@ -219,7 +220,7 @@ class CreateProjectFolders(BaseAction): output.append(os.path.normpath(os.path.sep.join(clean_items))) return output - def create_folders(self, basic_paths, entity, project, anatomy): + def create_folders(self, basic_paths, project, anatomy): roots_paths = [] if isinstance(anatomy.roots, dict): for root in anatomy.roots: diff --git a/pype/modules/ftrack/ftrack_server/ftrack_server.py b/pype/modules/ftrack/ftrack_server/ftrack_server.py index 92f3c0b3a0..9940ab236e 100644 --- a/pype/modules/ftrack/ftrack_server/ftrack_server.py +++ b/pype/modules/ftrack/ftrack_server/ftrack_server.py @@ -2,10 +2,12 @@ import os import sys import types import importlib -import ftrack_api import time import logging import inspect + +import ftrack_api + from pype.api import Logger, config diff --git a/pype/modules/ftrack/lib/__init__.py b/pype/modules/ftrack/lib/__init__.py index a52e73d10f..3890eacf90 100644 --- a/pype/modules/ftrack/lib/__init__.py +++ b/pype/modules/ftrack/lib/__init__.py @@ -3,7 +3,6 @@ from . import credentials from .ftrack_base_handler import BaseHandler from .ftrack_event_handler import BaseEvent from .ftrack_action_handler import BaseAction, ServerAction, statics_icon -from .ftrack_app_handler import AppAction __all__ = ( "avalon_sync", @@ -12,6 +11,5 @@ __all__ = ( "BaseEvent", "BaseAction", "ServerAction", - "statics_icon", - "AppAction" + "statics_icon" )