Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender-addons.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'blenderkit/search.py')
-rw-r--r--blenderkit/search.py25
1 files changed, 15 insertions, 10 deletions
diff --git a/blenderkit/search.py b/blenderkit/search.py
index 738582e6..da71835f 100644
--- a/blenderkit/search.py
+++ b/blenderkit/search.py
@@ -908,23 +908,26 @@ class Searcher(threading.Thread):
requeststring += q + ':' + str(query[q]).lower()
# result ordering: _score - relevance, score - BlenderKit score
-
+ order = []
+ if params['free_first']:
+ order = ['-is_free',]
if query.get('query') is None and query.get('category_subtree') == None:
# assumes no keywords and no category, thus an empty search that is triggered on start.
# orders by last core file upload
if query.get('verification_status') == 'uploaded':
# for validators, sort uploaded from oldest
- requeststring += '+order:created'
+ order.append('created')
else:
- requeststring += '+order:-last_upload'
+ order.append('-last_upload')
elif query.get('author_id') is not None and utils.profile_is_validator():
- requeststring += '+order:-created'
+ order.append('-created')
else:
if query.get('category_subtree') is not None:
- requeststring += '+order:-score,_score'
+ order.append('-score,_score')
else:
- requeststring += '+order:_score'
+ order.append('_score')
+ requeststring += '+order:' + ','.join(order)
requeststring += '&addon_version=%s' % params['addon_version']
if params.get('scene_uuid') is not None:
@@ -1123,8 +1126,9 @@ def build_query_model():
else:
query["model_style"] = props.search_style_other
- if props.free_only:
- query["is_free"] = True
+ # the 'free_only' parametr gets moved to the search command and is used for ordering the assets as free first
+ # if props.free_only:
+ # query["is_free"] = True
# if props.search_advanced:
if props.search_condition != 'UNSPECIFIED':
@@ -1160,7 +1164,7 @@ def build_query_scene():
def build_query_HDR():
'''use all search input to request results from server'''
- props = bpy.context.scene.blenderkit_scene
+ props = bpy.context.scene.blenderkit_HDR
query = {
"asset_type": 'hdr',
# "engine": props.search_engine,
@@ -1392,7 +1396,8 @@ def search(category='', get_next=False, author_id=''):
'scene_uuid': bpy.context.scene.get('uuid', None),
'addon_version': version_checker.get_addon_version(),
'api_key': user_preferences.api_key,
- 'get_next': get_next
+ 'get_next': get_next,
+ 'free_first': props.free_only
}
# if free_only: