added naive backup restore
This commit is contained in:
1
app/.gitignore
vendored
1
app/.gitignore
vendored
@@ -8,3 +8,4 @@ private/oldClient
|
||||
nohup.out
|
||||
node_modules
|
||||
dump
|
||||
.cache
|
||||
|
||||
33
app/lib/functions/backupRestoreCharacter.js
Normal file
33
app/lib/functions/backupRestoreCharacter.js
Normal file
@@ -0,0 +1,33 @@
|
||||
let characterCollections = [
|
||||
Actions,
|
||||
Attacks,
|
||||
Buffs,
|
||||
Classes,
|
||||
CustomBuffs,
|
||||
Effects,
|
||||
Experiences,
|
||||
Features,
|
||||
Notes,
|
||||
Proficiencies,
|
||||
SpellLists,
|
||||
Items,
|
||||
Containers,
|
||||
];
|
||||
|
||||
function backupCharacter(charId){
|
||||
let characterDump = {};
|
||||
characterDump.characters = [Characters.findOne(charId)];
|
||||
characterCollections.map(
|
||||
c => characterDump[c._name] = c.find({charId}).fetch()
|
||||
);
|
||||
return characterDump;
|
||||
};
|
||||
|
||||
function restoreCharacter(characterDump){
|
||||
for (collectionName in characterDump){
|
||||
let collection = Meteor.Collection.get(collectionName);
|
||||
for (doc in characterDump[collectionName]){
|
||||
collection.insert(doc);
|
||||
}
|
||||
}
|
||||
};
|
||||
Reference in New Issue
Block a user