X-Git-Url: https://git.mdrn.pl/redakcja.git/blobdiff_plain/8a57885f70d87d9f79b0c0d47dc0f683d434b734..f67de73a6cabbef2d84dc79706cbeb4441800860:/apps/catalogue/models/book.py?ds=inline diff --git a/apps/catalogue/models/book.py b/apps/catalogue/models/book.py index 42a4d1fc..7acd8706 100755 --- a/apps/catalogue/models/book.py +++ b/apps/catalogue/models/book.py @@ -422,7 +422,7 @@ class Book(models.Model): parse_dublincore=parse_dublincore, strict=strict) - def publish(self, user, fake=False, host=None): + def publish(self, user, fake=False, host=None, days=0, beta=False): """ Publishes a book on behalf of a (local) user. """ @@ -430,17 +430,20 @@ class Book(models.Model): changes = self.get_current_changes(publishable=True) if not fake: book_xml = self.materialize(changes=changes) - data = {"book_xml": book_xml} + data = {"book_xml": book_xml, "days": days} if host: data['gallery_url'] = host + self.gallery_url() - apiclient.api_call(user, "books/", data) + apiclient.api_call(user, "books/", data, beta=beta) # record the publish br = BookPublishRecord.objects.create(book=self, user=user) for c in changes: ChunkPublishRecord.objects.create(book_record=br, change=c) - if not self.public: + if not self.public and days == 0: self.public = True self.save() + if self.public and days > 0: + self.public = False + self.save() post_publish.send(sender=br) def latex_dir(self):