"""
         self.assert_publishable()
         changes = self.get_current_changes(publishable=True)
-        book_xml = self.materialize(changes=changes)
         if not fake:
+            book_xml = self.materialize(changes=changes)
             data = {"book_xml": book_xml}
             if host:
                 data['gallery_url'] = host + self.gallery_url()
         br = BookPublishRecord.objects.create(book=self, user=user)
         for c in changes:
             ChunkPublishRecord.objects.create(book_record=br, change=c)
+        if not self.public:
+            self.public = True
+            self.save()
         post_publish.send(sender=br)
 
     def latex_dir(self):