X-Git-Url: https://git.mdrn.pl/redakcja.git/blobdiff_plain/0b1bf765d6185ef20235e702b2969d951bca4de5..fd28890ac78d5869ac68ec6db7183bc168d03891:/src/depot/publishers/legimi.py diff --git a/src/depot/publishers/legimi.py b/src/depot/publishers/legimi.py index 75c21cf2..da222456 100644 --- a/src/depot/publishers/legimi.py +++ b/src/depot/publishers/legimi.py @@ -130,12 +130,16 @@ class Legimi(BasePublisher): }) def can_publish(self, site, book): - meta = book.wldocument(librarian2=True).meta d = { 'errors': [], 'warnings': [], 'info': [] } + try: + meta = book.wldocument(librarian2=True).meta + except: + d['errors'].append('Nieprawidłowy dokument.') + return d thema = self.get_thema(meta) if thema: d['info'].append(mark_safe( @@ -261,7 +265,7 @@ class Legimi(BasePublisher): site_book.external_id = legimi_id site_book.save(update_fields=['external_id']) - self.edit_sale(book) + self.edit_sale(site_book) def get_genre(self, wlbook): if wlbook.meta.legimi and wlbook.meta.legimi in self.CATEGORIES: @@ -356,8 +360,9 @@ class Legimi(BasePublisher): data=current ) - def edit_sale(self, book): - assert book.legimi_id + def edit_sale(self, site_book): + book = site_book.book + assert site_book.external_id words = book.wldocument(librarian2=True).get_statistics()['total']['words_with_fn'] @@ -369,7 +374,7 @@ class Legimi(BasePublisher): data = { 'ValidationTrue': 'true', - 'Id': book.legimi_id, + 'Id': site_book.external_id, 'SalesPromotionId': "0", 'IsLibraryPass': "False", 'OriginalEnterToTheMarketType': "No", @@ -388,6 +393,6 @@ class Legimi(BasePublisher): } self.session.post( - self.EDIT_SALE_URL % book.legimi_id, + self.EDIT_SALE_URL % site_book.external_id, data=data )