mirror of
https://github.com/ankitects/anki.git
synced 2025-09-24 16:56:36 -04:00
handle duplicate fact creation times
This commit is contained in:
parent
f6189f453a
commit
5868ff52b9
2 changed files with 10 additions and 6 deletions
|
@ -252,13 +252,17 @@ from facts order by created""")
|
||||||
# bold/italics/underline cruft.
|
# bold/italics/underline cruft.
|
||||||
map = {}
|
map = {}
|
||||||
data = []
|
data = []
|
||||||
factmap = {}
|
factidmap = {}
|
||||||
|
times = {}
|
||||||
from anki.utils import minimizeHTML
|
from anki.utils import minimizeHTML
|
||||||
for c, row in enumerate(facts):
|
for c, row in enumerate(facts):
|
||||||
oldid = row[0]
|
oldid = row[0]
|
||||||
row = list(row)
|
row = list(row)
|
||||||
# get rid of old created column and update id
|
# get rid of old created column and update id
|
||||||
factmap[row[0]] = row[3]
|
while row[3] in times:
|
||||||
|
row[3] += 1
|
||||||
|
times[row[3]] = True
|
||||||
|
factidmap[row[0]] = row[3]
|
||||||
row[0] = row[3]
|
row[0] = row[3]
|
||||||
del row[3]
|
del row[3]
|
||||||
map[oldid] = row[0]
|
map[oldid] = row[0]
|
||||||
|
@ -276,7 +280,7 @@ from facts order by created""")
|
||||||
# it's not unique and update the fact id
|
# it's not unique and update the fact id
|
||||||
times = {}
|
times = {}
|
||||||
rows = []
|
rows = []
|
||||||
cardmap = {}
|
cardidmap = {}
|
||||||
for row in db.execute("""
|
for row in db.execute("""
|
||||||
select id, cast(created*1000 as int), factId, ordinal,
|
select id, cast(created*1000 as int), factId, ordinal,
|
||||||
cast(modified as int),
|
cast(modified as int),
|
||||||
|
@ -298,9 +302,9 @@ order by created"""):
|
||||||
row[1] += 1
|
row[1] += 1
|
||||||
times[row[1]] = True
|
times[row[1]] = True
|
||||||
# rewrite fact id
|
# rewrite fact id
|
||||||
row[2] = factmap[row[2]]
|
row[2] = factidmap[row[2]]
|
||||||
# note id change and save all but old id
|
# note id change and save all but old id
|
||||||
cardmap[row[0]] = row[1]
|
cardidmap[row[0]] = row[1]
|
||||||
rows.append(row[1:])
|
rows.append(row[1:])
|
||||||
# drop old table and rewrite
|
# drop old table and rewrite
|
||||||
db.execute("drop table cards")
|
db.execute("drop table cards")
|
||||||
|
@ -336,7 +340,7 @@ yesCount from reviewHistory"""):
|
||||||
row = list(row)
|
row = list(row)
|
||||||
# new card ids
|
# new card ids
|
||||||
try:
|
try:
|
||||||
row[1] = cardmap[row[1]]
|
row[1] = cardidmap[row[1]]
|
||||||
except:
|
except:
|
||||||
# id doesn't exist
|
# id doesn't exist
|
||||||
continue
|
continue
|
||||||
|
|
Binary file not shown.
Loading…
Reference in a new issue