From 7b4e213a302ca9fd7381ab1be9849ca77c584584 Mon Sep 17 00:00:00 2001 From: Rahul Raturi Date: Mon, 25 Jul 2016 23:33:46 +0530 Subject: [PATCH] Move code to generate error message into methods * This makes the code structure a bit cleaner * Also these methods are likely to be reused in other dialog classes --- picard/ui/searchdialog.py | 26 ++++++++++++++++---------- 1 file changed, 16 insertions(+), 10 deletions(-) diff --git a/picard/ui/searchdialog.py b/picard/ui/searchdialog.py index 9056e1493..0c8f3ad27 100644 --- a/picard/ui/searchdialog.py +++ b/picard/ui/searchdialog.py @@ -210,6 +210,20 @@ class SearchDialog(PicardDialog): self.load_selection(row) self.accept() + def network_error(self, reply, error): + error_msg = _("Following error occurred while fetching results:
" + "Network request error for %s: %s (QT code %d, HTTP code %s)
" % ( + reply.request().url().toString(QtCore.QUrl.RemoveUserInfo), + reply.errorString(), + error, + repr(reply.attribute(QtNetwork.QNetworkRequest.HttpStatusCodeAttribute))) + ) + self.show_error(error_msg, show_retry_button=True) + + def no_results_found(self): + error_msg = _("No results found. Please try a different search query.") + self.show_error(error_msg) + def accept(self): if getattr(self, "table", None): sel_rows = self.table.selectionModel().selectedRows() @@ -309,21 +323,13 @@ class TrackSearchDialog(SearchDialog): def handle_reply(self, document, http, error): if error: - error_msg = _("Following network request error occurred while fetching results:
" - "Network request error for %s: %s (QT code %d, HTTP code %s)
" % ( - http.request().url().toString(QtCore.QUrl.RemoveUserInfo), - http.errorString(), - error, - repr(http.attribute(QtNetwork.QNetworkRequest.HttpStatusCodeAttribute))) - ) - self.show_error(error_msg, show_retry_button=True) + self.network_error(http, error) return try: tracks = document.metadata[0].recording_list[0].recording except (AttributeError, IndexError): - error_msg = _("No results found. Please try a different search query.") - self.show_error(error_msg) + self.no_results_found() return if self.file_: