mirror of
https://github.com/ankitects/anki.git
synced 2025-11-12 23:57:13 -05:00
ensure random distribution of due cards for a given day in v2 sched
This commit is contained in:
parent
888d8b5dee
commit
4dde7b13d0
1 changed files with 3 additions and 9 deletions
|
|
@ -792,19 +792,13 @@ did in %s and queue = 2 and due <= ? limit %d)""" % (
|
||||||
self._revQueue = self.col.db.list("""
|
self._revQueue = self.col.db.list("""
|
||||||
select id from cards where
|
select id from cards where
|
||||||
did in %s and queue = 2 and due <= ?
|
did in %s and queue = 2 and due <= ?
|
||||||
order by due
|
order by due, random()
|
||||||
limit ?""" % (ids2str(self.col.decks.active())),
|
limit ?""" % (ids2str(self.col.decks.active())),
|
||||||
self.today, lim)
|
self.today, lim)
|
||||||
|
|
||||||
if self._revQueue:
|
if self._revQueue:
|
||||||
if self.col.decks.get(self.col.decks.selected(), default=False)['dyn']:
|
# preserve order
|
||||||
# dynamic decks need due order preserved
|
self._revQueue.reverse()
|
||||||
self._revQueue.reverse()
|
|
||||||
else:
|
|
||||||
# fixme: as soon as a card is answered, this is no longer consistent
|
|
||||||
r = random.Random()
|
|
||||||
r.seed(self.today)
|
|
||||||
r.shuffle(self._revQueue)
|
|
||||||
return True
|
return True
|
||||||
|
|
||||||
if self.revCount:
|
if self.revCount:
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue