make sure we set card.left when lapsing a review

This commit is contained in:
Damien Elmes 2012-11-02 07:22:58 +09:00
parent 9b3364c1bb
commit 44415ea97f

View file

@ -601,7 +601,10 @@ did = ? and queue = 3 and due <= ? limit ?""",
card.queue = card.type = 0
card.due = self.col.nextID("pos")
def _startingLeft(self, card):
def _startingLeft(self, card, relrn=False):
if relrn:
conf = self._lapseConf(card)
else:
conf = self._lrnConf(card)
tot = len(conf['delays'])
tod = self._leftToday(conf['delays'], tot)
@ -805,10 +808,9 @@ select id from cards where did in %s and queue = 2 and due <= ? limit ?)"""
card.odue = card.due
delay = self._delayForGrade(conf, 0)
card.due = int(delay + time.time())
card.left = self._startingLeft(card, relrn=True)
# queue 1
if card.due < self.dayCutoff:
card.left = len(conf['delays'])
card.left += self._leftToday(conf['delays'], card.left)*1000
self.lrnCount += card.left/1000
card.queue = 1
heappush(self._lrnQueue, (card.due, card.id))