Add support for fabfile_local.py
[wolnelektury.git] / apps / dictionary / models.py
index 6238ccb..7df3d75 100644 (file)
@@ -10,6 +10,7 @@ from catalogue.models import Book
 
 
 class Note(models.Model):
+    """Represents a single annotation from a book."""
     book = models.ForeignKey(Book)
     anchor = models.CharField(max_length=64)
     html = models.TextField()
@@ -20,16 +21,15 @@ class Note(models.Model):
 
 
 @task(ignore_result=True)
-def build_notes(book_id):
-    book = Book.objects.get(pk=book_id)
+def build_notes(book):
     Note.objects.filter(book=book).delete()
     if book.html_file:
         from librarian import html
         for anchor, text_str, html_str in html.extract_annotations(book.html_file.path):
             Note.objects.create(book=book, anchor=anchor,
-                               html=html_str, 
+                               html=html_str,
                                sort_key=sortify(text_str).strip()[:128])
-    
-@Book.html_built.connect
+
 def notes_from_book(sender, **kwargs):
-    build_notes.delat(sender)
+    build_notes.delay(sender)
+Book.html_built.connect(notes_from_book)