Damien Elmes
9de16289ba
always mark gravestones
2011-08-26 17:28:59 +09:00
Damien Elmes
2ae83e6e38
make sure sort field is html stripped in individual edits as well
2011-08-26 17:24:04 +09:00
Damien Elmes
f7b7d46b58
utf8->utf8x in latex preamble
2011-08-26 11:44:41 +09:00
Damien Elmes
91efb8f30b
some initial sync work
2011-05-29 08:13:54 +09:00
Damien Elmes
6627264079
delFacts() convenience method; mod schema on model add
2011-05-08 02:12:09 +09:00
Damien Elmes
0af03a6a8a
only use deletion log when necessary
2011-05-07 21:45:55 +09:00
Damien Elmes
ec8c720048
make it possible to save with a given mod time, for use in syncing
2011-05-04 23:27:56 +09:00
Damien Elmes
3d370f675b
restore the deletion log
...
the initial plan was to zero the creation time and leave the cards/facts there
until we have a chance to garbage collect them on a schema change, but such an
approach won't work with deck subscriptions
2011-05-04 19:00:38 +09:00
Damien Elmes
f2604b7805
make sure to update new count on new answer
2011-05-04 16:48:53 +09:00
Damien Elmes
6885d89b65
sortCards() when there are no new cards should do nothing
2011-05-04 16:37:31 +09:00
Damien Elmes
a65f241258
gracefully handle invalid queries
2011-04-29 11:46:26 +09:00
Damien Elmes
ddcf83bc7f
add [] to cloze
2011-04-29 11:43:06 +09:00
Damien Elmes
a4f644e780
correctly determine period when relying on first day
2011-04-29 11:36:01 +09:00
Damien Elmes
6a93e69fee
prevent people from shooting themselves in the foot
2011-04-28 09:31:48 +09:00
Damien Elmes
f969aec03f
add created field to models so we can tell if they were originally the same
2011-04-28 09:24:05 +09:00
Damien Elmes
5856ad7545
make latex pre/postamble a model property
2011-04-28 09:24:05 +09:00
Damien Elmes
3327c27d81
only look at the last 10 answers for time
2011-04-28 09:24:05 +09:00
Damien Elmes
0bbdd722c2
very basic eta
2011-04-28 09:24:05 +09:00
Damien Elmes
19fd581839
change default lrn timing; leechAction doesn't need an array
2011-04-28 09:24:05 +09:00
Damien Elmes
754dcef4f7
handle the case where learning cards have a grade higher than their config
2011-04-28 09:24:05 +09:00
Damien Elmes
0d6064b933
rename()
2011-04-28 09:24:05 +09:00
Damien Elmes
47c30f172f
fix issues suspending learning cards
...
- cards in final review are first reset as rev cards so that type==queue and
they can be restored correctly
- new cards in learning have type set to 1 so they too can be restored
correctly
2011-04-28 09:24:05 +09:00
Damien Elmes
6946dc2eaa
make sure we don't introduce fp due times for learn cards
2011-04-28 09:24:05 +09:00
Damien Elmes
d1deeb2b37
keep track of session reps in scheduler
2011-04-28 09:24:05 +09:00
Damien Elmes
adb600e94d
if the user has relearn failed on, show the learn interval
2011-04-28 09:24:05 +09:00
Damien Elmes
add2e0aaa9
give easy an extra day boost
2011-04-28 09:24:05 +09:00
Damien Elmes
2fa767c503
when rescheduling ensure ivl >= 1; remove dead code
2011-04-28 09:24:05 +09:00
Damien Elmes
88c4f010d3
update rescheduling
...
like forgetCards(), we no longer adjust the stats or revlog for the card
2011-04-28 09:24:05 +09:00
Damien Elmes
8a9174fd4d
we don't need rep in the revlog
2011-04-28 09:24:05 +09:00
Damien Elmes
cc0df00fe5
put cards at end when forgetting; drop support for forgetting leeches
...
forgetCards() needs to know the highest positioned card, and that requires a
full table scan, so it's not appropriate for part of answerCards()
2011-04-28 09:24:04 +09:00
Damien Elmes
5278b3c2bb
make sure due is converted to int on upgrade
2011-04-28 09:24:04 +09:00
Damien Elmes
431fd2585e
when adding cards, use rand(1, maxfid)
...
this means that content added earlier has a higher chance of appearing, but it
makes it consistent with sortCards(), and the user can sort manually if need
be
2011-04-28 09:24:04 +09:00
Damien Elmes
c4c1cdeb6b
if there are no cards to shift, don't try
2011-04-28 09:24:04 +09:00
Damien Elmes
7acdbfa9ae
support for shifting
2011-04-28 09:24:04 +09:00
Damien Elmes
b69031cd4f
generalize order/random
2011-04-28 09:24:04 +09:00
Damien Elmes
1641256da4
random ids should start at 1
2011-04-28 09:24:04 +09:00
Damien Elmes
82a3443abe
randomize if necessary on upgrade; don't add old option names
2011-04-28 09:24:04 +09:00
Damien Elmes
82c3119c90
update randomizing/ordering code and forgetCards()
...
instead of completely resetting a card like we did in resetCards() in the
past, forgetCards() just puts the card back in the new queue and leaves the
factor and revlog alone. If users want to complete reset a card, they'll need to
export it.
2011-04-28 09:24:04 +09:00
Damien Elmes
0df95eafc0
revlog updates
...
- use negative numbers to denote second intervals
- record the rev ivl when leaving lrn queue
- improve revlog upgrade
- don't truncate precision when recording time taken
2011-04-28 09:24:04 +09:00
Damien Elmes
497c25daa4
make it easier for callers to add extra lines
2011-04-28 09:24:04 +09:00
Damien Elmes
466c14421b
tweak stats
2011-04-28 09:24:04 +09:00
Damien Elmes
7d64036a07
drop streak, make reps log all entries
...
reps should now be equal to the number of entries in the revlog, and only
exists so that we can order by review count in the browser efficiently
streak is no longer necessary as we have a learn queue now
2011-04-28 09:24:04 +09:00
Damien Elmes
946b54185e
more humane time display
2011-04-28 09:24:04 +09:00
Damien Elmes
58fa7ff714
be consistent with .db references
2011-04-28 09:24:04 +09:00
Damien Elmes
884405d2a6
show the latest review instead
2011-04-28 09:24:04 +09:00
Damien Elmes
5394740ea7
we don't need changed anymore, since it's usually only updated on review
2011-04-28 09:24:04 +09:00
Damien Elmes
d6258e7231
more tweaks
2011-04-28 09:24:04 +09:00
Damien Elmes
799b322e12
tweak card info layout
2011-04-28 09:24:04 +09:00
Damien Elmes
1c2b403348
apply selective groups to learning queue too
...
originally the plan was to get the user to "forget learning cards" or "remove
final drill" when switching between categories, but that's cumbersome and not
intuitive
2011-04-28 09:24:04 +09:00
Damien Elmes
890df46047
remember tags per model
2011-04-28 09:24:04 +09:00
Damien Elmes
9b56c862cd
use 'initial group' instead of 'fact group'
2011-04-28 09:24:04 +09:00
Damien Elmes
10426b6606
don't lstrip the bom
2011-04-28 09:24:04 +09:00
Damien Elmes
3af48542e4
include card & fact group in card info
2011-04-28 09:24:03 +09:00
Damien Elmes
003737c03f
generate a separate cumulative plot for each revlog type
2011-04-28 09:24:03 +09:00
Damien Elmes
b422019970
compress graph; show % correct instead; ignore hours with counts < 30
2011-04-28 09:24:03 +09:00
Damien Elmes
8085ba299e
hourly retention graph
2011-04-28 09:24:03 +09:00
Damien Elmes
2243b691cc
add full search to ignore formatting
2011-04-28 09:24:03 +09:00
Damien Elmes
4a568a83be
strip html from latex so clozes work properly
...
in the future we could look at replacing the cloze html with something
prettier, but it might cause latex errors
2011-04-28 09:24:03 +09:00
Damien Elmes
f0909ebed2
if context is off, don't lose outer field styling
2011-04-28 09:24:03 +09:00
Damien Elmes
0fdb966766
wrap clozes in a classed span instead of bold
2011-04-28 09:24:03 +09:00
Damien Elmes
03d00228aa
support stripping context of cloze
2011-04-28 09:24:03 +09:00
Damien Elmes
3c269d5fba
sticky fields; add forget option to leeches
2011-04-28 09:24:03 +09:00
Damien Elmes
344b111b80
centralize all tmp dir access
2011-04-28 09:24:03 +09:00
Damien Elmes
d96a0eaf08
rev count should be decremented on fetch
2011-04-28 09:24:03 +09:00
Damien Elmes
786600ebb6
check python version and locale on load
2011-04-28 09:24:03 +09:00
Damien Elmes
e38125d9aa
predictable review queue randomization
2011-04-28 09:24:03 +09:00
Damien Elmes
ce0df2652f
add utils for adding/removing tags
2011-04-28 09:24:03 +09:00
Damien Elmes
f7c11f5771
fix accidental inverted colours
2011-04-28 09:24:03 +09:00
Damien Elmes
aac840f375
remove redundant cardHasTag()
2011-04-28 09:24:03 +09:00
Damien Elmes
173379f451
minor utils tweaks
2011-04-28 09:24:03 +09:00
Damien Elmes
84d59e4b01
don't truncate sort field anymore, since we display it in the gui
2011-04-28 09:24:03 +09:00
Damien Elmes
e8d6714130
make sure the failed card count reflects the cutoff
2011-04-28 09:24:03 +09:00
Damien Elmes
8b747c3aac
allow the user to choose if case should be folded
2011-04-28 09:24:03 +09:00
Damien Elmes
bee14e1a0b
make fieldNames() available for gui code too
2011-04-28 09:24:03 +09:00
Damien Elmes
d51cd5a433
find & replace
2011-04-28 09:24:03 +09:00
Damien Elmes
98a63285e1
port changeModel()
2011-04-28 09:24:02 +09:00
Damien Elmes
1baa7bb5b6
reload field map on fact load(); order by ordinal not id
2011-04-28 09:24:02 +09:00
Damien Elmes
5619959b5a
when reloading card, make sure cache is discarded
2011-04-28 09:24:02 +09:00
Damien Elmes
572fe6041a
convert some list comps to generators
2011-04-28 09:24:02 +09:00
Damien Elmes
d7b86da811
canonify tags after bulk update
2011-04-28 09:24:02 +09:00
Damien Elmes
93d80678f9
_fields -> fields
2011-04-28 09:24:02 +09:00
Damien Elmes
89673f0c0a
if no tags were provided, just return
2011-04-28 09:24:02 +09:00
Damien Elmes
d611299715
make sure add/delTags() is limited to provided ids
2011-04-28 09:24:02 +09:00
Damien Elmes
96d3a25c9a
add hook into upgrade
2011-04-28 09:24:02 +09:00
Damien Elmes
e344e1a6a8
default to a useful model id on upgrade
2011-04-28 09:24:02 +09:00
Damien Elmes
6be313bcd3
updateCardGids()
2011-04-28 09:24:02 +09:00
Damien Elmes
8c1c729544
fix card state negation
2011-04-28 09:24:02 +09:00
Damien Elmes
437b4780c0
add missing cardIvl sort
2011-04-28 09:24:02 +09:00
Damien Elmes
13a484ea36
allow user to abort schema mod
2011-04-28 09:24:02 +09:00
Damien Elmes
e339df5ef8
ensure first field can be sorted, flush config out, and ensure schema mod
2011-04-28 09:24:02 +09:00
Damien Elmes
1b3548f164
fix sorting by ease
2011-04-28 09:24:02 +09:00
Damien Elmes
2a225b1fae
use the sort property set in the deck
2011-04-28 09:24:02 +09:00
Damien Elmes
d089deae5a
add the ability to reverse sort order
2011-04-28 09:24:02 +09:00
Damien Elmes
6617214708
add recent list; fix groups
2011-04-28 09:24:02 +09:00
Damien Elmes
7ffff24790
fix case where multiple models have the same template
2011-04-28 09:24:02 +09:00
Damien Elmes
d6116a5377
model and group searching
2011-04-28 09:24:02 +09:00
Damien Elmes
aacb57c196
add a countless group tree too
2011-04-28 09:24:02 +09:00
Damien Elmes
9ebbdc2be1
sort by card ordinal after fact sort
2011-04-28 09:24:02 +09:00
Damien Elmes
efe6177c7a
refactor ordering
2011-04-28 09:24:02 +09:00
Damien Elmes
291bd399b7
field searching
...
dropped support for field:foo, as you can type 'foo:' instead to accomplish
the same thing
2011-04-28 09:24:01 +09:00
Damien Elmes
57938927e7
users can pass a number for template ordinal; makes show:one obsolete
2011-04-28 09:24:01 +09:00
Damien Elmes
94d4e319ae
fids and template searches
2011-04-28 09:24:01 +09:00
Damien Elmes
a13c18cf4b
start refactoring find code
2011-04-28 09:24:01 +09:00
Damien Elmes
2343222245
remove rest of q/a searching
2011-04-28 09:24:01 +09:00
Damien Elmes
69a9d665e3
question/answer searching is obsolete
2011-04-28 09:24:01 +09:00
Damien Elmes
4ffd239ea8
remove obsolete striphtmlalt
2011-04-28 09:24:01 +09:00
Damien Elmes
2dfdfad6f2
update license link
2011-04-28 09:24:01 +09:00
Damien Elmes
8fcc6b3085
gpl3->agpl
2011-04-28 09:24:01 +09:00
Damien Elmes
c5e7756304
ensure model/template gid exists; mark schema modified when group deleted
2011-04-28 09:24:01 +09:00
Damien Elmes
86a7106eab
when deleting a group, update cards and facts too
2011-04-28 09:24:01 +09:00
Damien Elmes
673913a2a8
fix group tree when no cards use a group
2011-04-28 09:24:01 +09:00
Damien Elmes
95b3f60353
strip sox munging
2011-04-28 09:24:01 +09:00
Damien Elmes
82d006d145
strip noise profile code
2011-04-28 09:24:01 +09:00
Damien Elmes
c682080890
make it easier to get media dir; remove tidyHTML()
2011-04-28 09:24:01 +09:00
Damien Elmes
6ed48171fc
add a default group to model, add groupName()
2011-04-28 09:24:01 +09:00
Damien Elmes
f256d18971
return fields in sorted order
2011-04-28 09:24:01 +09:00
Damien Elmes
ab3a86d44e
add noautosub arg to mplayer
2011-04-28 09:24:01 +09:00
Damien Elmes
c799b7c97e
include model name in stdmodels; provide ability to get model outside cache
2011-04-28 09:24:01 +09:00
Damien Elmes
de81f0238a
template moving
2011-04-28 09:24:01 +09:00
Damien Elmes
c8b16a0e0e
accept a reload argument in q()
2011-04-28 09:24:01 +09:00
Damien Elmes
dba04598ae
pad ivl graph
2011-04-28 09:24:01 +09:00
Damien Elmes
9705dbdcfe
small tweaks
2011-04-28 09:24:01 +09:00
Damien Elmes
fba161d0b1
tablify info
2011-04-28 09:24:01 +09:00
Damien Elmes
5dc418060e
fix forecost avg calculation
2011-04-28 09:24:00 +09:00
Damien Elmes
02b1494a10
improve review time data; make sure graph bounds include end points
2011-04-28 09:24:00 +09:00
Damien Elmes
4c8eec5659
duplicate imports
2011-04-28 09:24:00 +09:00
Damien Elmes
84d2f32685
move graph code into stats.py; remove old deck stats
2011-04-28 09:24:00 +09:00
Damien Elmes
4be8b9d38c
fix zerodiv and other errors
2011-04-28 09:24:00 +09:00
Damien Elmes
a856665824
give the pie a background again
2011-04-28 09:24:00 +09:00
Damien Elmes
b47275599b
fix selective on some graphs; tweak pie layout
2011-04-28 09:24:00 +09:00
Damien Elmes
2d8faa8608
give the forecast a sensible limit
2011-04-28 09:24:00 +09:00
Damien Elmes
b5c8ba7b9f
apply selective to card/fact counts
2011-04-28 09:24:00 +09:00
Damien Elmes
525787b33f
tweak call args
2011-04-28 09:24:00 +09:00
Damien Elmes
014cc035ee
add selective study limits to remaining graphs
2011-04-28 09:24:00 +09:00
Damien Elmes
be7794bb56
include day/week info too
2011-04-28 09:24:00 +09:00
Damien Elmes
ed9901a71d
add average review # to forecast
2011-04-28 09:24:00 +09:00
Damien Elmes
30d62875d0
css, more layout tweaks, add suspended back into display
2011-04-28 09:24:00 +09:00
Damien Elmes
282d0bb9ba
add deck creation date
2011-04-28 09:24:00 +09:00
Damien Elmes
a5d751283b
add a separate _title()
2011-04-28 09:24:00 +09:00
Damien Elmes
f67c72bec3
move the graph layout around
2011-04-28 09:24:00 +09:00
Damien Elmes
2479913f9b
add a pie graph, add average interval to ivls area
2011-04-28 09:24:00 +09:00
Damien Elmes
c64c7a2acb
hide the cumulative graph if datapoints < 2
2011-04-28 09:24:00 +09:00
Damien Elmes
74a52694ec
for daily graph, use minutes instead of hours
2011-04-28 09:24:00 +09:00
Damien Elmes
e950c8af1c
just chop off options/group completely
2011-04-28 09:24:00 +09:00
Damien Elmes
0b92423cf7
settings->options, return bool for syncingEnabled
2011-04-28 09:24:00 +09:00
Damien Elmes
4af961f1d0
put langs in lang
2011-04-28 09:24:00 +09:00
Damien Elmes
11f3de525f
groupConf() takes gcid, not gid
2011-04-28 09:23:59 +09:00
Damien Elmes
692fba2ea3
use the deck's groups instead of holding on to a private copy
2011-04-28 09:23:59 +09:00
Damien Elmes
e93ded1e04
update a few group configs
2011-04-28 09:23:59 +09:00
Damien Elmes
4b9c6fc822
track gcid additions too
2011-04-28 09:23:59 +09:00