add flags back to cards, and fix syncing

This commit is contained in:
Damien Elmes 2011-09-18 04:37:48 +09:00
parent f32787c18e
commit 2e628996a3
3 changed files with 9 additions and 5 deletions

View file

@ -40,6 +40,7 @@ class Card(object):
self.grade = 0 self.grade = 0
self.cycles = 0 self.cycles = 0
self.edue = 0 self.edue = 0
self.flags = 0
self.data = "" self.data = ""
def load(self): def load(self):
@ -59,6 +60,7 @@ class Card(object):
self.grade, self.grade,
self.cycles, self.cycles,
self.edue, self.edue,
self.flags,
self.data) = self.deck.db.first( self.data) = self.deck.db.first(
"select * from cards where id = ?", self.id) "select * from cards where id = ?", self.id)
self._qa = None self._qa = None
@ -70,7 +72,7 @@ class Card(object):
self.deck.db.execute( self.deck.db.execute(
""" """
insert or replace into cards values insert or replace into cards values
(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)""", (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)""",
self.id, self.id,
self.fid, self.fid,
self.gid, self.gid,
@ -87,6 +89,7 @@ insert or replace into cards values
self.grade, self.grade,
self.cycles, self.cycles,
self.edue, self.edue,
self.flags,
self.data) self.data)
def flushSched(self): def flushSched(self):

View file

@ -108,6 +108,7 @@ create table if not exists cards (
grade integer not null, grade integer not null,
cycles integer not null, cycles integer not null,
edue integer not null, edue integer not null,
flags integer not null,
data text not null data text not null
); );
@ -278,7 +279,7 @@ order by created"""):
db.execute("drop table cards") db.execute("drop table cards")
_addSchema(db, False) _addSchema(db, False)
db.executemany(""" db.executemany("""
insert into cards values (?,?,1,?,?,?,?,?,?,?,?,?,?,0,0,0,"")""", insert into cards values (?,?,1,?,?,?,?,?,?,?,?,?,?,0,0,0,0,"")""",
rows) rows)
# reviewHistory -> revlog # reviewHistory -> revlog

View file

@ -212,10 +212,10 @@ class Syncer(object):
def mergeFacts(self, lchg, rchg): def mergeFacts(self, lchg, rchg):
(toAdd, toRem) = self.findChanges( (toAdd, toRem) = self.findChanges(
lchg[0], lchg[1], rchg[0], rchg[1], 3, 4) lchg[0], lchg[1], rchg[0], rchg[1], 4, 5)
# add missing # add missing
self.deck.db.executemany( self.deck.db.executemany(
"insert or replace into facts values (?,?,?,?,?,?,?,?,?)", "insert or replace into facts values (?,?,?,?,?,?,?,?,?,?,?)",
toAdd) toAdd)
# update fsums table - fixme: in future could skip sort cache # update fsums table - fixme: in future could skip sort cache
self.deck.updateFieldCache([f[0] for f in toAdd]) self.deck.updateFieldCache([f[0] for f in toAdd])
@ -245,7 +245,7 @@ class Syncer(object):
# add missing # add missing
self.deck.db.executemany( self.deck.db.executemany(
"insert or replace into cards values " "insert or replace into cards values "
"(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)", "(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)",
toAdd) toAdd)
# remove remotely deleted # remove remotely deleted
self.deck.remCards(toRem) self.deck.remCards(toRem)