Damien Elmes
37b3de23cf
remove inactive templates that are unused on upgrade
2011-11-08 18:52:31 +09:00
Damien Elmes
795cdd7d3f
remove the concept of non-active templates
...
The old template handling was too complicated, and generated frequent
questions on the forums. By dropping non-active templates we can do away with
the generate cards function, and advanced users can simulate the old behaviour
by using conditional field templates.
2011-11-08 18:06:19 +09:00
Damien Elmes
f8eefe5ee1
model deleting should use the string id
2011-11-07 18:38:48 +09:00
Damien Elmes
c6c6af4328
split remote sync tests into separate file
2011-11-07 16:21:29 +09:00
Damien Elmes
3614a13a50
fix model unit test
2011-11-07 14:27:42 +09:00
Damien Elmes
aef7626557
add fieldNames(); fix scmhash()
2011-11-07 14:27:15 +09:00
Damien Elmes
688a680b54
when importing, set the new group as current
2011-11-07 14:26:56 +09:00
Damien Elmes
cbdb283b20
refactor model copying
2011-10-31 11:34:03 +09:00
Damien Elmes
b1bf50c677
make sure to save after import
2011-10-30 19:04:52 +09:00
Damien Elmes
3bf0b253f2
handle bad field references and tags; don't create empty fields
2011-10-30 10:12:24 +09:00
Damien Elmes
e99e7baa3c
need to keep latex in unicode until preamble concat
2011-10-29 21:36:29 +09:00
Damien Elmes
82f9d484da
don't die on non-field references
2011-10-29 20:11:37 +09:00
Damien Elmes
0c03da52f5
fix latex rewriting
2011-10-29 17:15:13 +09:00
Damien Elmes
7a849fccc5
fix allMedia() and unit tests
2011-10-29 15:31:27 +09:00
Damien Elmes
ed7367d67f
fix reporting of latex errors; catch some bad commands
2011-10-29 15:12:57 +09:00
Damien Elmes
6911ae839e
on upgrade convert media references in template to separate field
2011-10-29 10:44:32 +09:00
Damien Elmes
ad81a564d1
don't leak fds in upgrade
2011-10-27 17:42:23 +09:00
Damien Elmes
caf46e948a
speed up import when there are lots of duplicate ids
2011-10-26 15:37:18 +09:00
Damien Elmes
1edd724c3e
raise an error on an invalid file import, so cmd line tools notice
2011-10-26 15:16:32 +09:00
Damien Elmes
37ea359931
add indices to upgrade check if missing
2011-10-26 12:19:12 +09:00
Damien Elmes
4668b1a210
on import make sure we update post; use static random range
2011-10-26 06:24:14 +09:00
Damien Elmes
c16cb6ee9b
fix more bugs in group count tree
2011-10-24 01:28:43 +09:00
Damien Elmes
8be318d749
when removing a group should ensure there's an active one left
2011-10-23 06:08:57 +09:00
Damien Elmes
1ce5a7552e
ensure top level properties updated on rename
2011-10-23 05:45:15 +09:00
Damien Elmes
f37f4aff96
need to sort tree based on split components, not string order
2011-10-22 21:14:46 +09:00
Damien Elmes
716684edae
make sure to save on group delete
2011-10-22 21:04:57 +09:00
Damien Elmes
b9dc5764a3
add group renaming
2011-10-22 20:41:33 +09:00
Damien Elmes
3068e79b42
Merge branch 'new'
2011-10-22 18:39:08 +09:00
Damien Elmes
ae839dd3a3
group deletion should be recursive; fix css in import
2011-10-22 10:04:32 +09:00
Damien Elmes
b31bd5c091
vacuum after import; make sure models.current() always returns
2011-10-22 07:39:13 +09:00
Damien Elmes
1772474765
make sure we record the prefix before changing filename
2011-10-22 04:46:21 +09:00
Damien Elmes
5ac6cc7a36
don't die if deck has no media folder
2011-10-22 04:33:49 +09:00
Damien Elmes
bbe2973952
add newly created clozes too
2011-10-22 03:58:54 +09:00
Damien Elmes
46dd863f3c
convert genCards() to bulk update; drop random
2011-10-22 03:39:34 +09:00
Damien Elmes
852189808f
catch attempts to save a fact that deletes a cloze card
2011-10-22 03:10:34 +09:00
Damien Elmes
a4e8eb8b74
cache required fields, drop emptyAns
...
For importing and the deck creation wizard, we need to be able to generate
thousands of cards efficiently. So instead of requiring the creation of a fact
and rendering it, we cache the required fields and cloze references in the
model.
Also, emptyAns is dropped, as people can achieve the same behaviour by adding
the required answer fields as conditional to the question.
Todo: refactor genCards() to work in bulk, handle cloze edits intelligently
(prompt to delete invalid references, create new cards as necessary)
2011-10-22 02:28:57 +09:00
Damien Elmes
8bb26aaf74
add the ability to skip cards for shared decks
2011-10-22 00:05:09 +09:00
Damien Elmes
4539ca2b73
import each anki1 deck as its basename
2011-10-22 00:02:28 +09:00
Damien Elmes
119217290e
implement anki1 importer
2011-10-21 23:45:42 +09:00
Damien Elmes
b242b06052
import media too
2011-10-21 07:53:22 +09:00
Damien Elmes
83f8ef45ff
anki2 importing and reorganize import code
2011-10-21 07:36:44 +09:00
Damien Elmes
1ba75e8dc9
don't need a separate migration package; the rest is std import
2011-10-20 22:18:55 +09:00
Damien Elmes
76960abd75
fix upgrading; drop old mnemosyne 1 importer
2011-10-20 22:05:34 +09:00
Damien Elmes
cf4abcb403
split upgrade code into separate file; use .anki2 now
2011-10-20 05:26:50 +09:00
Damien Elmes
050afa57ad
make sure consecutive syncs don't do anything; check server removal
2011-10-06 15:54:55 +09:00
Damien Elmes
0c85acf3f7
refactor to support early exit when no media changes
...
- regular sync now receives a media USN as well
- server bumps media usn not only on sync but any other media change
- added local media.hasChanged()
2011-10-06 15:34:22 +09:00
Damien Elmes
dd37ee5915
syncing same file twice should work
2011-10-06 14:47:22 +09:00
Damien Elmes
afe1ad2b0b
add resync test, fix zip meta
2011-10-06 14:37:07 +09:00
Damien Elmes
b4fdf1c690
send 'continue' for multiple zips; test splitting
2011-10-06 13:51:44 +09:00
Damien Elmes
8c1f397459
ensure successive calls work
2011-10-06 13:25:01 +09:00