From a342c73887918a0f6fce6a07c03a0fb23537d580 Mon Sep 17 00:00:00 2001 From: Damien Elmes Date: Sat, 7 Feb 2009 21:31:44 +0900 Subject: [PATCH] improve failed card handling --- anki/deck.py | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) diff --git a/anki/deck.py b/anki/deck.py index 51b4a1a2b..2736c6faa 100644 --- a/anki/deck.py +++ b/anki/deck.py @@ -1539,6 +1539,46 @@ where id = :id""", pending) return True return False + # Failed card handling + ########################################################################## + + def setFailedCardPolicy(self, idx): + if idx == 5: + # custom + return + self.collapseTime = 0 + if idx == 0: + d = 600 + self.collapseTime = 1 + elif idx == 1: + d = 600 + elif idx == 2: + d = 28800 + elif idx == 3: + d = 259200 + elif idx == 4: + d = 0 + self.delay0 = d + self.delay1 = d + + def getFailedCardPolicy(self): + if self.delay0 != self.delay1: + return 5 + d = self.delay0 + if self.collapseTime == 1: + if d == 600: + return 0 + return 5 + if d == 600: + return 1 + elif d == 28800: + return 2 + elif d == 259200: + return 3 + elif d == 0: + return 4 + return 5 + # Media ########################################################################## @@ -2515,3 +2555,13 @@ def revCardOrderLabels(): 2: _("Review cards in order due"), 3: _("Review cards in random order"), } + +def failedCardOptionLabels(): + return { + 0: _("Show failed cards soon"), + 1: _("Show failed cards in 10 minutes"), + 2: _("Show failed cards in 8 hours"), + 3: _("Show failed cards in 3 days"), + 4: _("Show failed cards at end"), + 5: _("Custom failed cards handling"), + }