2025-12-01
This commit is contained in:
@@ -17,6 +17,7 @@
|
||||
# ##### END GPL LICENSE BLOCK #####
|
||||
|
||||
from threading import Event
|
||||
from typing import Optional
|
||||
|
||||
import bpy
|
||||
from bpy.props import (
|
||||
@@ -63,7 +64,7 @@ class POLIIGON_OT_download(Operator):
|
||||
cTB.callback_asset_update_ui(job)
|
||||
self.event_sync.set()
|
||||
|
||||
def create_auto_download_job(self, asset_data: AssetData) -> ApiJob:
|
||||
def create_auto_download_job(self, asset_data: AssetData) -> Optional[ApiJob]:
|
||||
"""Create the follow up download job to attach to purchase job."""
|
||||
|
||||
# NOTE: Free assets are implicitly always "auto-download"
|
||||
@@ -161,6 +162,8 @@ class POLIIGON_OT_download(Operator):
|
||||
callback_progress=cTB.callback_asset_update_ui,
|
||||
callback_done=callback_done
|
||||
)
|
||||
|
||||
bpy.ops.poliigon.popup_first_download("INVOKE_DEFAULT")
|
||||
elif self.mode == "purchase":
|
||||
cTB.logger.debug("POLIIGON_OT_download Purchase asset "
|
||||
f"{self.asset_id}")
|
||||
@@ -170,12 +173,6 @@ class POLIIGON_OT_download(Operator):
|
||||
area = cTB.settings["area"]
|
||||
search = cTB.vSearch[area]
|
||||
|
||||
one_click_purchase = cTB.settings["one_click_purchase"]
|
||||
user_unlimited = cTB.is_unlimited_user()
|
||||
credits = 0 if asset_data.credits is None else asset_data.credits
|
||||
if credits > 0 and one_click_purchase and not user_unlimited:
|
||||
bpy.ops.poliigon.popup_first_download("INVOKE_DEFAULT")
|
||||
|
||||
if self.do_synchronous and job_download is None:
|
||||
self.event_sync = Event()
|
||||
callback_done = self._callback_done_sync
|
||||
@@ -184,12 +181,15 @@ class POLIIGON_OT_download(Operator):
|
||||
|
||||
cTB.api_rc.add_job_purchase_asset(
|
||||
asset_data,
|
||||
cTB.settings["category"][area],
|
||||
cTB.settings["category"],
|
||||
search,
|
||||
job_download=job_download,
|
||||
callback_done=callback_done,
|
||||
force=True
|
||||
)
|
||||
one_click_purchase = cTB.settings["one_click_purchase"]
|
||||
if one_click_purchase:
|
||||
bpy.ops.poliigon.popup_first_download("INVOKE_DEFAULT")
|
||||
|
||||
if self.do_synchronous:
|
||||
self.event_sync.wait(30.0)
|
||||
|
||||
Reference in New Issue
Block a user