Merge changes from lp:~tomek3d/calibre/store. Fix Woblink to return two SearchResults instead of modifying the one which doesn't actually produce two results.

This commit is contained in:
John Schember 2012-03-24 10:32:39 -04:00
commit dd27eb428a

View File

@ -43,9 +43,9 @@ class WoblinkStore(BasicStoreConfig, StorePlugin):
url = 'http://woblink.com/publication?query=' + urllib.quote_plus(query.encode('utf-8')) url = 'http://woblink.com/publication?query=' + urllib.quote_plus(query.encode('utf-8'))
if max_results > 10: if max_results > 10:
if max_results > 20: if max_results > 20:
url += '&limit=' + str(30) url += '&limit=30'
else: else:
url += '&limit=' + str(20) url += '&limit=20'
br = browser() br = browser()
@ -74,15 +74,40 @@ class WoblinkStore(BasicStoreConfig, StorePlugin):
if 'pdf' in formats: if 'pdf' in formats:
formats[formats.index('pdf')] = 'PDF' formats[formats.index('pdf')] = 'PDF'
counter -= 1
s = SearchResult() s = SearchResult()
s.cover_url = 'http://woblink.com' + cover_url s.cover_url = 'http://woblink.com' + cover_url
s.title = title.strip() s.title = title.strip()
s.author = author.strip() s.author = author.strip()
s.price = price + '' s.price = price + ''
s.detail_item = id.strip() s.detail_item = id.strip()
s.drm = SearchResult.DRM_UNKNOWN if 'MOBI' in formats else SearchResult.DRM_LOCKED
# MOBI should be send first,
if 'MOBI' in formats:
s = SearchResult()
s.cover_url = 'http://woblink.com' + cover_url
s.title = title.strip()
s.author = author.strip()
s.price = price + ''
s.detail_item = id.strip()
s.drm = SearchResult.DRM_UNLOCKED
s.formats = 'MOBI'
formats.remove('MOBI')
counter -= 1
yield s
# and the remaining formats (if any) next
if formats:
s = SearchResult()
s.cover_url = 'http://woblink.com' + cover_url
s.title = title.strip()
s.author = author.strip()
s.price = price + ''
s.detail_item = id.strip()
s.drm = SearchResult.DRM_LOCKED
s.formats = ', '.join(formats) s.formats = ', '.join(formats)
counter -= 1
yield s yield s