From d974ec57f6aa48102b5a0903fed865c8282f222a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tomasz=20D=C5=82ugosz?= Date: Thu, 19 Jan 2012 19:47:19 +0100 Subject: [PATCH] Virtualo in affiliate programme --- src/calibre/customize/builtins.py | 1 + src/calibre/gui2/store/stores/virtualo_plugin.py | 8 ++++++-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/calibre/customize/builtins.py b/src/calibre/customize/builtins.py index e576cf84ad..05bf1629b7 100644 --- a/src/calibre/customize/builtins.py +++ b/src/calibre/customize/builtins.py @@ -1507,6 +1507,7 @@ class StoreVirtualoStore(StoreBase): headquarters = 'PL' formats = ['EPUB', 'MOBI', 'PDF'] + affiliate = True class StoreWaterstonesUKStore(StoreBase): name = 'Waterstones UK' diff --git a/src/calibre/gui2/store/stores/virtualo_plugin.py b/src/calibre/gui2/store/stores/virtualo_plugin.py index 891c993384..e1d86b4d8b 100644 --- a/src/calibre/gui2/store/stores/virtualo_plugin.py +++ b/src/calibre/gui2/store/stores/virtualo_plugin.py @@ -24,10 +24,12 @@ from calibre.gui2.store.web_store_dialog import WebStoreDialog class VirtualoStore(BasicStoreConfig, StorePlugin): def open(self, parent=None, detail_item=None, external=False): - url = 'http://virtualo.pl/ebook/c2/' + pid = '12' + url = 'http://virtualo.pl/ebook/c2/?pr=' + pid + detail_url = detail_item + '&pr=' + pid if detail_item else url if external or self.config.get('open_external', False): - open_url(QUrl(url_slash_cleaner(detail_item if detail_item else url))) + open_url(QUrl(url_slash_cleaner(detail_url))) else: d = WebStoreDialog(self.gui, url, parent, detail_item) d.setWindowTitle(self.name) @@ -54,11 +56,13 @@ class VirtualoStore(BasicStoreConfig, StorePlugin): price = ''.join(data.xpath('.//span[@class="price"]/text() | .//span[@class="price abbr"]/text()')) cover_url = ''.join(data.xpath('.//table/tr[1]/td[1]/a/img/@src')) title = ''.join(data.xpath('.//div[@class="title"]/a/text()')) + title = re.sub(r'\ WM', '', title) author = ', '.join(data.xpath('.//div[@class="authors"]/a/text()')) formats = ', '.join(data.xpath('.//span[@class="format"]/a/text()')) formats = re.sub(r'(, )?ONLINE(, )?', '', formats) drm = drm_pattern.search(formats) formats = re.sub(r'(, )?ADE(, )?', '', formats) + formats = re.sub(r'\ WM', '', formats) counter -= 1