diff --git a/aqt/browser.py b/aqt/browser.py index 57ac9afd9..c11160b7a 100644 --- a/aqt/browser.py +++ b/aqt/browser.py @@ -17,6 +17,7 @@ from aqt.utils import saveGeom, restoreGeom, saveSplitter, restoreSplitter, \ from anki.errors import * from anki.db import * from anki.hooks import runHook, addHook, removeHook +from aqt.webview import AnkiWebView COLOUR_SUSPENDED1 = "#ffffcc" COLOUR_SUSPENDED2 = "#ffffaa" @@ -708,22 +709,29 @@ class Browser(QMainWindow): self.cardStats = CardStats(self.deck, None) self.connect(self.form.cardLabel, SIGNAL("linkActivated(const QString&)"), - self.onChangeSortField) + self.onCardLink) def showCardInfo(self, card): self.cardStats.card = self.card rep = self.cardStats.report() rep = "" + rep m = self.card.model() + # add sort field sortf = m.fields[m.sortIdx()]['name'] - rep = rep.replace( - "", - ("
%s | " % _("Date") + s += ("%s | " * 5) % ( + _("Type"), _("Ease"), _("Interval"), _("Factor"), _("Time")) + for (date, ease, ivl, factor, taken, type) in self.mw.deck.db.execute( + "select time/1000, ease, ivl, factor, taken/1000.0, type " + "from revlog where cid = ?", self.card.id): + s += "
---|---|
%s | " % time.strftime(_("%Y-%m-%d @ %H:%M"), + time.localtime(date)) + tstr = [_("Learn"), _("Review"), _("Relearn"), _("Cram"), + _("Resched")][type] + import anki.stats as st + fmt = "%s" + if type == 0: + tstr = fmt % (st.colLearn, tstr) + elif type == 1: + tstr = fmt % (st.colMature, tstr) + elif type == 2: + tstr = fmt % (st.colRelearn, tstr) + elif type == 3: + tstr = fmt % (st.colCram, tstr) + else: + tstr = fmt % ("#000", tstr) + if ease == 1: + ease = fmt % (st.colRelearn, ease) + s += ("%s | " * 5) % ( + tstr, + ease, _("%dd") % ivl if ivl >= 0 else self.cardStats.time(-ivl), + "%d%%" % (factor/10) if factor else "", + self.cardStats.time(taken)) + "