From afc0f7c615a7b819c331d8a596d76831489c3b43 Mon Sep 17 00:00:00 2001 From: HellAholic Date: Tue, 25 Jul 2023 13:11:43 +0200 Subject: [PATCH 1/3] Update to add sort_by option Added a class attribute "last_updated" for sort_by Added an instance attribute for search_sort Added if statement to add the sort_by string, currently by default. --- plugins/Marketplace/RemotePackageList.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/plugins/Marketplace/RemotePackageList.py b/plugins/Marketplace/RemotePackageList.py index d06d2c64c5..a4c453e25d 100644 --- a/plugins/Marketplace/RemotePackageList.py +++ b/plugins/Marketplace/RemotePackageList.py @@ -21,6 +21,7 @@ catalog = i18nCatalog("cura") class RemotePackageList(PackageList): ITEMS_PER_PAGE = 20 # Pagination of number of elements to download at once. + LAST_UPDATED = "last_updated" # Default value to send for sort_by filter. def __init__(self, parent: Optional["QObject"] = None) -> None: super().__init__(parent) @@ -28,6 +29,7 @@ class RemotePackageList(PackageList): self._package_type_filter = "" self._requested_search_string = "" self._current_search_string = "" + self._search_sort = "sort_by" self._search_type = "search" self._request_url = self._initialRequestUrl() self._ongoing_requests["get_packages"] = None @@ -102,6 +104,8 @@ class RemotePackageList(PackageList): request_url += f"&package_type={self._package_type_filter}" if self._current_search_string != "": request_url += f"&{self._search_type}={self._current_search_string}" + if self._search_sort != "": + request_url += f"&{self._search_sort}={self.LAST_UPDATED}" return request_url def _parseResponse(self, reply: "QNetworkReply") -> None: From 8c54d44cbb61e80f138fc8de4a708a1b0f432625 Mon Sep 17 00:00:00 2001 From: Casper Lamboo Date: Tue, 25 Jul 2023 13:27:08 +0200 Subject: [PATCH 2/3] Apply suggestions from code review --- plugins/Marketplace/RemotePackageList.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/plugins/Marketplace/RemotePackageList.py b/plugins/Marketplace/RemotePackageList.py index a4c453e25d..78f24a72a1 100644 --- a/plugins/Marketplace/RemotePackageList.py +++ b/plugins/Marketplace/RemotePackageList.py @@ -21,7 +21,7 @@ catalog = i18nCatalog("cura") class RemotePackageList(PackageList): ITEMS_PER_PAGE = 20 # Pagination of number of elements to download at once. - LAST_UPDATED = "last_updated" # Default value to send for sort_by filter. + SORT_TYPE = "last_updated" # Default value to send for sort_by filter. def __init__(self, parent: Optional["QObject"] = None) -> None: super().__init__(parent) @@ -105,7 +105,7 @@ class RemotePackageList(PackageList): if self._current_search_string != "": request_url += f"&{self._search_type}={self._current_search_string}" if self._search_sort != "": - request_url += f"&{self._search_sort}={self.LAST_UPDATED}" + request_url += f"&{self._search_sort}={self.SORT_TYPE}" return request_url def _parseResponse(self, reply: "QNetworkReply") -> None: From 7e2fc1ac5b03d2b2d1f7b55314acc5f018cdc289 Mon Sep 17 00:00:00 2001 From: Casper Lamboo Date: Tue, 25 Jul 2023 13:29:22 +0200 Subject: [PATCH 3/3] Update plugins/Marketplace/RemotePackageList.py --- plugins/Marketplace/RemotePackageList.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/Marketplace/RemotePackageList.py b/plugins/Marketplace/RemotePackageList.py index 78f24a72a1..f8826ff395 100644 --- a/plugins/Marketplace/RemotePackageList.py +++ b/plugins/Marketplace/RemotePackageList.py @@ -104,7 +104,7 @@ class RemotePackageList(PackageList): request_url += f"&package_type={self._package_type_filter}" if self._current_search_string != "": request_url += f"&{self._search_type}={self._current_search_string}" - if self._search_sort != "": + if self.SORT_TYPE: request_url += f"&{self._search_sort}={self.SORT_TYPE}" return request_url