mirror of
https://github.com/ankitects/anki.git
synced 2025-09-21 15:32:23 -04:00
group deletion should be recursive; fix css in import
This commit is contained in:
parent
b31bd5c091
commit
ae839dd3a3
2 changed files with 13 additions and 2 deletions
|
@ -137,6 +137,9 @@ class GroupManager(object):
|
||||||
assert gid != 1
|
assert gid != 1
|
||||||
if not str(gid) in self.groups:
|
if not str(gid) in self.groups:
|
||||||
return
|
return
|
||||||
|
# delete children first
|
||||||
|
for name, id in self.children(gid):
|
||||||
|
self.rem(id, cardsToo)
|
||||||
# delete cards too?
|
# delete cards too?
|
||||||
if cardsToo:
|
if cardsToo:
|
||||||
self.deck.remCards(self.cids(gid))
|
self.deck.remCards(self.cids(gid))
|
||||||
|
@ -264,12 +267,18 @@ usn=?,mod=? where id in %s""" % ids2str(cids),
|
||||||
# current group
|
# current group
|
||||||
self.deck.conf['curGroup'] = gid
|
self.deck.conf['curGroup'] = gid
|
||||||
# and active groups (current + all children)
|
# and active groups (current + all children)
|
||||||
|
actv = self.children(gid)
|
||||||
|
actv.sort()
|
||||||
|
self.deck.conf['activeGroups'] = [gid] + [a[1] for a in actv]
|
||||||
|
|
||||||
|
def children(self, gid):
|
||||||
|
"All children of gid, as (name, id)."
|
||||||
|
name = self.get(gid)['name']
|
||||||
actv = []
|
actv = []
|
||||||
for g in self.all():
|
for g in self.all():
|
||||||
if g['name'].startswith(name + "::"):
|
if g['name'].startswith(name + "::"):
|
||||||
actv.append((g['name'], g['id']))
|
actv.append((g['name'], g['id']))
|
||||||
actv.sort()
|
return actv
|
||||||
self.deck.conf['activeGroups'] = [gid] + [a[1] for a in actv]
|
|
||||||
|
|
||||||
def parents(self, gid):
|
def parents(self, gid):
|
||||||
"All parents of gid."
|
"All parents of gid."
|
||||||
|
|
|
@ -111,6 +111,8 @@ class Anki2Importer(Importer):
|
||||||
return dmid
|
return dmid
|
||||||
# need to add to local and update index
|
# need to add to local and update index
|
||||||
m = self.dst.models._add(self.src.models.get(mid))
|
m = self.dst.models._add(self.src.models.get(mid))
|
||||||
|
# need to save so the css is updated
|
||||||
|
self.dst.models.save(m)
|
||||||
h = self.dst.models.scmhash(m)
|
h = self.dst.models.scmhash(m)
|
||||||
mid = int(m['id'])
|
mid = int(m['id'])
|
||||||
self._dstModels[mid] = h
|
self._dstModels[mid] = h
|
||||||
|
|
Loading…
Reference in a new issue