Damien Elmes
94ff0f53b1
fix reposition not being applied in browser sort order
...
https://forums.ankiweb.net/t/reposition-function-not-working/5817
Also changed id->cid in the non-sorting case, as otherwise when
using all_searched_cards() on a sorted list, the results will be wrong.
2020-12-16 10:58:46 +10:00
Damien Elmes
ae742417a1
fix filtered decks not honoring sort order
...
https://forums.ankiweb.net/t/2-1-36-filtered-decks-bug/5649/
2020-12-09 22:50:49 +10:00
Damien Elmes
00f827f976
fix duplicate search not checking first field
...
Thanks to abdo for the initial solution. Closes #838
2020-11-30 09:27:10 +10:00
Damien Elmes
aaa950f66c
handle notes with invalid utf8
2020-11-06 10:21:51 +10:00
Damien Elmes
d3de0bbaff
reindex when checking database
...
Came across a user with a corrupt index:
sqlite> pragma integrity_check;
integrity_check = wrong # of entries in index ix_revlog_cid
integrity_check = wrong # of entries in index ix_cards_sched
This is not picked up by a quick check, and a vacuum does not
fix it, but a reindex does.
AnkiWeb currently performs a full check when a file is uploaded
to it, so this was leading to "corrupt" to show up when syncing
the collection, with a local DB check not reporting/fixing the issue.
2020-10-05 17:40:43 +10:00
Damien Elmes
b39612eb33
rename downgrade method for clarity
2020-09-22 15:53:26 +10:00
Damien Elmes
ea7b8c5e49
update schema to fix default initial ease in deck configs
...
Closes #766
- changes the on-disk representation from % to a multiplier,
eg 250 -> 2.5, as this is consistent with the other options
- resets deck configs at or below 1.3 to 2.5
- for any cards that were using a reset deck config, reset their
current factor if it's at or below 2.0x. The cutoff is arbitrary,
and just intended to make sure we catch cards the user has rated
Easy on multiple times. The existing due dates are left alone.
2020-09-22 08:16:39 +10:00
Damien Elmes
2a5ebad11f
fix incorrect SQL in previous change
2020-09-19 12:27:00 +10:00
Damien Elmes
35470fdcf3
congrats_info() failed if learning card had negative due
...
https://forums.ankiweb.net/t/integralvalueoutofrange-for-filtered-deck/3353
2020-09-18 20:14:35 +10:00
Damien Elmes
f32d773e25
set_deck()
2020-09-03 17:42:46 +10:00
Damien Elmes
7c169daa95
move card sorting and resetting to backend
2020-09-03 15:54:15 +10:00
Damien Elmes
366c5c4774
log manual reschedule, but ignore the log entry in the stats
2020-09-02 17:56:23 +10:00
Damien Elmes
7f42500e53
rename some card+note fields in backend
2020-09-01 10:24:38 +10:00
Damien Elmes
9f51347e1e
move bury/suspend into backend
2020-09-01 10:24:38 +10:00
Damien Elmes
988b3c00c1
move unbury/unsuspend routines into backend
2020-09-01 10:24:38 +10:00
Damien Elmes
2a6206be91
handle null return from sum() in other columns
2020-09-01 10:24:38 +10:00
Damien Elmes
999b659c3a
reimplement congrats screen in Rust+Typescript
2020-09-01 10:24:38 +10:00
Damien Elmes
7cfeb6cbb3
check if we need to unbury at the start of the sync process
...
https://forums.ankiweb.net/t/bug-buried-cards-in-filtered-decks-not-being-unburied-next-day/2541/24
2020-08-28 21:09:07 +10:00
Damien Elmes
3b8c7f22d2
don't crash when upgrading collection with ntid of 0
2020-08-23 14:14:44 +10:00
Damien Elmes
d0d2ba15e2
generate extra templates when recovering notetype
2020-08-10 13:42:37 +10:00
Damien Elmes
60730af9f4
fix negative review times in DB check
2020-08-07 14:37:44 +10:00
Damien Elmes
a93145c4c7
handle preview repeat in deck list
2020-07-30 09:11:13 +10:00
Damien Elmes
71dbbd9fa8
set schema on collection creation
2020-07-03 11:55:27 +10:00
Damien Elmes
618fc65282
handle revlog entries with negative review times
2020-06-29 15:48:01 +10:00
Damien Elmes
4d88b6521d
cards added graph
2020-06-29 15:48:01 +10:00
Damien Elmes
1e9901e9bd
experiment with exposing raw card/revlog data to frontend
2020-06-29 15:48:00 +10:00
Damien Elmes
fd258d15c5
some initial work on updating the graphs
2020-06-29 15:48:00 +10:00
Damien Elmes
710e5ecce2
formatting fix
2020-06-22 11:58:31 +10:00
Damien Elmes
cec1fdece5
move revlog out of sync code, and add enums
...
and remove type=4, which does not appear to be used
2020-06-16 16:31:36 +10:00
Damien Elmes
f5694a7e4a
migrate card stats to backend
...
Currently this renders the HTML directly like the previous Python
implementation - doing it in JS would probably make more sense in the
future.
2020-06-15 17:22:16 +10:00
Damien Elmes
965fd848d1
on upgrade, mark decks modified that are renamed
2020-06-14 14:48:58 +10:00
Damien Elmes
d5cd9af53b
fix review cards with high intervals not being reset properly
...
would lead to a "fixed .. with invalid card property" message that
didn't go away
2020-06-09 20:11:26 +10:00
Damien Elmes
75471224fa
add progress to db check
2020-06-08 21:07:36 +10:00
Damien Elmes
e74e5c604b
add daily count updating to backend
2020-06-05 19:49:53 +10:00
Damien Elmes
c5e65d02e1
add note/card removal to backend
2020-06-04 18:21:04 +10:00
Damien Elmes
d7a2e78c0b
change sync label to indicate sync state
...
- blue for normal sync, red for full sync required
- refactor status fetching code so we don't hold a collection lock
during the network request, which slows things down
- fix sync spinner restarting when returning to deck list
2020-06-02 13:23:01 +10:00
Damien Elmes
1c52d11133
rework usn handling in sync
2020-06-01 13:57:10 +10:00
Damien Elmes
0787381a99
login/full up/full down plugged in
2020-06-01 13:57:10 +10:00
Damien Elmes
c4032c0176
another snapshot of sync work
...
progress handler is going to need to be reworked to function across
threads
2020-06-01 13:57:10 +10:00
Damien Elmes
2114fdf6f5
more syncing work
...
no checks yet
2020-06-01 13:57:10 +10:00
Damien Elmes
91e3256e6a
move dupe check to backend
2020-05-24 19:48:56 +10:00
Damien Elmes
01ebe964e9
bytes->blob in sql
2020-05-18 13:36:45 +10:00
Damien Elmes
336349d8d1
update before_upload()
2020-05-17 14:13:21 +10:00
Damien Elmes
a682865169
move deck config to protobuf
2020-05-17 13:28:41 +10:00
Damien Elmes
e85911c4e4
add option to limit deck tree counts to a particular node
2020-05-17 08:38:49 +10:00
Damien Elmes
17efa85d75
update rusqlite
2020-05-16 19:49:08 +10:00
Damien Elmes
cbfc9d5a87
handle default deck and filtered deck suppression in the backend
2020-05-15 21:21:10 +10:00
Damien Elmes
14c0a5891b
fetch template and note fields in backend during normal card render
...
Saves having to serialize the note fields and q/a templates, which
is particularly a win when rendering question/answer in the browse
screen.
Also some work towards being able to preview notes without having to
commit them to the database.
2020-05-13 10:38:49 +10:00
Damien Elmes
21ac2c14a7
handle scheduling preferences in the backend
2020-05-12 21:13:34 +10:00
Damien Elmes
befa66fb27
fix default rollover
2020-05-12 21:13:34 +10:00