From faf2f061a827b9807de570fc93fd72ed42e44701 Mon Sep 17 00:00:00 2001 From: Damien Elmes Date: Fri, 25 Nov 2011 14:13:14 +0900 Subject: [PATCH] log imported card/media counts --- anki/importing/anki1.py | 1 - anki/importing/anki2.py | 8 +++++++- anki/media.py | 4 ++++ 3 files changed, 11 insertions(+), 2 deletions(-) diff --git a/anki/importing/anki1.py b/anki/importing/anki1.py index a9190bb19..f31da9c09 100644 --- a/anki/importing/anki1.py +++ b/anki/importing/anki1.py @@ -30,4 +30,3 @@ class Anki1Importer(Anki2Importer): self.deckPrefix = os.path.basename(self.file).replace(".anki", "") self.file = deck.path Anki2Importer.run(self, mdir) - diff --git a/anki/importing/anki2.py b/anki/importing/anki2.py index 8897f2e2f..5fa9765b4 100644 --- a/anki/importing/anki2.py +++ b/anki/importing/anki2.py @@ -5,6 +5,7 @@ from anki import Collection from anki.utils import intTime from anki.importing.base import Importer +from anki.lang import _ # # Import a .anki2 file into the current collection. Used for migration from @@ -175,6 +176,7 @@ class Anki2Importer(Importer): cards = [] revlog = [] print "fixme: need to check schema issues in card import" + cnt = 0 for card in self.src.db.execute( "select f.guid, f.mid, c.* from cards c, notes f " "where c.nid = f.id"): @@ -208,17 +210,21 @@ class Anki2Importer(Importer): rev = list(rev) rev[1] = card[0] revlog.append(rev) + cnt += 1 # apply self.dst.db.executemany(""" insert into cards values (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)""", cards) self.dst.db.executemany(""" insert into revlog values (?,?,?,?,?,?,?,?,?)""", revlog) + self.log.append(_("%d cards imported.") % cnt) # Media ###################################################################### def _importMedia(self): - self.src.media.copyTo(self.dst.media.dir()) + self.log.append( + _("%d media imported.") % + self.src.media.copyTo(self.dst.media.dir())) # Post-import cleanup ###################################################################### diff --git a/anki/media.py b/anki/media.py index b3b0c990a..002f0278a 100644 --- a/anki/media.py +++ b/anki/media.py @@ -172,14 +172,18 @@ If the same name exists, compare checksums.""" # if necessary def copyTo(self, rdir): + "Copy media to RDIR. Return number of files copied." ldir = self.dir() if not os.path.exists(ldir): return + cnt = 0 for f in os.listdir(ldir): src = os.path.join(ldir, f) dst = os.path.join(rdir, f) if not os.path.exists(dst): shutil.copy2(src, dst) + cnt += 1 + return cnt # Tracking changes (public) ##########################################################################