Remove api method updateCompleteDeck

This method was broken and there are no issues regarding it on GitHub.
This commit is contained in:
oakkitten 2022-03-30 19:37:35 +01:00
parent eac658716a
commit d6061affad
2 changed files with 0 additions and 110 deletions

View File

@ -960,76 +960,6 @@ corresponding to when the API was available for use.
}
```
* **updateCompleteDeck**
Pastes all transmitted data into the database and reloads the collection.
You can send a deckName and corresponding cards, notes and models.
All cards are assumed to belong to the given deck.
All notes referenced by given cards should be present.
All models referenced by given notes should be present.
*Sample request*:
```json
{
"action": "updateCompleteDeck",
"version": 6,
"params": {
"data": {
"deck": "test3",
"cards": {
"1485369472028": {
"id": 1485369472028,
"nid": 1485369340204,
"ord": 0,
"type": 0,
"queue": 0,
"due": 1186031,
"factor": 0,
"ivl": 0,
"reps": 0,
"lapses": 0,
"left": 0
}
},
"notes": {
"1485369340204": {
"id": 1485369340204,
"mid": 1375786181313,
"fields": [
"frontValue",
"backValue"
],
"tags": [
"aTag"
]
}
},
"models": {
"1375786181313": {
"id": 1375786181313,
"name": "anotherModel",
"fields": [
"Front",
"Back"
],
"templateNames": [
"Card 1"
]
}
}
}
}
}
```
*Sample result*:
```json
{
"result": null,
"error": null
}
```
#### Graphical Actions
* **guiBrowse**

View File

@ -40,7 +40,6 @@ from anki.consts import MODEL_CLOZE
from anki.exporting import AnkiPackageExporter
from anki.importing import AnkiPackageImporter
from anki.notes import Note
from anki.utils import joinFields, intTime, guid64, fieldChecksum
try:
from anki.rsbackend import NotFoundError
@ -1286,45 +1285,6 @@ class AnkiConnect:
) or 0
@util.api()
def updateCompleteDeck(self, data):
self.startEditing()
did = self.decks().id(data['deck'])
self.decks().flush()
model_manager = self.collection().models
for _, card in data['cards'].items():
self.database().execute(
'replace into cards (id, nid, did, ord, type, queue, due, ivl, factor, reps, lapses, left, '
'mod, usn, odue, odid, flags, data) '
'values (' + '?,' * (12 + 6 - 1) + '?)',
card['id'], card['nid'], did, card['ord'], card['type'], card['queue'], card['due'],
card['ivl'], card['factor'], card['reps'], card['lapses'], card['left'],
intTime(), -1, 0, 0, 0, 0
)
note = data['notes'][str(card['nid'])]
tags = self.collection().tags.join(self.collection().tags.canonify(note['tags']))
self.database().execute(
'replace into notes(id, mid, tags, flds,'
'guid, mod, usn, flags, data, sfld, csum) values (' + '?,' * (4 + 7 - 1) + '?)',
note['id'], note['mid'], tags, joinFields(note['fields']),
guid64(), intTime(), -1, 0, 0, '', fieldChecksum(note['fields'][0])
)
model = data['models'][str(note['mid'])]
if not model_manager.get(model['id']):
model_o = model_manager.new(model['name'])
for field_name in model['fields']:
field = model_manager.newField(field_name)
model_manager.addField(model_o, field)
for template_name in model['templateNames']:
template = model_manager.newTemplate(template_name)
model_manager.addTemplate(model_o, template)
model_o['id'] = model['id']
model_manager.update(model_o)
model_manager.flush()
self.stopEditing()
@util.api()
def insertReviews(self, reviews):
if len(reviews) > 0: