more about categories
[redakcja.git] / apps / catalogue / helpers.py
index a97a040..7e4ce52 100644 (file)
@@ -46,8 +46,6 @@ def parse_isodate(isodate):
 
 class GalleryMerger(object):
     def __init__(self, dest_gallery, src_gallery):
-        assert isinstance(dest_gallery, str)
-        assert isinstance(src_gallery, str)
         self.dest = dest_gallery
         self.src = src_gallery
         self.dest_size = None
@@ -70,6 +68,11 @@ class GalleryMerger(object):
         m = not always and re.match(r"^([0-9])-", name)
         return "%1d-%s" % (prefix, m and name[2:] or name)
 
+    @property
+    def was_merged(self):
+        "Check if we have gallery size recorded"
+        return self.dest_size is not None
+
     def merge(self):
         if not self.dest:
             return self.src
@@ -77,12 +80,13 @@ class GalleryMerger(object):
             return self.dest
 
         files = listdir(self.path(self.dest))
+        files.sort()
         self.dest_size = len(files)
         files_other = listdir(self.path(self.src))
+        files_other.sort()
         self.src_size = len(files_other)
 
         if files and files_other:
-            print "compare %s with %s" % (files[-1], files_other[0])
             if filecmp.cmp(
                     join(self.path(self.dest), files[-1]),
                     join(self.path(self.src), files_other[0]),
@@ -132,8 +136,6 @@ class GalleryMerger(object):
                 renamed_files_other[f] = self.set_prefix(f, 1, True)
 
         # finally, move / rename files.
-        from nose.tools import set_trace
-        #        set_trace()
         for frm, to in renamed_files.items():
             move(join(self.path(self.dest), frm),
                         join(self.path(self.dest), to))
@@ -143,3 +145,13 @@ class GalleryMerger(object):
 
         rmtree(join(self.path(self.src)))
         return self.dest
+
+
+# Maybe subclass?
+def sstdocument(text):
+    #from catalogue.ebook_utils import RedakcjaDocProvider
+    from librarian.document import Document
+
+    return Document.from_string(
+        text,
+        )