mirror of
https://github.com/ynput/ayon-core.git
synced 2025-12-24 21:04:40 +01:00
Site Sync: small fixes in Loader (#6119)
* Fix usage of correct values Returned item is dictionary of version_id: links, previous loop was looping through [[]]. * Fix usage of studio icon local and studio have both same provider, local_drive. Both of them should be differentiate by icon though. * Fix - pull only paths from icon_def Icon_def is dictionary with `type` and `path` keys, not directly 'path'. It must be massaged first. * Revert back, fixed in different PR Co-authored-by: Jakub Trllo <43494761+iLLiCiTiT@users.noreply.github.com> * Fix looping Co-authored-by: Jakub Trllo <43494761+iLLiCiTiT@users.noreply.github.com> --------- Co-authored-by: Jakub Trllo <43494761+iLLiCiTiT@users.noreply.github.com>
This commit is contained in:
parent
47cf95ed69
commit
046154037b
3 changed files with 24 additions and 18 deletions
|
|
@ -124,23 +124,24 @@ def get_linked_representation_id(
|
|||
if not versions_to_check:
|
||||
break
|
||||
|
||||
links = con.get_versions_links(
|
||||
versions_links = con.get_versions_links(
|
||||
project_name,
|
||||
versions_to_check,
|
||||
link_types=link_types,
|
||||
link_direction="out")
|
||||
|
||||
versions_to_check = set()
|
||||
for link in links:
|
||||
# Care only about version links
|
||||
if link["entityType"] != "version":
|
||||
continue
|
||||
entity_id = link["entityId"]
|
||||
# Skip already found linked version ids
|
||||
if entity_id in linked_version_ids:
|
||||
continue
|
||||
linked_version_ids.add(entity_id)
|
||||
versions_to_check.add(entity_id)
|
||||
for links in versions_links.values():
|
||||
for link in links:
|
||||
# Care only about version links
|
||||
if link["entityType"] != "version":
|
||||
continue
|
||||
entity_id = link["entityId"]
|
||||
# Skip already found linked version ids
|
||||
if entity_id in linked_version_ids:
|
||||
continue
|
||||
linked_version_ids.add(entity_id)
|
||||
versions_to_check.add(entity_id)
|
||||
|
||||
linked_version_ids.remove(version_id)
|
||||
if not linked_version_ids:
|
||||
|
|
|
|||
|
|
@ -140,12 +140,10 @@ class SiteSyncModel:
|
|||
Union[dict[str, Any], None]: Site icon definition.
|
||||
"""
|
||||
|
||||
if not project_name:
|
||||
if not project_name or not self.is_site_sync_enabled(project_name):
|
||||
return None
|
||||
|
||||
active_site = self.get_active_site(project_name)
|
||||
provider = self._get_provider_for_site(project_name, active_site)
|
||||
return self._get_provider_icon(provider)
|
||||
return self._get_site_icon_def(project_name, active_site)
|
||||
|
||||
def get_remote_site_icon_def(self, project_name):
|
||||
"""Remote site icon definition.
|
||||
|
|
@ -160,7 +158,14 @@ class SiteSyncModel:
|
|||
if not project_name or not self.is_site_sync_enabled(project_name):
|
||||
return None
|
||||
remote_site = self.get_remote_site(project_name)
|
||||
provider = self._get_provider_for_site(project_name, remote_site)
|
||||
return self._get_site_icon_def(project_name, remote_site)
|
||||
|
||||
def _get_site_icon_def(self, project_name, site_name):
|
||||
# use different icon for studio even if provider is 'local_drive'
|
||||
if site_name == self._site_sync_addon.DEFAULT_SITE:
|
||||
provider = "studio"
|
||||
else:
|
||||
provider = self._get_provider_for_site(project_name, site_name)
|
||||
return self._get_provider_icon(provider)
|
||||
|
||||
def get_version_sync_availability(self, project_name, version_ids):
|
||||
|
|
|
|||
|
|
@ -42,8 +42,8 @@ class SiteSyncModel:
|
|||
|
||||
if not self.is_sync_server_enabled():
|
||||
return {}
|
||||
site_sync = self._get_sync_server_module()
|
||||
return site_sync.get_site_icons()
|
||||
site_sync_addon = self._get_sync_server_module()
|
||||
return site_sync_addon.get_site_icons()
|
||||
|
||||
def get_sites_information(self):
|
||||
return {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue