mirror of
https://github.com/kovidgoyal/calibre.git
synced 2025-07-09 03:04:10 -04:00
A spot of refactoring
This commit is contained in:
parent
c5845f511b
commit
dbfe5c1427
@ -21,28 +21,8 @@ from calibre.utils.opensearch.description import Description
|
|||||||
from calibre.utils.opensearch.query import Query
|
from calibre.utils.opensearch.query import Query
|
||||||
|
|
||||||
|
|
||||||
class OpenSearchOPDSStore(StorePlugin):
|
def open_search(url, query, max_results=10, timeout=60):
|
||||||
|
description = Description(url)
|
||||||
open_search_url = ''
|
|
||||||
web_url = ''
|
|
||||||
|
|
||||||
def open(self, parent=None, detail_item=None, external=False):
|
|
||||||
if not hasattr(self, 'web_url'):
|
|
||||||
return
|
|
||||||
|
|
||||||
if external or self.config.get('open_external', False):
|
|
||||||
open_url(QUrl(detail_item if detail_item else self.web_url))
|
|
||||||
else:
|
|
||||||
d = WebStoreDialog(self.gui, self.web_url, parent, detail_item, create_browser=self.create_browser)
|
|
||||||
d.setWindowTitle(self.name)
|
|
||||||
d.set_tags(self.config.get('tags', ''))
|
|
||||||
d.exec_()
|
|
||||||
|
|
||||||
def search(self, query, max_results=10, timeout=60):
|
|
||||||
if not hasattr(self, 'open_search_url'):
|
|
||||||
return
|
|
||||||
|
|
||||||
description = Description(self.open_search_url)
|
|
||||||
url_template = description.get_best_template()
|
url_template = description.get_best_template()
|
||||||
if not url_template:
|
if not url_template:
|
||||||
return
|
return
|
||||||
@ -99,3 +79,27 @@ class OpenSearchOPDSStore(StorePlugin):
|
|||||||
s.price = s.price.strip()
|
s.price = s.price.strip()
|
||||||
|
|
||||||
yield s
|
yield s
|
||||||
|
|
||||||
|
|
||||||
|
class OpenSearchOPDSStore(StorePlugin):
|
||||||
|
|
||||||
|
open_search_url = ''
|
||||||
|
web_url = ''
|
||||||
|
|
||||||
|
def open(self, parent=None, detail_item=None, external=False):
|
||||||
|
if not hasattr(self, 'web_url'):
|
||||||
|
return
|
||||||
|
|
||||||
|
if external or self.config.get('open_external', False):
|
||||||
|
open_url(QUrl(detail_item if detail_item else self.web_url))
|
||||||
|
else:
|
||||||
|
d = WebStoreDialog(self.gui, self.web_url, parent, detail_item, create_browser=self.create_browser)
|
||||||
|
d.setWindowTitle(self.name)
|
||||||
|
d.set_tags(self.config.get('tags', ''))
|
||||||
|
d.exec_()
|
||||||
|
|
||||||
|
def search(self, query, max_results=10, timeout=60):
|
||||||
|
if not getattr(self, 'open_search_url', None):
|
||||||
|
return
|
||||||
|
for result in open_search(self.open_search_url, query, max_results=max_results, timeout=timeout):
|
||||||
|
yield result
|
||||||
|
Loading…
x
Reference in New Issue
Block a user