fnp
/
redakcja.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
update librarian
[redakcja.git]
/
apps
/
catalogue
/
helpers.py
diff --git
a/apps/catalogue/helpers.py
b/apps/catalogue/helpers.py
index
a97a040
..
e88c7e2
100644
(file)
--- a/
apps/catalogue/helpers.py
+++ b/
apps/catalogue/helpers.py
@@
-1,14
+1,17
@@
+# -*- coding: utf-8 -*-
+#
+# This file is part of MIL/PEER, licensed under GNU Affero GPLv3 or later.
+# Copyright © Fundacja Nowoczesna Polska. See NOTICE for more information.
+#
from datetime import date
from functools import wraps
from os.path import join
from datetime import date
from functools import wraps
from os.path import join
-from os import listdir
, stat
+from os import listdir
from shutil import move, rmtree
from django.conf import settings
import re
import filecmp
from shutil import move, rmtree
from django.conf import settings
import re
import filecmp
-from django.db.models import Count
-
def active_tab(tab):
"""
def active_tab(tab):
"""
@@
-46,8
+49,6
@@
def parse_isodate(isodate):
class GalleryMerger(object):
def __init__(self, dest_gallery, src_gallery):
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
self.dest = dest_gallery
self.src = src_gallery
self.dest_size = None
@@
-70,6
+71,11
@@
class GalleryMerger(object):
m = not always and re.match(r"^([0-9])-", name)
return "%1d-%s" % (prefix, m and name[2:] or name)
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
def merge(self):
if not self.dest:
return self.src
@@
-77,12
+83,13
@@
class GalleryMerger(object):
return self.dest
files = listdir(self.path(self.dest))
return self.dest
files = listdir(self.path(self.dest))
+ files.sort()
self.dest_size = len(files)
files_other = listdir(self.path(self.src))
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:
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]),
if filecmp.cmp(
join(self.path(self.dest), files[-1]),
join(self.path(self.src), files_other[0]),
@@
-101,7
+108,8
@@
class GalleryMerger(object):
for f in files:
p = self.get_prefix(f)
if p:
for f in files:
p = self.get_prefix(f)
if p:
- if p > last_pfx: last_pfx = p
+ if p > last_pfx:
+ last_pfx = p
else:
files_prefixed = False
break
else:
files_prefixed = False
break
@@
-117,7
+125,7
@@
class GalleryMerger(object):
for f in files_other:
pfx = self.get_prefix(f)
if pfx is not None:
for f in files_other:
pfx = self.get_prefix(f)
if pfx is not None:
- if
not pfx
in prefixes:
+ if
pfx not
in prefixes:
last_pfx += 1
prefixes[pfx] = last_pfx
renamed_files_other[f] = self.set_prefix(f, prefixes[pfx])
last_pfx += 1
prefixes[pfx] = last_pfx
renamed_files_other[f] = self.set_prefix(f, prefixes[pfx])
@@
-132,14
+140,21
@@
class GalleryMerger(object):
renamed_files_other[f] = self.set_prefix(f, 1, True)
# finally, move / rename files.
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),
for frm, to in renamed_files.items():
move(join(self.path(self.dest), frm),
-
join(self.path(self.dest), to))
+ join(self.path(self.dest), to))
for frm, to in renamed_files_other.items():
move(join(self.path(self.src), frm),
for frm, to in renamed_files_other.items():
move(join(self.path(self.src), frm),
- join(self.path(self.dest), to))
+ join(self.path(self.dest), to))
rmtree(join(self.path(self.src)))
return self.dest
rmtree(join(self.path(self.src)))
return self.dest
+
+
+# Maybe subclass?
+def sstdocument(text):
+ from librarian.document import Document
+
+ return Document.from_string(
+ text,
+ )