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